Skip to content

Latest commit

 

History

History
108 lines (74 loc) · 9.25 KB

File metadata and controls

108 lines (74 loc) · 9.25 KB

Workshop de Modernização de Aplicações

As seções a seguir orientam você no processo de modernização da aplicação Java de exemplo asset-manager para o Azure usando o GitHub Copilot app modernization.

Índice

Pré-requisitos

Nota: Se você estiver usando Gradle, apenas o Gradle wrapper versão 5+ é suportado. O Kotlin Domain Specific Language (DSL) não é suportado.

A funcionalidade My Tasks ainda não é suportada para o IntelliJ IDEA.

Clonar o Repositório

git clone https://github.com/copilot-dev-days/appmod-workshop-java.git
cd appmod-workshop-java

Instalar o GitHub Copilot app modernization

No VSCode, abra a visualização de Extensões na Barra de Atividades, pesquise pela extensão GitHub Copilot app modernization no marketplace. Clique no botão Instalar para a extensão. Após a conclusão da instalação, você deverá ver uma notificação no canto inferior direito do VSCode confirmando o sucesso.

Alternativa: IntelliJ IDEA Alternativamente, você pode usar o IntelliJ IDEA. Abra File > Settings (ou IntelliJ IDEA > Preferences no macOS), navegue até Plugins > Marketplace, pesquise por GitHub Copilot app modernization e clique em Install. Reinicie o IntelliJ IDEA se solicitado.

Avaliar Sua Aplicação Java

O primeiro passo é avaliar a aplicação Java de exemplo asset-manager. A avaliação fornece insights sobre a prontidão da aplicação para migração ao Azure.

  1. Abra o VS Code com todos os pré-requisitos instalados para o asset manager, mudando o diretório para o diretório asset-manager e executando code . nesse diretório.

  2. Na barra lateral de Atividades, abra o painel da extensão GitHub Copilot app modernization.

  3. Na seção QUICKSTART, clique em Start Assessment para iniciar a avaliação da aplicação.

    Trigger Assessment

  4. Aguarde a conclusão da avaliação. Esta etapa pode levar vários minutos.

  5. Após a conclusão, uma aba Assessment Report será aberta. Este relatório fornece uma visão categorizada de problemas de prontidão para a nuvem e soluções recomendadas. Selecione a aba Issues para visualizar as soluções propostas e prosseguir com as etapas de migração.

Atualizar Runtime e Frameworks

  1. Na tabela Java Upgrade na parte inferior da aba Issues, clique no botão Run Task da primeira entrada Java Version Upgrade.

    Java Upgrade

  2. Após clicar no botão Run Task, o painel do Copilot Chat será aberto com o Agent Mode. O agente fará checkout de um novo branch e começará a atualizar a versão do JDK e o framework Spring/Spring Boot. Clique em Allow para quaisquer solicitações do agente.

Nota: A ferramenta de atualização também suporta atualização para o JDK 25 (a versão LTS mais recente). Para isso, clique na mensagem de chat gerada, edite a versão alvo do Java para 25 e então clique em Send para aplicar a alteração.

Expor endpoints de saúde usando Custom Skills

Nesta seção, você usará custom skills para expor endpoints de saúde para suas aplicações em vez de escrever código manualmente. Os passos a seguir demonstram como criar uma custom skill com referências e prompts adequados.

Nota: Custom skills (My Skills) não são suportadas para o plugin do IntelliJ IDEA. Se você estiver usando o IntelliJ IDEA, pode pular esta seção.

  1. Na barra lateral de Atividades, abra o painel da extensão GitHub Copilot app modernization. Passe o mouse sobre a seção TASKS e então selecione Create a Custom Skill.

    Create Custom Skill

  2. Um formulário Create a Skill será aberto com os seguintes campos. Preencha-os conforme mostrado abaixo:

    • Skill Name: expose-health-endpoint
    • Skill Description: This skill helps add Spring Boot Actuator health endpoints for Azure Container Apps deployment readiness.
    • Skill Content: You are a Spring Boot developer assistant, follow the Spring Boot Actuator documentation to add basic health endpoints for Azure Container Apps deployment.
  3. Clique em Add Resources para adicionar a documentação oficial do Spring Boot Actuator como recurso. Cole o seguinte link: https://docs.spring.io/spring-boot/reference/actuator/endpoints.html.

    Create a Skill form

  4. Clique em Save para criar a skill. Sua custom skill agora aparece na seção TASKS > My Skills.

  5. Clique em Run para executá-la.

  6. A janela do Copilot chat abre no Agent Mode e gera automaticamente o plano de migração, faz checkout de um novo branch, realiza alterações no código e executa o ciclo de validação e correção. Clique em Allow para quaisquer solicitações de chamada de ferramenta do agente.

  7. Revise as alterações de código propostas e clique em Keep para aplicá-las.

Conteinerizar Aplicações

Agora que você concluiu as etapas de atualização e endpoint de saúde, o próximo passo é preparar sua aplicação para implantação na nuvem, conteinerizando os módulos web e worker. Nesta seção, você usará Containerization Tasks para conteinerizar suas aplicações.

  1. Na barra lateral de Atividades, abra o painel da extensão GitHub Copilot app modernization. Na seção TASKS, expanda Common Tasks > Containerize Tasks e clique no botão de execução para Containerize Application.

    Run Containerize Application task

  2. Um prompt predefinido será preenchido no painel do Copilot Chat com o Agent Mode. O Copilot Agent começará a analisar o workspace e criará um containerization-plan.copiotmd com o plano de conteinerização.

    Containerization prompt and plan

  3. Visualize o plano e colabore com o Copilot Agent enquanto ele segue as Execution Steps do plano, clicando em Continue/Allow nas notificações pop-up do chat para executar comandos. Algumas das etapas de execução utilizam ferramentas agênticas do Container Assist.

  4. O Copilot Agent ajudará a gerar Dockerfile, construir imagens Docker e corrigir erros de build, se houver. Clique em Keep para aplicar o código gerado.