2016-06-29 3 views
2

У меня есть библиотека классов .Net Core 1.0, в которой используется пакет Nuget, размещенный в фиде набора команд Visual Studio Team Services Nuget.Как использовать восстановление dotnet в Visual Studio Team Services Hosted Build Agent с VSTS Nuget feed

Мы используем Visual Studio Team Services для создания библиотеки классов и определения сборки с шагом сборки, который выполняет проект dotnet restore. Команда выдает следующие ошибки:

2016-06-28T13:07:09.0634265Z ##[warning]File name doesn't indicate a full path to a executable file. 
2016-06-28T13:07:09.0644179Z Executing the following command-line. (workingFolder = C:\a\1\s) 
2016-06-28T13:07:09.0644179Z dotnet restore 
2016-06-28T13:07:09.0654186Z Error message highlight pattern: 
2016-06-28T13:07:09.0654186Z Warning message highlight pattern: 
2016-06-28T13:07:11.6393062Z log : Restoring packages for C:\a\1\s\src\Company.Extensions\project.json... 
2016-06-28T13:07:11.7623059Z info : GET https://Company.pkgs.visualstudio.com/DefaultCollection/_packaging/FeedName/nuget/v2/FindPackagesById()?id='Company.Model' 
2016-06-28T13:07:11.8463064Z info : GET https://api.nuget.org/v3-flatcontainer/Company.model/index.json 
2016-06-28T13:07:12.0162954Z info : Unauthorized https://Company.pkgs.visualstudio.com/DefaultCollection/_packaging/FeedName/nuget/v2/FindPackagesById()?id='Company.Model' 254ms 
2016-06-28T13:07:12.0702952Z log : Retrying 'FindPackagesByIdAsyncCore' for source 'https://Company.pkgs.visualstudio.com/DefaultCollection/_packaging/FeedName/nuget/v2/FindPackagesById()?id='Company.Model''. 
2016-06-28T13:07:12.0712954Z log : Response status code does not indicate success: 401 (Unauthorized). 
2016-06-28T13:07:12.0712954Z info : GET https://Company.pkgs.visualstudio.com/DefaultCollection/_packaging/FeedName/nuget/v2/FindPackagesById()?id='Company.Model' 
2016-06-28T13:07:12.0722952Z info : NotFound https://api.nuget.org/v3-flatcontainer/Company.model/index.json 224ms 
2016-06-28T13:07:12.1426754Z info : Unauthorized https://Company.pkgs.visualstudio.com/DefaultCollection/_packaging/FeedName/nuget/v2/FindPackagesById()?id='Company.Model' 73ms 
2016-06-28T13:07:12.1436737Z log : Retrying 'FindPackagesByIdAsyncCore' for source 'https://Company.pkgs.visualstudio.com/DefaultCollection/_packaging/FeedName/nuget/v2/FindPackagesById()?id='Company.Model''. 
2016-06-28T13:07:12.1436737Z log : Response status code does not indicate success: 401 (Unauthorized). 
2016-06-28T13:07:12.1446974Z info : GET https://Company.pkgs.visualstudio.com/DefaultCollection/_packaging/FeedName/nuget/v2/FindPackagesById()?id='Company.Model' 
2016-06-28T13:07:12.2162787Z info : Unauthorized https://Company.pkgs.visualstudio.com/DefaultCollection/_packaging/FeedName/nuget/v2/FindPackagesById()?id='Company.Model' 72ms 
2016-06-28T13:07:12.2172786Z error: Failed to retrieve information from remote source 'https://Company.pkgs.visualstudio.com/DefaultCollection/_packaging/FeedName/nuget/v2/FindPackagesById()?id='Company.Model''. 
2016-06-28T13:07:12.2172786Z error: Response status code does not indicate success: 401 (Unauthorized). 
2016-06-28T13:07:12.2364584Z error: Failed to retrieve information from remote source 'https://Company.pkgs.visualstudio.com/DefaultCollection/_packaging/FeedName/nuget/v2/FindPackagesById()?id='Company.Model''. 
2016-06-28T13:07:12.2374607Z error: Response status code does not indicate success: 401 (Unauthorized). 

Очевидно, что это не удается, потому что FeedName требует, чтобы мы аутентифицировать к нему, поэтому у нас есть этот nuget.config файл вместе с нашими project.json:

<?xml version="1.0" encoding="utf-8"?> 
<configuration> 
    <packageSources> 
    <add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" /> 
    <add key="nuget.org" value="https://www.nuget.org/api/v2/" /> 
    <add key="FeedName" value="https://Company.pkgs.visualstudio.com/DefaultCollection/_packaging/FeedName/nuget/v2" /> 
    </packageSources> 
    <packageRestore> 
    <add key="enabled" value="True" /> 
    <add key="automatic" value="True" /> 
    </packageRestore> 
    <bindingRedirects> 
    <add key="skip" value="False" /> 
    </bindingRedirects> 
    <FeedName> 
    <add key="Username" value="username" /> 
    <add key="ClearTextPassword" value="the_actual_clear_text_password" /> 
    </FeedName> 
</configuration> 

Это работает, если мы используем шаг сборки установщика Nuget, но с dotnet restore это не так.

Пожалуйста, помогите, это недостающая часть, нам нужно продолжить работу с Visual Studio Team Services для создания наших проектов.

ответ

2

Подробнее вы можете найти по этой ссылке: .NET Core.

В настоящее время .NET Core не поддерживает зашифрованные учетные данные. Чтобы использовать VSTS Каналы NuGet с приложениями .NET Core, вам нужно будет указать токен личного доступа 10 в виде обычного текста.

+0

Спасибо! После вашей ссылки я обнаружил, что в моем nuget.config мне не хватает тегов ' '. Поместив тех, кто решил мою проблему. – TomRay74

Смежные вопросы