Skip to content
Learni
View all tutorials
Cloud & DevOps

Comment maîtriser Azure CLI pour DevOps en 2026

Introduction

Azure CLI est l'outil en ligne de commande indispensable pour les ingénieurs DevOps et cloud. En 2026, son utilisation va bien au-delà des commandes simples : elle permet d'orchestrer des environnements complexes, de gérer des déploiements conditionnels et d'intégrer des pipelines CI/CD robustes. Ce tutoriel de niveau expert vous guide à travers des scripts complets et réutilisables. Vous apprendrez à sécuriser l'authentification, à exploiter JMESPath pour filtrer les résultats et à gérer les erreurs de manière professionnelle. Chaque exemple est immédiatement applicable en production.

Prérequis

  • Azure CLI 2.60+ installé et mis à jour
  • Un abonnement Azure actif avec permissions Owner
  • Connaissances avancées en Bash et JSON
  • Accès à un environnement Linux ou WSL

Authentification sécurisée

auth.sh
#!/bin/bash
set -euo pipefail

az login --service-principal \
  --username $AZURE_CLIENT_ID \
  --password $AZURE_CLIENT_SECRET \
  --tenant $AZURE_TENANT_ID

az account set --subscription $AZURE_SUBSCRIPTION_ID

TOKEN=$(az account get-access-token --query accessToken -o tsv)
echo "Authentification réussie"

Ce script utilise l'authentification service principal pour les environnements CI/CD. Les variables d'environnement évitent les secrets en clair. set -euo pipefail garantit l'arrêt immédiat en cas d'erreur.

Création d'un groupe de ressources

create-rg.sh
#!/bin/bash
RG_NAME="rg-prod-$(date +%Y%m%d)"
LOCATION="westeurope"

az group create \
  --name $RG_NAME \
  --location $LOCATION \
  --tags Environment=Production Owner=DevOpsTeam

echo "Groupe de ressources créé : $RG_NAME"

Création dynamique avec nom horodaté et tags obligatoires. Cette approche évite les conflits de noms et facilite le suivi des coûts en production.

Déploiement Bicep avec validation

deploy-bicep.sh
#!/bin/bash
set -euo pipefail

PARAMS='{"location":{"value":"westeurope"}}'

az deployment group create \
  --resource-group $RG_NAME \
  --template-file main.bicep \
  --parameters "$PARAMS" \
  --what-if

az deployment group create \
  --resource-group $RG_NAME \
  --template-file main.bicep \
  --parameters "$PARAMS"

Utilisation de --what-if pour prévisualiser les changements avant déploiement réel. Le script est idempotent et sécurisé grâce à set -euo pipefail.

Extraction et filtrage JMESPath

query-resources.sh
#!/bin/bash

az resource list \
  --resource-group $RG_NAME \
  --query "[?type=='Microsoft.Storage/storageAccounts'].{name:name, location:location, sku:sku.name}" \
  --output table

JMESPath permet de filtrer précisément les ressources sans post-traitement. Cette technique est essentielle pour les scripts d'audit et de reporting en production.

Script de nettoyage conditionnel

cleanup.sh
#!/bin/bash
set -euo pipefail

COUNT=$(az group list --query "[?tags.Environment=='Staging'] | length(@)" -o tsv)

if [ "$COUNT" -gt 0 ]; then
  az group delete --name $RG_NAME --yes --no-wait
  echo "Suppression lancée en arrière-plan"
else
  echo "Aucun groupe à supprimer"
fi

Le nettoyage conditionnel évite les suppressions accidentelles. L'option --no-wait permet de ne pas bloquer le pipeline CI/CD.

Bonnes pratiques

  • Toujours utiliser set -euo pipefail dans les scripts
  • Préférer les variables d'environnement aux secrets en clair
  • Ajouter systématiquement des tags sur toutes les ressources
  • Utiliser --what-if avant tout déploiement
  • Versionner vos scripts et templates Bicep

Erreurs courantes à éviter

  • Oublier de gérer les erreurs avec set -e
  • Exposer des secrets dans les logs de pipeline
  • Ne pas vérifier l'existence des ressources avant suppression
  • Utiliser des noms statiques qui causent des conflits

Pour aller plus loin

Approfondissez vos compétences Azure avec nos formations avancées sur l'automatisation et DevOps. Découvrez nos parcours certifiants : https://learni-group.com/formations