Fonctions de déploiement pour Bicep
Cet article décrit les fonctions Bicep permettant d’obtenir les valeurs relatives au déploiement actuel.
système de déploiement
deployer()
Retourne les informations sur le principal de déploiement actuel.
Espace de noms : az.
Valeur retournée
Cette fonction retourne les informations sur le principal de déploiement actuel, y compris l’ID de locataire et l’ID d’objet.
{
"objectId": "",
"tenantId": ""
}
Exemple
L’exemple de fichier Bicep suivant retourne l’objet deployer.
output deployer object = deployer()
L’exemple précédent retourne l’objet suivant :
{
"objectId":"aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb",
"tenantId":"aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e"
}
deployment
deployment()
Renvoie des informations sur l’opération de déploiement actuelle.
Espace de noms : az.
Valeur retournée
Cette fonction retourne l’objet transmis au cours du déploiement. Les propriétés de l’objet retourné diffèrent selon les scénarios suivants :
- déploiement d’un fichier Bicep local.
- Vous déployez un groupe de ressources ou sur l’une des autres étendues (abonnement Azure, groupe d’administration ou locataire).
Lors du déploiement d’un fichier Bicep local sur un groupe de ressources, la fonction retourne le format suivant :
{
"name": "",
"properties": {
"template": {
"$schema": "",
"contentVersion": "",
"parameters": {},
"variables": {},
"resources": [],
"outputs": {}
},
"templateHash": "",
"parameters": {},
"mode": "",
"provisioningState": ""
}
}
Lorsque vous déployez sur un abonnement Azure, un groupe d’administration ou un locataire, l’objet retourné comprend une propriété location
. La propriété location
n’est pas incluse quand vous déployez un fichier Bicep local. Le format est le suivant :
{
"name": "",
"location": "",
"properties": {
"template": {
"$schema": "",
"contentVersion": "",
"resources": [],
"outputs": {}
},
"templateHash": "",
"parameters": {},
"mode": "",
"provisioningState": ""
}
}
Exemple
L’exemple suivant retourne l’objet de déploiement :
output deploymentOutput object = deployment()
L’exemple précédent retourne l’objet suivant :
{
"name": "deployment",
"properties": {
"template": {
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [],
"outputs": {
"deploymentOutput": {
"type": "Object",
"value": "[deployment()]"
}
}
},
"templateHash": "13135986259522608210",
"parameters": {},
"mode": "Incremental",
"provisioningState": "Accepted"
}
}
Environnement
environment()
Retourne des informations sur l’environnement Azure utilisé pour le déploiement. La environment()
fonction n’est pas consciente des configurations de ressources. Il ne peut retourner qu’un seul suffixe DNS par défaut pour chaque type de ressource.
Espace de noms : az.
Remarques
Pour afficher la liste des environnements inscrits pour votre compte, utilisez az cloud list ou Get-AzEnvironment.
Valeur retournée
Cette valeur retourne des propriétés pour l’environnement Azure actuel. L’exemple suivant présente les propriétés pour Azure international. Les clouds souverains peuvent retourner des propriétés légèrement différentes.
{
"name": "",
"gallery": "",
"graph": "",
"portal": "",
"graphAudience": "",
"activeDirectoryDataLake": "",
"batch": "",
"media": "",
"sqlManagement": "",
"vmImageAliasDoc": "",
"resourceManager": "",
"authentication": {
"loginEndpoint": "",
"audiences": [
"",
""
],
"tenant": "",
"identityProvider": ""
},
"suffixes": {
"acrLoginServer": "",
"azureDatalakeAnalyticsCatalogAndJob": "",
"azureDatalakeStoreFileSystem": "",
"azureFrontDoorEndpointSuffix": "",
"keyvaultDns": "",
"sqlServerHostname": "",
"storage": ""
}
}
Exemple
L’exemple de fichier Bicep suivant retourne l’objet d’environnement.
output environmentOutput object = environment()
L’exemple précédent retourne l’objet suivant lorsqu’il est déployé vers Azure international :
{
"name": "AzureCloud",
"gallery": "https://gallery.azure.com/",
"graph": "https://graph.windows.net/",
"portal": "https://portal.azure.com",
"graphAudience": "https://graph.windows.net/",
"activeDirectoryDataLake": "https://datalake.azure.net/",
"batch": "https://batch.core.windows.net/",
"media": "https://rest.media.azure.net",
"sqlManagement": "https://management.core.windows.net:8443/",
"vmImageAliasDoc": "https://raw.githubusercontent.com/Azure/azure-rest-api-specs/master/arm-compute/quickstart-templates/aliases.json",
"resourceManager": "https://management.azure.com/",
"authentication": {
"loginEndpoint": "https://login.microsoftonline.com/",
"audiences": [ "https://management.core.windows.net/", "https://management.azure.com/" ],
"tenant": "common",
"identityProvider": "AAD"
},
"suffixes": {
"acrLoginServer": ".azurecr.io",
"azureDatalakeAnalyticsCatalogAndJob": "azuredatalakeanalytics.net",
"azureDatalakeStoreFileSystem": "azuredatalakestore.net",
"azureFrontDoorEndpointSuffix": "azurefd.net",
"keyvaultDns": ".vault.azure.net",
"sqlServerHostname": ".database.windows.net",
"storage": "core.windows.net"
}
}
Étapes suivantes
- Pour obtenir des valeurs de ressources, de groupes de ressources ou d’abonnements, consultez Fonctions de ressource.