Partilhar via


Trabalhar com ambientes CLI do Azure Developer

A CLI do Desenvolvedor do Azure (azd) ajuda você a criar e gerenciar ambientes com suas próprias configurações, como dev, test e prod. Este artigo mostra como criar e gerenciar ambientes e como usá-los com seus arquivos de infraestrutura do Bicep.

Criar ambientes

Crie um novo ambiente usando o azd env new comando:

azd env new <environment-name>

Por exemplo, para criar um ambiente de desenvolvimento:

azd env new dev

Quando você executa um comando como azd up ou azd deploy, azd solicita que você selecione uma assinatura do Azure e um local para o novo ambiente. As configurações de prompt são armazenadas no novo ambiente .env ou config.json arquivos.

Você também pode especificar a assinatura e o local diretamente no comando:

azd env new prod --subscription "My Production Subscription" --location eastus2

Listar ambientes

Para ver todos os ambientes disponíveis para o seu projeto, use:

azd env list

Este comando exibe todos os ambientes que você criou, destacando o ambiente ativo atual:

NAME      DEFAULT   LOCAL     REMOTE
dev       true      true      false
test      false     true      false
prod      false     true      false

Alternar entre ambientes

Para alternar para um ambiente diferente, use o azd env select comando:

azd env select <environment-name>

Por exemplo, para alternar para um ambiente de produção:

azd env select prod

Observação

Esse comando altera seu ambiente ativo, o que afeta comandos subsequentes azd como provision ou deploy.

Compreender o ambiente padrão

O arquivo .azure/config.json de configuração global controla o ambiente selecionado no momento. Quando você executa azd init e nenhum ambiente existe ainda, azd cria automaticamente seu primeiro ambiente e o define como padrão. Se você já tiver um ou mais ambientes e executar azd env new <name>, azd solicitará que você escolha se deseja tornar o novo ambiente o padrão. Se você recusar, o novo ambiente será criado, mas sua seleção atual permanecerá inalterada.

Você pode substituir temporariamente o ambiente padrão para um único comando usando o --environment sinalizador. O uso desse sinalizador não altera o padrão para comandos futuros.

Atualizar configurações de ambiente

Você pode atualizar suas variáveis de ambiente local usando o azd env refresh comando. Este comando localiza a implantação mais recente do Azure para seu aplicativo, recupera os valores da variável de ambiente por nome e atualiza seu arquivo local .env com os valores mais recentes para o ambiente selecionado. Por exemplo, se você provisionou um dev e prod a versão e atualmente tem o dev ambiente selecionado, ele recupera a saída mais recente dessa implantação para preencher o arquivo .env.

azd env refresh

Observação

O azd env refresh comando não reimplanta recursos. Ele apenas atualiza a configuração do ambiente local para corresponder ao estado atual no Azure.

Atualizar seu ambiente é útil quando:

  • Você deseja garantir que seu arquivo local .env reflita as saídas mais recentes de sua infraestrutura (como cadeias de conexão, pontos de extremidade, etc.).
  • Você precisa sincronizar variáveis de ambiente depois que um colega de equipe atualizou o ambiente.

Se outros membros da equipe fizeram alterações nas configurações do ambiente, ou se você fez alterações por meio do portal do Azure, você pode atualizar suas configurações de ambiente local com:

Executar comandos em ambientes específicos

Você pode executar muitos azd comandos em um ambiente específico sem alterar seu ambiente ativo usando o --environment sinalizador ou -e :

azd up --environment dev

Este comando executa o up fluxo de trabalho (provisionamento e implantação) no ambiente sem alterar seu dev ambiente ativo.

Como alternativa, você pode primeiro alternar para o ambiente pretendido:

azd env select test
azd up

Observação

As equipes devem considerar o uso de pipelines CICD por meio do azd pipeline config comando, em vez de implantações diretas usando comandos como azd up ou azd provision.

Excluir recursos do ambiente

Para excluir os recursos do Azure para um ambiente específico, usando o azd down comando:

azd down <environment-name>

Observação

Atualmente, não é possível excluir ou renomear azd ambientes diretamente usando comandos. Se você precisar renomear um ambiente:

  • Use azd down para excluir os recursos do ambiente.
  • Execute azd env new <new-name> para criar o novo ambiente.
  • Exclua manualmente a pasta antiga .env do .azure.

Usar o nome do ambiente em arquivos de infraestrutura

Você pode usar a AZURE_ENV_NAME variável do .env arquivo do seu ambiente para personalizar suas implantações de infraestrutura no Bicep. Isso é útil para nomear, marcar ou configurar recursos com base no ambiente atual.

Observação

Visite Trabalhar com variáveis de ambiente para saber mais sobre como usar variáveis de ambiente para configurar seus projetos da CLI do Desenvolvedor do Azure.

  1. azd Define a AZURE_ENV_NAME variável de ambiente quando você inicializa um projeto.

    AZURE_ENV_NAME=dev
    
  2. Em seu main.parameters.json arquivo, faça referência à variável de ambiente para azd substituir seu valor:

    {
      "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#",
      "contentVersion": "1.0.0.0",
      "parameters": {
        "environmentName": {
          "value": "${AZURE_ENV_NAME}"
        }
      }
    }
    

    Quando você implanta com azd, o valor de .env é passado para o arquivo Bicep de main.parameters.json.

  3. No modelo Bicep, defina um parâmetro para o nome do ambiente:

    param environmentName string
    
  4. Você pode usar o environmentName parâmetro para marcar recursos, facilitando a identificação de qual ambiente um recurso pertence:

    param environmentName string
    
    resource storageAccount 'Microsoft.Storage/storageAccounts@2022-09-01' = {
      name: 'mystorage${uniqueString(resourceGroup().id)}'
      location: resourceGroup().location
      sku: {
        name: 'Standard_LRS'
      }
      kind: 'StorageV2'
      tags: {
        Environment: environmentName
        Project: 'myproject'
      }
    }
    

Essa abordagem ajuda no gerenciamento de recursos, no controle de custos e na automação, associando cada recurso ao seu ambiente de implantação.

Próximos passos