Subir un proyecto existente a Windows Azure

Una de las preguntas que me llegan a través del formulario de contacto es qué es lo necesario para subir una aplicación que ya tenemos implementada, en este caso con Web Forms, a la plataforma Windows Azure. En realidad, un proyecto para la nube contiene todos aquellos proyectos que componen nuestra aplicación y además un proyecto relacionado con la plataforma en el cual se define qué rol tiene el resto de proyectos de nuestra solución.

Cuando creamos una solución de tipo Cloud una de las ventanas que nos aparece es la siguiente:
 
En ella podemos seleccionar qué tipo de aplicaciones queremos implementar, desde aplicaciones web a aplicaciones en segundo plano. Sin embargo, uno de los escenarios más comunes es cuando no tenemos nada que implementar sino que únicamente queremos acondicionar su subida a la nube. En ese caso, no seleccionamos ninguno de los roles ofrecidos y pulsamos directamente en el botón OK. De esta forma, estamos pidiendo a Visual Studio 2010 crear una solución con un proyecto del tipo cloud sin ningún rol asociado.
 
Si en este momento tratáramos de ejecutar el proyecto, pulsando F5, Visual Studio nos devolvería el siguiente error:
 
En él se nos está avisando de que actualmente no hay ningún rol asociado al proyecto y que al menos es requerido uno del tipo web, worker o virtual machine. Llegado a este punto, debemos añadir  aquel proyecto(s) a la solución que queramos subir a Windows Azure Platform desempeñando uno de los roles.
Al igual que en cualquier solución convencional, copiamos/cortamos el proyecto que queramos añadir a la solución
 
y lo pegamos dentro de la carpeta del proyecto cloud.
 
Para que este aparezca dentro de la solución, hacemos clic con el botón derecho a nivel de solución y seleccionamos Add => Existing project…
 
y localizamos el archivo del proyecto que acabamos de mover dentro de la solución cloud.
 
Si bien este ya aparece dentro de la ventana Solution Explorer, todavía no forma parte del servicio que será desplegado en la nube. Para finalizar la configuración, debemos hacer clic con el botón derecho sobre la carpeta Roles y seleccionar Add => Web Role Project in solution…
 
Acto seguido nos aparecerá un cuadro de diálogo donde podremos seleccionar aquellos proyectos que encajen dentro de cualquiera de los roles existentes a día de hoy en la plataforma de Windows Azure.
 
Por otro lado habrá proyectos, por ejemplo de tipo Class Library, que no serán necesarios subirlos a la nube como tal sino únicamente las dlls resultantes del mismo.
Como nota adicional, es importante que nos aseguremos de que todas las librerías utilizadas en los proyectos ya existentes fuera de la plataforma y que queramos desplegar estén disponibles en la nube. Como solución podemos modificar las propiedades de las mismas como Copy Local = true o bien utilizar Startups.
 
Espero que sea de utilidad :D
 
¡Saludos! 

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *