¿Qué es Azure DevOps?

Azure DevOps es un conjunto de herramientas y servicios que permite a los equipos de desarrollo planificar, desarrollar, probar y entregar software de manera continua y eficiente. Azure DevOps proporciona una plataforma integrada que abarca todo el ciclo de vida del desarrollo de software, desde la planificación y el seguimiento del trabajo hasta la entrega y la monitorización de aplicaciones.

Componentes principales de Azure DevOps

Azure DevOps se compone de varios servicios clave que facilitan la colaboración y la entrega continua:

  1. Azure Boards: Herramientas de planificación y seguimiento del trabajo, como tableros Kanban, gráficos de burndown y backlogs.
  2. Azure Repos: Repositorios de control de versiones que soportan Git y Team Foundation Version Control (TFVC).
  3. Azure Pipelines: Servicios de integración continua (CI) y entrega continua (CD) que permiten compilar, probar y desplegar aplicaciones en cualquier plataforma.
  4. Azure Test Plans: Herramientas para la gestión de pruebas manuales y automatizadas.
  5. Azure Artifacts: Gestión de paquetes y dependencias, compatible con NuGet, npm, Maven y otros.

Beneficios de usar Azure DevOps

  • Integración continua y entrega continua (CI/CD): Automatiza la compilación, prueba y despliegue de aplicaciones.
  • Colaboración mejorada: Facilita la colaboración entre equipos de desarrollo, operaciones y calidad.
  • Escalabilidad: Soporta proyectos de cualquier tamaño, desde pequeñas startups hasta grandes empresas.
  • Flexibilidad: Compatible con una amplia variedad de lenguajes de programación, plataformas y herramientas de terceros.

Configuración inicial de Azure DevOps

Crear una organización en Azure DevOps

  1. Acceder al portal de Azure DevOps:

    • Navega a Azure DevOps.
    • Inicia sesión con tu cuenta de Microsoft.
  2. Crear una nueva organización:

    • Haz clic en "New organization".
    • Ingresa un nombre para tu organización.
    • Selecciona la ubicación geográfica para almacenar tus datos.
    • Haz clic en "Continue".
  3. Crear un nuevo proyecto:

    • Ingresa un nombre para tu proyecto.
    • Selecciona la visibilidad del proyecto (pública o privada).
    • Elige la plantilla de proceso (Agile, Scrum, CMMI).
    • Haz clic en "Create project".

Navegación por la interfaz de Azure DevOps

Una vez que hayas creado tu organización y proyecto, te encontrarás con la interfaz principal de Azure DevOps, que incluye:

  • Boards: Para la planificación y seguimiento del trabajo.
  • Repos: Para la gestión del código fuente.
  • Pipelines: Para la configuración de CI/CD.
  • Test Plans: Para la gestión de pruebas.
  • Artifacts: Para la gestión de paquetes.

Ejemplo práctico: Configuración de un pipeline de CI/CD

Paso 1: Crear un repositorio en Azure Repos

  1. Navega a la sección "Repos" en tu proyecto.
  2. Haz clic en "Initialize" para crear un nuevo repositorio Git.
  3. Clona el repositorio en tu máquina local usando el comando proporcionado.
git clone https://dev.azure.com/tu-organizacion/tu-proyecto/_git/tu-repositorio

Paso 2: Configurar un pipeline de CI/CD en Azure Pipelines

  1. Navega a la sección "Pipelines" en tu proyecto.
  2. Haz clic en "New pipeline".
  3. Selecciona "Azure Repos Git" como la fuente de tu código.
  4. Selecciona el repositorio que creaste anteriormente.
  5. Elige una plantilla de pipeline (por ejemplo, "ASP.NET Core").
  6. Revisa y ajusta el archivo YAML generado automáticamente.
trigger:
- main

pool:
  vmImage: 'ubuntu-latest'

steps:
- task: UseDotNet@2
  inputs:
    packageType: 'sdk'
    version: '5.x'
    installationPath: $(Agent.ToolsDirectory)/dotnet

- script: dotnet build --configuration Release
  displayName: 'Build project'

- script: dotnet test --configuration Release
  displayName: 'Run tests'

- task: PublishBuildArtifacts@1
  inputs:
    PathtoPublish: '$(Build.ArtifactStagingDirectory)'
    ArtifactName: 'drop'
  1. Guarda y ejecuta el pipeline.

Paso 3: Desplegar la aplicación

  1. Agrega un nuevo trabajo de despliegue en el archivo YAML.
  2. Configura el destino de despliegue (por ejemplo, Azure App Service).
- task: AzureWebApp@1
  inputs:
    azureSubscription: 'tu-suscripcion'
    appName: 'tu-app-service'
    package: '$(Build.ArtifactStagingDirectory)/drop'
  1. Guarda y ejecuta el pipeline para desplegar la aplicación.

Ejercicio práctico

Ejercicio 1: Crear y configurar un pipeline de CI/CD

  1. Objetivo: Configurar un pipeline de CI/CD para una aplicación simple en Azure DevOps.
  2. Pasos:
    • Crea un nuevo repositorio en Azure Repos.
    • Agrega un proyecto de aplicación simple (por ejemplo, una aplicación web ASP.NET Core).
    • Configura un pipeline de CI/CD en Azure Pipelines.
    • Asegúrate de que el pipeline compile, pruebe y despliegue la aplicación correctamente.

Solución

  1. Crear el repositorio:

    • Navega a "Repos" y crea un nuevo repositorio.
    • Clona el repositorio y agrega tu proyecto de aplicación.
  2. Configurar el pipeline:

    • Navega a "Pipelines" y crea un nuevo pipeline.
    • Selecciona "Azure Repos Git" y elige tu repositorio.
    • Usa la plantilla "ASP.NET Core" y ajusta el archivo YAML según sea necesario.
    • Guarda y ejecuta el pipeline.
  3. Verificar el despliegue:

    • Asegúrate de que el pipeline se ejecute sin errores.
    • Verifica que la aplicación esté desplegada correctamente en el destino configurado.

Conclusión

En esta sección, hemos introducido Azure DevOps y sus componentes principales, destacando sus beneficios y cómo puede mejorar la colaboración y la entrega continua en los equipos de desarrollo. También hemos proporcionado una guía práctica para configurar un pipeline de CI/CD, que es una de las funcionalidades más poderosas de Azure DevOps. En el siguiente módulo, profundizaremos en los Pipelines de Azure, explorando configuraciones avanzadas y mejores prácticas.

© Copyright 2024. Todos los derechos reservados