TFSでCIプロセスを実装しました。このCIプロセスの第一歩はNuget Restoreです。TFSビルドエージェントのnugetはcmdから動作しますが、TFSで許可エラーが発生します
プロジェクトには、同じTFSインスタンスのナゲットフィードに保存されている依存関係があります。リストア中に401許可が必要なエラーが発生しました。
2017-08-22T14:45:56.9497847Z [command]d:\path\3.5.0\NuGet.exe restore
-NonInteractive D:\somepath\project.sln -Verbosity Detailed
2017-08-22T14:46:03.5127467Z Error downloading 'dependency.4.1.1' from 'http://URL:80/tfs/TFSCollection/_packaging/path/dependency.4.121.1.nupkg'.
2017-08-22T14:46:03.5127467Z Response status code does not indicate success: 401 (Unauthorized).
しかし、私はコマンドラインからログに表示される同じコマンドを試してみます。依存関係が正常にインストールされています。
私はnupkgがここにありますチェックしています
「http://URL:80/tfs/TFSCollection/_packaging/path/dependency.4.121.1.nupkg」
私はコマンドに続くチェックしたが、同じマシン上でコマンドラインから正常に動作します。
d:\path\3.5.0\NuGet.exe restore
-NonInteractive D:\somepath\project.sln -Verbosity Detailed
マイクロソフトへのチケットを開こうとしています。しかし、私には見えない簡単なトリックがあるようです。そのような経験はありますか?なぜ同じコマンドがコマンドラインから動作しますが、TFSからは動作しません。あなたは何か考えていますか?
ありがとうございました。私は文書をチェックしたが、まだ試していない。もう一つの質問。設定ファイルに資格を入れるのではなく、私はapiキーを使いたいと思います。私はテキストファイルに資格情報を入れることを好まない。だから、 'apikeys'を使うのは大丈夫ですか?リソース:https://docs.microsoft.com/en-us/nuget/schema/nuget-config-file – wasabi
@ melih.tt 'apikeys'はhttps://www.nuget.org/account/ApiKeys用です。つまり、Nuget.orgサイトでパッケージを管理する必要があります。カスタムTFSフィードでは、通常の資格情報またはPATを使用できます。 –
次のコマンドを使用して問題が解決しました。しかし、私はまだパスワードを設定ファイルに入れないで解決策を探しています。どのような例がありますか、私はPATで同じことをどうやって行うことができますか?あなたのドメイン名を入力してください。-password {あなたのドメインのパスワード} – wasabi