Como cada tres meses se ha publicado un nuevo número de la revista de habla hispana CompartiMOSS en la que he contribuido con un articulo hablando de ALM Application Lifecycle Management. Además en este número hay una gran participación de compañeros de Encamina como:
Desde la primera versión de SharePoint, allá en 2003, los equipos de desarrollo tradicionalmente han tenido muchos problemas con el despliegue de la solución en otros entornos. Motivos hay muchos, en primer lugar la propia plataforma que fue creciendo exponencialmente el número de usuarios respecto a los desarrolladores que había, pero de la misma forma no hay que quitar responsabilidad a los equipos de desarrollo. Este hecho provoco que trabajar con SharePoint fuera un problema para muchos desarrolladores que venían de otros entornos más simples (Aplicaciones escritorio, Web,…). Ahora bien como todo buen producto, fue evolucionando y se fue adaptando a la misma forma que se hace en otras aplicaciones (con alguna peculiaridad propia de la plataforma). En este artículo vamos a ver como configurar la Build de nuestro Visual Studio Online para realizar integración continua.
¿Qué es integración continua?
La integración continua es un modelo informático propuesto inicialmente por Martin Fowler que consiste en hacer integraciones automáticas de un proyecto lo más a menudo posible para así poder detectar fallos cuanto antes. Entendemos por integración, la compilación y ejecución de pruebas de todo un proyecto. Las principales ventajas que tiene son:
Sobre Visual Studio Online
Aunque por su nombre quizás pueda llevar a confusión Visual Studio Online (VSO) es la herramienta proporcionada por Microsoft para gestionar todo el ciclo de vida o Application Lifecycle Management (ALM) de una aplicación. Este proceso empieza mucho antes de que cualquier desarrollador escriba una línea de código y no termina cuando se pone la primera versión en producción.
Con VSO, se puede llevar la planificación del propio proyecto, aplicar una metodología ágil, separar/asignar tareas, llevar el control del código fuente (bien con repositorios centralizados como Team Foundation Server o con repositorios distribuidos como Git) e incluso realizar el despliegue de nuestro desarrollo en diferentes entornos (este último aspecto es el que vamos a tratar en este artículo).
Visual Studio Online es gratis para equipos de hasta 5 desarrolladores, lo que hace que para empresas pequeñas o que acaban de empezar les sea de gran utilidad. Por lo general cuando analizamos la utilización de un producto Online respecto a uno OnPremise se valora si tienen las mismas características. En este caso Visual Studio Online tiene más características que la solución en OnPremise debido a que ya tienen instaladas todas las utilidades necesarias para integración continua, por ejemplo, para SharePoint en un entorno local necesitaríamos instalar las librerías de del servidor.
Manos a la obra
En primer lugar, partimos de la base que disponemos de una App de SharePoint del tipo Provider-Hosted. Como proveedor de alojamiento vamos a utilizar Azure. Para ello:
Crear el servicio de Visual Studio Online en Azure
En la subscripción de Azure hay que crear el servicio de Visual Studio Online para permitirle acceder al repositorio de código fuente. Para ello:
Tareas Previas
El punto de partida para empezar con la integración continua de las Aplicaciones es el siguiente paquete de Codeplex: https://officesharepointci.codeplex.com/
Este paquete tiene dos carpetas:
El proyecto de CodePlex que estamos utilizando asume que la aplicación ya está registrada en tu entorno. Para las pruebas en primer lugar vamos a registrar la aplicación para ello iremos a https://sitiodeveloper/_layouts /appregnew.aspx y registrar la aplicación.
Con el ID Cliente y la Clave Secreta la introducimos en la aplicación. Por un lado dentro de los parámetros del Web.config y por otro lado en el manifiesto de la APP de SharePoint tal y como visualizamos en la siguiente imagen:
Agregar el paquete de Codeplex dentro de nuestro Repositorio de Código
Para agregar el paquete en el repositorio de código:
Crear una definición de la Build
Una vez ya tenemos el servicio de Visual Studio Online funcionando en Azure, crearemos una definición de la Build en el que configuraremos la integración continua. En estas definiciones se puede configurar varios aspectos:
Es posible (a la vez que recomendable) que en cada proyecto tengamos varias definiciones, es posible que nos interese diariamente desplegar nuestros desarrollo en un entorno de preproducción, pero también es necesario por ejemplo que cada vez que se suba un cambio se testeen si se han pasado las pruebas unitarias o se han cumplido los requisitos de calidad establecidos.
Dentro de los parámetros de este proceso de Build tendremos que añadir lo siguiente:
Conclusión
El proceso de ALM es muy necesario en cualquier plataforma y Office 365/SharePoint no es una excepción, en este artículo hemos visto como configurar un proceso de integración continua para nuestras Apps. Este proceso, conforme a las necesidades de cada equipo y a los requisitos, se va mejorando con otras definiciones de Build, definiciones que se pueden encargar de verificar la calidad del código descrito, de pasar los Test Unitarios, pruebas de carga y/o de la interfaz.
Este sitio web utiliza cookies para que tengas la mejor experiencia de usuario. Si continuas navegando, estás dando tu consentimiento para aceptar las cookies y también nuestra política de cookies (esperemos que no te empaches con tanta cookie 😊)