

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Menjalankan transformasi pada baris perintah dengan Pengembang Amazon Q
<a name="run-CLI-transformations"></a>

Selesaikan langkah-langkah ini untuk mengubah kode Anda pada baris perintah dengan alat baris perintah Amazon Q Developer.

## Prasyarat
<a name="CLI-transformation-prerequisites"></a>

Sebelum Anda memulai transformasi pada baris perintah, prasyarat berikut harus dipenuhi:
+ Jika Anda memutakhirkan versi kode Java Anda, proyek Anda memenuhi [prasyarat untuk meningkatkan versi Java dengan Amazon Q](code-transformation.md#java-upgrade-prerequisites).
+ Jika Anda mengonversi SQL tertanam dalam aplikasi Java, aplikasi Anda memenuhi [prasyarat untuk mengonversi](transform-sql.md#sql-transform-prereqs) SQL tertanam dengan Amazon Q.
+ Anda telah menginstal Python di lingkungan baris perintah Anda. Ini adalah bagaimana Anda akan menginstal alat baris perintah. Versi Python minimum yang didukung adalah 3.12.
+ Anda menjalankan transformasi di macOS atau Linux. 
+ Ukuran aplikasi Anda adalah 2 GB atau lebih kecil. 
+ Jika Anda memiliki dependensi tertentu yang ingin ditingkatkan Amazon Q, Anda telah mengonfigurasi file pemutakhiran [dependensi](#step-3-dependency-upgrade-file).

## Langkah 1: Pilih metode otentikasi dan tambahkan izin
<a name="step-1-permissions-auth"></a>

Anda dapat mengautentikasi IAM Identity Center untuk menjalankan transformasi pada baris perintah. Pastikan Anda memiliki izin yang tepat.

**catatan**  
Kunci terkelola pelanggan tidak didukung untuk transformasi yang dilakukan pada baris perintah.

### Tambahkan izin
<a name="transform-CLI-add-permissions"></a>

Identitas IAM yang terkait dengan langganan Pengembang Amazon Q yang Anda gunakan untuk mengautentikasi harus memiliki izin untuk melakukan transformasi pada baris perintah. Sebelum melanjutkan, pastikan identitas IAM Anda memiliki izin yang ditentukan. [Izinkan pengguna menjalankan transformasi pada baris perintah](id-based-policy-examples-users.md#id-based-policy-examples-allow-cli-transformations)

### Autentikasi dengan IAM Identity Center melalui langganan Amazon Q Developer
<a name="auth-IdC"></a>

Untuk mengautentikasi dengan IAM Identity Center, Anda [harus berlangganan Amazon Q Developer Pro sebagai pengguna tenaga kerja](subscribe-users.md) oleh administrator Anda, dan Anda harus memberikan URL Mulai untuk mengautentikasi melalui langganan Anda. Anda atau administrator Anda dapat menemukan URL Mulai di konsol Pengembang Amazon Q. Untuk informasi selengkapnya, lihat [Menemukan URL Mulai untuk digunakan dengan Pengembang Amazon Q](manage-account-details.md).

Untuk menambahkan izin yang diperlukan, lihat[Tambahkan izin](#transform-CLI-add-permissions).

Anda memberikan URL Mulai di[Langkah 4: Konfigurasikan dan otentikasi](#step-4-configure-auth).

## Langkah 2: Instal alat
<a name="step-2-install"></a>



1. [Unduh alat baris perintah Amazon Q untuk transformasi](https://desktop-release.codewhisperer.us-east-1.amazonaws.com/amzn_qct_cli/amzn_qct_cli-1.2.2.zip) dan unzip.

   Untuk mengunduh versi sebelumnya dari alat baris perintah, lihat[Riwayat versi](transform-CLI-versions.md).

1. Kami menyarankan Anda mengatur lingkungan virtual dengan Python untuk menginstal alat. Untuk membuat lingkungan virtual, buka jendela terminal di direktori tempat Anda ingin menginstal alat dan jalankan:

   ```
   python -m venv qct-cli 
   ```

1. Untuk mengaktifkan lingkungan virtual, jalankan: 

   ```
   source qct-cli/bin/activate 
   ```

1. Untuk menginstal alat pada baris perintah Anda, jalankan perintah berikut dengan jalur ke tempat Anda membuka ritsleting alat, berdasarkan arsitektur mesin Anda:

------
#### [ Linux\$1aarch64 ]

   ```
   pip install <path/to/unzipped-tool>/Linux_aarch64/amzn_qct_cli-1.2.2-py3-none-any.whl
   ```

------
#### [ Linux\$1x86\$164 ]

   ```
   pip install <path/to/unzipped-tool>/Linux_x86_64/amzn_qct_cli-1.2.2-py3-none-any.whl
   ```

------
**catatan**  
Jika Anda menggunakan versi lama dari alat baris perintah untuk transformasi, ganti `1.2.2` dengan [versi](transform-CLI-versions.md) yang Anda unduh.

1. Untuk memverifikasi bahwa alat telah diinstal, jalankan:

   ```
   which qct
   ```

## Langkah 3: Buat file peningkatan ketergantungan (opsional)
<a name="step-3-dependency-upgrade-file"></a>

Anda dapat memberikan Amazon Q dengan *file upgrade dependensi, file* YAMAL yang mencantumkan dependensi project Anda, dan versi mana yang akan ditingkatkan selama transformasi. Dengan menyediakan file pemutakhiran dependensi, Anda dapat menentukan dependensi pihak ketiga dan pertama yang mungkin tidak diketahui Amazon Q untuk ditingkatkan.

Dependensi pihak pertama mengacu pada pustaka, plugin, dan kerangka kerja yang dikelola organisasi Anda dan hanya tersedia secara lokal atau di jaringan pribadi organisasi Anda. Amazon Q dapat mengakses dependensi pihak pertama Anda saat menjalankan build di lingkungan lokal Anda. Untuk informasi selengkapnya, lihat [Membangun kode di lingkungan lokal Anda](transform-CLI.md#local-builds). Dependensi pihak ketiga tersedia untuk umum atau dependensi open source yang tidak unik untuk organisasi Anda.

Anda dapat menentukan dependensi pihak pertama yang ingin Anda tingkatkan dalam file YAMAL, dan Amazon Q memutakhirkannya selama pemutakhiran JDK (misalnya, Java 8 hingga 17). Anda dapat memulai transformasi terpisah (17 hingga 17 atau 21 hingga 21) setelah pemutakhiran JDK awal untuk meningkatkan dependensi pihak ketiga.

Setelah Amazon Q melakukan upgrade JDK minimum, Anda dapat memulai transformasi terpisah untuk memutakhirkan semua dependensi pihak ketiga. Atau, Anda dapat menentukan dependensi pihak ketiga dan versinya dalam file YAMAL untuk hanya memutakhirkan dependensi tersebut selama transformasi pemutakhiran perpustakaan.

Amazon Q akan meminta Anda untuk memberikan file peningkatan ketergantungan selama transformasi. Jika Anda ingin menyediakannya, pertama-tama pastikan Anda telah mengonfigurasi file dengan benar. Bidang berikut diperlukan dalam file YAMM:
+ name - Nama file upgrade dependensi.
+ deskripsi (opsional) - Deskripsi file peningkatan ketergantungan, dan untuk transformasi mana.
+ DependencyManagement - Berisi daftar dependensi dan plugin untuk meng-upgrade.
+ dependensi - Berisi nama dan versi pustaka untuk ditingkatkan.
+ plugins - Berisi nama dan versi plugin untuk meng-upgrade.
+ identifier - Nama perpustakaan, plugin, atau ketergantungan lainnya.
+ TargetVersion - Versi ketergantungan untuk meng-upgrade ke.
+ versionProperty (opsional) - Versi dependensi yang Anda definisikan, seperti yang ditetapkan dengan `properties` tag dalam file aplikasi Anda. `pom.xml`
+ OriginType - Apakah ketergantungan adalah pihak pertama atau ketiga, ditentukan oleh FIRST\$1PARTY atau THIRD\$1PARTY.

Berikut ini adalah contoh file YAMM pemutakhiran dependensi, dan konfigurasi yang diperlukan untuk diuraikan 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"
```

## Langkah 4: Konfigurasikan dan otentikasi
<a name="step-4-configure-auth"></a>

Sebelum Anda dapat memulai transformasi, Anda harus mengautentikasi dengan IAM Identity Center dan memberikan detail konfigurasi untuk transformasi Anda. 

1. Untuk memulai proses konfigurasi transformasi, jalankan perintah berikut:

   ```
   qct configure
   ```

1. Anda diminta untuk memasukkan jalur JDK untuk setiap versi Java yang didukung. Anda hanya perlu menentukan jalur ke JDK versi sumber aplikasi Java Anda, bukan versi target.

1. Selanjutnya, untuk mengautentikasi dengan IAM Identity Center, Anda diminta untuk memasukkan URL awal untuk profil langganan Amazon Q Developer Pro Anda.

   Kemudian, masukkan Wilayah AWS tempat Anda berlangganan dalam format berikut:`us-east-1`. Untuk mengetahui daftar Wilayah yang didukung, lihat [Wilayah yang Didukung](regions.md). Untuk daftar kode Wilayah, lihat [Titik akhir Regional](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints) dalam *Referensi Umum AWS panduan*. 

1. Preferensi konfigurasi Anda disimpan ke file configuration.ini. 

## Langkah 5: Jalankan transformasi
<a name="step-5-run-transformation"></a>

Pilih jenis transformasi yang Anda lakukan untuk melihat konfigurasi dan perintah yang diperlukan. 

**catatan**  
Jangan mematikan atau menutup mesin lokal Anda selama transformasi kode karena build sisi klien memerlukan koneksi jaringan yang stabil.

------
#### [ Java upgrade ]

**Memodifikasi rencana transformasi**

Selama upgrade versi Java, Amazon Q menghasilkan rencana transformasi yang dapat Anda tinjau sebelum transformasi dimulai. Anda memiliki opsi untuk meminta perubahan berikut pada paket:
+ Pustaka mana yang ditingkatkan Amazon Q, dari daftar yang termasuk dalam paket
  + Contoh petunjuk:
    + Hanya upgrade<dependency1>,<dependency2>, dan <dependency5>
    + Jangan upgrade <dependency1>atau <dependency2>
+ Versi target untuk memutakhirkan pustaka ke
  + Contoh petunjuk:
    + Tingkatkan <dependency>ke versi ini sebagai gantinya <version>
+ Langkah mana yang harus dilakukan Amazon Q
  + Contoh petunjuk:
    + Hanya selesaikan langkah 1-7
    + Jangan menjalankan langkah 5-9
+ Tambahkan dependensi tambahan untuk meningkatkan (hanya opsi saat memutakhirkan ke versi JDK yang lebih baru)
  + Contoh petunjuk:
    + Juga tingkatkan <dependency1>ke <version2>

**Tingkatkan kode Java**

1. Jalankan perintah berikut untuk memulai transformasi untuk upgrade Java. Ganti `<path-to-folder>` dengan path ke folder dengan kode yang Anda ubah dan `<your-target-java-version>` dengan salah satu `JAVA_17` atau`JAVA_21`.

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

   Opsi perintah tambahan: 
   + Jika Anda menentukan dependensi untuk ditingkatkan, tambahkan `--dependency_upgrade_file` opsi dengan jalur ke file peningkatan ketergantungan Anda.
   + Jika Anda tidak ingin meninjau atau memperbarui rencana transformasi, tambahkan `--no-interactive` bendera ke perintah Anda. Amazon Q tidak akan meminta umpan balik tentang rencana tersebut, dan Anda tidak akan memiliki kesempatan untuk meminta perubahan.

1. Versi Maven Anda diverifikasi sebelum transformasi dimulai. Jika Anda memiliki setidaknya versi minimum yang didukung, Anda akan melihat output berikut: 

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

   Jika Anda tidak memiliki versi Maven yang didukung, Anda harus memperbaruinya untuk melanjutkan. Untuk informasi selengkapnya, lihat [Prasyarat](#CLI-transformation-prerequisites). 

1. Jika Anda tidak menambahkan `--no-interactive` bendera, Amazon Q akan meminta Anda untuk memberikan umpan balik tentang rencana transformasi. Anda dapat menjelaskan perubahan yang ingin Anda buat dalam bahasa alami bahasa Inggris, dan Amazon Q akan memperbarui paket jika dapat mendukung perubahan yang Anda minta. 

1. Amazon Q memulai transformasi. Ini akan menampilkan pembaruan status selama transformasi. Setelah selesai, Amazon Q menyediakan jalur di mana hasil transformasi, log, dan file konfigurasi dikeluarkan. 

   Kode Anda yang ditingkatkan akan berkomitmen ke cabang baru Amazon Q yang dibuat. Amazon Q akan mengkomit kode dalam satu atau beberapa komit, tergantung pada pilihan yang Anda buat saat menjalankan`qct configure`. 

1. Jika Anda menjalankan transformasi lain setelah memutakhirkan versi Java Anda, mulailah transformasi kedua di cabang yang sama tempat Anda melakukan perubahan dari transformasi pertama. 

------
#### [ SQL conversion ]

Sebelum Anda mulai, pastikan Anda telah membaca [Mengonversi SQL tertanam dalam aplikasi Java dengan Amazon Q Developer](transform-sql.md) untuk memahami prasyarat untuk jenis transformasi ini. 

1. [Untuk mengonversi SQL yang disematkan, Anda harus terlebih dahulu membuat file YAMAL yang berisi jalur ke file metadata skema dari Konversi Skema Anda.AWS DMS](https://docs.aws.amazon.com/dms/latest/sbs/schema-conversion-oracle-postgresql.html)

   Berikut ini adalah format file yang diperlukan: 

   ```
   schema_conv_metadata_path: <path-to-metadata-zip-file>
   ```

1. Jalankan perintah berikut untuk memulai transformasi untuk konversi SQL. Ganti `<path-to-folder>` dengan path ke folder dengan kode yang Anda ubah dan `<path-to-sql-config-file>` dengan path ke file YAMAL yang Anda buat di langkah 1.

   ```
   qct transform --source_folder <path-to-folder>
       --sql_conversion_config_file <path-to-sql-config-file>
   ```

1. Jika Amazon Q menemukan beberapa skema dalam file metadata skema Anda, Amazon Q akan menghentikan transformasi dan memberikan daftar skema yang terdeteksi. Pilih skema mana yang akan digunakan untuk konversi SQL, lalu tambahkan bidang baru `schema: <schema-name>` ke file YAMM. 

1. Amazon Q memulai transformasi. Ini akan menampilkan pembaruan status selama transformasi. Setelah selesai, Amazon Q menyediakan jalur di mana hasil transformasi, log, dan file konfigurasi dikeluarkan. 

   Kode Anda yang ditingkatkan akan berkomitmen ke cabang baru Amazon Q yang dibuat.

------

## Jeda atau batalkan transformasi
<a name="pause-cancel-CLI-transformations"></a>

Anda dapat memilih untuk menjeda atau membatalkan pekerjaan transformasi Anda saat ini. Anda dapat menjeda pekerjaan transformasi hingga 12 jam sebelum Anda dapat melanjutkan lagi.

**Untuk menjeda atau membatalkan pekerjaan transformasi kode**

1. Di terminal CLI Anda, tekan **Ctrl\$1C** pada keyboard Anda.

1. Pilih apakah Anda ingin menjeda atau membatalkan tranformasi Anda.
   + Masukkan `1` jika Anda ingin melakukan pekerjaan transformasi kode. Anda dapat melanjutkan pekerjaan dalam waktu 12 jam untuk melanjutkan transformasi kode menggunakan perintah QCT berikut:``qct transform --source_folder=≤/Path/Given/Originally/To/QCT>``.
   + Masukkan `2` jika Anda ingin membatalkan pekerjaan tranformasi kode.