Azure Developer CLI e Ambientes de Implantação Azure
Neste artigo, você aprenderá sobre a Azure Developer CLI (azd
) e como ela funciona com os Ambientes de Implantação Azure (ADE) para provisionar a infraestrutura do aplicativo e implantar o código do aplicativo na nova infraestrutura.
azd
é uma ferramenta de linha de comando de software livre que fornece comandos amigáveis para desenvolvedores que são mapeados para estágios-chave em seu fluxo de trabalho. Você pode instalar azd
localmente em seu computador ou usá-lo em outros ambientes.
Com o ADE, você pode criar ambientes a partir de uma definição de ambiente em um catálogo anexado ao centro de desenvolvimento ou usando o Modelo de extensibilidade do ADE para executar implantações. Ao adicionar azd
, você pode simplificar o processo de provisionamento de infraestrutura e implantação de código na nuvem.
Como funciona o azd
com o ADE?
azd
funciona com o ADE para permitir que você crie ambientes de onde você está trabalhando.
Com o ADE e o azd
, os desenvolvedores individuais trabalhando com infraestrutura e código exclusivos que desejam carregar na nuvem podem criar um ambiente a partir de uma pasta local. Eles podem usar azd
para provisionar um ambiente e implantar seu código perfeitamente.
Em escala, o uso conjunto do ADE e do azd
permite que você forneça uma maneira para os desenvolvedores criarem a infraestrutura e o código do aplicativo. Sua equipe pode criar vários ambientes do ADE da mesma definição de ambiente compatível azd
e provisionar código para a nuvem de forma consistente.
Entender modelos azd
Os comandos da Azure Developer CLI foram projetados para funcionar com modelos padronizados. Cada modelo é um repositório de código que segue convenções específicas de arquivo e pasta. Os modelos contêm os ativos que o azd
precisa para provisionar um ambiente do Ambiente de Implantação Azure. Quando você executa um comando como azd up
, a ferramenta usa os ativos de modelo para executar várias etapas de fluxo de trabalho, como provisionar ou implantar recursos no Azure.
O diagrama a seguir mostra uma estrutura de modelo típica:
├── infra [ Contains infrastructure as code files ]
├── .azdo [ Configures an Azure Pipeline ]
├── .devcontainer [ For DevContainer ]
├── .github [ Configures a GitHub workflow ]
├── .vscode [ VS Code workspace configurations ]
├── .azure [ Stores Azure configurations and environment variables ]
├── src [ Contains all of the deployable app source code ]
└── azure.yaml [ Describes the app and type of Azure resources]
Todos os modelos do azd
incluem os seguintes ativos:
pasta infra - A pasta infra não é usada no
azd
com o ADE. Contém toda a infraestrutura do Bicep ou do Terraform como arquivos de código para o modelo doazd
. O ADE fornece a infraestrutura como arquivos de código para o modeloazd
. Você não precisa incluir esses arquivos em seu modeloazd
.arquivo azure.yaml – um arquivo de configuração que define um ou mais serviços em seu projeto e os mapeia para recursos do Azure para implantação. Por exemplo, você pode definir um serviço de API e um serviço de front-end da Web, cada um com atributos que os mapeiam para diferentes recursos do Azure para implantação.
Pasta .azure – contém configurações essenciais do Azure e variáveis de ambiente, como o local para implantar recursos ou outras informações de assinatura.
pasta src – contém todo o código-fonte do aplicativo implantável. Alguns modelos
azd
fornecem apenas ativos de infraestrutura e deixam o diretório src vazio para você adicionar seu próprio código de aplicativo.
Opcionalmente, a maioria dos modelos do azd
inclui uma ou mais das seguintes pastas:
Pasta .devcontainer – permite que você configure um ambiente de Contêiner de Desenvolvimento para o seu aplicativo. Essa abordagem comum de ambiente de desenvolvimento que não é específica do
azd
.pasta .github – contém os arquivos de fluxo de trabalho de CI/CD para o GitHub Actions, que é o provedor padrão de CI/CD para
azd
.Pasta .azdo – Se você decidir usar o Azure Pipelines para CI/CD, defina os arquivos de configuração de fluxo de trabalho nesta pasta.
azd
catálogos compatíveis
Os catálogos de Ambientes de Implantação Azure consistem em definições de ambiente: modelos IaC que definem os recursos de infraestrutura provisionados para um ambiente de implantação. A Azure Developer CLI usa definições de ambiente no catálogo anexado ao centro de desenvolvimento para provisionar novos ambientes.
Atualmente, a Azure Developer CLI funciona com modelos do ARM armazenados no catálogo do centro de desenvolvimento dos Ambientes de Implantação do Azure. Ele também dá suporte a outros modelos de IaC, como Bicep e Terraform por meio do modelo de extensibilidade do ADE. Para saber como configurar o modelo de extensibilidade do ADE, consulte o modelo de extensibilidade dos Ambientes de Implantação do Azure.
Para dar suporte adequado a determinados serviços de Computação do Azure, a Azure Developer CLI requer mais configurações no modelo IaC. Por exemplo, você deve marcar hosts do serviço de aplicativo com informações específicas para que o azd
saiba como localizar os hosts e implantar o aplicativo neles.
Você pode ver uma lista de serviços do Azure com suporte aqui: Serviços de computação do Azure com suporte (host).
Tornar o catálogo do ADE compatível com azd
Para habilitar suas equipes de desenvolvimento para nós azd
com o ADE, você precisa criar uma definição de ambiente em seu catálogo compatível com azd
. Você pode criar uma nova azd
definição de ambiente compatível ou usar uma definição de ambiente existente no catálogo do centro de desenvolvimento dos Ambientes de Implantação Azure. Se você optar por usar uma definição de ambiente existente, precisará fazer algumas alterações para torná-la compatível com azd
.
Alterações incluem:
- Se você estiver modificando um modelo
azd
existente, remova a pastainfra
. O ADE usa os seguintes arquivos para criar a infraestrutura:- Modelo arm (azuredeploy.json.)
- Arquivo de configuração que define parâmetros (environment.yaml ou manifest.yaml)
- Marque recursos em azure.yaml com informações específicas para que
azd
saiba como encontrar os hosts e implantar o aplicativo neles.- Saiba mais sobre Como marcar recursos para Ambientes de Implantação Azure.
- Saiba mais sobre o Esquema azure.yaml da Azure Developer CLI.
Para saber mais sobre como tornar sua definição de ambiente do ADE compatível com azd
, confira Tornar seu projeto compatível com a Azure Developer CLI.
Habilitar o suporte para azd
no ADE
Para habilitar o suporte azd
no ADE, você precisa definir o platform.type
como devcenter. Essa configuração permite que azd
use novos componentes do centro de desenvolvimento para o estado do ambiente remoto e o provisionamento e significa que a pasta infra em seus modelos é ignorada. Em vez disso, azd
usa um dos modelos de infraestrutura definidos no catálogo do centro de desenvolvimento para provisionamento de recursos.
Para habilitar o suporte para azd
, execute o seguinte comando:
azd config set platform.type devcenter
Explorar os comandos do azd
Quando o recurso do centro de desenvolvimento está habilitado, o comportamento padrão de alguns comandos comuns do azd
muda para funcionar com esses ambientes remotos. Para obter mais informações, confira Trabalhar com Ambientes de Implantação Azure.