Funções de implantação para Bicep
Este artigo descreve as funções do Bicep para obter valores relacionados à implantação atual.
implantador
deployer()
Retorna as informações sobre a entidade de implantação atual.
Espaço de nomes: az.
Valor devolvido
Essa função retorna as informações sobre a entidade de implantação atual, incluindo ID do locatário e ID do objeto.
{
"objectId": "",
"tenantId": ""
}
Exemplo
O arquivo Bicep de exemplo a seguir retorna o objeto deployer.
output deployer object = deployer()
O exemplo anterior retorna o seguinte objeto:
{
"objectId":"aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb",
"tenantId":"aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e"
}
implementação
deployment()
Retorna informações sobre a operação de implantação atual.
Espaço de nomes: az.
Valor devolvido
Essa função retorna o objeto que é passado durante a implantação. As propriedades no objeto retornado diferem com base no fato de você estar:
- implantando um arquivo Bicep local.
- implantando em um grupo de recursos ou implantando em um dos outros escopos (assinatura do Azure, grupo de gerenciamento ou locatário).
Ao implantar um arquivo Bicep local em um grupo de recursos, a função retorna o seguinte formato:
{
"name": "",
"properties": {
"template": {
"$schema": "",
"contentVersion": "",
"parameters": {},
"variables": {},
"resources": [],
"outputs": {}
},
"templateHash": "",
"parameters": {},
"mode": "",
"provisioningState": ""
}
}
Quando você implanta em uma assinatura, grupo de gerenciamento ou locatário do Azure, o objeto de retorno inclui uma location
propriedade. A location
propriedade não está incluída ao implantar um arquivo Bicep local. O formato é:
{
"name": "",
"location": "",
"properties": {
"template": {
"$schema": "",
"contentVersion": "",
"resources": [],
"outputs": {}
},
"templateHash": "",
"parameters": {},
"mode": "",
"provisioningState": ""
}
}
Exemplo
O exemplo a seguir retorna o objeto de implantação:
output deploymentOutput object = deployment()
O exemplo anterior retorna o seguinte objeto:
{
"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"
}
}
ambiente
environment()
Retorna informações sobre o ambiente do Azure usado para implantação. A environment()
função não está ciente das configurações de recursos. Ele só pode retornar um único sufixo DNS padrão para cada tipo de recurso.
Espaço de nomes: az.
Observações
Para ver uma lista de ambientes registrados para sua conta, use az cloud list ou Get-AzEnvironment.
Valor devolvido
Essa função retorna propriedades para o ambiente atual do Azure. O exemplo a seguir mostra as propriedades do Azure global. Nuvens soberanas podem retornar propriedades ligeiramente diferentes.
{
"name": "",
"gallery": "",
"graph": "",
"portal": "",
"graphAudience": "",
"activeDirectoryDataLake": "",
"batch": "",
"media": "",
"sqlManagement": "",
"vmImageAliasDoc": "",
"resourceManager": "",
"authentication": {
"loginEndpoint": "",
"audiences": [
"",
""
],
"tenant": "",
"identityProvider": ""
},
"suffixes": {
"acrLoginServer": "",
"azureDatalakeAnalyticsCatalogAndJob": "",
"azureDatalakeStoreFileSystem": "",
"azureFrontDoorEndpointSuffix": "",
"keyvaultDns": "",
"sqlServerHostname": "",
"storage": ""
}
}
Exemplo
O arquivo Bicep de exemplo a seguir retorna o objeto de ambiente.
output environmentOutput object = environment()
O exemplo anterior retorna o seguinte objeto quando implantado no Azure global:
{
"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"
}
}
Próximos passos
- Para obter valores de recursos, grupos de recursos ou assinaturas, consulte Funções de recurso.