View a markdown version of this page

Gunakan CodeArtifact dengan nuget atau dotnet CLI - CodeArtifact

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

Gunakan CodeArtifact dengan nuget atau dotnet CLI

Anda dapat menggunakan alat CLI seperti nuget dan dotnet untuk menerbitkan dan mengkonsumsi paket dari CodeArtifact. Dokumen ini memberikan informasi tentang mengonfigurasi alat CLI dan menggunakannya untuk memublikasikan atau menggunakan paket.

Mengonfigurasi nuget atau dotnet CLI

Anda dapat mengonfigurasi nuget atau dotnet CLI dengan Penyedia CodeArtifact NuGet Kredensi, dengan, atau secara AWS CLI manual. Konfigurasi NuGet dengan penyedia kredensi sangat disarankan untuk penyiapan yang disederhanakan dan otentikasi lanjutan.

Metode 1: Konfigurasi dengan Penyedia CodeArtifact NuGet Kredensi

Penyedia CodeArtifact NuGet Kredensi menyederhanakan otentikasi dan konfigurasi CodeArtifact dengan alat NuGet CLI. CodeArtifact token otentikasi berlaku maksimal 12 jam. Agar tidak perlu menyegarkan token secara manual saat menggunakan nuget atau dotnet CLI, penyedia kredensial secara berkala mengambil token baru sebelum token saat ini berakhir.

penting

Untuk menggunakan penyedia kredensia, pastikan bahwa kreden AWS CodeArtifact SIAL yang ada dihapus dari nuget.config file Anda yang mungkin telah ditambahkan secara manual atau dengan menjalankan aws codeartifact login untuk mengonfigurasi NuGet sebelumnya.

Instal dan konfigurasikan Penyedia CodeArtifact NuGet Kredensi

dotnet
  1. Unduh versi terbaru AWS.CodeArtifact.NuGet.CredentialProvider alat dari NuGet.org dengan dotnet perintah berikut.

    dotnet tool install -g AWS.CodeArtifact.NuGet.CredentialProvider
  2. Gunakan codeartifact-creds install perintah untuk menyalin penyedia kredensi ke folder NuGet plugin.

    dotnet codeartifact-creds install
  3. (Opsional): Tetapkan AWS profil yang ingin Anda gunakan dengan penyedia kredensia. Jika tidak diatur, penyedia kredensial akan menggunakan profil default. Untuk informasi selengkapnya tentang AWS CLI profil, lihat Profil bernama.

    dotnet codeartifact-creds configure set profile profile_name
nuget

Lakukan langkah-langkah berikut untuk menggunakan NuGet CLI untuk menginstal CodeArtifact NuGet Credential Provider dari bucket Amazon S3 dan mengkonfigurasinya. Penyedia kredensi akan menggunakan AWS CLI profil default, untuk informasi selengkapnya tentang profil, lihat Profil https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html bernama.

  1. Unduh versi terbaru dari CodeArtifact NuGet Credential Provider (codeartifact-nuget-credentialprovider.zip) dari bucket Amazon S3.

    Untuk melihat dan mengunduh versi sebelumnya, lihatCodeArtifact NuGet Versi Penyedia Kredensi.

  2. Buka filenya.

  3. Salin AWS.CodeArtifact.NuGetCredentialProvider folder dari folder netfx ke %user_profile%/.nuget/plugins/netfx/ di Windows atau ~/.nuget/plugins/netfx di Linux atau macOS.

  4. Salin AWS.CodeArtifact.NuGetCredentialProvider folder dari folder netcore ke %user_profile%/.nuget/plugins/netcore/ di Windows atau ~/.nuget/plugins/netcore di Linux atau macOS.

Setelah membuat repositori dan mengonfigurasi penyedia kredensial, Anda dapat menggunakan alat CLI nuget atau dotnet untuk menginstal dan memublikasikan paket. Untuk informasi selengkapnya, lihat Konsumsi NuGet paket dari CodeArtifact dan Publi NuGet kasikan paket ke CodeArtifact.

Metode 2: Mengonfigurasi nuget atau dotnet dengan perintah masuk

Per codeartifact login intah di AWS CLI menambahkan titik akhir repositori dan token otorisasi ke file NuGet konfigurasi Anda yang memungkinkan nuget atau dotnet untuk terhubung ke repositori Anda CodeArtifact . Ini akan mengubah NuGet konfigurasi tingkat pengguna yang terletak di %appdata%\NuGet\NuGet.Config untuk Windows dan ~/.config/NuGet/NuGet.Config atau ~/.nuget/NuGet/NuGet.Config untuk Mac/Linux. Untuk informasi selengkapnya tentang NuGet konfigurasi, lihat NuGet Konfigurasi umum.

Konfigurasikan nuget atau dotnet dengan perintah login
  1. Konfigurasikan AWS kredensional Anda untuk digunakan dengan AWS CLI, seperti yang dijelaskan dalamMemulai dengan CodeArtifact.

  2. Pastikan alat NuGet CLI (nugetataudotnet) telah diinstal dan dikonfigurasi dengan benar. Untuk instruksi, lihat dokumentasi nugetatau dotnet.

  3. Gunakan CodeArtifact login perintah untuk mengambil kredenSIAL untuk digunakan dengan NuGet.

    catatan

    Jika Anda mengakses repositori di domain milik Anda, Anda tidak perlu menyertakan --domain-owner. Untuk informasi selengkapnya, lihat Cross-account domain.

    dotnet
    penting

    Pengguna Linux dan MacOS: Karena enkripsi tidak didukung pada platform non-Windows, kredensial yang diambil akan disimpan sebagai teks biasa dalam file konfigurasi Anda.

    aws codeartifact login --tool dotnet --domain my_domain --domain-owner 111122223333 --repository my_repo
    nuget
    aws codeartifact login --tool nuget --domain my_domain --domain-owner 111122223333 --repository my_repo

Perintah login akan:

  • Ambil token otorisasi dari CodeArtifact menggunakan AWS kredenSIAL Anda.

  • Perbarui NuGet konfigurasi tingkat pengguna Anda dengan entri baru untuk sumber NuGet paket Anda. Sumber yang menunjuk ke titik akhir CodeArtifact repositori Anda akan dipanggildomain_name/repo_name.

Periode otorisasi default setelah memanggil 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.

Setelah membuat repositori dan mengonfigurasi autentikasi, Anda dapat menggunakan nuget, dotnet, atau msbuild CLI klien untuk menginstal dan memublikasikan paket. Untuk informasi selengkapnya, lihat Konsumsi NuGet paket dari CodeArtifact dan Publi NuGet kasikan paket ke CodeArtifact.

Metode 3: Mengonfigurasi nuget atau dotnet tanpa perintah masuk

Untuk konfigurasi manual, Anda harus menambahkan titik akhir repositori dan token otorisasi ke file NuGet konfigurasi Anda untuk mengaktifkan nuget atau dotnet untuk terhubung ke repositori Anda CodeArtifact .

Konfigurasikan nuget atau dotnet secara manual untuk terhubung ke repositori Anda CodeArtifact .

  1. Tentukan titik akhir CodeArtifact repositori Anda dengan menggunakan get-repository-endpoint AWS CLI perintah.

    aws codeartifact get-repository-endpoint --domain my_domain --domain-owner 111122223333 --repository my_repo --format nuget

    Contoh output:

    { "repositoryEndpoint": "https://my_domain-111122223333.d.codeartifact.us-west-2.amazonaws.com/nuget/my_repo/" }
  2. Dapatkan token otorisasi untuk terhubung ke repositori Anda dari manajer paket Anda dengan menggunakan get-authorization-token AWS CLI perintah.

    aws codeartifact get-authorization-token --domain my_domain

    Contoh output:

    { "authorizationToken": "eyJ2I...viOw", "expiration": 1601616533.0 }
  3. Buat URL titik akhir repositori lengkap dengan menambahkan /v3/index.json ke URL yang dikembalikan get-repository-endpoint pada langkah 1.

  4. Konfigurasi nuget atau dotnet untuk menggunakan titik akhir repositori dari Langkah 1 dan token otorisasi dari Langkah 2.

    catatan

    URL sumber harus diakhiri /v3/index.json agar nuget atau dotnet berhasil terhubung ke repositori CodeArtifact .

    dotnet

    Pengguna Linux dan macOS: Karena enkripsi tidak didukung pada platform non-Windows, Anda harus menambahkan tanda --store-password-in-clear-text ke perintah berikut. Perhatikan bahwa ini akan menyimpan kata sandi Anda sebagai teks biasa dalam file konfigurasi Anda.

    dotnet nuget add source https://my_domain-111122223333.d.codeartifact.us-west-2.amazonaws.com/nuget/my_repo/v3/index.json --name packageSourceName --password eyJ2I...viOw --username aws
    catatan

    Untuk memperbarui sumber yang ada, gunakan dotnet nuget update source perintah.

    nuget
    nuget sources add -name domain_name/repo_name -Source https://my_domain-111122223333.d.codeartifact.us-west-2.amazonaws.com/nuget/my_repo/v3/index.json -password eyJ2I...viOw -username aws

    Contoh output:

    Package source with Name: domain_name/repo_name added successfully.
    catatan

    Untuk menggunakan titik akhir dualstack, gunakan titik akhir. codeartifact.region.on.aws

Konsumsi NuGet paket dari CodeArtifact

Setelah Anda mengon figurasi NuGet dengan CodeArtifact, Anda dapat menggunakan NuGet paket yang disimpan di CodeArtifact repositori Anda atau salah satu repositori hulu.

Untuk menggunakan versi paket dari CodeArtifact repositori atau salah satu repositori hulu dengan nuget ataudotnet, jalankan perintah berikut mengganti packageName dengan nama paket yang ingin Anda konsumsi dan packageSourceName dengan nama sumber untuk CodeArtifact repositori Anda di file NuGet konfigurasi Anda. Jika Anda menggunakan login perintah untuk mengkonfigurasi NuGet konfigurasi Anda, nama sumbernya adalahdomain_name/repo_name.

catatan

Ketika sebuah paket diminta, NuGet klien menyimpan versi paket mana yang ada. Karena perilaku ini, penginstalan mungkin gagal untuk paket yang sebelumnya diminta sebelum versi yang diinginkan tersedia. Untuk menghindari kegagalan ini dan berhasil menginstal paket yang ada, Anda dapat menghapus NuGet cache sebelum menginstal dengan nuget locals all --clear ataudotnet nuget locals all --clear, atau menghindari penggunaan cache selama install dan restore perintah dengan menyediakan -NoCache opsi untuk nuget atau --no-cache opsi untukdotnet.

dotnet
dotnet add package packageName --source packageSourceName
nuget
nuget install packageName -Source packageSourceName

Untuk menginstal versi paket tertentu

dotnet
dotnet add package packageName --version 1.0.0 --source packageSourceName
nuget
nuget install packageName -Version 1.0.0 -Source packageSourceName

Lihat Manage packages using the nuget.exe CLI atau Install and manage packages using the dotnet CLI dalam Dokumentasi Microsoft untuk informasi selengkapnya.

Anda dapat menggunakan NuGet paket dari NuGet.org melalui CodeArtifact repositori dengan mengonfigurasi repositori dengan koneksi eksternal ke NuGet.org. Paket yang dikonsumsi dic NuGet.org erna dan disimpan di CodeArtifact repositori Anda. Untuk informasi selengkapnya tentang penambahan sambungan eksternal, lihat Connect CodeArtifact repositori ke repositori publik.

Publi NuGet kasikan paket ke CodeArtifact

Setelah Anda mengon figurasi NuGet dengan CodeArtifact, Anda dapat menggunakan nuget atau dotnet menerbitkan versi paket ke CodeArtifact repositori.

Untuk mendorong versi paket ke CodeArtifact repositori, jalankan perintah berikut dengan path lengkap ke .nupkg file Anda dan nama sumber untuk CodeArtifact repositori Anda di file NuGet konfigurasi Anda. Jika Anda menggunakan login perintah untuk mengkonfigurasi NuGet konfigurasi Anda, nama sumbernya adalahdomain_name/repo_name.

catatan

Anda dapat membuat NuGet paket jika Anda tidak memilikinya untuk dipublikasikan. Untuk informasi selengkapnya, lihat Alur kerja pembuatan paket di dokumentasi Microsoft.

dotnet
dotnet nuget push path/to/nupkg/SamplePackage.1.0.0.nupkg --source packageSourceName
nuget
nuget push path/to/nupkg/SamplePackage.1.0.0.nupkg -Source packageSourceName

CodeArtifact NuGet Referensi Penyedia Kredentif

Penyedia CodeArtifact NuGet Kredensi memudahkan untuk mengkonfigurasi dan mengotentikasi NuGet dengan repositori Anda CodeArtifact .

CodeArtifact NuGet Perintah Penyedia Kredentif

Bagian ini mencakup daftar perintah untuk Penyedia CodeArtifact NuGet Kredensi. Perintah ini harus diawali dengan dotnet codeartifact-creds seperti contoh berikut.

dotnet codeartifact-creds command
  • configure set profile profile: Mengkonfigurasi penyedia kredensia untuk menggunakan profil yang disediakan AWS .

  • configure unset profile: Menghapus profil yang dikonfigurasi jika diatur.

  • install: Menyalin penyedia kredensial ke folder plugins.

  • install --profile profile: Menyalin penyedia kredensia ke plugins folder dan mengonfigurasinya untuk menggunakan profil yang disediakan AWS .

  • uninstall: Meng-uninstall penyedia kredensial. Ini tidak menghapus perubahan ke file konfigurasi.

  • uninstall --delete-configuration: Meng-uninstall penyedia kredensial dan menghapus semua perubahan ke file konfigurasi.

CodeArtifact NuGet Log Penyedia Kredensia

Untuk mengaktifkan logging untuk Penye CodeArtifact NuGet dia Kredensi, Anda harus mengatur file log di lingkungan Anda. Log penyedia kredensial berisi informasi debugging yang bermanfaat seperti:

  • AWS Profil yang digunakan untuk membuat koneksi

  • Kesalahan autentikasi apa pun

  • Jika titik akhir yang disediakan bukan CodeArtifact URL

Mengatur file log CodeArtifact NuGet Penyedia Kredensi

export AWS_CODEARTIFACT_NUGET_LOGFILE=/path/to/file

Setelah file log diatur, setiap perintah codeartifact-creds akan menambahkan output log untuk isi file tersebut.

CodeArtifact NuGet Versi Penyedia Kredensi

Tabel berikut berisi informasi riwayat versi dan tautan unduhan untuk Penyedia CodeArtifact NuGet Kredensi.

Versi Perubahan Tanggal diterbitkan Tautan unduhan (S3)

1.0.2 (terbaru)

Dependensi yang ditingkatkan

06/26/2024

Unduh v1.0.2

1.0.1

Menambahkan dukungan untuk profil net5, net6, dan SSO

03/05/2022

Unduh v1.0.1

1.0.0

Rilis Penye CodeArtifact NuGet dia Kredential Awal

11/20/2020

Unduh v1.0.0