Introducció a Azure Pipelines

Azure Pipelines és un servei de DevOps que permet la integració contínua (CI) i el lliurament continu (CD) per a la construcció, prova i desplegament del vostre codi. Amb Azure Pipelines, podeu automatitzar el procés de construcció i desplegament de les vostres aplicacions en diverses plataformes i entorns.

Conceptes Clau

  • Integració Contínua (CI): Procés d'automatització de la construcció i prova del codi cada vegada que es fa un canvi en el repositori.
  • Lliurament Continu (CD): Procés d'automatització del desplegament del codi a entorns de producció o preproducció després de passar les proves.
  • Pipeline: Seqüència de passos que defineixen com es construeix, prova i desplega el codi.
  • Agent: Màquina que executa els passos del pipeline.
  • YAML: Format de fitxer utilitzat per definir pipelines de manera declarativa.

Configuració d'un Pipeline Bàsic

Pas 1: Crear un Repositori

Abans de crear un pipeline, necessiteu un repositori de codi. Podeu utilitzar Azure Repos, GitHub, Bitbucket, o qualsevol altre servei de control de versions.

Pas 2: Crear un Fitxer YAML

Creeu un fitxer anomenat azure-pipelines.yml a l'arrel del vostre repositori. Aquest fitxer definirà els passos del vostre pipeline.

# Exemple bàsic de fitxer azure-pipelines.yml
trigger:
- main

pool:
  vmImage: 'ubuntu-latest'

steps:
- script: echo Hello, world!
  displayName: 'Run a one-line script'

Explicació del Fitxer YAML

  • trigger: Defineix les branques que activaran el pipeline. En aquest cas, qualsevol canvi a la branca main activarà el pipeline.
  • pool: Especifica el tipus de màquina virtual que s'utilitzarà per executar els passos. Aquí s'utilitza una màquina virtual amb Ubuntu.
  • steps: Llista de passos que es duran a terme. En aquest exemple, només hi ha un pas que executa un script que imprimeix "Hello, world!".

Pas 3: Configurar el Pipeline a Azure DevOps

  1. Aneu al vostre projecte a Azure DevOps.
  2. Seleccioneu Pipelines al menú lateral.
  3. Feu clic a New pipeline.
  4. Seleccioneu el repositori on heu creat el fitxer azure-pipelines.yml.
  5. Azure DevOps detectarà automàticament el fitxer YAML i us permetrà revisar-lo.
  6. Feu clic a Run per executar el pipeline.

Exemples Pràctics

Construcció d'una Aplicació .NET

trigger:
- main

pool:
  vmImage: 'windows-latest'

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

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

Construcció d'una Aplicació Node.js

trigger:
- main

pool:
  vmImage: 'ubuntu-latest'

steps:
- task: NodeTool@0
  inputs:
    versionSpec: '14.x'
  displayName: 'Install Node.js'

- script: |
    npm install
    npm run build
  displayName: 'Build project'

Exercicis Pràctics

Exercici 1: Crear un Pipeline per a una Aplicació Python

  1. Creeu un repositori amb una aplicació Python simple.
  2. Creeu un fitxer azure-pipelines.yml que instal·li les dependències i executi les proves.
trigger:
- main

pool:
  vmImage: 'ubuntu-latest'

steps:
- script: |
    python -m venv venv
    source venv/bin/activate
    pip install -r requirements.txt
  displayName: 'Install dependencies'

- script: |
    source venv/bin/activate
    pytest
  displayName: 'Run tests'

Exercici 2: Afegir un Pas de Desplegament

  1. Amplieu el pipeline anterior per incloure un pas que desplegui l'aplicació a un servidor de prova.
trigger:
- main

pool:
  vmImage: 'ubuntu-latest'

steps:
- script: |
    python -m venv venv
    source venv/bin/activate
    pip install -r requirements.txt
  displayName: 'Install dependencies'

- script: |
    source venv/bin/activate
    pytest
  displayName: 'Run tests'

- script: |
    scp -r ./* user@server:/path/to/deploy
  displayName: 'Deploy to test server'

Errors Comuns i Consells

  • Error: "No agent found in pool": Assegureu-vos que heu seleccionat un pool d'agents que té màquines disponibles.
  • Error: "Command not found": Verifiqueu que les eines necessàries estan instal·lades a la màquina virtual.
  • Consell: Utilitzeu variables d'entorn per a valors sensibles com contrasenyes o claus d'API.

Conclusió

Azure Pipelines és una eina poderosa per automatitzar la construcció, prova i desplegament de les vostres aplicacions. Amb una configuració adequada, podeu assegurar-vos que el vostre codi es construeix i es desplega de manera consistent i fiable. En el proper tema, explorarem Azure Repos per gestionar el vostre codi font de manera eficient.

© Copyright 2024. Tots els drets reservats