Asp.net mvc 响应状态代码不表示任务中的成功:401;“恢复”;在azure管道上
我有以下错误:Asp.net mvc 响应状态代码不表示任务中的成功:401;“恢复”;在azure管道上,asp.net-mvc,asp.net-core,azure-pipelines,azure-artifacts,Asp.net Mvc,Asp.net Core,Azure Pipelines,Azure Artifacts,我有以下错误: error : Unable to load the service index for source https://privateLibrary.com/private/_packaging/privateOrganitation/nuget/v3/index.json. [/home/vsts/work/1/s/Local.Proyect.Core/Local.Proyect.Core.csproj] /usr/share/dotnet/sdk/3.0.101
error : Unable to load the service index for source https://privateLibrary.com/private/_packaging/privateOrganitation/nuget/v3/index.json. [/home/vsts/work/1/s/Local.Proyect.Core/Local.Proyect.Core.csproj]
/usr/share/dotnet/sdk/3.0.101/NuGet.targets(123,5):
error : Response status code does not indicate success: 401 (Unauthorized). [/home/vsts/work/1/s/Local.Proyect.Core/Local.Proyect.Core.csproj]
My azure-pipeline.yml:
variables:
buildConfiguration: 'Release'
localProyectName: 'Local.Proyect.Core'
localProyectCoreDirectory: './Local.Proyect.Core'
trigger:
branches:
include:
- master
steps:
- task: UseDotNet@2
inputs:
packageType: 'sdk'
- task: DotNetCoreCLI@2
displayName: 'dotnet restore'
inputs:
command: restore
projects: '**/$(localProyectName).csproj'
feedsToUse: config
nugetConfigPath: $(localProyectCoreDirectory)/NuGet.Config
arguments: --force
- task: DotNetCoreCLI@2
displayName: 'Build All'
inputs:
projects: '**/$(localProyectName).csproj'
arguments: '--no-restore --configuration $(buildConfiguration)'
- script: dotnet publish --configuration $(buildConfiguration) --output $(Build.ArtifactStagingDirectory)/$(localProyectName) ./$(localProyectName)/$(localProyectName).csproj
displayName: 'dotnet publish of project $(localProyectName)'
- task: PublishBuildArtifacts@1
displayName: 'Publish Artifact: $(localProyectName)'
inputs:
PathtoPublish: '$(Build.ArtifactStagingDirectory)/$(localProyectName)'
ArtifactName: '$(localProyectName)'
在命令还原中启动时出错。正如您在azure devops中看到的,机器无法还原mi私有数据包。我正在我的应用程序中使用NuGet.Config“Local.Proyect.Core”,其中包含组织的URL:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<packageRestore>
<add key="enabled" value="True" />
<add key="automatic" value="True" />
</packageRestore>
<packageSources>
<add key="privateOrgnitation" value="https://privateLibrary.com/private/_packaging/privateOrganitation/nuget/v3/index.json." />
<add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" />
</packageSources>
<bindingRedirects>
<add key="skip" value="False" />
</bindingRedirects>
<packageManagement>
<add key="format" value="0" />
<add key="disabled" value="False" />
</packageManagement>
</configuration>
为什么机器在其他组织中找不到我的Azure工件??为什么我在visual studio中没有任何错误,这里是的
响应状态代码不表示azure管道上任务“还原”中的成功:401
根据错误信息:
响应状态代码不表示成功:401(未经授权)
似乎您没有在nuget.config
中提供包源的凭据,您可以尝试在nuget.config
中提供凭据,如:
<packageSourceCredentials>
<privateOrgnitation>
<add key="Username" value="user@contoso.com" />
<add key="ClearTextPassword" value="YourPassword" />
</privateOrgnitation>
</packageSourceCredentials>
了解更多细节
希望这能有所帮助。好的,在我遇到这个问题等了很长时间之后,我通过内部组织代码和nuget数据包工件解决了这个问题。问题是在devops中,my数据包位于不同的组织中,是一个私有存储库。所以,现在当azure机器需要工件时,nuget可以将其用于构建我的项目。感谢您的支持,我实际上没有解决这个问题!但我找到了一些信息,我也希望找到问题所在。我认为我的主机终端(PC)已经配置,并且有权使用私有依赖项,但devops云计算机没有。我真的不知道devops的“私有组织”是如何配置的,以及如何共享这些私有nuget数据包。找到解决方案后,我会在这里发布。好的,期待你的回答。你解决了这个问题了吗,你介意将解决方案作为答案分享给我们吗?