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.

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.

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.

¿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.

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.

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.

¿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.

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

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

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

La página de Tags permite revisar crear etiquetas:

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

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.

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:

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.

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.

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

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

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.

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

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

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

¿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.

¿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.

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