Azure 构建管道偶发错误,[CredentialProvider] 设备流身份验证失败

Azure build pipeline sporadic error, [CredentialProvider]Device flow authentication failed

这可能每 2 周发生一次,但最近它发生了几次,直到构建成功一次。

获取https://api.nuget.org/v3-flatcontainer/xamarin.uitest/3.0.9/xamarin.uitest.3.0.9.nupkg ##[error]C:\Program Files (x86)\Microsoft Visual Studio19\Enterprise\Common7\IDE\CommonExtensions\Microsoft\NuGet\NuGet.targets(128,5): 错误:[CredentialProvider] 设备流身份验证失败。用户看到了设备流,但在 90 秒内没有反​​应。

-----更新---- 在进一步挖掘日志后,我发现这是由于对私有提要的 401(未经授权)访问(与管道失败的项目在同一组织中)造成的。 一个临时解决方案是从解决方案构建配置中删除需要此私有提要的特定 *.csproj,并从管道中删除私有提要。这使管道再次工作。

---- 更多管道信息---- 我无法在此处 post 完整代码。

pool:
  vmImage: 'windows-latest'

variables:
  configuration: NugetB

steps:
- task: MSBuild
  displayName: 'MSBuild'
  inputs:
    solution: '**\xxSolutionxx.sln'
    msbuildArchitecture: 'x64'
    configuration: '$(configuration)'
    msbuildArguments: '/t:restore;build;pack /p:PackageOutputPath=$(Build.ArtifactStagingDirectory) /p:RestoreAdditionalProjectSources=https://urlToPrivateFeedInTheSameOrganization /p:configuration=$(configuration) /p:NuGetInteractive="true"'

Azure build pipeline sporadic error, [CredentialProvider]Device flow authentication failed

如果您可以 task/script 访问管道中的 azure ariftact 提要,请尝试使用 System.AccessToken 变量对私有 Azure Artifacts 提要的管道进行身份验证或尝试重置您的 PAT .

您可以查看 this document 了解更多详情。

此外,如果以上没有解决您的问题,请分享您是如何访问工件和构建管道配置的。