Esecuzione di una trasformazione nella riga di comando con Amazon Q Developer - Amazon Q Developer

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Esecuzione di una trasformazione nella riga di comando con Amazon Q Developer

Completa queste fasi per trasformare il codice nella riga di comando con lo strumento da riga di comando di Amazon Q Developer.

Prerequisiti

Prima di avviare una trasformazione nella riga di comando, è necessario che siano soddisfatti i prerequisiti seguenti:

Fase 1: scegli il metodo di autenticazione e aggiungi le autorizzazioni

Puoi autenticare il Centro identità IAM per eseguire trasformazioni nella riga di comando. Accertati di disporre delle autorizzazioni appropriate.

Nota

Le chiavi gestite dal cliente non sono supportate per le trasformazioni eseguite nella riga di comando.

Aggiunta di autorizzazioni

L’identità IAM associata all’abbonamento Amazon Q Developer che stai utilizzando per l’autenticazione deve disporre delle autorizzazioni per eseguire le trasformazioni nella riga di comando. Prima di procedere, assicurati che la tua identità IAM disponga delle autorizzazioni definite in Consenti agli utenti di eseguire trasformazioni nella riga di comando.

Esegui l’autenticazione con il Centro identità IAM tramite un abbonamento Amazon Q Developer

Per autenticarti con il Centro identità IAM, devi essere abbonato ad Amazon Q Developer Pro come utente della forza lavoro dall’amministratore e devi fornire l’URL di avvio per l’autenticazione tramite l’abbonamento. Tu o il tuo amministratore potete trovare l’URL di avvio nella console Amazon Q Developer. Per ulteriori informazioni, consulta Individuazione dell’URL di avvio da utilizzare con Amazon Q Developer.

Per aggiungere le autorizzazioni necessarie, consulta Aggiunta di autorizzazioni.

Fornisci l’URL iniziale in Fase 4: configurazione e autenticazione.

Fase 2: installare gli strumenti

  1. Scarica lo strumento da riga di comando di Amazon Q per le trasformazioni e decomprimilo.

    Per scaricare una versione precedente dello strumento da riga di comando, consulta Cronologia delle versioni.

  2. Ti suggeriamo di configurare un ambiente virtuale in Python per installare lo strumento. Per creare un ambiente virtuale, apri una finestra di terminale nella directory in cui desideri installare lo strumento ed esegui:

    python -m venv qct-cli
  3. Per attivare l’ambiente virtuale:

    source qct-cli/bin/activate
  4. Per installare lo strumento nella riga di comando, esegui il seguente comando con il percorso in cui hai decompresso lo strumento, in base all’architettura del tuo computer:

    Linux_aarch64
    pip install <path/to/unzipped-tool>/Linux_aarch64/amzn_qct_cli-1.2.1-py3-none-any.whl
    Linux_x86_64
    pip install <path/to/unzipped-tool>/Linux_x86_64/amzn_qct_cli-1.2.1-py3-none-any.whl
    Nota

    Se utilizzi una versione precedente dello strumento da riga di comando per le trasformazioni, sostituisci la 1.2.1 con la versione scaricata.

  5. Per verificare che lo strumento sia stato installato, esegui:

    which qct

Fase 3: creazione di un file di aggiornamento delle dipendenze (facoltativo)

Puoi fornire ad Amazon Q un file di aggiornamento delle dipendenze, un file YAML che elenca le dipendenze del progetto e le versioni a cui eseguire l’aggiornamento durante una trasformazione. Fornendo un file di aggiornamento delle dipendenze, puoi specificare dipendenze di terze e prime parti che Amazon Q potrebbe altrimenti non conoscere per aggiornare.

Le dipendenze di prime parti si riferiscono alle librerie, ai plugin e ai framework gestiti dall’organizzazione e sono disponibili solo localmente o sulla rete privata dell’organizzazione. Amazon Q è in grado di accedere alle dipendenze proprietarie quando esegue le build nell’ambiente locale. Per ulteriori informazioni, consulta Compilazione del codice nell’ambiente locale. Le dipendenze di terze parti sono disponibili pubblicamente o sono dipendenze open source che non sono esclusive della tua organizzazione.

Puoi specificare le dipendenze di prime parti che desideri aggiornare in un file YAML e Amazon Q le aggiorna durante l’aggiornamento JDK (ad esempio, da Java 8 a 17). Puoi avviare una trasformazione separata (da 17 a 17 o da 21 a 21) dopo l’aggiornamento iniziale di JDK per aggiornare le dipendenze di terze parti.

Una volta che Amazon Q ha eseguito un aggiornamento JDK minimo, puoi avviare una trasformazione separata per aggiornare tutte le dipendenze di terze parti. In alternativa, puoi specificare le dipendenze di terze parti e le relative versioni in un file YAML per aggiornare tali dipendenze solo durante la trasformazione dell’aggiornamento della libreria.

Amazon Q ti chiederà di fornire un file di aggiornamento delle dipendenze durante la trasformazione. Se desideri fornirne uno, assicurati innanzitutto di aver configurato correttamente il file. Nel file YAML sono obbligatori i seguenti campi:

  • name - Il nome del file di aggiornamento delle dipendenze.

  • description (facoltativo) - Una descrizione del file di aggiornamento delle dipendenze e per quale trasformazione.

  • dependencyManagement - Contiene l’elenco delle dipendenze e dei plugin da aggiornare.

  • dependencies - Contiene il nome e la versione delle librerie da aggiornare.

  • plugins - Contiene i nomi e le versioni dei plugin da aggiornare.

  • identifier - Il nome della libreria, del plugin o di un’altra dipendenza.

  • targetVersion - La versione della dipendenza a cui eseguire l’aggiornamento.

  • versionProperty (facoltativo) - La versione della dipendenza che stai definendo, impostata con il tag properties nel file pom.xml dell’applicazione.

  • originType - Indica se la dipendenza è di prima o terza parte, specificata da FIRST_PARTY o THIRD_PARTY.

Di seguito è riportato un esempio di file YAML per l’aggiornamento delle dipendenze e la configurazione richiesta per l’analisi di 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"

Fase 4: configurazione e autenticazione

Prima di iniziare una trasformazione, devi autenticarti con il Centro identità IAM e fornire i dettagli di configurazione per la trasformazione.

  1. Per avviare il processo di configurazione della trasformazione, esegui il comando seguente:

    qct configure
  2. Ti viene richiesto di inserire un percorso JDK per ogni versione Java supportata. È sufficiente specificare il percorso del JDK della versione di origine dell’applicazione Java, non la versione di destinazione.

  3. Successivamente, per autenticarti con il Centro identità IAM, ti viene richiesto di inserire l’URL iniziale del profilo di abbonamento Amazon Q Developer Pro.

    Poi, inserisci il Regione AWS luogo in cui ti sei iscritto nel seguente formato:us-east-1. Per un elenco delle regioni supportate, consulta Regioni supportate. Per un elenco dei codici delle Regioni, consulta Endpoint regionali nella Guida di Riferimenti generali di AWS .

  4. Le tue preferenze di configurazione vengono salvate in un file configuration.ini.

Fase 5: eseguire una trasformazione

Scegli il tipo di trasformazione che stai eseguendo per visualizzare la configurazione e i comandi richiesti.

Nota

Non spegnere o chiudere il computer locale durante la trasformazione del codice, perché la compilazione lato client richiede una connessione di rete stabile.

Java upgrade

Modifica del piano di trasformazione

Durante gli aggiornamenti della versione Java, Amazon Q genera un piano di trasformazione che puoi rivedere prima dell’inizio della trasformazione. Hai la possibilità di richiedere le seguenti modifiche al piano:

  • Quali librerie Amazon Q aggiorna, dall’elenco incluso nel piano

    • Prompt di esempio:

      • Aggiorna solo <dependency1>, <dependency2> e <dependency5>

      • Non aggiornare <dependency1> o <dependency2>

  • La versione di destinazione a cui aggiornare una libreria

    • Prompt di esempio:

      • Aggiorna <dependency> a questa versione invece di <version>

  • Quali fasi deve eseguire Amazon Q

    • Prompt di esempio:

      • Completa solo le fasi 1-7

      • Non eseguire le fasi 5-9

  • Aggiungi dipendenze aggiuntive per l’aggiornamento (solo un’opzione quando esegui l’aggiornamento a una versione JDK più recente)

    • Prompt di esempio:

      • Aggiorna anche <dependency1> a <version2>

Aggiornamento del codice Java
  1. Esegui il comando seguente per avviare una trasformazione per un aggiornamento Java. Sostituisci <path-to-folder> con il percorso della cartella con il codice che stai trasformando e <your-target-java-version> con JAVA_17 oJAVA_21.

    qct transform --source_folder <path-to-folder> --target_version <your-target-java-version>

    Opzioni di comando aggiuntive:

    • Se stai specificando le dipendenze da aggiornare, aggiungi l’opzione --dependency_upgrade_file con il percorso del file di aggiornamento delle dipendenze.

    • Se non desideri rivedere o aggiornare il piano di trasformazione, aggiungi il flag --no-interactive al tuo comando. Amazon Q non ti chiederà feedback sul piano e non avrai la possibilità di richiedere modifiche.

  2. La tua versione di Maven viene verificata prima dell’inizio della trasformazione. Se disponi almeno della versione minima supportata, viene visualizzato il seguente output:

    Running command: mvn --version at: path/to/current/directory Your Maven version is supported for transformations.

    Se non disponi di una versione di Maven supportata, è necessario aggiornarla per continuare. Per ulteriori informazioni, consulta Prerequisiti.

  3. Se non hai aggiunto il flag --no-interactive, Amazon Q ti chiederà di fornire un feedback sul piano di trasformazione. Puoi spiegare le modifiche che desideri apportare in linguaggio naturale inglese e Amazon Q aggiornerà il piano se è in grado di supportare le modifiche richieste.

  4. Amazon Q inizia la trasformazione. Produrrà aggiornamenti sullo stato durante tutta la trasformazione. Una volta completata, Amazon Q fornisce il percorso in cui vengono emessi i risultati della trasformazione, i log e i file di configurazione.

    Il codice aggiornato verrà inviato al nuovo ramo creato da Amazon Q. Amazon Q eseguirà il commit del codice in uno o più commit, a seconda della selezione effettuata durante l’esecuzione di qct configure.

  5. Se stai eseguendo un’altra trasformazione dopo l’aggiornamento della versione di Java, avvia la seconda trasformazione nello stesso ramo in cui hai eseguito le modifiche dalla prima trasformazione.

SQL conversion

Prima di iniziare, assicurati di aver letto Conversione di SQL incorporato in applicazioni Java con Amazon Q Developer per comprendere i prerequisiti per questo tipo di trasformazione.

  1. Per convertire il codice SQL integrato, devi prima creare un file YAML contenente il percorso del file di metadati dello schema in AWS DMS Schema Conversion.

    Di seguito è riportato il formato richiesto del file:

    schema_conv_metadata_path: <path-to-metadata-zip-file>
  2. Esegui il comando seguente per avviare una trasformazione per una conversione SQL. Sostituisci <path-to-folder> con il percorso della cartella con il codice che stai trasformando e <path-to-sql-config-file> con il percorso del file YAML che hai creato nella fase 1.

    qct transform --source_folder <path-to-folder> --sql_conversion_config_file <path-to-sql-config-file>
  3. Se Amazon Q trova più schemi nel file di metadati dello schema, interromperà la trasformazione e fornirà un elenco degli schemi rilevati. Scegli lo schema da utilizzare per la conversione SQL, quindi aggiungi un nuovo campo schema: <schema-name> al file YAML.

  4. Amazon Q inizia la trasformazione. Produrrà aggiornamenti sullo stato durante tutta la trasformazione. Una volta completata, Amazon Q fornisce il percorso in cui vengono emessi i risultati della trasformazione, i log e i file di configurazione.

    Il codice aggiornato verrà inviato al nuovo ramo creato da Amazon Q.

Metti in pausa o annulla una trasformazione

Puoi scegliere di sospendere o annullare l’attuale processo di trasformazione. È possibile sospendere un processo di trasformazione per un massimo di 12 ore prima di riprenderlo nuovamente.

Per sospendere o annullare un processo di trasformazione del codice
  1. Nel terminale CLI, premi Ctrl+C sulla tastiera.

  2. Seleziona se vuoi mettere in pausa o annullare la trasformazione.

    • Immetti 1 se desideri mettere in pausa il processo di trasformazione del codice. È possibile riprendere il lavoro entro 12 ore per continuare la trasformazione del codice utilizzando il seguente comando QCT: `qct transform --source_folder=≤/Path/Given/Originally/To/QCT>`.

    • Immetti 2 se desideri annullare il processo di trasformazione del codice.