¿Qué es Azure DevOps?

Azure DevOps es el conjunto de servicios DevSecOps alojados en la nube de Microsoft y que funcionan para cualquier lenguaje de programación, que es multiplataforma y que puede desplegar ejecutables en cualquier entorno.

Azure DevOps tiene todo lo necesario para convertir una idea en una aplicación. Se pueden planificar proyectos con herramientas ágiles. Se puede administrar sus planes de prueba desde la web, la versión de su código con Git y desplegar las soluciones con el increíble sistema multiplataforma CI/CD. Y, al mismo tiempo, se obtiene una completa trazabilidad y visibilidad en todas las actividades de desarrollo.

Introducción a Azure DevOps

Demos una vuelta a los DevOps de Azure y veamos todo lo que tiene para ofrecer.

Vamos a comenzar en https://dev.azure.com, donde se me presenta acceso a todas mis organizaciones y proyectos.

Página principal de Azure DevOps
Página principal de Azure DevOps

Al desplazarse sobre los mosaicos de los proyectos, se puede ver qué servicios utiliza cada uno de ellos. Se puede usar Azure DevOps tanto como lo necesite.

Desde esta página, se puede saltar rápidamente al trabajo que se va asignando y cualquier pull request que requiera la atención del usuario.

Mis Wok Items en Azure DevOps
Mis Wok Items en Azure DevOps

Al hacer click en “Projects”, lleva a la página de resumen. Aquí se puede ver rápidamente la descripción, las estadísticas y los miembros del equipo.

Descripción del proyecto en Azure DevOps
Descripción del proyecto en Azure DevOps

¿Qué son Azure Boards?

Con Azure Boards, se puede realizar un seguimiento eficaz del trabajo con paneles kanban, trabajos pendientes, paneles de equipo e informes personalizados.

Son perfectos para controlar el ciclo de vida de desarrollo del proyecto o producto, manteniendo información actualizada y accesible por todos los miembros del equipo.

Es la herramienta total para cualquier desarrollo ágil, contando con plantillas metodológicas que contemplan los eventos como daily, sprint review o retrospectiva y los artefactos en forma de backlogs de sprint y producto.

Como se puede observar en siguiente imagen, desde la navegación de la izquierda, puedo acceder a los paneles de control. «Dashboards» son tableros completamente personalizables; simplemente hay que hacer click, se edita y, además, se puede arrastrar y soltar en el widget deseado. Hay multitud de widgets adicionales disponibles de manera gratuita en el marketplace.

Dashboards en Azure DevOps
Dashboards en Azure DevOps

Los widgets son interactivos, por ejemplo, se puede usar el widget «New workitem» para crear un nuevo elemento de trabajo o hacer clic en el enlace «Dashboard» en el widget de trabajo para saltar a mi tablero combinado.

El «Kanban dashboard» es una característica de los tableros Azure DevOps que permite planificar el proyecto utilizando backlogs y tableros. Se puede planear y seguir todos los estados de manera completa. Desde el tablero de Kanban, se pueden revisar los tests y las tareas de cada elemento. Usando los «Backlogs», se pueden planear sprints simplemente arrastrando y soltando un elemento para el sprint deseado.

Tablero Kanban en Azure DevOps
Tablero Kanban en Azure DevOps

Una vez en un sprint, se puede usar el «Tablero de tareas» para rastrear el progreso de las tareas. Cuando los desarrolladores inician una tarea, pueden crear ramas para su trabajo directamente desde el tablero.

Tablero de tareas en Azure DevOps
Tablero de tareas en Azure DevOps

¿Qué son los Azure Repos?

Esto nos lleva a los Azure Repos, que admiten el control de versiones de código centralizado con TFVC (Team Foundation Version Control) y el control de versiones distribuido con Git. Además, están hospedados en la nube, por lo que se asegura su disponibilidad en todo momento.

Tienen multitud de funcionalidades, como poder hacer commits, trazabilidad de cambios en el código, pull requests, administración avanzada de archivos, gestión de branches y búsqueda semántica de código fuente.

El número de Azure Repos de los que disponemos es ilimitado y gratis.

Como se puede ver en la imagen, desde los archivos, puede navegar por el contenido de sus repositorios e incluso realizar ediciones rápidas.

Azure Repos en Azure DevOps
Azure Repos en Azure DevOps

El menú de Commits permite ver cómo se combinan todas las ramas.

Commits en Azure DevOps
Commits en Azure DevOps

El menú de Pushes da una vista del histórico de los cambios que se enviaron al repositorio remoto:

Pushes de código en Azure DevOps
Pushes de código en Azure DevOps

El menú de Branches permite revisar todas las ramas y ver en qué posición están respecto a la rama master.

Ramas de código en Azure DevOps
Ramas de código en Azure DevOps

 La página de Tags permite revisar crear etiquetas:

Tags en Azure DevOps
Tags en Azure DevOps

Usando el menú de pull requests, se puede revisar y participar en ellas.

Pull Requests en Azure DevOps
Pull Requests en Azure DevOps

 Los «repositorios de Azure» permiten escribir comentarios enriquecidos durante las pull requests e, incluso, aplicar políticas que requieren que se ejecute una build, etc.

¿Qué son Azure Pipelines?

La siguiente parte que vamos a explicar es Azure pipelines, que es un completo sistema multiplataforma CI/CD (Continuous Integration / Continuous deployment) capaz de compilar cualquier lenguaje de programación, ejecutar los tests asociados y desplegar el resultado en cualquier plataforma.

Se disponen gratis de 10 trabajos paralelos con minutos ilimitados.

Azure Pipelines es altamente compatible con Kubernetes y contenedores. De manera muy directa, se pueden cocinar e insertar imágenes en registros de contenedores, como Docker Hub y Azure Container Registry.

Aquí, en el resumen de una compilación, se pueden revisar los commits, los resultados de los tests y mucho más.

Detalle de una build en Azure DevOps
Detalle de una build en Azure DevOps

La sección de implementación permite ver en qué parte de la release está actualmente la build.

En la edición de una build, se puede observar todo el potencial que esta característica de Azure DevOps nos ofrece:

Editar una build en Azure DevOps
Editar una build en Azure DevOps

Azure Pipelines puede obtener el código fuente desde los sistemas de control de versión más populares.

Igualmente, ofrece agentes de compilación de Mac OS, Linux y Windows listos para ser utilizados.

Seleccionar un agente de build en Azure DevOps
Seleccionar un agente de build en Azure DevOps

Agregar tareas a una build es tan fácil como arrastrar y soltar de la colección de cientos de tareas de código abierto disponibles.

Añadir una tarea a una Build de Azure DevOps
Añadir una tarea a una Build de Azure DevOps

¿No ves la tarea que necesitas? Simplemente busca en el marketplace lo que necesita o creala tú mismo.

Tareas disponibles en el Azure Marketplace
Tareas disponibles en el Azure Marketplace

 Una vez que se completa la edición de la build, las pipelines de Azure pueden ser desplegadas en cualquier plataforma con Azure Releases.

Releases en Azure DevOps
Releases en Azure DevOps

Las releases, al igual que las builds, proporcionan agentes alojados en Mac OS, Linux y Windows. Con la integración con App Center, también se puede desplegar a dispositivos móviles.

Veamos qué se puede editar en una versión.

Origen del drop en Azure DevOps
Origen del drop en Azure DevOps

Se pueden obtener los artefactos para ser desplegados desde casi cualquier lugar, incluidos otros sistemas de CI como Jenkins.

Origen del drop en Azure DevOps
Origen del drop en Azure DevOps

Las releases permiten definir entornos e, incluso, asignar usuarios aprobadores entre ellos.

Environments de Release en Azure DevOps
Environments de Release en Azure DevOps

 Desde las releases, tiene acceso a la misma biblioteca de tareas y agentes.

Añadir tareas a una Release en Azure DevOps
Añadir tareas a una Release en Azure DevOps

¿Qué son los Azure Test Plans?

Los «planes de prueba de Azure» permiten administrar todo tu esfuerzo de prueba en todas las plataformas y configuraciones.

Son la base para incrementar la calidad de código a través de pruebas manuales y exploratorias, evitando errores no deseados y regresiones.

Azure Test Plans en Azure DevOps
Azure Test Plans en Azure DevOps

¿Qué son Azure Artifacts?

Y, por último, están los Azure Artifacts, que permiten aplicar las mismas prácticas recomendadas de DevOps a los paquetes que se desarrollan y mantienen para ser reutilizados en tiempo de desarrollo, ahorrando así tiempo y esfuerzo a los desarrolladores.

Se puede empaquetar funcionalidad, ya sea en paquetes Nuget o paquetes npm, y crear feeds y referenciarlos en proyectos de desarrollo.

Azure Artifacts en Azure DevOps
Azure Artifacts en Azure DevOps

Eso fue solo un vistazo rápido de lo que está disponible en Azure DevOps. Comienza hoy de forma gratuita y experimenta cómo Azure DevOps puede acelerar tu transformación DevSecOps https://dev.azure.com