Tutorial: Implantar ambientes em CI/CD usando o Azure Pipelines
Neste tutorial, você aprenderá a integrar os Ambientes de Implantação do Azure (ADE) ao seu pipeline de CI/CD do Azure Pipelines.
A integração contínua e a entrega contínua (CI/CD) são uma abordagem de desenvolvimento de software que ajuda as equipes a automatizar o processo de criação, teste e implantação de alterações de software. O CI/CD permite-lhe lançar alterações de software com mais frequência e com maior confiança.
Antes de começar este tutorial, familiarize-se com os recursos e conceitos dos Ambientes de Implantação revisando os principais conceitos dos Ambientes de Implantação do Azure.
Neste tutorial, irá aprender a:
- Criar e configurar um repositório do Azure Repos
- Conecte o catálogo ao seu centro de desenvolvimento
- Configurar conexão de serviço
- Criar um pipeline
- Criar um ambiente
- Teste o pipeline de CI/CD
Pré-requisitos
- Uma conta do Azure com uma subscrição ativa.
- Permissões de proprietário na assinatura do Azure.
- Uma assinatura do Azure DevOps.
- Crie uma conta gratuitamente.
- Uma organização e um projeto do Azure DevOps.
- Ambientes de Implantação do Azure.
- Centro de desenvolvimento e projeto.
- Catálogo de exemplo anexado ao centro de desenvolvimento.
Criar e configurar um repositório do Azure Repos
- Entre em sua organização do Azure DevOps (
https://dev.azure.com/<your-organization>
) e selecione seu projeto. Substitua o espaço reservado de<your-organization>
texto pelo identificador do projeto. - Selecione Arquivos de repos>.
- Em Importar um repositório, selecione Importar.
- Em Importar um repositório Git, selecione ou insira o seguinte:
- Tipo de repositório: Git
- URL do clone: https://github.com/Azure/deployment-environments
Configurar tipos de ambiente
Os tipos de ambiente definem os diferentes tipos de ambientes que suas equipes de desenvolvimento podem implantar. Você pode aplicar configurações diferentes para cada tipo de ambiente. Você cria tipos de ambiente no nível do centro de desenvolvimento e referenciados no nível do projeto.
Crie tipos de ambiente de centro de desenvolvimento:
Inicie sessão no portal do Azure.
Em Centros de desenvolvimento, selecione seu centro de desenvolvimento.
No menu à esquerda, em Configuração do ambiente, selecione Tipos de ambiente e, em seguida, selecione Criar.
Use as etapas a seguir para criar três tipos de ambiente: Sandbox, FunctionApp, WebApp. Em Criar tipo de ambiente, insira as seguintes informações e selecione Adicionar.
Nome valor Nome Insira um nome para o tipo de ambiente. Etiquetas Insira um nome e um valor de tag. Confirme se o tipo de ambiente foi adicionado verificando as notificações do portal do Azure.
Crie tipos de ambiente de projeto:
No menu à esquerda, em Gerir, selecione Projetos e, em seguida, selecione o projeto que pretende utilizar.
No menu à esquerda, em Configuração do ambiente, selecione Tipos de ambiente e, em seguida, selecione Adicionar.
Use as seguintes etapas para adicionar os três tipos de ambiente: Sandbox, FunctionApp, WebApp. Em Adicionar tipo de ambiente ao <nome> do projeto, insira ou selecione as seguintes informações:
Nome Valor Tipo Selecione um tipo de ambiente de nível de centro de desenvolvimento para habilitar para o projeto específico. Subscrição de implementação Selecione a assinatura na qual o ambiente é criado. Identidade de implantação Selecione uma identidade atribuída pelo sistema ou uma identidade gerenciada atribuída pelo usuário para executar implantações em nome do usuário. Permissões sobre recursos>de ambiente Função(ões) de criador de ambiente Selecione as funções para dar acesso aos recursos do ambiente. Permissões em recursos>de ambiente Acesso adicional Selecione os usuários ou grupos do Microsoft Entra para atribuir a funções específicas nos recursos do ambiente. Etiquetas Insira um nome e um valor de tag. Essas tags são aplicadas em todos os recursos criados como parte do ambiente. Confirme se o tipo de ambiente foi adicionado verificando as notificações do portal do Azure.
Configurar uma conexão de serviço
No Azure Pipelines, você cria uma conexão de serviço em seu projeto do Azure DevOps para acessar recursos em sua assinatura do Azure. Quando você cria a conexão de serviço, o Azure DevOps cria um objeto principal de serviço do Microsoft Entra.
Entre em sua organização do Azure DevOps (
https://dev.azure.com/<your-organization>
) e selecione seu projeto. Substitua o espaço reservado de<your-organization>
texto pelo identificador do projeto.Selecione Configurações do>projeto Conexões> de serviço+ Nova conexão de serviço.
No painel Nova conexão de serviço, selecione o Gerenciador de Recursos do Azure e selecione Avançar.
Selecione o método de autenticação da entidade de serviço (automática) e, em seguida, selecione Avançar.
Insira os detalhes da conexão de serviço e selecione Salvar para criar a conexão de serviço.
Campo Value Nível de âmbito Subscrição. Subscrição Selecione a assinatura do Azure que hospeda seu recurso do centro de desenvolvimento. Grupo de recursos Selecione o grupo de recursos que contém o recurso do centro de desenvolvimento. Nome da conexão de serviço Insira um nome exclusivo para a conexão de serviço. Conceder permissão de acesso a todos os pipelines Selecionado. Na lista de conexões de serviço, selecione a que você criou anteriormente e, em seguida, selecione Gerenciar entidade de serviço. O portal do Azure é aberto em uma guia separada do navegador e mostra os detalhes da entidade de serviço.
No portal do Azure, copie o valor Nome para exibição . Use esse valor na próxima etapa para conceder permissões para executar testes de carga para a entidade de serviço.
Conceder acesso à conexão de serviço ao projeto ADE
Os Ambientes de Implantação do Azure usam o controle de acesso baseado em função para conceder permissões para executar atividades específicas em seu recurso ADE. Para fazer alterações a partir de um pipeline de CI/CD, conceda a função Usuário de Ambientes de Implantação à entidade de serviço.
- No portal do Azure, vá para seu projeto ADE.
- Selecione Controle de acesso (IAM)>Adicionar>Adicionar atribuição de função.
- Na guia Função, selecione Usuário de Ambientes de Implantação na lista de funções de função.
- Na guia Membros, selecione Selecionar membros e use o nome para exibição copiado anteriormente para pesquisar a entidade de serviço.
- Selecione a entidade de serviço e, em seguida, selecione Selecionar.
- No separador Rever + atribuir, selecione Rever + atribuir para adicionar a atribuição de função.
Agora você pode usar a conexão de serviço em sua definição de fluxo de trabalho do Azure Pipelines para acessar seus ambientes ADE.
Conceda à sua conta acesso ao projeto ADE
Para exibir ambientes criados por outros usuários, incluindo a conexão de serviço, você precisa conceder à sua conta acesso de leitura ao projeto ADE.
- No portal do Azure, vá para seu projeto ADE.
- Selecione Controle de acesso (IAM)>Adicionar>Adicionar atribuição de função.
- Na guia Função, selecione Leitor de Ambientes de Implantação na lista de funções de função.
- No separador Membros, selecione Selecionar membros e, em seguida, procure a sua própria conta.
- Selecione a sua conta na lista e, em seguida, selecione Selecionar.
- No separador Rever + atribuir, selecione Rever + atribuir para adicionar a atribuição de função.
Agora você pode exibir os ambientes criados pelo seu fluxo de trabalho do Azure Pipelines.
Configurar um pipeline
Edite o azure-pipelines.yml
arquivo em seu repositório do Azure Repos para personalizar seu pipeline.
No pipeline, você define as etapas para criar o ambiente. Nesse pipeline, você define as etapas para criar o ambiente como um trabalho, que é uma série de etapas que são executadas sequencialmente como uma unidade.
Para personalizar o pipeline, você:
- Especifique a Conexão de Serviço a ser usada e O pipeline usa a CLI do Azure para criar o ambiente.
- Use um script embutido para executar um comando da CLI do Azure que cria o ambiente.
A CLI do Azure é uma ferramenta de linha de comando que fornece um conjunto de comandos para trabalhar com recursos do Azure. Para descobrir mais comandos da CLI do Azure, consulte az devcenter.
Em seu projeto do Azure DevOps, selecione Arquivos de Repos>.
No painel Arquivos, na pasta, selecione
azure-pipelines.yml
arquivo.ado
.No arquivo, edite
azure-pipelines.yml
o conteúdo existente com o seguinte código:Substitua
<AzureServiceConnectionName>
pelo nome da conexão de serviço criada anteriormente.No , substitua
Inline script
cada um dos seguintes espaços reservados por valores apropriados ao seu ambiente do Azure:Marcador de Posição Value <dev-center-name>
O nome do seu centro de desenvolvimento. <project-name>
O nome do seu projeto. <catalog-name>
O nome do seu catálogo. <environment-definition-name>
Não altere. Define a definição de ambiente que é usada. <environment-type>
O tipo de ambiente. <environment-name>
Especifique um nome para o novo ambiente. <parameters>
Não altere. Faz referência ao arquivo json que define parâmetros para o ambiente.
Selecione Consolidar para guardar as alterações.
No painel Confirmar alterações, insira uma mensagem de confirmação e selecione Confirmar.
Criar um ambiente usando um pipeline
Em seguida, execute o pipeline para criar o ambiente ADE.
- No seu projeto do Azure DevOps, selecione Pipelines.
- Selecione o pipeline criado anteriormente e, em seguida, selecione Executar pipeline.
- Você pode verificar o progresso da execução do pipeline selecionando o nome do pipeline e, em seguida, selecionando Execuções. Selecione a execução para ver os detalhes da execução do pipeline.
- Você também pode verificar o progresso da criação do ambiente no portal do Azure selecionando seu centro de desenvolvimento, selecionando seu projeto e, em seguida, selecionando Ambientes.
Você pode inserir esse trabalho em qualquer lugar em um pipeline de Integração Contínua (CI) e/ou Entrega Contínua (CD). Comece com a documentação do Azure Pipelines para saber mais sobre como criar e gerenciar pipelines.
Clean up resources (Limpar recursos)
Quando terminar de usar os recursos criados neste tutorial, você poderá excluí-los para evitar incorrer em cobranças.
Use o seguinte comando para excluir o ambiente criado neste tutorial:
az devcenter dev environment delete --dev-center <DevCenterName> --project-name <DevCenterProjectName> --name <DeploymentEnvironmentInstanceToCreateName> --yes