Integración continua: implementación

Compilaciones automatizadas y compilaciones repetibles. Pruebas automatizadas y pruebas repetibles. Categorías de prueba y frecuencias de prueba. Inspecciones continuas. Integración continua de bases de datos. Esta serie de tareas en la creación de un entorno de CI efectivo permite principalmente un beneficio clave: lanzar software de trabajo en cualquier momento, en cualquier entorno.

En nuestros capítulos anteriores, hemos logrado todos los siguientes segmentos:

  • Creó nuestro código.
  • Aseguré una construcción adecuada en TeamCity.
  • Creé un proceso de Integración de Base de Datos.
  • Pruebas realizadas con éxito.

Ahora lo único que queda es realizar un despliegue automatizado, para que todo nuestro proceso esté completo.

Para una implementación automatizada en nuestro caso, debemos seguir estos pasos:

  • En nuestro servidor de implementación, asegúrese de que IIS esté instalado.

  • Asegúrese de que el usuario de IIS tenga acceso a nuestra base de datos.

  • Cree un perfil de publicación que se utilizará para publicar el sitio cuando se cree.

  • Asegúrese de cambiar nuestro comando MSBuild para realizar una implementación automática.

  • Automatice TeamCity para realizar una publicación automática.

  • Hacer un git commit para asegurarse de que todos sus archivos estén en Git.

Step 1- Configure un servidor IIS local. Si tiene un servidor IIS local o remoto, se puede realizar la siguiente configuración para implementar nuestra aplicación. Siempre es una buena práctica ver si una implementación se puede realizar manualmente antes de hacerlo de forma automatizada.

Step 2 - En un servidor de Windows 2012, vaya a su Administrador del servidor y haga clic en Agregar roles y características.

Step 3 - Haga clic en Siguiente en la siguiente pantalla que aparece.

Step 4 - Elija la instalación basada en funciones o basada en funciones en la siguiente pantalla y haga clic en Siguiente.

Step 5 - Seleccione el servidor predeterminado y haga clic en Siguiente.

Step 6 - Elija la función del servidor web y haga clic en Siguiente.

Step 7 - En la siguiente pantalla que aparece, haga clic en Siguiente.

Step 8 - Haga clic en Siguiente nuevamente en la siguiente pantalla que aparece.

Step 9 - En la siguiente pantalla que aparece, haga clic en Siguiente.

Step 10 - En la pantalla final, puede hacer clic en el botón Instalar para instalar IIS.

Una vez que haya instalado IIS, puede abrirlo abriendo los Servicios de información de Internet.

Step 11 - Haga clic en Grupos de aplicaciones, verá un grupo con el nombre de DefaultAppPool. Esto debe tener acceso a SQL Server en el siguiente paso.

Step 12 - Si necesitamos conectar una aplicación ASP.Net a una aplicación MS SQL Server, tenemos que dar acceso al grupo de aplicaciones predeterminado a la instancia de SQL Server, para que pueda conectarse a nuestra Demodb base de datos.

Step 13- Abra SQL Server Management Studio. Vaya a Logins, haga clic derecho y elija la opción de menúNew Login.

En la siguiente pantalla, actualice los siguientes parámetros y haga clic en Aceptar.

  • Nombre de inicio de sesión como IIS APPPOOL \ DefaultAppPool.
  • Base de datos predeterminada: debe ser nuestra base de datos, que es demodb.

Step 14 - Creando un Publish Profile. El perfil de publicación se usa en Visual Studio para crear un paquete de implementación que luego se puede usar con MS Build y en cualquier servidor CI en consecuencia. Para hacer esto, desde Visual Studio, haga clic derecho en el proyecto y haga clic en la opción de menú Publicar

Step 15 - En la siguiente pantalla que aparece, elija crear un nuevo perfil de publicación, asígnele un nombre - DemoDeployment. Luego haga clic en el botón Siguiente.

En la siguiente pantalla que aparece, agregue los siguientes valores:

  • Elija el método de publicación como Web Deploy.
  • Ingrese el servidor como localhost.
  • Ingrese el nombre del sitio como Sitio web predeterminado / Demo.
  • Ponga la URL de destino como http://localhost/Demo

Luego haga clic en el botón Siguiente.

Step 16 - En la siguiente pantalla, haga clic en Siguiente.

Step 17 - En la pantalla final que aparece, haga clic en el botón Publicar.

Ahora si vas a la C:\Demo\Simple\Properties\PublishProfiles ubicación de su proyecto, verá una nueva publish profile xml filecreado. Este archivo de perfil de publicación tendrá todos los detalles necesarios para publicar su aplicación en el servidor IIS local.

Step 18- Ahora personalicemos nuestro comando MSBuild y usemos el perfil de publicación anterior y veamos qué sucede. En nuestro comando MSBuild, especificamos los siguientes parámetros:

  • Implementar en compilación es cierto: esto activará una implementación automática una vez que se complete una compilación exitosa.

  • Luego, mencionamos usar el perfil de publicación que se usó en el paso anterior.

  • La versión de Visual Studio solo debe mencionarse en la capacidad de implementación de MSBuild sobre cuál es la versión de Visual Studio que se está utilizando.

Cuando ejecuta el comando anterior, MSBuild activará un proceso de compilación e implementación. Lo que notará es que lo está implementando en nuestroDefault Website en nuestro servidor IIS.

Ahora, si navegamos hasta el sitio: http://localhost/Demo/Demo.aspx veremos el siguiente resultado, lo que significa que MSBuild realizó una implementación exitosa en nuestro sitio web.

Step 19 - Automatización a través de TeamCity: ahora es el momento de agregar una tarea a nuestro servidor TeamCity para usar automáticamente MSBuild para implementar nuestra aplicación, según los pasos mencionados anteriormente.

Step 20 - Vaya al panel de control de su proyecto y haga clic en Edit Configuration Settings.

Step 21 - Vaya a Pasos de compilación y haga clic en Agregar un paso de compilación.

Elija las siguientes opciones:

  • El tipo de corredor debe ser MSBuild

  • Dar un nombre de paso opcional

  • Ingrese la ruta de construcción como Simple / Simple.csproj

  • Mantenga la versión de MSBuild como Microsoft Build Tools 2013

  • Mantenga la versión de MSBuild Tools como 12.0

  • Ponga la línea de comando como / p: DeployOnBuild = true / p: PublishProfile = DemoDeployement / p: VisualStudioVersion = 12.0

Step 22 - Haga clic en Guardar.

Asegúrese de que en los pasos de compilación, el paso Implementar sea el último paso de la cadena.

Step 23 - Ahora hagamos una final git commit, para asegurarse de que todos los archivos estén en Git y puedan ser utilizados por TeamCity.

Felicitaciones, ha configurado con éxito un ciclo de integración continuo completo para su aplicación, que se puede ejecutar en cualquier momento.