Exécution d’une transformation sur la ligne de commande avec Amazon Q Developer
Procédez comme suit pour transformer votre code sur la ligne de commande à l’aide de l’outil de ligne de commande Amazon Q Developer.
Prérequis
Avant de commencer une transformation sur la ligne de commande, les conditions suivantes doivent être remplies :
-
Si vous mettez à niveau votre version de code Java, votre projet répond aux conditions requises pour la mise à niveau des versions Java avec Amazon Q.
-
Si vous convertissez du SQL intégré dans une application Java, cette dernière répond aux conditions requises pour convertir le SQL intégré avec Amazon Q.
-
Python est installé sur votre environnement de ligne de commande. Voici comment vous allez installer l’outil de ligne de commande. La version minimale actuellement prise en charge est la version 3.12.
-
Vous exécutez la transformation sous macOS ou Linux.
-
La taille de votre application est inférieure ou égale à 2 Go.
-
Si vous souhaitez qu’Amazon Q mette à niveau certaines dépendances, vous avez configuré un fichier de mise à niveau des dépendances.
Étape 1 : choix de la méthode d’authentification et ajout des autorisations
Vous pouvez authentifier IAM Identity Center pour exécuter des transformations sur la ligne de commande. Veillez à disposer des autorisations appropriées.
Note
Les clés gérées par le client ne sont pas prises en charge pour les transformations effectuées sur la ligne de commande.
Ajout d’autorisations
L’identité IAM associée à l’abonnement Amazon Q Developer que vous utilisez pour vous authentifier doit être autorisée à effectuer des transformations sur la ligne de commande. Avant de continuer, assurez-vous que votre identité IAM possède les autorisations définies dans Utilisateurs autorisés à exécuter des transformations sur la ligne de commande.
Authentifiez-vous auprès d’IAM Identity Center via un abonnement à Amazon Q Developer
Pour vous authentifier auprès d’IAM Identity Center, vous devez être abonné à Amazon Q Developer Pro en tant qu’utilisateur professionnel par votre administrateur et vous devez fournir l’URL de démarrage pour vous authentifier via votre abonnement. Vous ou votre administrateur pouvez trouver l’URL de démarrage dans la console Amazon Q Developer. Pour plus d’informations, consultez Recherche de l’URL de démarrage à utiliser avec Amazon Q Developer.
Pour ajouter les autorisations requises, consultez Ajout d’autorisations.
Vous fournissez l’URL de démarrage dans Étape 4 : configuration et authentification.
Étape 2 : installation de l’outil
-
Chargez l’outil de ligne de commande Amazon Q pour les transformations
et décompressez-le. Pour charger une version précédente de l’outil de ligne de commande, consultez Historique des versions.
-
Nous vous conseillons de configurer un environnement virtuel en Python pour installer l’outil. Pour créer un environnement virtuel, ouvrez une fenêtre de terminal dans le répertoire où vous souhaitez installer l’outil et exécutez :
python -m venv qct-cli -
Pour activer l’environnement virtuel, exécutez :
source qct-cli/bin/activate -
Pour installer l’outil sur votre ligne de commande, exécutez la commande suivante avec le chemin d’accès à l’endroit où vous avez décompressé l’outil, en fonction de l’architecture de votre machine :
Note
Si vous utilisez une ancienne version de l’outil de ligne de commande pour les transformations, remplacez
1.2.1par la version que vous avez chargée. -
Pour vérifier que l’outil a été installé, exécutez :
which qct
Étape 3 : création d’un fichier de mise à niveau des dépendances (facultatif)
Vous pouvez fournir à Amazon Q un fichier de mise à niveau des dépendances, un fichier YAML répertoriant les dépendances de votre projet et les versions vers lesquelles effectuer la mise à niveau lors d’une transformation. En fournissant un fichier de mise à niveau des dépendances, vous pouvez spécifier les dépendances tierces et internes qu’Amazon Q ne serait peut-être pas en mesure de mettre à niveau autrement.
Les dépendances internes font référence aux bibliothèques, aux plug-ins et aux cadres gérés par votre organisation et qui ne sont disponibles que localement ou sur le réseau privé de votre organisation. Amazon Q est en mesure d’accéder à vos dépendances internes lorsqu’il réalise des builds dans votre environnement local. Pour plus d’informations, consultez Création du code dans votre environnement local. Les dépendances tierces sont des dépendances accessibles au public ou des dépendances open source qui ne sont pas propres à votre organisation.
Vous pouvez spécifier les dépendances internes que vous souhaitez mettre à niveau dans un fichier YAML et Amazon Q les met à niveau lors de la mise à niveau du JDK (par exemple, Java 8 vers 17). Vous pouvez lancer une transformation distincte (17 vers 17 ou 21 vers 21) après la mise à niveau initiale du JDK pour mettre à niveau les dépendances tierces.
Une fois qu’Amazon Q a effectué une mise à niveau minimale du JDK, vous pouvez lancer une transformation distincte pour mettre à niveau toutes les dépendances tierces. Vous pouvez également spécifier les dépendances tierces et leurs versions dans un fichier YAML pour ne mettre à niveau ces dépendances que lors de la transformation de mise à niveau de la bibliothèque.
Amazon Q vous demandera de fournir un fichier de mise à niveau des dépendances lors de la transformation. Si vous souhaitez en fournir un, vérifiez d’abord que le fichier a été configuré correctement. Les champs suivants sont obligatoires dans le fichier YAML :
-
nom : nom du fichier de mise à niveau des dépendances.
-
description (facultatif) : description du fichier de mise à niveau des dépendances et pour quelle transformation.
-
dependencyManagement : contient la liste des dépendances et des plug-ins à mettre à niveau.
-
dépendances : contient le nom et la version des bibliothèques à mettre à niveau.
-
plug-ins : contient les noms et les versions des plug-ins à mettre à niveau.
-
identifiant : nom de la bibliothèque, du plug-in ou de toute autre dépendance.
-
targetVersion : version de la dépendance vers laquelle effectuer la mise à niveau.
-
versionProperty (facultatif) : version de la dépendance que vous définissez, telle que définie avec la balise
propertiesdans le fichierpom.xmlde votre application. -
originType : indique si la dépendance est interne ou tierce ; spécifié par FIRST_PARTY ou THIRD_PARTY.
Voici un exemple de fichier YAML de mise à niveau des dépendances et la configuration requise pour qu’Amazon Q puisse l’analyser :
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"
Étape 4 : configuration et authentification
Avant de commencer une transformation, vous devez vous authentifier auprès d’IAM Identity Center et fournir les détails de configuration de votre transformation.
-
Pour démarrer le processus de configuration de la transformation, exécutez la commande suivante :
qct configure -
Vous êtes invité à saisir le chemin du JDK pour chaque version Java prise en charge. Il vous suffit de spécifier le chemin d’accès au JDK de la version source de votre application Java, et non la version cible.
-
Ensuite, pour vous authentifier auprès d’IAM Identity Center, vous êtes invité à saisir l’URL de démarrage de votre profil d’abonnement à Amazon Q Developer Pro.
Ensuite, entrez la Région AWS où vous vous êtes abonné au format suivant :
us-east-1. Pour obtenir une liste des régions prises en charge, consultez Régions prises en charge. Pour obtenir une liste des codes de région, consultez Points de terminaison régionaux dans le Guide Références générales AWS. -
Vos préférences de configuration sont enregistrées dans un fichier configuration.ini.
Étape 5 : exécution d’une transformation
Choisissez le type de transformation que vous effectuez pour voir la configuration et les commandes requises.
Note
N’éteignez pas ou ne fermez pas votre machine locale pendant la transformation du code, car la compilation côté client nécessite une connexion réseau stable.
Mise en suspens ou annulation d’une transformation
Vous pouvez choisir de suspendre ou d’annuler votre tâche de transformation en cours. Vous pouvez suspendre une tâche de transformation pendant 12 heures au maximum avant de pouvoir la reprendre.
Pour suspendre ou annuler une tâche de transformation de code
-
Dans votre terminal CLI, appuyez sur Ctrl+C sur votre clavier.
-
Choisissez si vous souhaitez suspendre ou annuler votre transformation.
-
Saisissez
1si vous souhaitez suspendre la tâche de transformation du code. Vous pouvez reprendre la tâche dans les 12 heures pour poursuivre la transformation du code à l’aide de la commande QCT suivante :`qct transform --source_folder=≤/Path/Given/Originally/To/QCT>`. -
Saisissez
2si vous souhaitez annuler la tâche de transformation du code.
-