Cómo convertir y subir mi proyecto web ASP.NET a Microsoft Azure con Visual Studio

Esto puede parecer algo trivial para usuarios más avanzados, pero me tocó guiar a alguien en el proceso de subir mi aplicación web ASP.NET estándar que funcionaba on-premises, a un esquema de Cloud Services en Microsoft Azure. Aprovecho y lo dejo documentado.

Lo primero que necesitamos hacer, es crear un proyecto Windows Azure Cloud. Este proyecto (también lo llamaré "proyecto cloud"), que estará asociado a mi proyecto web existente y además contendrá información sobre configuración de ambientes, deployments, entre otras cosas.

Para crearlo, simplemente hacemos click derecho sobre el proyecto web y elegimos Convert to Windows Azure Cloud Service Project.

Luego de esto, notaremos que se ha agregado un nuevo proyecto en la solución, con el mismo nombre que el original pero un ícono de una nube. Este es el tan famoso proyecto Cloud. Si deseáramos configurar distintos ambientes (lo cual no cubriré en este post), el momento es ahora.

Para continuar con la subida, le damos click al proyecto y luego Publish.

Después de este paso notaremos que se abre una ventana de autenticación. Desde acá puedo acceder utilizando las mismas credenciales que uso para acceder al portal web de Azure (credenciales de mi subscripción). Una vez que me autentico y toco en Next, se listarán en la pantalla aquellos servicios que tengo creados en mi cuenta.*

* Puedo optar por crear los Cloud Services desde el portal, o elegir crear un nuevo servicio eligiendo <Create New>.

Una vez que elegimos que archivo de configuración utilizar, a que ambiente (Production o Staging -- Producción o Ensayo) subir mi aplicación, al darle Publish ya estaré subiendo mi aplicación a la nube.

Cuando la barra termine de cargar.. LISTO! Estoy en la nube, y puedo verificarlo entrando a https://<nombre de mi cloud service>.cloudapp.net/. Fácil, eh?

Espero que haya servido. Pronto espero extender este tipo de posts con guías sobre como hacerlo desde otros IDEs, otras tecnologías, o inclusive esquemas como por ejemplo Azure Web Sites.