

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

# Konfigurasikan dan gunakan Yarn dengan CodeArtifact
<a name="npm-yarn"></a>

Setelah Anda membuat repositori, Anda dapat menggunakan klien Yarn untuk mengelola paket npm.

**catatan**  
`Yarn 1.X`membaca dan menggunakan informasi dari file konfigurasi npm Anda (.npmrc), sementara tidak. `Yarn 2.X` Konfigurasi untuk `Yarn 2.X` harus didefinisikan dalam file.yarnrc.yml.

**Contents**
+ [Konfigurasikan Yarn 1.X dengan perintah `aws codeartifact login`](#npm-yarn-configure-login)
+ [Konfigurasikan Yarn 2.X dengan perintah `yarn config set`](#npm-yarn-configure-yarn-command)

## Konfigurasikan Yarn 1.X dengan perintah `aws codeartifact login`
<a name="npm-yarn-configure-login"></a>

Untuk`Yarn 1.X`, Anda dapat mengkonfigurasi Yarn dengan CodeArtifact menggunakan `aws codeartifact login` perintah. `login`Perintah akan mengkonfigurasi file \~/.npmrc Anda dengan informasi titik akhir repositori dan kredenal Anda CodeArtifact . Dengan`Yarn 1.X`, `yarn` perintah menggunakan informasi konfigurasi dari file \~/.npmrc.

**Untuk mengkonfigurasi `Yarn 1.X` dengan perintah login**

1. Jika Anda belum melakukannya, konfigurasikan AWS kredensional Anda untuk digunakan dengan AWS CLI, seperti yang dijelaskan dalam. [Memulai dengan CodeArtifact](getting-started.md)

1. Untuk menjalankan `aws codeartifact login` perintah dengan sukses, npm harus diinstal. Lihat [Mengunduh dan menginstal Node.js dan npm](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm/) di *dokumentasi npm* untuk petunjuk penginstalan.

1. Gunakan `aws codeartifact login` perintah untuk mengambil CodeArtifact kredensi dan mengkonfigurasi file \~/.npmrc Anda.
   + Ganti {{my\_domain}} dengan nama CodeArtifact domain Anda.
   + Ganti {{111122223333}} dengan ID AWS akun pemilik domain. Jika Anda mengakses repositori di domain milik Anda, Anda tidak perlu menyertakan `--domain-owner`. Untuk informasi selengkapnya, lihat [Domain lintas akun](domain-overview.md#domain-overview-cross-account).
   + Ganti {{my\_repo}} dengan nama CodeArtifact repositori Anda.

   ```
   aws codeartifact login --tool npm --domain {{my_domain}} --domain-owner {{111122223333}} --repository {{my_repo}}
   ```

   `login`Perintah membuat perubahan berikut pada file \~/.npmrc Anda:
   + Menambahkan token otorisasi setelah mengambilnya dari CodeArtifact menggunakan kredensional Anda AWS .
   + Menetapkan registri npm ke repositori yang ditentukan oleh opsi `--repository`.
   + **Untuk npm 6 dan yang lebih rendah:** Menambahkan `"always-auth=true"` sehingga token otorisasi dikirim untuk setiap perintah npm.

   Periode otorisasi default setelah menelepon `login` adalah 12 jam, dan `login` harus dipanggil untuk menyegarkan token secara berkala. Untuk informasi selengkapnya tentang token otorisasi yang dibuat dengan perintah `login`, lihat [Token dibuat dengan perintah `login`](tokens-authentication.md#auth-token-login).

1. **Untuk npm 7.X dan 8.X**, Anda harus menambahkan `always-auth=true` ke file \~/.npmrc Anda untuk menggunakan Yarn.

   1. Buka file \~/.npmrc Anda di editor teks dan tambahkan pada baris baru. `always-auth=true`

Anda dapat menggunakan `yarn config list` perintah untuk memeriksa apakah Yarn menggunakan konfigurasi yang benar. Setelah menjalankan perintah, periksa nilai di `info npm config` bagian. Konten akan terlihat mirip dengan cuplikan berikut.

```
info npm config
{
  registry: 'https://my_domain-111122223333.d.codeartifact.us-west-2.amazonaws.com/npm/my_repo/',
  '//my_domain-111122223333.d.codeartifact.us-west-2.amazonaws.com/npm/my_repo/:_authToken': 'eyJ2ZXI...',
  'always-auth': true
}
```

## Konfigurasikan Yarn 2.X dengan perintah `yarn config set`
<a name="npm-yarn-configure-yarn-command"></a>

Prosedur berikut merinci cara mengkonfigurasi `Yarn 2.X` dengan memperbarui `.yarnrc.yml` konfigurasi Anda dari baris perintah dengan `yarn config set` perintah.

**Untuk memperbarui `yarnrc.yml` konfigurasi dari baris perintah**

1. Jika Anda belum melakukannya, konfigurasikan AWS kredensional Anda untuk digunakan dengan AWS CLI, seperti yang dijelaskan dalam. [Memulai dengan CodeArtifact](getting-started.md)

1. Gunakan `aws codeartifact get-repository-endpoint` perintah untuk mendapatkan titik akhir CodeArtifact repositori Anda.
   + Ganti {{my\_domain}} dengan nama CodeArtifact domain Anda.
   + Ganti {{111122223333}} dengan ID AWS akun pemilik domain. Jika Anda mengakses repositori di domain milik Anda, Anda tidak perlu menyertakan `--domain-owner`. Untuk informasi selengkapnya, lihat [Domain lintas akun](domain-overview.md#domain-overview-cross-account).
   + Ganti {{my\_repo}} dengan nama CodeArtifact repositori Anda.

   ```
   aws codeartifact get-repository-endpoint --domain {{my_domain}} --domain-owner {{111122223333}} --repository {{my_repo}} --format npm
   ```

1. Perbarui `npmRegistryServer` nilai dalam file.yarnrc.yl Anda dengan titik akhir repositori Anda.

   ```
   yarn config set npmRegistryServer "https://{{my_domain}}-{{111122223333}}.d.codeartifact.{{region}}.amazonaws.com/npm/{{my_repo}}/"
   ```

1. Ambil token CodeArtifact otorisasi dan simpan dalam variabel lingkungan.
**catatan**  
Perintah berikut adalah untuk mesin macOS atau Linux. Untuk informasi tentang mengonfigurasi variabel lingkungan pada mesin Windows, lihat[Teruskan token auth menggunakan variabel lingkungan](tokens-authentication.md#env-var).
   + Ganti {{my\_domain}} dengan nama CodeArtifact domain Anda.
   + Ganti {{111122223333}} dengan ID AWS akun pemilik domain. Jika Anda mengakses repositori di domain milik Anda, Anda tidak perlu menyertakan `--domain-owner`. Untuk informasi selengkapnya, lihat [Domain lintas akun](domain-overview.md#domain-overview-cross-account).
   + Ganti {{my\_repo}} dengan nama CodeArtifact repositori Anda.

   ```
   export CODEARTIFACT_AUTH_TOKEN=`aws codeartifact get-authorization-token --domain {{my_domain}} --domain-owner {{111122223333}} --query authorizationToken --output text`
   ```

1. Gunakan `yarn config set` perintah untuk menambahkan token CodeArtifact otentikasi Anda ke file.yarnrc.ymlmu. Ganti URL dalam perintah berikut dengan URL endpoint repositori Anda dari Langkah 2.

   ```
   yarn config set 'npmRegistries["https://{{my_domain}}-{{111122223333}}.d.codeartifact.{{region}}.amazonaws.com/npm/{{my_repo}}/"].npmAuthToken' "${CODEARTIFACT_AUTH_TOKEN}"
   ```

1. Gunakan `yarn config set` perintah untuk mengatur nilai `npmAlwaysAuth` ke`true`. Ganti URL dalam perintah berikut dengan URL endpoint repositori Anda dari Langkah 2.

   ```
   yarn config set 'npmRegistries["https://{{my_domain}}-{{111122223333}}.d.codeartifact.{{region}}.amazonaws.com/npm/{{my_repo}}/"].npmAlwaysAuth' "true"
   ```

Setelah mengonfigurasi, file konfigurasi.yarnrc.ymlmu harus memiliki konten yang mirip dengan cuplikan berikut.

```
npmRegistries:
  "https://my_domain-111122223333.d.codeartifact.us-west-2.amazonaws.com/npm/my_repo/":
    npmAlwaysAuth: true
    npmAuthToken: eyJ2ZXI...

npmRegistryServer: "https://my_domain-111122223333.d.codeartifact.us-west-2.amazonaws.com/npm/my_repo/"
```

Anda juga dapat menggunakan `yarn config` perintah untuk memeriksa nilai `npmRegistries` dan`npmRegistryServer`.