Prise en charge d’Azure Developer CLI pour les environnements de déploiement Azure
Azure Developer CLI (azd) prend en charge les environnements de déploiement Azure. Un environnement de déploiement Azure (ADE) est une collection préconfigurée de ressources Azure déployées dans des abonnements prédéfinis. La gouvernance Azure est appliquée à ces abonnements en fonction du type d'environnement, tel que bac à sable, test, mise en lots ou production. Avec les environnements de déploiement Azure, vous pouvez appliquer des stratégies de sécurité d’entreprise et fournir un ensemble organisé de modèles d’infrastructure prédéfinis en tant que code (IaC).
Prérequis
Vérifiez que vous avez rempli les conditions préalables suivantes pour utiliser les environnements de déploiement Azure à l’aide azd
de :
Installé
azd
localement ou avoir accès viaazd
Cloud ShellCréation et configuration d’un environnement de déploiement Azure avec un centre de développement, un projet et un catalogue de modèles
Types d’environnement configurés au niveau du centre de développement et du projet
Vérifier que le développeur dispose du rôle d’utilisateur Des environnements de déploiement sur le projet
Conseil
Comprendre les concepts clés relatifs aux environnements de déploiement Azure est essentiel pour travailler avec eux via
azd
.
Activer la prise en charge de l’environnement de déploiement Azure
Vous pouvez configurer azd
pour approvisionner et déployer des ressources dans vos environnements de déploiement à l’aide de commandes standard telles que azd up
ou azd provision
. Pour activer la prise en charge des environnements de déploiement Azure, exécutez la commande suivante :
azd config set platform.type devcenter
Quand platform.type
la valeur est définie devcenter
, l’état et l’approvisionnement de tous les azd
environnements distants tirent parti des nouveaux composants du centre de développement. Cette configuration signifie également que le infra
dossier de vos modèles locaux sera ignoré de manière efficace. Au lieu de cela, azd
utilisez l’un des modèles d’infrastructure définis dans votre catalogue du centre de développement pour l’approvisionnement des ressources.
Vous pouvez également désactiver la prise en charge du centre de développement via la commande suivante :
azd config unset platform
Utiliser azure Deployment Evironments
Lorsque la fonctionnalité du centre de développement est activée, le comportement par défaut de certaines commandes courantes azd
change pour fonctionner avec ces environnements distants. La fonctionnalité du Centre de développement s’étend sur les fonctionnalités fournies par azd
la prise en charge standard de l’environnement distant.
azd init
L’expérience azd init
de commande en mode centre de développement affiche tous les modèles ADE compatibles azd pour la sélection à partir de votre catalogue configuré. Pendant le processus d’init, après azd
avoir cloné le code du modèle, le azure.yaml
fichier est automatiquement mis à jour pour inclure une platform
section avec la configuration sélectionnée en fonction du modèle choisi. La configuration inclut le nom, le catalogue et la définition de l’environnement du centre de développement.
`azd init`
azd up
La azd up
commande empaquetera, provisionnera et déploiera votre application dans des environnements de déploiement Azure. Toutefois, l’étape de provisionnement de la azd up
commande utilise les modèles d’infrastructure en tant que code organisés dans votre centre de développement distant, tandis que l’étape de déploiement déploie le code source dans votre azd
modèle. Alors que le mode centre de développement est activé, azd
ignore le infra
dossier de votre modèle local azd
et provisionne uniquement les ressources à l’aide des modèles du centre de développement. La commande vous invite également à entrer toutes les valeurs nécessaires, telles que le projet d’environnement de déploiement Azure ou le type d’environnement.
azd up
azd template list
La azd template list
commande affiche les modèles d’infrastructure disponibles dans votre catalogue du centre de développement, plutôt que d’afficher des modèles à partir de la galerie AZD Awesome par défaut. Les catalogues fournissent un ensemble de modèles d’infrastructure en tant que code organisés et approuvés que vos équipes de développement peuvent utiliser pour créer des environnements.
azd template list
azd provision
La azd provision
commande crée des environnements de centre de développement. La commande vous invite à entrer des valeurs manquantes, telles que le type d’environnement ou le projet. Lorsque la commande s’exécute, elle utilise le modèle d’infrastructure associé pour approvisionner l’ensemble correct de ressources Azure pour cet environnement. Alors que le mode centre de développement est activé, azd
ignore le infra
dossier de votre modèle local azd
et provisionne uniquement les ressources à l’aide des modèles du centre de développement.
azd provision
azd env list
La azd env list
commande affiche la même liste d’environnements que vous verrez dans le portail des développeurs.
azd env list
Balisage des ressources pour les environnements de déploiement Azure
azd
l’approvisionnement pour les environnements de déploiement Azure s’appuie sur des modèles organisés à partir du catalogue du centre de développement. Les modèles du catalogue peuvent ou ne pas affecter des balises à des ressources Azure approvisionnées pour que vous puissiez associer vos services d’application dans le azure.yaml
fichier. Si les modèles n’attribuent pas de balises, vous pouvez résoudre ce problème de l’une des deux manières suivantes :
Collaborez avec votre administrateur de catalogue du centre de développement pour vous assurer que les ressources Azure approvisionnées incluent des balises pour les associer aux services définis dans votre
azure.yaml
fichier.Spécifiez le
resoureName
fichier auazure.yaml
lieu d’utiliser des balises :services: api: project: ./src/api host: containerapp language: js resourceName: sample-api-containerapp web: project: ./src/web host: containerapp language: js resourceName: sample-web-containerapp
Configurer les paramètres du centre de développement
Vous pouvez définir des azd
paramètres pour vos centres de développement à plusieurs emplacements. Paramètres sont combinés à partir de ces emplacements pour créer l’ensemble final de configurations dans l’ordre de priorité suivant :
- Variables d'environnement
- Configuration de l’environnement Azd
- Configuration du projet
- Configuration des utilisateurs
azd
vous invite automatiquement à entrer les valeurs de configuration manquantes dans ces sources. Chacune de ces options de configuration est détaillée dans les sections suivantes.
Variables d'environnement
Les variables d’environnement suivantes seront découvertes et utilisées par azd
:
- AZURE_DEVCENTER_NAME
- AZURE_DEVCENTER_PROJECT
- AZURE_DEVCENTER_CATALOG
- AZURE_DEVCENTER_ENVIRONMENT_DEFINITION
- AZURE_DEVCENTER_ENVIRONMENT_TYPE
- AZURE_DEVCENTER_ENVIRONMENT_USER
Définir des configurations
Définissez des configurations pour vos centres de développement dans l’étendue de l’environnement dans .azure/<env>/config.json
le azd
fichier :
{
"platform": {
"config": {
"catalog": "SampleCatalog",
"environmentDefinition": "Todo",
"environmentType": "Dev",
"name": "sample-devcenter",
"Project": "SampleProject"
}
}
}
Portée du projet
Définissez des configurations pour vos centres de développement au niveau de l’étendue azd
du projet dans le platform
nœud du azure.yaml
fichier :
name: todo-nodejs-mongo-aca
metadata:
template: todo-nodejs-mongo-aca@0.0.1-beta
platform:
type: devcenter
config:
catalog: SampleCatalog
environmentDefinition: Todo
name: sample-devcenter
project: SampleProject
services:
api:
project: ./src/api
host: containerapp
language: js
web:
project: ./src/web
host: containerapp
language: js
Étendue d’utilisateur
Définissez des configurations pour vos centres de développement au niveau de l’étendue de l’utilisateur dans le ~/<user_profile>/.azd/config.json
fichier :
{
"platform": {
"config": {
"catalog": "SampleCatalog",
"environmentDefinition": "Todo",
"environmentType": "Dev",
"name": "sample-devcenter",
"Project": "SampleProject"
}
}
}