Executar uma transformação na linha de comandos com o Amazon Q Developer
Conclua estas etapas para transformar seu código na linha de comandos com a ferramenta de linha de comandos do Amazon Q Developer.
Pré-requisitos
Antes de iniciar uma transformação na linha de comando, os seguintes pré-requisitos devem ser atendidos:
-
Se você está atualizando sua versão do código Java, seu projeto atende aos pré-requisitos para atualizar versões Java com o Amazon Q.
-
Se você está convertendo SQL incorporado em uma aplicação Java, sua aplicação atende aos pré-requisitos para converter SQL incorporado com o Amazon Q.
-
Você tem o Python instalado no ambiente de linha de comando. É assim que você instalará a ferramenta de linha de comando. A versão mínima compatível do Python é 3.12.
-
Você está executando a transformação no Linux ou no macOS.
-
O tamanho da sua aplicação é de 2 GB ou menos.
-
Se tem dependências específicas que deseja que o Amazon Q atualize, você configurou um arquivo de atualização de dependências.
Etapa 1: selecionar o método de autenticação e adicionar permissões
Você pode autenticar o Centro de Identidade do IAM para executar transformações na linha de comando. Verifique se você tem as permissões necessárias.
nota
As chaves gerenciadas pelo cliente não são compatíveis com transformações realizadas na linha de comando.
Adicionar permissões
A identidade do IAM associada à assinatura do Amazon Q Developer que você está usando para se autenticar deve ter permissões para executar transformações na linha de comando. Antes de continuar, verifique se a sua identidade do IAM tem as permissões definidas em Permitir que os usuários executem transformações na linha de comandos.
Autenticar-se com o Centro de Identidade do IAM por meio de uma assinatura do Amazon Q Developer
Para se autenticar com o Centro de Identidade do IAM, você precisa ter uma assinatura do Amazon Q Developer Pro como usuário da força de trabalho pelo administrador e fornecer o URL inicial para autenticação por meio de sua assinatura. Você ou seu administrador podem encontrar o URL inicial no console do Amazon Q Developer. Para obter mais informações, consulte, Encontrar o URL inicial para uso com o Amazon Q Developer.
Para adicionar as permissões necessárias, consulte Adicionar permissões.
Você fornece o URL inicial em Etapa 4: configurar e autenticar-se.
Etapa 2: instalar a ferramenta
-
Baixe a ferramenta de linha de comandos do Amazon Q para transformações
e descompacte-a. Para baixar uma versão anterior da ferramenta de linha de comando, consulte Histórico de versões.
-
Recomendamos que você configure um ambiente virtual em Python para instalar a ferramenta. Para criar um ambiente virtual, abra uma janela de terminal no diretório em que você deseja instalar a ferramenta e execute:
python -m venv qct-cli -
Para ativar o ambiente virtual, execute:
source qct-cli/bin/activate -
Para instalar a ferramenta na linha de comando, execute o seguinte comando com o caminho para onde você descompactou a ferramenta, com base na arquitetura da sua máquina:
nota
Se estiver usando uma versão mais antiga da ferramenta de linha de comandos para transformações, substitua
1.2.1pela versão que você baixou. -
Para verificar se a ferramenta foi instalada, execute:
which qct
Etapa 3: criar um arquivo de atualização de dependência (opcional)
Você pode fornecer ao Amazon Q um arquivo de atualização de dependência, um arquivo YAML que lista as dependências do seu projeto e as versões para as quais atualizar durante uma transformação. Ao fornecer um arquivo de atualização de dependências, você poderá especificar dependências de terceiros e primárias que o Amazon Q talvez não saiba que precisam ser atualizadas.
As dependências primárias se referem às bibliotecas, plug-ins e estruturas que sua organização mantém e estão disponíveis somente localmente ou na rede privada da sua organização. O Amazon Q é capaz de acessar suas dependências primárias ao realizar compilações em seu ambiente local. Para obter mais informações, consulte Compilar código no ambiente local. Dependências de terceiros são dependências disponíveis publicamente ou de código aberto que não são exclusivas da sua organização.
Você pode especificar dependências primárias que deseja atualizar em um arquivo YAML, e o Amazon Q as atualiza durante a atualização do JDK (por exemplo, do Java 8 para o 17). É possível iniciar uma transformação separada (do 17 para o 17 ou do 21 para 21) após a atualização inicial do JDK para atualizar dependências de terceiros.
Após o Amazon Q realizar uma atualização mínima do JDK, você poderá iniciar uma transformação separada para atualizar todas as dependências de terceiros. Como alternativa, é possível especificar dependências de terceiros e suas versões em um arquivo YAML para atualizar somente essas dependências durante a transformação de atualização da biblioteca.
O Amazon Q solicitará que você forneça um arquivo de atualização de dependência durante a transformação. Se você quiser fornecer um, primeiro verifique se configurou o arquivo corretamente. Os seguintes campos são necessários no arquivo YAML:
-
name: o nome do arquivo de atualização de dependência.
-
description (opcional): uma descrição do arquivo de atualização da dependência e para qual transformação.
-
dependencyManagement: contém a lista de dependências e plug-ins a serem atualizados.
-
dependencies: contém o nome e a versão das bibliotecas a serem atualizadas.
-
plugins: contém os nomes e as versões dos plug-ins a serem atualizados.
-
identifier: o nome da biblioteca, plug-in ou outra dependência.
-
targetVersion: a versão da dependência para a qual atualizar.
-
versionProperty (opcional): a versão da dependência que você está definindo, conforme definida com a tag
propertiesno arquivopom.xmlda sua aplicação. -
originType: se a dependência é primária ou de terceiros, especificada por FIRST_PARTY ou THIRD_PARTY.
Veja a seguir um exemplo de um arquivo YAML de atualização de dependência e a configuração necessária para análise do Amazon Q:
name: dependency-upgrade description: "Custom dependency version management for Java migration from JDK 8/11/17 to JDK 17/21" dependencyManagement: dependencies: - identifier: "com.example:library1" targetVersion: "2.1.0" versionProperty: "library1.version" # Optional originType: "FIRST_PARTY" - identifier: "com.example:library2" targetVersion: "3.0.0" originType: "THIRD_PARTY" plugins: - identifier: "com.example.plugin" targetVersion: "1.2.0" versionProperty: "plugin.version" # Optional originType: "THIRD_PARTY"
Etapa 4: configurar e autenticar-se
Antes de começar uma transformação, você deve se autenticar no Centro de Identidade do IAM e fornecer detalhes de configuração para a transformação.
-
Para iniciar o processo de configuração da transformação, execute o seguinte comando:
qct configure -
Será necessário inserir um caminho do JDK para cada versão Java compatível. Você só precisará especificar o caminho para o JDK da versão de origem da sua aplicação Java, não da versão de destino.
-
Em seguida, para se autenticar no Centro de Identidade do IAM, você precisará inserir o URL inicial do seu perfil de assinatura do Amazon Q Developer Pro.
Em seguida, insira a Região da AWS na qual você se inscreveu no seguinte formato:
us-east-1. Para obter uma lista de regiões compatíveis, consulte Regiões do compatíveis. Para obter uma lista de códigos de região, consulte Regional endpoints no Guia Referência geral da AWS. -
Suas preferências de configuração são salvas em um arquivo configuration.ini.
Etapa 5: executar uma transformação
Selecione o tipo de transformação que você está executando para ver a configuração e os comandos necessários.
nota
Não desligue nem feche sua máquina local durante a transformação do código porque a compilação do lado do cliente requer uma conexão de rede estável.
Pausar ou cancelar uma transformação
Você pode optar por pausar ou cancelar seu trabalho de transformação atual. É possível pausar um trabalho de transformação por até 12 horas antes de poder retomá-lo.
Como pausar ou cancelar um trabalho de transformação de código
-
No terminal da CLI, pressione Ctrl+C no teclado.
-
Selecione se você deseja pausar ou cancelar sua transformação.
-
Insira
1se quiser pausar o trabalho de transformação de código. Você pode retomar o trabalho em até 12 horas para continuar a transformação de código usando o seguinte comando QCT:`qct transform --source_folder=≤/Path/Given/Originally/To/QCT>`. -
Insira
2se quiser cancelar o trabalho de transformação de código.
-