gpt4 book ai didi

c# - 即使具有正确的权限和 Nuget 身份验证任务,Azure Pipeline 也无法访问 Azure Artefact Nuget 项目源

转载 作者:行者123 更新时间:2023-12-03 06:56:21 25 4
gpt4 key购买 nike

我有一个非常奇怪的问题,我有一个基于项目的 nuget feed,一个管道发布到它,工作正常,然后另一个管道需要恢复使用此 nuget feed 的项目。

问题是我已遵循所有相关说明,例如:

  • 确保构建服务具有权限
  • 确保调用 NuGetAuthenticate 0 或 1
  • 确保存在包含 Feed 的 nuget.config

例如,nuget.config 看起来像:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
<packageSources>
<clear />
<add key="nuget" value="https://api.nuget.org/v3/index.json" />
<add key="azure-feed" value="http://pkgs.dev.azure.com/<org>/<project>/_packaging/<feed-name>/nuget/v3/index.json" />
</packageSources>
</configuration>

然后管道部分如下所示:

steps:
- task: NuGetAuthenticate@0
- task: DotNetCoreCLI@2
displayName: dotnet restore
inputs:
command: restore
nugetConfigPath: 'nuget.config'
feedsToUse: config

这一切在 IDE(VS 和 Rider)中运行良好,并且发布和读取 nuget 包的管道都与源位于同一个 azure devops 项目中。

当构建运行时,我看到身份验证步骤运行:

Setting up the credential provider to use the identity '<project> Build Service (<org>)' for feeds in your organization/collection starting with:
https://pkgs.dev.azure.com/<org>/
https://<org>.pkgs.visualstudio.com/

这一切都是正确的,并且指向正确的源,但是当恢复运行时,会出现以下错误:

error NU1301: Unable to load the service index for source http://pkgs.dev.azure.com/<org>/<project>/_packaging/<feed-name>/nuget/v3/index.json.

网上的所有文章都说尝试切换到 NuGetAuthenticate@0 或启用更高级别的设置以允许构建服务项目范围不受限制,并确认所有权限都正确,但都没有已经解决了问题。

最佳答案

这里的问题是 nuget.config 文件中的 feed 使用的是 http 而不是 https 并且由于某种原因 nuget 验证任务将仅验证 https 网址,而不是 IDE 可以正常使用的不安全的 http 网址。

如此变化:

<add key="azure-feed" value="http://pkgs.dev.azure.com/<org>/<project>/_packaging/<feed-name>/nuget/v3/index.json" />

至:

<add key="azure-feed" value="https://pkgs.dev.azure.com/<org>/<project>/_packaging/<feed-name>/nuget/v3/index.json" />

修复了所有问题并且有效,这在网上从未被提及为可能的解决方案,因此我认为将其放在这里对于任何有相同问题的后代是明智的。

关于c# - 即使具有正确的权限和 Nuget 身份验证任务,Azure Pipeline 也无法访问 Azure Artefact Nuget 项目源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72909732/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com