翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
nuget または dotnet CLI CodeArtifact で を使用する
nuget
や などの CLI ツールを使用してdotnet
、 からパッケージを公開および使用できます CodeArtifact。このドキュメントでは、CLI ツールの設定と、それらを使用してパッケージを公開または使用する方法について説明します。
トピック
nuget または dotnet CLI を設定する
nuget または dotnet CLI は、 CodeArtifact NuGet 認証情報プロバイダー、、 AWS CLIまたは手動で設定できます。セットアップを簡素化し、認証を継続するために、認証情報プロバイダー NuGet で を設定することを強くお勧めします。
方法 1: CodeArtifact NuGet 認証情報プロバイダーで を設定する
CodeArtifact NuGet 認証情報プロバイダーは、 NuGet CLI ツールを使用して CodeArtifact の認証と設定を簡素化します。 CodeArtifact 認証トークンは最大 12 時間有効です。nuget または dotnet CLI の使用中にトークンを手動で更新する必要がないように、認証情報プロバイダーは現在のトークンの有効期限が切れる前に定期的に新しいトークンを取得します。
重要
認証情報プロバイダーを使用するには、手動で追加した既存の AWS CodeArtifact 認証情報が nuget.config
ファイルからクリアされているか、 aws codeartifact login
を実行して NuGet 以前に設定していることを確認します。
CodeArtifact NuGet 認証情報プロバイダーのインストールと設定
リポジトリを作成して認証情報プロバイダーを設定したら、nuget
または dotnet
CLI ツールを使用して、パッケージをインストールして公開できます。詳細については、「から NuGet パッケージを使用する CodeArtifact」および「 NuGet パッケージを に発行する CodeArtifact」を参照してください。
方法 2: login コマンドで nuget または dotnet を設定する
の codeartifact login
コマンドは、nuget または dotnet がリポジトリに接続できるようにする CodeArtifact リポジトリエンドポイントと認証トークンを設定 NuGet ファイル AWS CLI に追加します。これにより、Windows の場合は 、Mac/Linux %appdata%\NuGet\NuGet.Config
~/.nuget/NuGet/NuGet.Config
の場合は ~/.config/NuGet/NuGet.Config
にあるユーザーレベルの NuGet 設定を変更します。 NuGet 設定の詳細については、「一般的な NuGet 設定
nuget または dotnet を login
コマンドで設定する
-
の説明に従って AWS CLI、 で使用する AWS 認証情報を設定しますCodeArtifact の開始方法。
-
NuGet CLI ツール (
nuget
またはdotnet
) が正しくインストールされ、設定されていることを確認します。手順については、nugetまたは dotnet ドキュメントを参照してください。 -
コマンドを使用して CodeArtifact
login
、 で使用する認証情報を取得します NuGet。注記
所有しているドメインのリポジトリにアクセスする場合、
--domain-owner
を含める必要はありません。詳細については、「クロスアカウントドメイン」を参照してください。
login コマンドは次の処理を行います:
-
AWS 認証情報 CodeArtifact を使用して から認証トークンを取得します。
-
NuGet パッケージソースの新しいエントリでユーザーレベルの NuGet 設定を更新します。 CodeArtifact リポジトリエンドポイントを指すソースは と呼ばれます
。domain_name/repo_name
login
実行後のデフォルトの認証期限は 12 時間です。login
はトークンを定期的に更新するために実行されねばなりません。login
コマンドを使用して作成された認可トークンの詳細については、「loginコマンドで作成されたトークン」を参照してください。
リポジトリを作成して認証を設定したら、nuget
、dotnet
または msbuild
パッケージを使用して、CLI クライアントをインストールして公開できます。詳細については、「から NuGet パッケージを使用する CodeArtifact」および「 NuGet パッケージを に発行する CodeArtifact」を参照してください。
方法 3: login コマンドなしで nuget または dotnet を設定する
手動設定の場合は、設定 NuGet ファイルにリポジトリエンドポイントと認証トークンを追加して、nuget または dotnet が CodeArtifact リポジトリに接続できるようにする必要があります。
CodeArtifact リポジトリに接続するように nuget または dotnet を手動で設定します。
-
get-repository-endpoint
AWS CLI コマンドを使用して CodeArtifact リポジトリエンドポイントを決定します。aws codeartifact get-repository-endpoint --domain
my_domain
--domain-owner111122223333
--repositorymy_repo
--format nuget出力例:
{ "repositoryEndpoint": "https://
my_domain
-111122223333
.d.codeartifact.us-west-2
.amazonaws.com/nuget/my_repo
/" } -
get-authorization-token
AWS CLI コマンドを使用して、パッケージマネージャーからリポジトリに接続するための認証トークンを取得します。aws codeartifact get-authorization-token --domain
my_domain
出力例:
{ "authorizationToken": "eyJ2I...viOw", "expiration": 1601616533.0 }
-
ステップ 3 の
get-repository-endpoint
で返された URL に/v3/index.json
を追加して、完全なリポジトリエンドポイント URL を作成します。 ステップ 1 のリポジトリエンドポイントとステップ 2 の認証トークンを使用するには、nuget または dotnet を設定します。
注記
CodeArtifact リポジトリに正常に接続するには、nuget または dotnet
/v3/index.json
のソース URL が で終わる必要があります。出力例:
Package source with Name:
domain_name/repo_name
added successfully.
から NuGet パッケージを使用する CodeArtifact
NuGet で を設定 CodeArtifactしたら、 CodeArtifact リポジトリまたはそのアップストリームリポジトリのいずれかに保存されている NuGet パッケージを使用できます。
CodeArtifact リポジトリまたはそのアップストリームリポジトリの 1 つから nuget
または でパッケージバージョンを使用するにはdotnet
、packageName
を消費するパッケージの名前に置き換え、 を設定 NuGet ファイル内の CodeArtifact リポジトリのpackageSourceName
ソース名に置き換えて次のコマンドを実行します。login
コマンドを使用して NuGet 設定を行った場合、ソース名は domain_name/repo_name
です。
注記
パッケージがリクエストされると、 NuGet クライアントはそのパッケージのどのバージョンが存在するかをキャッシュします。この動作のため、目的のバージョンが入手可能になる前にリクエストされたパッケージのインストールが失敗することがあります。この障害を回避し、存在するパッケージを正常にインストールするには、 nuget locals all --clear
または を使用してインストールする前に NuGet キャッシュをクリアするかdotnet nuget locals all --clear
、 のオプションまたは -NoCache
のオプションを指定して install
および restore
コマンド中にキャッシュを使用しないようにしますnuget
--no-cache
dotnet
。
パッケージの特定バージョンをインストールするには
詳細については、マイクロソフトドキュメント の nuget.exe CLI を使用してパッケージを管理する
NuGet.org から NuGet パッケージを使用する
NuGet.org
NuGet パッケージを に発行する CodeArtifact
NuGet で を設定したら CodeArtifact、 nuget
または を使用してパッケージバージョンdotnet
を CodeArtifact リポジトリに公開できます。
パッケージバージョンを CodeArtifact リポジトリにプッシュするには、 .nupkg
ファイルへのフルパスと NuGet 設定ファイル内の CodeArtifact リポジトリのソース名を指定して、次のコマンドを実行します。login
コマンドを使用して NuGet 設定を行った場合、ソース名は ですdomain_name/repo_name
。
注記
公開する NuGet パッケージがない場合は、パッケージを作成できます。詳細については、Microsoft ドキュメント の パッケージ作成ワークフロー
CodeArtifact NuGet 認証情報プロバイダーリファレンス
CodeArtifact NuGet 認証情報プロバイダーを使用すると、 NuGet CodeArtifact リポジトリの設定と認証が容易になります。
CodeArtifact NuGet 認証情報プロバイダーのコマンド
このセクションでは、 CodeArtifact NuGet 認証情報プロバイダーのコマンドのリストを示します。これらのコマンドには、次の例のように、dotnet codeartifact-creds
でプレフィックスを付ける必要があります。
dotnet codeartifact-creds
command
configure set profile
: 提供された AWS プロファイルを使用するように認証情報プロバイダーを設定します。profile
configure unset profile
: 設定済みのプロファイルを削除します。install
: 認証情報プロバイダーをplugins
フォルダにコピーします。install --profile
: 認証情報プロバイダーをprofile
plugins
フォルダにコピーし、提供された AWS プロファイルを使用するように設定します。uninstall
: 認証情報プロバイダーをアンインストールします。これにより、設定ファイルに対する変更は削除されません。uninstall --delete-configuration
: 認証情報プロバイダーをアンインストールして、設定ファイルに対するすべての変更を削除します。
CodeArtifact NuGet 認証情報プロバイダーログ
CodeArtifact NuGet 認証情報プロバイダーのログ記録を有効にするには、 環境でログファイルを設定する必要があります。認証情報プロバイダーのログには、次のような有用なデバッグ情報が含まれています:
-
接続に使用される AWS プロファイル
-
すべての認証エラー
-
指定されたエンドポイントが CodeArtifact URL でない場合
CodeArtifact NuGet 認証情報プロバイダーのログファイルを設定する
export AWS_CODEARTIFACT_NUGET_LOGFILE=
/path/to/file
ログファイルの設定後、codeartifact-creds
コマンドはログ出力をそのファイルの内容に追加します。
CodeArtifact NuGet 認証情報プロバイダーのバージョン
次の表に、 CodeArtifact NuGet 認証情報プロバイダーのバージョン履歴情報とダウンロードリンクを示します。
Version | 変更 | 公開日 | ダウンロードリンク (S3) |
---|---|---|---|
1.0.2 (最新) |
アップグレードされた依存関係 |
06/26/2024 |
|
1.0.1 |
net5、net6、および SSO プロファイルのサポートが追加されました。 |
03/05/2022 |
|
1.0.0 |
CodeArtifact NuGet 認証情報プロバイダーの初回リリース |
11/20/2020 |