AzureCI/CDDevOpsMicrosoft

Azure DevOps Pipelines : CI/CD pour les équipes Microsoft

9 août 2026 · Sphinx-Digital

Azure DevOps Pipelines est la plateforme CI/CD intégrée à Azure. Pour les équipes déjà dans l’écosystème Microsoft, c’est la solution la plus naturelle — avec une intégration profonde avec AKS, Azure Container Registry et Azure Key Vault.

Structure d’un pipeline YAML Azure DevOps

# azure-pipelines.yml
trigger:
  branches:
    include: [main, release/*]

variables:
  imageRepository: 'myapp'
  containerRegistry: 'myregistry.azurecr.io'
  tag: '$(Build.BuildId)'

stages:
  - stage: Test
    jobs:
      - job: UnitTests
        pool:
          vmImage: 'ubuntu-latest'
        steps:
          - task: UsePythonVersion@0
            inputs:
              versionSpec: '3.12'
          - script: |
              pip install -r requirements.txt
              pytest tests/ --junitxml=junit.xml --cov=src --cov-report=xml
          - task: PublishTestResults@2
            inputs:
              testResultsFiles: 'junit.xml'
          - task: PublishCodeCoverageResults@2
            inputs:
              summaryFileLocation: 'coverage.xml'

  - stage: Build
    dependsOn: Test
    jobs:
      - job: BuildImage
        steps:
          - task: Docker@2
            inputs:
              command: buildAndPush
              repository: $(imageRepository)
              containerRegistry: myServiceConnection
              tags: $(tag)

  - stage: Deploy
    dependsOn: Build
    condition: and(succeeded(), eq(variables['Build.SourceBranch'], 'refs/heads/main'))
    jobs:
      - deployment: DeployProd
        environment: production
        strategy:
          runOnce:
            deploy:
              steps:
                - task: KubernetesManifest@0
                  inputs:
                    action: deploy
                    manifests: k8s/deployment.yaml
                    containers: $(containerRegistry)/$(imageRepository):$(tag)

Environments et approbations

Dans Azure DevOps, les Environments permettent de définir des règles d’approbation pour les déploiements :

  • Approbateurs requis avant le déploiement
  • Checks de sécurité (Azure Policy, intégration Sonar)
  • Timeout si non approuvé

Intégration Azure Key Vault

- task: AzureKeyVault@2
  inputs:
    azureSubscription: 'MyAzureConnection'
    KeyVaultName: 'myvault'
    SecretsFilter: 'DB-PASSWORD,API-KEY'
    RunAsPreJob: true
# Les secrets sont disponibles comme variables de pipeline

Notre formation Azure couvre Azure DevOps Pipelines avec des projets end-to-end sur AKS.