2

VSTS でビルドされているソリューションで参照するいくつかのパッケージを提供する VSTS のパッケージ フィードがあります。パッケージの復元フェーズでビルドが突然失敗し始め、復元するはずの dlls nuget が見つからないことを示すログが表示されます。

NuGet パッケージ Basd.Diagnostics.0.7.0 を復元しています。

警告: パッケージ 'Basd.Diagnostics' のバージョン '0.7.0' が見つかりません。

パブリック/プライベート フィードは nuget.config に一覧表示され、ビルド ログにも表示される"Using Feeds..."ため、パッケージの実際のフィードを見つけることができない復元操作の問題ではありません。認証できないため、フィードからパッケージを取得できないようです。

ビルド定義の履歴を見ると、最後に機能したときから現在までの変更があり、それは次のとおりです。

  "build": [
    {
      "enabled": true,
      "continueOnError": false,
      "alwaysRun": false,
      "displayName": "NuGet restore MySol.sln",
      "timeoutInMinutes": 0,
      "task": {
        "id": "333b11bd-d341-40d9-afcf-b32d5ce6f23b",
        "versionSpec": "*",
        "definitionType": "task"
      },
      "inputs": {
        "solution": "Basd.Core.sln",
        "nugetConfigPath": "nuget.config",
        "restoreMode": "restore",
        "noCache": "false",
        "nuGetRestoreArgs": "",
        "verbosity": "",
        "nuGetPath": "",
        "preCredProviderNuGet": "false"
      }
    },

"preCredProviderNuGet": "false"定義にフィールドが追加されました。 私はグーグルで検索しましたが、これがどこでどのように設定されているかわかりませんが、これが私のフィードへの認証を妨げていると想定しているため、復元操作が失敗します。

では、この設定はどこにありますか、また、それを元に戻すか、エントリとして削除するにはどうすればよいですか? 作業中のビルド定義では、true に設定されていませんでした。単に存在しませんでした。

VSTS UI 関連のフィールドですか、それとも nuget.config ファイルで設定したものですか? 私は前者を想定しています。なぜなら、再び差分を実行すると、機能しているビルドと機能していないビルドの間で nuget.config に何も変更がないことが示唆されるからです。

4

2 に答える 2