На работе мы создаем пакеты nuget, которые храним в VSTS. Все разработчики добавили наш репозиторий в глобальный nuget.config (в папке% appdata% \ Nuget), создали токен личного доступа (PAT) и установили CredentialProvider.VSS.exe. Поэтому восстановление пакетов nuget с помощью командной строки, например nuget.exe restore
, выполняется без ввода каких-либо паролей или имен пользователей.
При использовании того же рецепта для шоколадных упаковок все работает не так хорошо. Блог на сайте roadtoalm. com описывает, как вы можете установить пакеты Chocolatey, которые хранятся в VSTS, но вы должны указать PAT, адрес репозитория и имя пользователя (хотя последнее значение может быть фиктивным, оно не используется). Нет ли способа заставить Шоколадки использовать поставщика учетных данных так же, как это делает nuget?
Обновление: после добавления моего репозитория Choco в список известных репозиториев мой файл chocolatey.config выглядит так:
<sources>
<source id="chocolatey" value="https://chocolatey.org/api/v2/" disabled="true" bypassProxy="false" selfService="false" priority="0" />
<source id="CompanyChoco" value="https://Company.pkgs.visualstudio.com/_packaging/CompanyChoco/nuget/v2/" disabled="false" bypassProxy="false" selfService="false" priority="1" />
</sources>
Как было предложено @starain-MSFT, я создал файл package.config, который выглядит так:
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="MyPackage" version="0.0.4" source="https://Company.pkgs.visualstudio.com/_packaging/CompanyChoco/nuget/v2/" />
</packages>
Я также удостоверился, что у меня установлена последняя версия CredentialProvider.VSS.exe в% appdata% \ local \ nuget \ credentialproviders. Когда я выполняю «choco install package.config», мне все равно предлагается ввести имя пользователя и пароль.