nuget continuously asks for credentials when push
Recently I’ve stuck with nuget push credentials problem
I’m using the vsts
package host to handle custom packages
The problem is that when the nuget push
command is executed from my local machine credentials are asked several times and then timeout exception is raised.
Sequence [login, then organization login page, password] is repeated three times and the timeout error is raised
I’ve provided an apikey
and source
parameters in the nuget
command line parameters.
However nuget tries to get source url first of all that causes credentials to be asked.
so i run the command
& nuget push $nupkgname -ApiKey $apikey -Source $packagehost
and see that fiddler shows a request
GET https://_org_.pkgs.visualstudio.com/_packaging/_guid_/nuget/v3/index.json HTTP/1.1
User-Agent: VSServices/15.112.26224.0 (CredentialProvider.VSS.exe) VssPkgsAuthLib/0.34.0.0 CredentialProvider.VSS/0.34.0.0
with response
TF400813: Resource not available for anonymous access. Client authentication required.
This is strange since the same apikey is working fine when used from vsts
build private agent.
However the nuget push
task uses different command (VstsNuGetPush
), with the accesskey
parameter.
I’ve checked an api key
permissions and it was fine (read, write and manage).
_work\_tasks\NuGetCommand_333b11bd-d341-40d9-afcf-b32d5ce6f23b\2.0.27\VstsNuGetPush\0.13.0\VstsNuGetPush.exe C:\build.agent\hosted\_work\3\a\package.0.2.19.nupkg -Source https://_org_.pkgs.visualstudio.com/_packaging/_guid_/nuget/v3/index.json -AccessToken ******** -NonInteractive -Verbosity Detailed
First idea was to use the VstsNugetPush
command instead of nuget.exe
tool.
However the v3 nuget
feed has several links but the v2 feed version is an ordinary atomic feed.
So I changed v3
to v2
and package was pushed without any problem
nuget push packagename -apikey keyvalue -Source https://_org_.pkgs.visualstudio.com/_packaging/_guid_/nuget/v2/
does not cause additional credentials to be entered by user