Compartilhar via


Suporte à CLI do Desenvolvedor do Azure para Ambientes de Implantação do Azure

A CLI do Desenvolvedor do Azure (azd) fornece suporte para ambientes de implantação do Azure. Um ADE (Ambiente de Implantação do Azure) é uma coleção pré-configurada de recursos do Azure implantados em assinaturas predefinidas. A governança do Azure é aplicada a essas assinaturas com base no tipo de ambiente, como área restrita, teste, preparo ou produção. Com os Ambientes de Implantação do Azure, você pode impor políticas de segurança corporativa e fornecer um conjunto coletado de modelos de IaC (infraestrutura predefinida como código).

Pré-requisitos

Verifique se você concluiu os seguintes pré-requisitos para trabalhar com ambientes de implantação do Azure usando azd:

Habilitar o suporte ao Ambiente de Implantação do Azure

Você pode configurar azd para provisionar e implantar recursos em seus ambientes de implantação usando comandos padrão, como azd up ou azd provision. Para habilitar o suporte para ambientes de implantação do Azure, execute o seguinte comando:

azd config set platform.type devcenter

Quando platform.type estiver definido como devcenter, todos os azd estado de ambiente remoto e o provisionamento aproveitarão novos componentes do centro de desenvolvimento. Essa configuração também significa que a pasta infra em seus modelos locais será efetivamente ignorada. Em vez disso, azd usará um dos modelos de infraestrutura definidos no catálogo do centro de desenvolvimento para provisionamento de recursos.

Você também pode desabilitar o suporte ao centro de desenvolvimento por meio do seguinte comando:

azd config unset platform

Trabalhar com ambientes de implantação do Azure

Quando o recurso do centro de desenvolvimento está habilitado, o comportamento padrão de alguns comandos comuns azd muda para funcionar com esses ambientes remotos. O recurso do centro de desenvolvimento expande a funcionalidade fornecida pelo suporte de ambiente remoto padrão azd.

azd init

A experiência de comando azd init no modo de centro de desenvolvimento mostra todos os modelos do ADE compatíveis com azd para seleção do catálogo configurado. Durante o processo de inicialização, depois que azd clonar o código do modelo, o arquivo azure.yaml será atualizado automaticamente para incluir uma seção platform com a configuração selecionada com base no modelo escolhido. A configuração inclui o nome do centro de desenvolvimento, o catálogo e a definição de ambiente.

azd init

azd up

O comando azd up empacotará, provisionará e implantará seu aplicativo em Ambientes de Implantação do Azure. No entanto, o estágio de provisionamento do comando azd up usará os modelos de infraestrutura como código coletados no centro de desenvolvimento remoto, enquanto o estágio de implantação implantará o código-fonte em seu modelo de azd. Embora o modo de centro de desenvolvimento esteja habilitado, azd ignorará a pasta infra no modelo de azd local e provisionará apenas os recursos usando os modelos do centro de desenvolvimento. O comando também solicitará todos os valores necessários, como o projeto do Ambiente de Implantação do Azure ou o tipo de ambiente.

azd up

azd template list

O comando azd template list exibirá os modelos de infraestrutura disponíveis no catálogo do centro de desenvolvimento, em vez de mostrar modelos da galeria padrão do AZD Awesome. Catálogos fornecem um conjunto de modelos de infraestrutura como código coletados e aprovados que suas equipes de desenvolvimento podem usar para criar ambientes.

azd template list

Uma captura de tela mostrando a galeria de modelos atualizada.

provisionamento azd

O comando azd provision criará novos ambientes de centro de desenvolvimento. O comando solicitará valores ausentes, como o tipo de ambiente ou o projeto. Quando o comando for executado, ele usará o modelo de infraestrutura associado para provisionar o conjunto correto de recursos do Azure para esse ambiente. Embora o modo de centro de desenvolvimento esteja habilitado, azd ignorará a pasta infra no modelo de azd local e provisionará apenas os recursos usando os modelos do centro de desenvolvimento.

azd provision

azd env list

O comando azd env list exibirá a mesma lista de ambientes que você verá no portal do desenvolvedor.

azd env list

Marcando recursos para ambientes de implantação do Azure

azd provisionamento para Ambientes de Implantação do Azure depende de modelos coletados do catálogo do centro de desenvolvimento. Os modelos no catálogo podem ou não atribuir marcas aos recursos provisionados do Azure para que você associe seus serviços de aplicativo no arquivo azure.yaml. Se os modelos não atribuirem marcas, você poderá resolver esse problema de uma das duas maneiras:

  • Trabalhe com o administrador do catálogo do centro de desenvolvimento para garantir que os recursos provisionados do Azure incluam marcas para associá-las aos serviços definidos em seu arquivo de azure.yaml.

  • Especifique o resourceName em seu arquivo azure.yaml em vez de usar marcas:

    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
    

Definir configurações do centro de desenvolvimento

Você pode definir azd configurações para seus centros de desenvolvimento em vários lugares. As configurações são combinadas a partir desses locais para criar o conjunto final de configurações na seguinte ordem de precedência:

  1. Variáveis de ambiente
  2. Configuração do ambiente do Azd
  3. Configuração do projeto
  4. Configuração do usuário

azd solicitará automaticamente todos os valores de configuração ausentes dessas fontes. Cada uma dessas opções de configuração é detalhada nas seções a seguir.

Variáveis de ambiente

As seguintes variáveis de ambiente serão descobertas e usadas por azd:

  • AZURE_DEVCENTER_NAME
  • AZURE_DEVCENTER_PROJECT
  • AZURE_DEVCENTER_CATALOG
  • AZURE_DEVCENTER_ENVIRONMENT_DEFINITION
  • AZURE_DEVCENTER_ENVIRONMENT_TYPE
  • AZURE_DEVCENTER_ENVIRONMENT_USER

Definir configurações

Defina configurações para os centros de desenvolvimento no escopo do ambiente azd no arquivo .azure/<env>/config.json:

{
    "platform": {
        "config": {
            "catalog": "SampleCatalog",
            "environmentDefinition": "Todo",
            "environmentType": "Dev",
            "name": "sample-devcenter",
            "Project": "SampleProject"
        }
    }
}

Escopo do projeto

Defina configurações para os centros de desenvolvimento no escopo do projeto azd no nó platform do arquivo azure.yaml:

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

Escopo do usuário

Defina configurações para os centros de desenvolvimento no escopo do usuário no arquivo ~/<user_profile>/.azd/config.json:

{
    "platform": {
        "config": {
            "catalog": "SampleCatalog",
            "environmentDefinition": "Todo",
            "environmentType": "Dev",
            "name": "sample-devcenter",
            "Project": "SampleProject"
        }
    }
}