

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

# Mengkonsumsi dan menerbitkan paket Swift
<a name="swift-publish-consume"></a>

## Mengkonsumsi paket Swift dari CodeArtifact
<a name="consume-swift-packages"></a>

Gunakan prosedur berikut untuk mengkonsumsi paket Swift dari AWS CodeArtifact repositori.

**Untuk mengkonsumsi paket Swift dari repositori CodeArtifact**

1. Jika belum, ikuti langkah-langkah [Konfigurasikan Swift Package Manager dengan CodeArtifact](configure-swift.md) untuk mengonfigurasi Swift Package Manager untuk menggunakan CodeArtifact repositori Anda dengan kredensi yang tepat.
**catatan**  
Token otorisasi yang dihasilkan berlaku selama 12 jam. Anda harus membuat yang baru jika 12 jam telah berlalu sejak token dibuat.

1. Edit `Package.swift` file di folder proyek aplikasi Anda untuk memperbarui dependensi paket yang akan digunakan oleh proyek Anda.

   1. Jika `Package.swift` file tidak berisi `dependencies` bagian, tambahkan satu.

   1. Di `dependencies` bagian `Package.swift` file, tambahkan paket yang ingin Anda gunakan dengan menambahkan pengenal paketnya. Pengidentifikasi paket terdiri dari ruang lingkup dan nama paket yang dipisahkan oleh titik. Lihat cuplikan kode mengikuti langkah selanjutnya untuk contoh.
**Tip**  
Untuk menemukan pengenal paket, Anda dapat menggunakan CodeArtifact konsol. Temukan versi paket tertentu yang ingin Anda gunakan dan rujuk petunjuk **pintasan Instal** pada halaman versi paket.

   1. Jika `Package.swift` file tidak berisi `targets` bagian, tambahkan satu.

   1. Di `targets` bagian ini, tambahkan target yang perlu menggunakan ketergantungan.

      Cuplikan berikut adalah contoh cuplikan yang menunjukkan dikonfigurasi `dependencies` dan `targets` bagian dalam file: `Package.swift`

      ```
      ...
          ],
          dependencies: [
              .package(id: "my_scope.package_name", from: "1.0.0")
          ],
          targets: [
            .target(
               name: "MyApp",
               dependencies: ["package_name"]
            ),...
          ],
      ...
      ```

1. Sekarang semuanya sudah dikonfigurasi, gunakan perintah berikut untuk mengunduh dependensi paket dari. CodeArtifact

   ```
   swift package resolve
   ```

## Mengkonsumsi paket Swift dari CodeArtifact dalam Xcode
<a name="consume-swift-packages-xcode"></a>

Gunakan prosedur berikut untuk menggunakan paket Swift dari CodeArtifact repositori di Xcode.

**Untuk menggunakan paket Swift dari CodeArtifact repositori di Xcode**

1. Jika belum, ikuti langkah-langkah [Konfigurasikan Swift Package Manager dengan CodeArtifact](configure-swift.md) untuk mengonfigurasi Swift Package Manager untuk menggunakan CodeArtifact repositori Anda dengan kredensi yang tepat.
**catatan**  
Token otorisasi yang dihasilkan berlaku selama 12 jam. Anda harus membuat yang baru jika 12 jam telah berlalu sejak token dibuat.

1. Tambahkan paket sebagai dependensi dalam proyek Anda di Xcode.

   1. Pilih **File > Tambah Paket**.

   1. Cari paket Anda menggunakan bilah pencarian. Pencarian Anda harus dalam formulir`package_scope.package_name`.

   1. Setelah ditemukan, pilih paket dan pilih **Add Package**.

   1. Setelah paket diverifikasi, pilih produk paket yang ingin Anda tambahkan sebagai dependensi, dan pilih **Add Package**.

Jika Anda mengalami masalah menggunakan CodeArtifact repositori Anda dengan Xcode, lihat [Pemecahan masalah cepat](swift-troubleshooting.md) masalah umum dan kemungkinan perbaikan.

## Menerbitkan paket Swift ke CodeArtifact
<a name="publish-swift-packages"></a>

CodeArtifact merekomendasikan Swift 5.9 atau yang lebih baru dan menggunakan `swift package-registry publish` perintah untuk mempublikasikan paket Swift. Jika Anda menggunakan versi sebelumnya, Anda harus menggunakan perintah Curl untuk mempublikasikan paket Swift ke. CodeArtifact

### Menerbitkan CodeArtifact paket dengan `swift package-registry publish` perintah
<a name="publish-swift-packages-publish-command"></a>

Gunakan prosedur berikut dengan Swift 5.9 atau yang lebih baru untuk mempublikasikan paket Swift ke CodeArtifact repositori dengan Swift Package Manager.

1. Jika belum, ikuti langkah-langkah [Konfigurasikan Swift Package Manager dengan CodeArtifact](configure-swift.md) untuk mengonfigurasi Swift Package Manager untuk menggunakan CodeArtifact repositori Anda dengan kredensi yang tepat.
**catatan**  
Token otorisasi yang dihasilkan berlaku selama 12 jam. Anda harus membuat yang baru jika 12 jam telah berlalu sejak dibuat.

1. Arahkan ke direktori proyek Swift yang berisi `Package.swift` file untuk paket Anda.

1. Jalankan `swift package-registry publish` perintah berikut untuk mempublikasikan paket. Perintah membuat arsip sumber paket dan menerbitkannya ke CodeArtifact repositori Anda.

   ```
   swift package-registry publish packageScope.packageName packageVersion
   ```

   Contoh:

   ```
   swift package-registry publish myScope.myPackage 1.0.0
   ```

1. Anda dapat mengonfirmasi bahwa paket telah diterbitkan dan ada di repositori dengan memeriksa di konsol atau menggunakan `aws codeartifact list-packages` perintah sebagai berikut:

   ```
   aws codeartifact list-packages --domain my_domain --repository my_repo
   ```

   Anda dapat membuat daftar versi tunggal paket menggunakan `aws codeartifact list-package-versions` perintah sebagai berikut:

   ```
   aws codeartifact list-package-versions --domain my_domain --repository my_repo \
   --format swift --namespace my_scope --package package_name
   ```

### Menerbitkan CodeArtifact paket dengan Curl
<a name="publish-swift-packages-curl"></a>

Meskipun disarankan untuk menggunakan `swift package-registry publish` perintah yang disertakan dengan Swift 5.9 atau yang lebih baru, Anda juga dapat menggunakan Curl untuk mempublikasikan paket Swift ke. CodeArtifact

Gunakan prosedur berikut untuk mempublikasikan paket Swift ke AWS CodeArtifact repositori dengan Curl.

1. Jika belum, buat dan perbarui variabel `CODEARTIFACT_AUTH_TOKEN` dan `CODEARTIFACT_REPO` lingkungan dengan mengikuti langkah-langkahnya[Konfigurasikan Swift Package Manager dengan CodeArtifact](configure-swift.md).
**catatan**  
Token otorisasi berlaku selama 12 jam. Anda perlu menyegarkan variabel `CODEARTIFACT_AUTH_TOKEN` lingkungan Anda dengan kredensi baru jika 12 jam telah berlalu sejak dibuat.

1. Pertama, jika Anda tidak memiliki paket Swift yang dibuat, Anda dapat melakukannya dengan menjalankan perintah berikut:

   ```
   mkdir testDir && cd testDir
   swift package init
   git init .
   swift package archive-source
   ```

1. Gunakan perintah Curl berikut untuk mempublikasikan paket Swift Anda ke: CodeArtifact

------
#### [ macOS and Linux ]

   ```
   curl -X PUT  --user "aws:$CODEARTIFACT_AUTH_TOKEN" \
   -H "Accept: application/vnd.swift.registry.v1+json" \
   -F source-archive="@test_dir_package_name.zip" \
   "${CODEARTIFACT_REPO}my_scope/package_name/packageVersion"
   ```

------
#### [ Windows ]

   ```
   curl -X PUT  --user "aws:%CODEARTIFACT_AUTH_TOKEN%" \
   -H "Accept: application/vnd.swift.registry.v1+json" \
   -F source-archive="@test_dir_package_name.zip" \
   "%CODEARTIFACT_REPO%my_scope/package_name/packageVersion"
   ```

------

1. Anda dapat mengonfirmasi bahwa paket telah diterbitkan dan ada di repositori dengan memeriksa di konsol atau menggunakan `aws codeartifact list-packages` perintah sebagai berikut:

   ```
   aws codeartifact list-packages --domain my_domain --repository my_repo
   ```

   Anda dapat membuat daftar versi tunggal paket menggunakan `aws codeartifact list-package-versions` perintah sebagai berikut:

   ```
   aws codeartifact list-package-versions --domain my_domain --repository my_repo \
   --format swift --namespace my_scope --package package_name
   ```

## Mengambil paket Swift dari GitHub dan menerbitkan ulang ke CodeArtifact
<a name="publish-swift-packages-from-github"></a>

Gunakan prosedur berikut untuk mengambil paket Swift dari GitHub dan menerbitkannya kembali ke repositori. CodeArtifact 

**Untuk mengambil paket Swift dari GitHub dan menerbitkannya kembali ke CodeArtifact**

1. Jika belum, ikuti langkah-langkah [Konfigurasikan Swift Package Manager dengan CodeArtifact](configure-swift.md) untuk mengonfigurasi Swift Package Manager untuk menggunakan CodeArtifact repositori Anda dengan kredensi yang tepat.
**catatan**  
Token otorisasi yang dihasilkan berlaku selama 12 jam. Anda harus membuat yang baru jika 12 jam telah berlalu sejak token dibuat.

1. Kloning repositori git dari paket Swift yang ingin Anda ambil dan terbitkan ulang dengan menggunakan perintah berikut. `git clone` Untuk informasi tentang kloning GitHub repositori, lihat [Mengkloning repositori di](https://docs.github.com/en/repositories/creating-and-managing-repositories/cloning-a-repository) Dokumen. GitHub 

   ```
   git clone repoURL
   ```

1. Arahkan ke repositori yang baru saja Anda kloning:

   ```
   cd repoName
   ```

1. Buat paket dan publikasikan ke CodeArtifact.

   1. **Direkomendasikan:** Jika Anda menggunakan Swift 5.9 atau yang lebih baru, Anda dapat menggunakan `swift package-registry publish` perintah berikut untuk membuat paket dan mempublikasikannya ke repositori yang dikonfigurasi CodeArtifact .

      ```
      swift package-registry publish packageScope.packageName versionNumber
      ```

      Contoh:

      ```
      swift package-registry publish myScope.myPackage 1.0.0
      ```

   1. Jika Anda menggunakan versi Swift yang lebih tua dari 5.9, Anda harus menggunakan `swift archive-source` perintah untuk membuat paket dan kemudian menggunakan perintah Curl untuk mempublikasikannya.

      1. Jika Anda belum mengonfigurasi variabel `CODEARTIFACT_AUTH_TOKEN` dan `CODEARTIFACT_REPO` lingkungan, atau sudah lebih dari 12 jam sejak Anda memilikinya, ikuti langkah-langkahnya[Konfigurasikan Swift tanpa perintah login](configure-swift.md#configure-swift-without-login-command).

      1. Buat paket Swift dengan menggunakan `swift package archive-source` perintah:

         ```
         swift package archive-source
         ```

         Jika berhasil, Anda akan melihat `Created package_name.zip` di baris perintah.

      1. Gunakan perintah Curl berikut untuk mempublikasikan paket Swift ke: CodeArtifact

------
#### [ macOS and Linux ]

         ```
         curl -X PUT  --user "aws:$CODEARTIFACT_AUTH_TOKEN" \
         -H "Accept: application/vnd.swift.registry.v1+json" \
         -F source-archive="@package_name.zip" \
         "${CODEARTIFACT_REPO}my_scope/package_name/packageVersion"
         ```

------
#### [ Windows ]

         ```
         curl -X PUT  --user "aws:%CODEARTIFACT_AUTH_TOKEN%" \
         -H "Accept: application/vnd.swift.registry.v1+json" \
         -F source-archive="@package_name.zip" \
         "%CODEARTIFACT_REPO%my_scope/package_name/packageVersion"
         ```

------

1. Anda dapat mengonfirmasi bahwa paket telah diterbitkan dan ada di repositori dengan memeriksa di konsol atau menggunakan `aws codeartifact list-packages` perintah sebagai berikut:

   ```
   aws codeartifact list-packages --domain my_domain --repository my_repo
   ```

   Anda dapat membuat daftar versi tunggal paket menggunakan `aws codeartifact list-package-versions` perintah sebagai berikut:

   ```
   aws codeartifact list-package-versions --domain my_domain --repository my_repo \
   --format swift --namespace my_scope --package package_name
   ```