Visual Studio Team Services (antiguamente Visual Studio Online) es la herramienta Cloud que ofrece Microsoft para llevar a cabo la gestión del ciclo de vida de nuestros desarrollos.
Es una herramienta que no solo sirve para llevar a cabo la gestión del código fuente, ofrece multitud de opciones más. Por un lado, puedes llevar a cabo la gestión de un proyecto mediante metodología Ágil. También proporciona herramientas para ayudar a los equipos de desarrollo con la automatización de pruebas, los aprobados de pruebas manuales y exploratorias, y las ejecuciones de rendimiento y carga. Además, con un sistema de Builds muy sencillo y fácil de utilizar para que los equipos de desarrollo monten su integración continua.
En este artículo vamos a ver cómo agregar un nuevo agente de compilación a VSTS (Visual Studio Team Services) de forma que dispongamos de varios agentes de compilación disponibles y poder realizar compilaciones en paralelo o bien instalaciones en local.
Una vez realizamos integración continua en nuestros proyectos, uno de los aspectos que más necesitamos potenciar de VSTS es el agente de compilación. Tenemos dos opciones:
- hacer pago por uso del agente de compilación (una vez superado los minutos de compilación gratuito)
- agregar un nuevo agente de compilación. Este agente es una máquina que puede estar en nuestras instalaciones o en Azure. La ventaja es que puedes aprovechar la máquina para agregar otras aplicaciones que complementan el ciclo de vida. Como principal inconveniente, es que tendrás que gestionar el agente de compilación y actualizar dicho agente cuando tengas la necesidad.
A nivel de coste, ambas opciones tienen un coste muy similar y la elección de una u otra depende de las necesidades de cada organización.
¿Cuáles son los requisitos que tiene este agente de compilación?
Cualquier máquina puede ser un agente de compilación, con tener un sistema de operativo con Windows 7,8 o Superior o bien un sistema de Servicio como Windows Server 2008 R2 o superior.
Dependiendo de los proyectos que quieras instalar en esta máquina, tendrás que instalar más o menos software. Sobre esta máquina debes tener instalado Visual Studio (aunque dependiendo del tipo de proyecto puede que no haga falta). Después, si en el proceso de compilación vas a utilizar otras herramientas aparte de Visual Studio (como pueda ser NodeJS, SonarQube, etc), será necesario que las instales y posteriormente indicarlo en tu VSTS.
Instalando el agente de compilación
Para instalar el agente de compilación, en primer lugar ves al panel de configuración de VSTO y pulsa sobre el icono de la rueda.
En el panel de configuración, selecciona la pestaña Agent Pools y pulsa sobre la opción de «Download agent».
Una vez tengas descargado el fichero, descomprime el fichero y ejecuta el fichero «ConfigureAgent.cmd» en una consola con privilegios de ordenador. En dicho proceso te pedirá la siguiente información por pantalla:
- Nombre del Agente de Compilación
- URL de tu Visual Studio Team Services
- Carpeta donde se ejecutan las compilaciones, se encuentran los logs, los ficheros fuentes, etc.
- Crear un servicio de Windows (para arrancar el agente de compilación)
Una vez ejecutado el servicio, si todo hay ido bien dentro de la ventana configuración, verás que dispones de un agente de compilación:
Cómo agregar capacidades a tu Agente de Compilación
Si quieres utilizar otras herramientas dentro de tu proceso de compilación será necesario: instalarlo en tu agente de compilación y posteriormente notificarlo a tu VSTO. En este caso, utiliza SonarQube.
En primer lugar, instala en tu agente el plugin de Sonar para la Build . Una vez instalado ves a la configuración de VSTO, selecciona tu agente de compilación, pulsa sobre la opción de «Capabilities» y añade una nueva llamada «Capability» llamada Sonar, en la que indicarás la ubicación donde previamente has instalado el plugin .
Resumen
Visual Studio Team Services es una suite que ha mejorado mucho en los últimos años hasta convertirse en una de las herramientas punteras. Tiene multitud de posibilidades y te permite escenarios cloud 100% como escenarios híbridos. Además, permite todo tipo de proyectos (tanto Microsoft como no).
Esta mejora no sólo es tangible en el control del código fuente, sino en el resto de herramientas que facilitan la gestión del ciclo de vida del desarrollo de tus proyectos 😉