Compartilhar via


Preparar a infraestrutura e implantar aplicativos com o agente de modernização do GitHub Copilot

O agente de modernização do GitHub Copilot dá suporte ao provisionamento de infraestrutura, à contêinerização e à implantação. Esses recursos seguem o mesmo modelo de "plano de criação → plano de execução" usado em todo o agente.

O fluxo de trabalho consiste em duas fases:

  1. Preparação da infraestrutura: gerar e provisionar a infraestrutura do Azure.
  2. Contêinerização e implantação: conteinerize e implante o aplicativo.

Observação

Essas duas fases são independentes. Você pode executá-los juntos ou usar cada fase separadamente. Por exemplo, ignore a preparação da infraestrutura se você já tiver um ambiente provisionado ou prepare a infraestrutura agora e implante mais tarde.

Pré-requisitos

  • Uma assinatura do Azure: uma assinatura ativa do Azure para provisionamento de infraestrutura.
  • Modernizar a CLI: siga o início rápido para instalar e autenticar.

Fase 1: Preparação da infraestrutura

O agente de modernização cria um plano para provisionar a infraestrutura do Azure com base nas entradas fornecidas. Essa funcionalidade inclui a capacidade de projetar uma zona de destino do Azure adaptada ao seu aplicativo, abrangendo bases de rede, identidade, governança e segurança.

Entradas

O agente pode usar várias entradas para informar o plano de infraestrutura:

  • Código-fonte do aplicativo: análise de base de código para determinar a pilha de tecnologia, as dependências e os requisitos de recursos.
  • Relatórios de avaliação: Relatórios do modernize assess, Azure Migrate ou de outras ferramentas de migração e avaliação.
  • Diagramas de arquitetura: diagramas de arquitetura de pré-migração ou documentos de design no repositório.
  • Requisitos de conformidade e segurança: políticas organizacionais, padrões de segurança ou diretrizes de zona de destino, fornecidas como documentos no repositório ou como linguagem natural em seu prompt.

Criar o plano de infraestrutura

Use modernize plan create com um prompt que descreva suas necessidades de infraestrutura:

modernize plan create "help create azure infrastructure for my app" --plan-name infra-setup

O agente gera um plano que inclui uma arquitetura do Azure proposta e uma lista de recursos detalhada a ser provisionada. Por padrão, o plano abrange a geração de arquivos IaC e o provisionamento de recursos. Você pode solicitar apenas a geração de arquivos IaC por meio do prompt.

Dica

Combine diferentes entradas e preferências em seu prompt. Por exemplo:

  • "create an Azure landing zone tailored to my application's architecture and requirements"
  • "create azure infrastructure based on the assessment report, following our compliance policies in docs/security-requirements.md"
  • "generate Bicep files for the target architecture in the design doc, don't provision yet"
  • "provision azure resources based on the architecture diagram and assessment findings"

Examinar o plano

Examine os arquivos de saída antes da execução:

  • Arquivo de plano (.github/modernize/infra-setup/plan.md): estratégia de infraestrutura e arquitetura proposta.
  • Lista de tarefas (.github/modernize/infra-setup/tasks.json): tarefas específicas que o agente executa.

Você pode editar ambos os arquivos para ajustar as configurações de recursos ou modificar a abordagem antes da execução.

Executar o plano de infraestrutura

Execute o plano:

modernize plan execute --plan-name infra-setup

Verificar a infraestrutura

Examine o código de infraestrutura gerado e confirme os recursos do Azure por meio do portal do Azure ou da CLI do Azure:

git status
git diff main

Fase 2: contêinerização e implantação

Utilize um segundo plano para containerizar seu aplicativo e implantá-lo.

Observação

Essa fase requer o código-fonte do aplicativo que você já migrou ou atualizou. Conclua a modernização de código antes de prosseguir com a implantação e a contêinerização.

Criar o plano de implantação

modernize plan create "containerize and deploy my app to azure, subscription: <sub-id>, resource group: <rg-name>" --plan-name deploy

Você pode colocar em contêineres e implantar juntos, ou tratá-los de forma separada com planos individuais.

  • Contêinerização: gera um Dockerfile para seu projeto e valida a construção da imagem do contêiner.
  • Implantação: cria todos os arquivos e manifestos de configuração necessários com base no serviço de hospedagem do Azure de destino, implanta o aplicativo e gera um script de implantação reutilizável para uso futuro.

Dica

Personalize o prompt para atender às suas necessidades:

  • "containerize my app and create dockerfile": containerizar apenas, sem desdobramento.
  • "deploy my app to the AKS cluster in subscription: <sub-id>, resource group: <rg-name>": implantar um aplicativo já containerizado.

Examinar o plano

Examine os arquivos de plano gerados:

  • Arquivo de plano (.github/modernize/deploy/plan.md): estratégia de conteneirização e implantação.
  • Lista de tarefas (.github/modernize/deploy/tasks.json): tarefas de implantação específicas.

Executar o plano de implantação

modernize plan execute --plan-name deploy

Verificar a implantação

  1. Examine as alterações de código: verifique o Dockerfile gerado, os manifestos de implantação e as alterações de configuração.

    git status
    git diff main
    
  2. Valide o aplicativo em execução: acesse seu aplicativo implantado por meio da URL fornecida pelo serviço de hospedagem de destino.

Usar o modo interativo

Você também pode executar ambas as fases por meio da TUI interativa executando modernize e selecionando Criar plano de modernização no menu.

Próximas Etapas