Compartilhar via


Trabalhar com ambientes da CLI do Desenvolvedor do Azure

A CLI do Desenvolvedor do Azure (azd) ajuda você a criar e gerenciar ambientes com suas próprias configurações, como desenvolvimento, teste 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

Lista de ambientes

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

azd env list

Este comando exibe todos os ambientes que você criou, realçando 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.

Entender o ambiente padrão

O arquivo .azure/config.json de configuração global mantém o controle do seu ambiente selecionado no momento. Quando você executa azd init e nenhum ambiente existe ainda, azd cria automaticamente seu primeiro ambiente e o define como o 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. Usar esse 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. Esse comando localiza a implantação mais recente do Azure para seu aplicativo, recupera os valores de 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 uma dev versão e prod tem o dev ambiente selecionado no momento, 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 só atualiza sua configuração de 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 de 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 sinalizador ou -e o --environment sinalizador:

azd up --environment dev

Esse comando executa o up fluxo de trabalho (provisionar e implantar) no dev ambiente sem alterar seu ambiente ativo.

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

azd env select test
azd up

Observação

O Teams deve 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 de ambiente

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

azd down <environment-name>

Observação

No momento, 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 de ambiente.
  • Execute azd env new <new-name> para criar o novo ambiente.
  • Exclua manualmente a pasta antiga .env de .azure.

Usar o nome do ambiente em arquivos de infraestrutura

Você pode usar a AZURE_ENV_NAME variável do arquivo do .env 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 o Trabalho 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 variável de AZURE_ENV_NAME ambiente quando você inicializa um projeto.

    AZURE_ENV_NAME=dev
    
  2. main.parameters.json No 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 é .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 com o gerenciamento de recursos, o controle de custos e a automação associando cada recurso ao seu ambiente de implantação.

Próximas etapas