

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

# Konfigurasikan dan gunakan RubyGems dan Bundler dengan CodeArtifact
<a name="configure-use-rubygems-bundler"></a>

Setelah Anda membuat repositori di CodeArtifact, Anda dapat menggunakan RubyGems (`gem`) dan Bundler (`bundle`) untuk menginstal dan menerbitkan permata. Topik ini menjelaskan cara mengkonfigurasi manajer paket untuk mengautentikasi dengan dan menggunakan CodeArtifact repositori.

## Konfigurasikan RubyGems (`gem`) dan Bundler (`bundle`) dengan CodeArtifact
<a name="configure-ruby-gem"></a>

Untuk menggunakan RubyGems (`gem`) atau Bundler (`bundle`) untuk mempublikasikan permata ke atau menggunakan permata dari AWS CodeArtifact, Anda harus terlebih dahulu mengonfigurasinya dengan informasi CodeArtifact repositori Anda, termasuk kredensyal untuk mengaksesnya. Ikuti langkah-langkah dalam salah satu prosedur berikut untuk mengonfigurasi alat `gem` dan `bundle` CLI dengan informasi titik akhir CodeArtifact repositori dan kredensyal Anda.

### Konfigurasikan RubyGems dan Bundler menggunakan instruksi konsol
<a name="configure-ruby-gem-console"></a>

Anda dapat menggunakan instruksi konfigurasi di konsol untuk menghubungkan manajer paket Ruby Anda ke CodeArtifact repositori Anda. Instruksi konsol menyediakan perintah khusus yang dapat Anda jalankan untuk mengatur pengelola paket tanpa perlu menemukan dan mengisi CodeArtifact informasi Anda.

1. Buka AWS CodeArtifact konsol di [https://console.aws.amazon.com/codesuite/codeartifact/home](https://console.aws.amazon.com/codesuite/codeartifact/home).

1. Di panel navigasi, pilih **Repositori, lalu pilih repositori** yang ingin Anda gunakan untuk menginstal atau mendorong permata Ruby.

1. Pilih **Lihat petunjuk koneksi**.

1. Pilih sistem operasi Anda.

1. Pilih klien manajer paket Ruby yang ingin Anda konfigurasikan dengan CodeArtifact repositori Anda.

1. Ikuti instruksi yang dihasilkan untuk mengonfigurasi klien manajer paket untuk menginstal permata Ruby dari atau menerbitkan permata Ruby ke repositori.

### Konfigurasikan RubyGems dan Bundler secara manual
<a name="configure-ruby-gem-manual"></a>

Jika Anda tidak dapat atau tidak ingin menggunakan instruksi konfigurasi dari konsol, Anda dapat menggunakan instruksi berikut untuk menghubungkan ke manajer paket Ruby Anda ke CodeArtifact repositori Anda secara manual. 

1. Dalam baris perintah, gunakan perintah berikut untuk mengambil token CodeArtifact otorisasi dan menyimpannya dalam variabel lingkungan.
   + 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 [Cross-account domain](domain-overview.md#domain-overview-cross-account).

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

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

------
#### [ Windows ]
   + Windows (menggunakan shell perintah default):

     ```
     for /f %i in ('aws codeartifact get-authorization-token --domain {{my_domain}} --domain-owner {{111122223333}} --query authorizationToken --output text') do set CODEARTIFACT_AUTH_TOKEN=%i
     ```
   + Jendela PowerShell:

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

------

1. Untuk mempublikasikan permata Ruby ke repositori Anda, gunakan perintah berikut untuk mengambil endpoint CodeArtifact repositori Anda dan menyimpannya dalam variabel lingkungan. `RUBYGEMS_HOST` `gem`CLI menggunakan variabel lingkungan ini untuk menentukan di mana permata diterbitkan.
**catatan**  
Atau, alih-alih menggunakan variabel `RUBYGEMS_HOST` lingkungan, Anda dapat memberikan titik akhir repositori dengan `--host` opsi saat menggunakan perintah. `gem push`
   + 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 [Cross-account domain](domain-overview.md#domain-overview-cross-account).
   + Ganti {{my\_repo}} dengan nama CodeArtifact repositori Anda.

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

   ```
   export RUBYGEMS_HOST=`aws codeartifact get-repository-endpoint --domain {{my_domain}} --domain-owner {{111122223333}} --repository {{my_repo}} --format ruby --query repositoryEndpoint --output text | sed 's:/*$::'`
   ```

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

   Perintah berikut mengambil titik akhir repositori, memangkas trailing`/`, lalu menyimpannya dalam variabel lingkungan.
   + Windows (menggunakan shell perintah default):

     ```
     for /f %i in ('aws codeartifact get-repository-endpoint --domain {{my_domain}} --domain-owner {{111122223333}} --repository {{my_repo}} --format ruby --query repositoryEndpoint --output text') do set RUBYGEMS_HOST=%i
                                     
     set RUBYGEMS_HOST=%RUBYGEMS_HOST:~0,-1%
     ```
   + Jendela PowerShell:

     ```
     $env:RUBYGEMS_HOST = (aws codeartifact get-repository-endpoint --domain {{my_domain}} --domain-owner {{111122223333}} --repository {{my_repo}} --format ruby --query repositoryEndpoint --output text).TrimEnd("/")
     ```

------

   URL berikut adalah contoh titik akhir repositori:

   ```
   https://{{my_domain}}-{{111122223333}}.d.codeartifact.{{us-west-2}}.amazonaws.com/ruby/{{my_repo}}/
   ```
**catatan**  
Untuk menggunakan endpoint dualstack, gunakan endpoint. `codeartifact.{{region}}.on.aws`

1. Untuk mempublikasikan permata Ruby ke repositori Anda, Anda harus mengautentikasi CodeArtifact RubyGems dengan mengedit `~/.gem/credentials` file Anda untuk menyertakan token autentikasi Anda. Buat `~/.gem/` direktori dan `~/.gem/credentials` file jika direktori atau file tidak ada.

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

   ```
   echo ":codeartifact_api_key: Bearer $CODEARTIFACT_AUTH_TOKEN" >> ~/.gem/credentials
   ```

------
#### [ Windows ]
   + Windows (menggunakan shell perintah default):

     ```
     echo :codeartifact_api_key: Bearer %CODEARTIFACT_AUTH_TOKEN% >> %USERPROFILE%/.gem/credentials
     ```
   + Jendela PowerShell:

     ```
     echo ":codeartifact_api_key: Bearer $env:CODEARTIFACT_AUTH_TOKEN" | Add-Content ~/.gem/credentials
     ```

------

1. Untuk menggunakan `gem` untuk menginstal permata Ruby dari repositori Anda, Anda harus menambahkan informasi titik akhir repositori dan token autentikasi ke file Anda. `.gemrc` Anda dapat menambahkannya ke file global (`~/.gemrc`) atau `.gemrc` file proyek Anda. CodeArtifact Informasi yang harus Anda tambahkan `.gemrc` adalah kombinasi dari titik akhir repositori dan token autentikasi. Ini diformat sebagai berikut:

   ```
   https://aws:${CODEARTIFACT_AUTH_TOKEN}@{{my_domain}}-{{111122223333}}.d.codeartifact.{{us-west-2}}.amazonaws.com/ruby/{{my_repo}}/
   ```
   + Untuk token otentikasi, Anda dapat menggunakan variabel `CODEARTIFACT_AUTH_TOKEN` lingkungan yang ditetapkan pada langkah sebelumnya.
   + Untuk mengambil titik akhir repositori, Anda dapat membaca nilai variabel `RUBYGEMS_HOST` lingkungan yang telah ditetapkan sebelumnya, atau Anda dapat menggunakan `get-repository-endpoint` perintah berikut, mengganti nilai yang diperlukan:

     ```
     aws codeartifact get-repository-endpoint --domain {{my_domain}} --domain-owner {{111122223333}} --repository {{my_repo}} --format ruby --query repositoryEndpoint --output text
     ```

   Setelah Anda memiliki titik akhir, gunakan editor teks untuk menambahkan `aws:${CODEARTIFACT_AUTH_TOKEN}@` posisi yang sesuai. Setelah Anda memiliki titik akhir repositori dan string token auth dibuat, tambahkan ke `:sources:` bagian `.gemrc` file Anda dengan perintah sebagai berikut`echo`:
**Awas**  
CodeArtifact tidak mendukung penambahan repositori sebagai sumber menggunakan perintah. `gem sources -add` Anda harus menambahkan sumber langsung ke file.

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

   ```
   echo ":sources:
       - https://aws:${CODEARTIFACT_AUTH_TOKEN}@{{my_domain}}-{{111122223333}}.d.codeartifact.{{us-west-2}}.amazonaws.com/ruby/{{my_repo}}/" > ~/.gemrc
   ```

------
#### [ Windows ]
   + Windows (menggunakan shell perintah default):

     ```
     echo ":sources:
         - https://aws:%CODEARTIFACT_AUTH_TOKEN%@{{my_domain}}-{{111122223333}}.d.codeartifact.{{us-west-2}}.amazonaws.com/ruby/{{my_repo}}/" > "%USERPROFILE%\.gemrc"
     ```
   + Jendela PowerShell:

     ```
     echo ":sources:
         - https://aws:$env:CODEARTIFACT_AUTH_TOKEN@{{my_domain}}-{{111122223333}}.d.codeartifact.{{us-west-2}}.amazonaws.com/ruby/{{my_repo}}/" | Add-Content ~/.gemrc
     ```

------

1. Untuk menggunakan Bundler, Anda harus mengkonfigurasi Bundler dengan URL endpoint repositori dan token otentikasi Anda dengan menjalankan perintah berikut: `bundle config`

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

   ```
   bundle config $RUBYGEMS_HOST aws:$CODEARTIFACT_AUTH_TOKEN 
   ```

------
#### [ Windows ]
   + Windows (menggunakan shell perintah default):

     ```
     bundle config %RUBYGEMS_HOST% aws:%CODEARTIFACT_AUTH_TOKEN%
     ```
   + Jendela PowerShell:

     ```
     bundle config $Env:RUBYGEMS_HOST aws:$Env:CODEARTIFACT_AUTH_TOKEN
     ```

------

Sekarang Anda telah mengkonfigurasi RubyGems (`gem`) dan Bundler (`bundle`) dengan CodeArtifact repositori Anda, Anda dapat menggunakannya untuk menerbitkan dan menggunakan permata Ruby ke dan dari itu.

## Memasang permata Ruby dari CodeArtifact
<a name="install-ruby-gems"></a>

Gunakan prosedur berikut untuk menginstal permata Ruby dari CodeArtifact repositori dengan alat atau `gem` CLI`bundle`.

### Instal permata Ruby dengan `gem`
<a name="install-ruby-gems-gem"></a>

Anda dapat menggunakan RubyGems (`gem`) CLI untuk dengan cepat menginstal versi tertentu dari permata Ruby dari repositori Anda. CodeArtifact 

**Untuk menginstal permata Ruby dari CodeArtifact repositori dengan `gem`**

1. Jika belum, ikuti langkah-langkah [Konfigurasikan RubyGems (`gem`) dan Bundler (`bundle`) dengan CodeArtifact](#configure-ruby-gem) untuk mengonfigurasi `gem` CLI untuk menggunakan CodeArtifact repositori Anda dengan kredensyal 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. Gunakan perintah berikut untuk menginstal permata Ruby dari CodeArtifact:

   ```
   gem install {{my_ruby_gem}} --version {{1.0.0}}
   ```

### Instal permata Ruby dengan `bundle`
<a name="install-ruby-gems-bundle"></a>

Anda dapat menggunakan CLI Bundler (`bundle`) untuk menginstal permata Ruby yang dikonfigurasi di Anda. `Gemfile`

**Untuk menginstal permata Ruby dari CodeArtifact repositori dengan `bundle`**

1. Jika belum, ikuti langkah-langkah [Konfigurasikan RubyGems (`gem`) dan Bundler (`bundle`) dengan CodeArtifact](#configure-ruby-gem) untuk mengonfigurasi `bundle` CLI untuk menggunakan CodeArtifact repositori Anda dengan kredensyal 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 URL titik akhir CodeArtifact repositori Anda ke Anda `Gemfile` sebagai `source` untuk menginstal permata Ruby yang dikonfigurasi dari CodeArtifact repositori Anda dan upstreams nya.

   ```
   source "https://{{my_domain}}-{{111122223333}}.d.codeartifact.{{us-west-2}}.amazonaws.com/ruby/{{my_repo}}/"
                   
   gem 'my_ruby_gem'
   ```

1. Gunakan perintah berikut untuk menginstal permata Ruby seperti yang ditentukan dalam: `Gemfile`

   ```
   bundle install
   ```

## Menerbitkan permata Ruby ke CodeArtifact
<a name="publish-ruby-gems-gem"></a>

Gunakan prosedur berikut untuk mempublikasikan permata Ruby ke CodeArtifact repositori menggunakan CLI. `gem`

1. Jika belum, ikuti langkah-langkah [Konfigurasikan RubyGems (`gem`) dan Bundler (`bundle`) dengan CodeArtifact](#configure-ruby-gem) untuk mengonfigurasi `gem` CLI untuk menggunakan CodeArtifact repositori Anda dengan kredensyal 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. Gunakan perintah berikut untuk menerbitkan permata Ruby ke CodeArtifact repositori. Perhatikan bahwa jika Anda tidak mengatur variabel `RUBYGEMS_HOST` lingkungan, Anda harus memberikan titik akhir CodeArtifact repositori Anda dalam opsi. `--host`

   ```
   gem push --key codeartifact_api_key {{my_ruby_gem-0.0.1.gem}}
   ```