Azure Developer CLI et Environnements de déploiement Azure
Cet article vous permet de découvrir Azure Developer CLI (azd
) et son fonctionnement avec les Environnements de déploiement Azure (ADE, Azure Deployment Environments) pour simplifier le processus d’approvisionnement de l’infrastructure d’application et le déploiement du code d’application sur la nouvelle infrastructure.
azd
est un outil de ligne de commande open source qui fournit des commandes faciles à utiliser par les développeurs et qui sont adaptées aux étapes clés de votre flux de travail. Vous pouvez installer azd
localement sur votre ordinateur ou l’utiliser dans d’autres environnements.
Avec ADE, vous pouvez créer des environnements à partir d’une définition d’environnement dans un catalogue attaché à votre centre de développement ou en utilisant le modèle d’extensibilité ADE pour exécuter des déploiements. En ajoutant azd
, vous pouvez simplifier le processus d’approvisionnement de l’infrastructure et de déploiement de code dans le cloud.
Comment azd
fonctionne-t-elle avec ADE ?
azd
s’allie à ADE pour vous permettre de créer des environnements à partir de là où vous travaillez.
Grâce à ADE et azd
, les développeurs individuels qui travaillent avec une infrastructure et du code uniques qu’ils souhaitent charger dans le cloud peuvent créer un environnement à partir d’un dossier local. Ils peuvent utiliser azd
pour approvisionner un environnement et déployer leur code de façon harmonieuse.
À grande échelle, l’utilisation d’ADE et d’azd
vous permet de fournir aux développeurs un moyen de créer une infrastructure et du code d’application. Votre équipe peut créer plusieurs environnements ADE à partir de la même définition d’environnement compatible avec azd
et approvisionner du code dans le cloud de manière cohérente.
Comprendre les modèles azd
Les commandes Azure Developer CLI sont conçues pour fonctionner avec des modèles standardisés. Chaque modèle est un référentiel de code qui respecte des conventions de fichiers et de dossiers spécifiques. Les modèles contiennent les ressources dont azd
a besoin pour approvisionner un environnement d’Environnement de déploiement Azure. Lorsque vous exécutez une commande comme azd up
, l’outil utilise les ressources de modèle pour exécuter différentes étapes de flux de travail, telles que l’approvisionnement ou le déploiement de ressources sur Azure.
Le diagramme suivant illustre la structure typique d’un modèle :
├── infra [ Contains infrastructure as code files ]
├── .azdo [ Configures an Azure Pipeline ]
├── .devcontainer [ For DevContainer ]
├── .github [ Configures a GitHub workflow ]
├── .vscode [ VS Code workspace configurations ]
├── .azure [ Stores Azure configurations and environment variables ]
├── src [ Contains all of the deployable app source code ]
└── azure.yaml [ Describes the app and type of Azure resources]
Tous les modèles azd
incluent les ressources suivantes :
dossier infra : le dossier infra n’est pas utilisé dans
azd
avec ADE. Il contient l’ensemble de l’infrastructure Bicep ou Terraform sous forme de fichiers de code pour le modèleazd
. ADE fournit l’infrastructure en tant que fichiers de code pour le modèleazd
. Vous n’avez pas besoin d’inclure ces fichiers dans votre modèleazd
.fichier azure.yaml : fichier de configuration qui définit un ou plusieurs services dans votre projet et les mappe sur des ressources Azure pour le déploiement. Par exemple, vous pouvez définir un service d’API et un service web front-end, chacun avec des attributs qui les mappent à différentes ressources Azure pour le déploiement.
dossier .azure : contient des configurations et des variables d’environnement Azure essentielles, telles que l’emplacement pour déployer des ressources ou d’autres informations d’abonnement.
dossier src : contient tout le code source déployable de l’application. Certains modèles
azd
fournissent uniquement des ressources d’infrastructure et laissent le répertoire src vide pour vous permettre d’ajouter votre propre code d’application.
La plupart des modèles azd
incluent aussi en option un ou plusieurs des dossiers suivants :
dossier .devcontainer : vous permet de configurer un environnement de conteneur de développement pour votre application. Cette approche courante de l’environnement de développement n’est pas spécifique à
azd
.Dossier .github : Contient les fichiers de flux de travail CI/CD pour GitHub Actions, qui est le fournisseur CI/CD par défaut pour
azd
.dossier .azdo : si vous décidez d’utiliser Azure Pipelines pour la CI/CD, définissez les fichiers de configuration de flux de travail dans ce dossier.
Catalogues compatibles avec azd
Les catalogues d’Environnements de déploiement Azure sont constitués de définitions d’environnement. Ces derniers sont des modèles IaC qui définissent les ressources d’infrastructure approvisionnées pour un environnement de déploiement. Azure Developer CLI utilise des définitions d’environnement dans le catalogue rattaché au centre de développement afin d’approvisionner de nouveaux environnements.
Azure Developer CLI fonctionne avec des modèles ARM stockés dans le catalogue du centre de développement Environnements de déploiement Azure. Il prend également en charge d’autres modèles IaC, tels que Bicep et Terraform, via le modèle d’extensibilité ADE. Pour savoir comment configurer le modèle d’extensibilité ADE, consultez modèle d’extensibilité des Environnements de déploiement Azure.
Pour bien prendre en charge certains services Azure Compute, Azure Developer CLI nécessite davantage de paramètres de configuration dans le modèle IaC. Par exemple, vous devez baliser les hôtes de service d’application avec des informations spécifiques pour qu’azd
sache comment trouver les hôtes et déployer l’application sur ceux-ci.
Vous pouvez consulter la liste des services Azure pris en charge ici : Services de calcul Azure pris en charge (hôte).
Rendre votre catalogue ADE compatible avec azd
Pour permettre à vos équipes de développement d’utiliser azd
avec ADE, vous devez créer une définition d’environnement compatible avec azd
dans votre catalogue. Vous pouvez créer une définition d’environnement compatible avec azd
ou utiliser une définition d’environnement existante dans le catalogue du centre de développement des Environnements de déploiement Azure. Si vous choisissez d’utiliser une définition d’environnement existante, vous devez apporter quelques modifications pour qu’elle soit compatible avec azd
.
Les changements sont notamment :
- Si vous modifiez un modèle
azd
existant, supprimez le dossierinfra
. ADE utilise les fichiers suivants pour créer l’infrastructure :- Modèle ARM (azuredeploy.json.)
- Fichier de configuration qui définit des paramètres (environment.yaml ou manifest.yaml)
- Balisez les ressources dans azure.yaml avec des informations spécifiques afin qu’
azd
sache comment trouver les hôtes et déployer l’application sur ceux-ci.- Découvrez comment Baliser des ressources pour les Environnements de déploiement Azure.
- Découvrez le Schéma azure.yaml d’Azure Developer CLI.
Pour en savoir plus sur comment rendre votre définition d’environnement ADE compatible avec azd
, consultez Rendre votre projet compatible avec Azure Developer CLI.
Activer la prise en charge d’azd
dans ADE
Pour activer la prise en charge d’azd
avec ADE, vous devez définir le platform.type
sur devcenter. Cette configuration permet à azd
d’utiliser les nouveaux composants du centre de développement pour l’état et l’approvisionnement de l’environnement distant, et signifie que le dossier infra de vos modèles est ignoré. Au lieu de cela, azd
utilise l’un des modèles d’infrastructure définis dans votre catalogue de centre de développement pour l’approvisionnement des ressources.
Pour activer la prise en charge d’azd
, exécutez la commande suivante :
azd config set platform.type devcenter
Explorer les commandes azd
Lorsque la fonctionnalité du centre de développement est activée, le comportement par défaut de certaines commandes azd
courantes est modifié pour fonctionner avec ces environnements distants. Pour plus d’informations, consultez Utiliser des Environnements de déploiement Azure.