NuGet パッケージの公開
NuGet パッケージがあり、それを次の方法で新しく作成した NuGet フィードに公開するとします。
dotnet
、nuget
、chocolatey
のようなコマンドラインツールを使用する
NuGet パッケージをアップロードする
NuGet パッケージを公開する最も速い方法は、NuGet フィードに直接アップロードすることです。
パッケージページを開き、必要な NuGet フィードを選択します。
右上隅の「
アップロード」ボタンをクリックします。
ウィンドウの指示に従ってください。
コマンドラインツールを使用して NuGet パッケージを公開する
NuGet パッケージをフィードに公開する最も簡単な方法は、1 行の dotnet nuget push
、nuget push
または choco push
コマンドを実行することです。フィードの URL と認証情報はコマンド引数として指定する必要があります。
dotnet ツールを使用して NuGet パッケージを公開するには
通常は、パッケージ名、フィードの URL、永続アクセストークンを指定する必要があります。例:
dotnet nuget push MyPackage.0.0.1.nupkg -s https://nuget.pkg.jetbrains.space/mycompany/p/projectkey/mynuget/v2/package -k access-token-goes-here
nuget ツールを使用して NuGet パッケージを公開するには
通常は、パッケージ名、フィードの URL、永続アクセストークンを指定する必要があります。例:
nuget push MyPackage.0.0.1.nupkg -Source https://nuget.pkg.jetbrains.space/mycompany/p/projectkey/mynuget/v2/package -ApiKey access-token-goes-here
Chocolatey ツールを使用して NuGet パッケージを公開するには
通常は、パッケージ名、フィードの URL、永続アクセストークンを指定する必要があります。例:
choco push MyPackage.0.0.1.nupkg -s https://nuget.pkg.jetbrains.space/mycompany/p/projectkey/mynuget/v2/package -k access-token-goes-here
ローカルマシンから NuGet フィードへのアクセスを構成する
フィードにアクセスするたびに資格情報やアクセストークンを提供したくない場合は、フィードへの永続的なアクセスを構成できます。これを行うにはいくつかの方法があります。
dotnet ツールを使用して NuGet フィードへのアクセスを構成するには
dotnet nuget add source
コマンドを使用して、フィード URL とアクセス資格情報を指定する必要があります。例:dotnet nuget add source https://nuget.pkg.jetbrains.space/mycompany/p/projectkey/mynuget/v3/index.json -n myNuget -u admin -p access-token-goes-here --store-password-in-clear-text
nuget ツールを使用して NuGet フィードへのアクセスを構成するには
nuget sources add
コマンドを使用して、フィード URL とアクセス資格情報を指定する必要があります。例:nuget sources add -name foo.bar -source https://nuget.pkg.jetbrains.space/mycompany/p/projectkey/mynuget/v3/index.json -username admin -password access-token-goes-here
Chocolatey ツールを使用して NuGet フィードへのアクセスを構成するには
choco source add
コマンドを使用して、フィード URL とアクセス資格情報を指定する必要があります。例:choco source add -name foo.bar -s https://nuget.pkg.jetbrains.space/mycompany/p/projectkey/mynuget/v3/index.json -u admin -p access-token-goes-here
NuGet 設定を使用して NuGet フィードへのアクセスを構成するには
NuGet 構成ファイルを開きます。デフォルトでは、次の場所にあります。
Windows:
%appdata%\NuGet\NuGet.Config
macOS/Linux:
~/.config/NuGet/NuGet.Config
または~/.nuget/NuGet/NuGet.Config
packageSources
セクションで、フィードの URL を指定します。packageSourceCredentials
セクションで、独自の Space アカウント (パスワードの代わりに永久トークンを使用することをお勧めします) または別のサービスアカウントの資格情報を指定します。結果の構成は次のようになります。
<configuration> <packageSources> <add key="space" value="https://nuget.pkg.jetbrains.space/mycompany/p/projectkey/mynuget/v3/index.json" protocolVersion="3"/> </packageSources> <packageSourceCredentials> <space> <add key="Username" value="admin"/> <add key="ClearTextPassword" value="access-token-goes-here"/> </space> </packageSourceCredentials> </configuration>
あるいは、Azure アーティファクト資格情報プロバイダーを使用することもできます。このツールは、フィードから NuGet パッケージにアクセスするたびにトークンを取得して安全に保存します。
Azure アーティファクト資格情報プロバイダーを使用して NuGet フィードへのアクセスを構成するには
ヘルパースクリプト installcredprovider.ps1(英語) (Windows) または installcredprovider.sh(英語) (macOs、Linux) をダウンロードして実行して、ツールをインストールします。
フィード認証情報を提供します。ここには 2 つのオプションがあります。
資格情報を環境変数(英語)に保存します。
承認が必要な操作を実行します。例: プロジェクトディレクトリで
dotnet restore --interactive
またはnuget restore
を実行します。取得したトークンはセッショントークンキャッシュの場所に保存されます。
詳細については、ツールのドキュメント(英語)を参照してください。
フィードへのアクセスを設定すると、フィードアクセス資格情報を指定せずにパッケージを公開できます。例:
nuget push
ApiKey
key
ApiKey
oco push
ApiKey
k
key
ApiKey
JetBrains TeamCity から NuGet パッケージを公開する
例: ライブラリをビルドして NuGet パッケージを作成する TeamCity ビルド構成があるとします。ここでのタスクは、Space パッケージの NuGet フィードにパッケージを公開することです。
NuGet フィードをビルド構成に追加します。
ビルド構成設定を開きます。
機能を構築するでは、ビルド機能を追加を選択します。
Nuget フィード資格情報機能を選択し、フィードの URL とサービスアカウントの資格情報を指定します。
フィードで動作するビルドステップ (NuGet パブリッシュなど) を追加する場合は、フィードの URL を指定します。TeamCity は、Nuget フィード資格情報機能から資格情報を自動的に取得します。
関連ページ:

NuGet フィードを作成する
プロジェクトに移動するはフィードを作成したいと考えています。プロジェクトのサイドバーで、パッケージを選択します。パッケージページで、新規リポジトリをクリックします。新しいパッケージリポジトリウィンドウで、リポジトリ設定を指定します。タイプ:NuGet フィードを選択します。名前と説明: フィード名 (一意の識別子である必要があります) と説明を指定します。アクセス: 認証されていないユーザーがリポジトリから読み取れるようにする場合は、Public を選択します。それ以外の場合は、Private を選...

パッケージ内のアクセスと認可
プライベートおよびパブリックリポジトリ:パッケージリポジトリは特定のプロジェクト内でのみ作成できます。つまり、リポジトリはプロジェクト全体のエンティティです。ユーザー権限は、プロジェクト内のユーザーのロールとリポジトリのタイプ (プライベートまたはパブリック) によって異なります。さらに詳細に: 許可されたユーザーのみがプライベートリポジトリにアクセスできます。アクセスはパッケージリポジトリ権限グループによって管理されます。デフォルトでは: プロジェクトメンバーには、読み取り、書き込み、作成、削除...