Cómo asociar un proyecto Open Source de GitHub en Azure DevOps
Video de YouTube complementando esta entrada
Subscríbete a mi canal para más videos
Recordemos antes de empezar en detalle, que Azure DevOps nos ofrece diferentes planes.
Estos planes pueden ser consultados en este enlace.
Si quieres empezar con Azure DevOps, puedes hacerlo desde este enlace o bien y en el caso concreto del artículo, hacerlo de otra forma como veremos a continuación.
En esta entrada, vamos a ver cómo asociar un proyecto de código abierto de GitHub en Azure DevOps.
Nota previa:
Es probable que nos aparezca un aviso indicándonos que el proyecto debe ser público (recordemos: Open Source).
Un proyecto privado es aquel en el que el acceso es sólo para la gente que nosotros demos permiso.
El proyecto público es aquel en el que el acceso sea público y por lo tanto, cualquier persona en Internet puede ver el proyecto.
Si esto ocurre, tendrá que asignar el correcto alcance del proyecto para hacerlo público.
Bien, dentro de GitHub voy a pulsar en Marketplace que aparece en la parte superior de GitHub.
Dentro del Marketplace de GitHub, voy a buscar por azure pipelines.
Aparecerá una App para poder utilizar Azure Pipelines.
Esta App nos ofrece pipelines hospedadas en la nube para Linux, macOS y Windows, con 10 jobs gratuituos y minutos ilimitados para proyectos de código abierto, lo cual encaja precisamente en lo que quiero mostraros en este artículo.
Azure Pipelines nos ofrece buils, pruebas y despliegue continuos en cualquier plataforma y nube.
Haremos clic sobre la App Azure Pipelines y aparecerá una ventana para adquirir la App, con detalles sobre la misma.
En esta ventana haremos clic sobre Set up a plan para configurar el plan que deseamos elegir.
Como dije anteriormente y a modo de recordatorio, tenemos un plan gratuito, pero también un plan de coste con mayores ventajas por si el plan gratuito no es aplicable a nuestras necesidades.
En mi caso haré clic sobre el botón Install it for free.
Aparecerá entonces una ventana de resumen de la orden de compra.
Selecionaremos el plan gratuito, y pulsaremos el botón Complete order and begin installation.
En este caso, se nos indicará que se ha procedido a la compra.
Si hubiéramos tenido ya adquirida la App en la cuenta de GitHub, aparecerá una ventana similar a la siguiente donde se nos indica que ya somos propietarios de esta App.
Nota:
Si ya tuvieras instalado Azure Pipelines en tu cuenta de GitHub, puedes verificar las Apps instaladas en tu GitHub desde este enlace, así como los permisos que has dado para OAuth.
Para terminar con la compra de la App, seguramente nos pregunten por la contraseña de GitHub para confirmarla, e incluso por el doble factor de seguridad si lo tuviéramos activado.
Una vez llegados a este punto, deberemos indicar qué repositorio o repositorios queremos asociar a la App de Azure Pipelines.
En mi caso he elegido un único repositorio de GitHub, pero como organización, podríamos estar interesados en elegir todos los repositorios de una sola vez.
Una vez que hemos seleccionado las opciones que queremos en la ventana anterior, pulsaremos sobre el botón Install.
Aparecerá entonces una ventana sobre la que tendremos que configurar el proyecto de Azure Pipelines.
Seleccionaremos para ello el nombre de la organización de Azure DevOps, que debe ser único y nadie debería haberlo seleccionado, e indicaremos dónde hospedaremos los proyectos, que en mi caso será West Europe.
Y por último, indicaremos un nombre para el proyecto.
Pulsaremos el botón Continue.
En la siguiente ventana y una vez instalada la App, se nos pedirá autorizar a Azure Pipelines dentro de GitHub.
Pulsaremos el botón Authorize Azure Pipelines by Microsoft.
Se iniciará el proceso de autorización.
Una vez concluya, aparecerá la página Web principal de Azure Pipelines con su dashboard.
Pulsaremos sobre la opción Pipelines del menú de la izquierda, y en la ventana que aparece, seleccionaremos el botón New pipeline.
Aparecerá una nueva ventana en la que en mi caso, haré clic sobre la opción GitHub para conectarme con ese repositorio de código.
Nuevamente, aparecerá una ventana para autorizar esta vez a Azure Pipelines OAuth.
Pulsaremos sobre el botón para autorizar después de revisar la información.
En la ventana que aparecerá a continuación, seleccionaré el repositorio de GitHub que me interesa incluir en Azure Pipelines haciendo clic sobre él.
En la siguiente ventana de configuración seleccionaré el tipo de pipeline a utilizar.
En mi caso y aunque me recomienda el pipeline de ASP.NET Core, elegiré .NET Desktop.
Una vez hecho esto, se abrirá una nueva ventana para crear el pipeline.
Por defecto, se nos presenta una plantilla de un script YAML para poder ejecutar.
No modificaremos nada y pulsaremos el botón Save and run.
Nuevamente aparecerá una ventana sobre la que pulsaremos el botón Save and run.
Se iniciará entonces el proceso de configuración.
Y con ello, todo el proceso de preparación del agente que se encargará de ejecutar el correspondiente job que ejecutará el script YAML.
El job se pondrá en marcha.
Una vez termine el proceso, veremos un resumen de ejecución del mismo.
Podemos ver igualmente un resumen de cómo ha sucedido la secuencia de ejecución del job.
Veremos en esa secuencia que se ha ejecutado el proceso de forma manual y que todo ha ido tal y como esperábamos.
También observaremos que no tenemos configurado ningún deployment en nuestro caso.
Si accedemos a los tests, veremos que éstos (si los tenemos) se han ejecutado, así como los resultados que han devuelto.
En el caso de que los tests no hubieran terminado correctamente o los resultados fueran no esperados, se produciría un error en la build.
En mi caso, todo ha acabado según lo esperado.
Finalmente, podemos acceder a un resumen histórico de la ejecución de los pipelines.
Esto nos ayuda a revisar rápidamente las diferentes contribuciones realizadas.
Cabe recordar además, que en nuestro correo electrónico recibiremos también una notificación indicándonos como ha ido la build, si se ha ejecutado correctamente o no, y en caso de que no sea así, si está rota y los problemas detectados en el proceso.
Espero que con esta entrada te haya quedado claro el proceso de cómo registrar y utilizar en Azure Pipelines un proyecto Open Source con GitHub.
Happy Coding!