web-dev-qa-db-fra.com

Azure DevOps publie Nuget dans un flux hébergé

J'ai une question concernant les pipelines hébergés (gratuits) AzureDevops. J'ai un petit projet .NET Core que je souhaite créer un pipeline Azure Devops où les opérations suivantes sont effectuées

  • restaurer
  • construire
  • pack
  • Push (vers le flux d'artefacts hébergé AzureDevOps)

J'ai la configuration de flux suivante sur mon projet dans Azure Devops

enter image description here

Qui a ces informations de connexion pour le flux

..../NugetProjects/_packaging/nugetprojectstestfeed/nuget/v3/index.json

Il a également la sécurité suivante qui lui est appliquée (notez que le service de création de collection de projets est défini comme "contributeur")

enter image description here

Ce qui est indiqué dans ce paragraphe des documents officiels de Microsoft

Pour publier dans un flux Azure Artifacts, définissez l'identité du service de création de collection de projets comme contributeur dans le flux.

J'ai ensuite cette configuration de pipeline de construction (Yaml)

# ASP.NET Core
# Build and test ASP.NET Core projects targeting .NET Core.
# Add steps that run tests, create a NuGet package, deploy, and more:
# https://docs.Microsoft.com/Azure/devops/pipelines/languages/dotnet-core

trigger:
- master

pool:
  vmImage: 'ubuntu-latest'

variables:
  buildConfiguration: 'Release'
  Major: '1'
  Minor: '0'
  Patch: '0'

steps:

- task: DotNetCoreCLI@2
  displayName: 'Restore'
  inputs:
    command: restore
    projects: '**/MathsLib.csproj'


- task: DotNetCoreCLI@2
  displayName: Build
  inputs:
    command: build
    projects: '**/MathsLib.csproj'
    arguments: '--configuration Release' # Update this to match your need


- task: DotNetCoreCLI@2
  inputs: 
    command: 'pack'
    projects: '**/MathsLib.csproj'
    outputDir: '$(Build.ArtifactStagingDirectory)'
    versioningScheme: 'byPrereleaseNumber'
    majorVersion: '1'
    minorVersion: '0'
    patchVersion: '0'


- task: NuGetAuthenticate@0
  displayName: 'NuGet Authenticate'
- task: NuGetCommand@2
  displayName: 'NuGet Push'
  inputs:
    command: Push
    publishVstsFeed: 'nugetprojectstestfeed'
    allowPackageConflicts: true

L'ensemble du pipeline fonctionne bien jusqu'à la poussée Nuget. Comme montré ici

enter image description here

Mais si je regarde dans l'exception, je vois ce genre de chose

##[warning]Could not create provenance session: {"statusCode":500,"result":{"$id":"1","innerException":null,"message":"The feed with ID 'nugetprojectstestfeed' doesn't exist.","typeName":"Microsoft.VisualStudio.Services.Feed.WebApi.FeedIdNotFoundException, Microsoft.VisualStudio.Services.Feed.WebApi","typeKey":"FeedIdNotFoundException","errorCode":0,"eventId":3000}}
[command]/usr/bin/mono /opt/hostedtoolcache/NuGet/4.1.0/x64/nuget.exe Push /home/vsts/work/1/a/MathsLib.1.0.0-CI-20191114-115941.nupkg -NonInteractive -Source https://pkgs.dev.Azure.com/XXXXX/_packaging/nugetprojectstestfeed/nuget/v3/index.json -ApiKey VSTS -Verbosity Detailed
System.AggregateException: One or more errors occurred. (Unable to load the service index for source https://pkgs.dev.Azure.com/XXXXX/_packaging/nugetprojectstestfeed/nuget/v3/index.json.) ---> NuGet.Protocol.Core.Types.FatalProtocolException: Unable to load the service index for source https://pkgs.dev.Azure.com/XXXXX/_packaging/nugetprojectstestfeed/nuget/v3/index.json. ---> System.Net.Http.HttpRequestException: Response status code does not indicate success: 404 (Not Found - The feed with ID 'nugetprojectstestfeed' doesn't exist. (DevOps Activity ID: F123AC3A-8E75-4D3A-B3B6-60EC4510FF54)).

C'était ma connexion de flux d'origine

https://pkgs.dev.Azure.com/XXXX/NugetProjects/_packaging/nugetprojectstestfeed/nuget/v3/index.json

Mais c'est ce qui est montré dans le message d'erreur

https://pkgs.dev.Azure.com/XXXXX/_packaging/nugetprojectstestfeed/nuget/v3/index.json

Il semble donc qu'il essaie d'accéder à un flux dans un projet racine, pas le projet "NuGetProjects" que j'ai configuré dans Azure DevOps. Y a-t-il un paramètre/configuration qui me manque pour lui dire de cibler le flux dans le projet "NuGetProjects"

Comme je l'ai dit, il semble qu'il recherche un flux de niveau supérieur ne se trouvant pas dans le projet spécifique pour lequel le pipeline de génération est configuré pour

Étape par étape complète de l'utilisation d'un nouveau flux

Donc, pour être complet, voici une description complète de la façon dont j'ai créé le projet, le flux et où il se situe dans l'organisation des choses (j'ai créé un nouveau flux comme suggéré comme quelque chose à essayer)

J'ai cette organisation "sachabarber2019", qui a ces projets dedans

enter image description here

J'ai ensuite créé ce flux dans l'un des projets de l'organisation

enter image description here

Avec ces paramètres enter image description here

enter image description here

Et ceci est le pipeline de construction actuel

# ASP.NET Core
# Build and test ASP.NET Core projects targeting .NET Core.
# Add steps that run tests, create a NuGet package, deploy, and more:
# https://docs.Microsoft.com/Azure/devops/pipelines/languages/dotnet-core

trigger:
- master

pool:
  vmImage: 'ubuntu-latest'

variables:
  buildConfiguration: 'Release'
  Major: '1'
  Minor: '0'
  Patch: '0'

steps:

- task: DotNetCoreCLI@2
  displayName: 'Restore'
  inputs:
    command: restore
    projects: '**/MathsLib.csproj'


- task: DotNetCoreCLI@2
  displayName: Build
  inputs:
    command: build
    projects: '**/MathsLib.csproj'
    arguments: '--configuration Release' # Update this to match your need


- task: DotNetCoreCLI@2
  inputs: 
    command: 'pack'
    projects: '**/MathsLib.csproj'
    outputDir: '$(Build.ArtifactStagingDirectory)'
    versioningScheme: 'byPrereleaseNumber'
    majorVersion: '1'
    minorVersion: '0'
    patchVersion: '0'


- task: NuGetCommand@2
  displayName: 'NuGet Push'
  inputs:
    command: Push
    feedsToUse: select
    packagesToPush: '$(Build.ArtifactStagingDirectory)/**/*.nupkg;!$(Build.ArtifactStagingDirectory)/**/*.symbols.nupkg'
    vstsFeed: anotherfeed
    nuGetFeedType: internal
    publishVstsFeed: anotherfeed
    allowPackageConflicts: true


Et comme avant, je reçois la même erreur

##[section]Starting: NuGet Push
==============================================================================
Task         : NuGet
Description  : Restore, pack, or Push NuGet packages, or run a NuGet command. Supports NuGet.org and authenticated feeds like Azure Artifacts and MyGet. Uses NuGet.exe and works with .NET Framework apps. For .NET Core and .NET Standard apps, use the .NET Core task.
Version      : 2.161.0
Author       : Microsoft Corporation
Help         : https://docs.Microsoft.com/Azure/devops/pipelines/tasks/package/nuget
==============================================================================
Caching tool: NuGet 4.1.0 x64
Found tool in cache: NuGet 4.1.0 x64
Resolved from tool cache: 4.1.0
Using version: 4.1.0
Found tool in cache: NuGet 4.1.0 x64
SYSTEMVSSCONNECTION exists true
SYSTEMVSSCONNECTION exists true
SYSTEMVSSCONNECTION exists true
Detected NuGet version 4.1.0.2450 / 4.1.0
##[warning]Could not create provenance session: {"statusCode":500,"result":{"$id":"1","innerException":null,"message":"The feed with ID 'anotherfeed' doesn't exist.","typeName":"Microsoft.VisualStudio.Services.Feed.WebApi.FeedIdNotFoundException, Microsoft.VisualStudio.Services.Feed.WebApi","typeKey":"FeedIdNotFoundException","errorCode":0,"eventId":3000}}
[command]/usr/bin/mono /opt/hostedtoolcache/NuGet/4.1.0/x64/nuget.exe Push /home/vsts/work/1/a/MathsLib.1.0.0-CI-20191120-121118.nupkg -NonInteractive -Source https://pkgs.dev.Azure.com/sachabarber2019/_packaging/anotherfeed/nuget/v3/index.json -ApiKey VSTS -Verbosity Detailed
NuGet Version: 4.1.0.2450
mono-sgen: /home/vsts/work/_tasks/NuGetCommand_333b11bd-d341-40d9-afcf-b32d5ce6f23b/2.161.0/CredentialProvider/CredentialProvider.TeamBuild.exe -uri https://pkgs.dev.Azure.com/sachabarber2019/_packaging/anotherfeed/nuget/v3/index.json -nonInteractive -verbosity detailed
mono-sgen: URI Prefixes:
mono-sgen:     https://dev.Azure.com/sachabarber2019/
mono-sgen:     https://pkgs.dev.Azure.com/sachabarber2019/
mono-sgen:     https://pkgsproduks1.pkgs.visualstudio.com/
mono-sgen:     https://pkgs.dev.Azure.com/sachabarber2019/
mono-sgen:     https://sachabarber2019.pkgs.visualstudio.com/
mono-sgen:     https://pkgs.dev.Azure.com/sachabarber2019/
mono-sgen: URI: https://pkgs.dev.Azure.com/sachabarber2019/_packaging/anotherfeed/nuget/v3/index.json
mono-sgen: Is retry: False
mono-sgen: Matched prefix: https://pkgs.dev.Azure.com/sachabarber2019/
System.AggregateException: One or more errors occurred. (Unable to load the service index for source https://pkgs.dev.Azure.com/sachabarber2019/_packaging/anotherfeed/nuget/v3/index.json.) ---> NuGet.Protocol.Core.Types.FatalProtocolException: Unable to load the service index for source https://pkgs.dev.Azure.com/sachabarber2019/_packaging/anotherfeed/nuget/v3/index.json. ---> System.Net.Http.HttpRequestException: Response status code does not indicate success: 404 (Not Found - The feed with ID 'anotherfeed' doesn't exist. (DevOps Activity ID: 9E8C7E28-9D51-44A1-9286-8F6F839BCBD6)).
  at System.Net.Http.HttpResponseMessage.EnsureSuccessStatusCode () [0x00040] in <7ecf813f2d314058b05c6c092c47b77a>:0 
  at NuGet.Protocol.HttpSource+<>c__DisplayClass12_0`1[T].<GetAsync>b__0 (System.Threading.CancellationToken lockedToken) [0x004a8] in <d0f788a4af354971807e5d8ca6fc682e>:0 
  at NuGet.Common.ConcurrencyUtilities.ExecuteWithFileLockedAsync[T] (System.String filePath, System.Func`2[T,TResult] action, System.Threading.CancellationToken token) [0x0024a] in <d0f788a4af354971807e5d8ca6fc682e>:0 
  at NuGet.Protocol.HttpSource.GetAsync[T] (NuGet.Protocol.HttpSourceCachedRequest request, System.Func`2[T,TResult] processAsync, NuGet.Common.ILogger log, System.Threading.CancellationToken token) [0x000ed] in <d0f788a4af354971807e5d8ca6fc682e>:0 
  at NuGet.Protocol.ServiceIndexResourceV3Provider.GetServiceIndexResourceV3 (NuGet.Protocol.Core.Types.SourceRepository source, System.DateTime utcNow, NuGet.Common.ILogger log, System.Threading.CancellationToken token) [0x00207] in <d0f788a4af354971807e5d8ca6fc682e>:0 
   --- End of inner exception stack trace ---
  at NuGet.Protocol.ServiceIndexResourceV3Provider.GetServiceIndexResourceV3 (NuGet.Protocol.Core.Types.SourceRepository source, System.DateTime utcNow, NuGet.Common.ILogger log, System.Threading.CancellationToken token) [0x002d5] in <d0f788a4af354971807e5d8ca6fc682e>:0 
  at NuGet.Protocol.ServiceIndexResourceV3Provider.TryCreate (NuGet.Protocol.Core.Types.SourceRepository source, System.Threading.CancellationToken token) [0x00233] in <d0f788a4af354971807e5d8ca6fc682e>:0 
  at NuGet.Protocol.Core.Types.SourceRepository.GetResourceAsync[T] (System.Threading.CancellationToken token) [0x000b8] in <d0f788a4af354971807e5d8ca6fc682e>:0 
  at NuGet.Protocol.PackageUpdateResourceV3Provider.TryCreate (NuGet.Protocol.Core.Types.SourceRepository source, System.Threading.CancellationToken token) [0x0007d] in <d0f788a4af354971807e5d8ca6fc682e>:0 
  at NuGet.Protocol.Core.Types.SourceRepository.GetResourceAsync[T] (System.Threading.CancellationToken token) [0x000b8] in <d0f788a4af354971807e5d8ca6fc682e>:0 
  at NuGet.Protocol.Core.Types.SourceRepository.GetResourceAsync[T] () [0x0006e] in <d0f788a4af354971807e5d8ca6fc682e>:0 
  at NuGet.Commands.CommandRunnerUtility.GetPackageUpdateResource (NuGet.Configuration.IPackageSourceProvider sourceProvider, System.String source) [0x000f1] in <d0f788a4af354971807e5d8ca6fc682e>:0 
  at NuGet.Commands.PushRunner.Run (NuGet.Configuration.ISettings settings, NuGet.Configuration.IPackageSourceProvider sourceProvider, System.String packagePath, System.String source, System.String apiKey, System.String symbolSource, System.String symbolApiKey, System.Int32 timeoutSeconds, System.Boolean disableBuffering, System.Boolean noSymbols, NuGet.Common.ILogger logger) [0x00133] in <d0f788a4af354971807e5d8ca6fc682e>:0 
  at NuGet.CommandLine.PushCommand.ExecuteCommandAsync () [0x001b0] in <d0f788a4af354971807e5d8ca6fc682e>:0 
   --- End of inner exception stack trace ---
  at System.Threading.Tasks.Task.ThrowIfExceptional (System.Boolean includeTaskCanceledExceptions) [0x00011] in <285579f54af44a2ca048dad6be20e190>:0 
  at System.Threading.Tasks.Task.Wait (System.Int32 millisecondsTimeout, System.Threading.CancellationToken cancellationToken) [0x00043] in <285579f54af44a2ca048dad6be20e190>:0 
  at System.Threading.Tasks.Task.Wait () [0x00000] in <285579f54af44a2ca048dad6be20e190>:0 
  at NuGet.CommandLine.Command.Execute () [0x000bd] in <d0f788a4af354971807e5d8ca6fc682e>:0 
  at NuGet.CommandLine.Program.MainCore (System.String workingDirectory, System.String[] args) [0x001f3] in <d0f788a4af354971807e5d8ca6fc682e>:0 
---> (Inner Exception #0) NuGet.Protocol.Core.Types.FatalProtocolException: Unable to load the service index for source https://pkgs.dev.Azure.com/sachabarber2019/_packaging/anotherfeed/nuget/v3/index.json. ---> System.Net.Http.HttpRequestException: Response status code does not indicate success: 404 (Not Found - The feed with ID 'anotherfeed' doesn't exist. (DevOps Activity ID: 9E8C7E28-9D51-44A1-9286-8F6F839BCBD6)).
  at System.Net.Http.HttpResponseMessage.EnsureSuccessStatusCode () [0x00040] in <7ecf813f2d314058b05c6c092c47b77a>:0 
  at NuGet.Protocol.HttpSource+<>c__DisplayClass12_0`1[T].<GetAsync>b__0 (System.Threading.CancellationToken lockedToken) [0x004a8] in <d0f788a4af354971807e5d8ca6fc682e>:0 
  at NuGet.Common.ConcurrencyUtilities.ExecuteWithFileLockedAsync[T] (System.String filePath, System.Func`2[T,TResult] action, System.Threading.CancellationToken token) [0x0024a] in <d0f788a4af354971807e5d8ca6fc682e>:0 
  at NuGet.Protocol.HttpSource.GetAsync[T] (NuGet.Protocol.HttpSourceCachedRequest request, System.Func`2[T,TResult] processAsync, NuGet.Common.ILogger log, System.Threading.CancellationToken token) [0x000ed] in <d0f788a4af354971807e5d8ca6fc682e>:0 
  at NuGet.Protocol.ServiceIndexResourceV3Provider.GetServiceIndexResourceV3 (NuGet.Protocol.Core.Types.SourceRepository source, System.DateTime utcNow, NuGet.Common.ILogger log, System.Threading.CancellationToken token) [0x00207] in <d0f788a4af354971807e5d8ca6fc682e>:0 
   --- End of inner exception stack trace ---
  at NuGet.Protocol.ServiceIndexResourceV3Provider.GetServiceIndexResourceV3 (NuGet.Protocol.Core.Types.SourceRepository source, System.DateTime utcNow, NuGet.Common.ILogger log, System.Threading.CancellationToken token) [0x002d5] in <d0f788a4af354971807e5d8ca6fc682e>:0 
  at NuGet.Protocol.ServiceIndexResourceV3Provider.TryCreate (NuGet.Protocol.Core.Types.SourceRepository source, System.Threading.CancellationToken token) [0x00233] in <d0f788a4af354971807e5d8ca6fc682e>:0 
  at NuGet.Protocol.Core.Types.SourceRepository.GetResourceAsync[T] (System.Threading.CancellationToken token) [0x000b8] in <d0f788a4af354971807e5d8ca6fc682e>:0 
  at NuGet.Protocol.PackageUpdateResourceV3Provider.TryCreate (NuGet.Protocol.Core.Types.SourceRepository source, System.Threading.CancellationToken token) [0x0007d] in <d0f788a4af354971807e5d8ca6fc682e>:0 
  at NuGet.Protocol.Core.Types.SourceRepository.GetResourceAsync[T] (System.Threading.CancellationToken token) [0x000b8] in <d0f788a4af354971807e5d8ca6fc682e>:0 
  at NuGet.Protocol.Core.Types.SourceRepository.GetResourceAsync[T] () [0x0006e] in <d0f788a4af354971807e5d8ca6fc682e>:0 
  at NuGet.Commands.CommandRunnerUtility.GetPackageUpdateResource (NuGet.Configuration.IPackageSourceProvider sourceProvider, System.String source) [0x000f1] in <d0f788a4af354971807e5d8ca6fc682e>:0 
  at NuGet.Commands.PushRunner.Run (NuGet.Configuration.ISettings settings, NuGet.Configuration.IPackageSourceProvider sourceProvider, System.String packagePath, System.String source, System.String apiKey, System.String symbolSource, System.String symbolApiKey, System.Int32 timeoutSeconds, System.Boolean disableBuffering, System.Boolean noSymbols, NuGet.Common.ILogger logger) [0x00133] in <d0f788a4af354971807e5d8ca6fc682e>:0 
  at NuGet.CommandLine.PushCommand.ExecuteCommandAsync () [0x001b0] in <d0f788a4af354971807e5d8ca6fc682e>:0 <---

##[error]The nuget command failed with exit code(1) and error(System.AggregateException: One or more errors occurred. (Unable to load the service index for source https://pkgs.dev.Azure.com/sachabarber2019/_packaging/anotherfeed/nuget/v3/index.json.) ---> NuGet.Protocol.Core.Types.FatalProtocolException: Unable to load the service index for source https://pkgs.dev.Azure.com/sachabarber2019/_packaging/anotherfeed/nuget/v3/index.json. ---> System.Net.Http.HttpRequestException: Response status code does not indicate success: 404 (Not Found - The feed with ID 'anotherfeed' doesn't exist. (DevOps Activity ID: 9E8C7E28-9D51-44A1-9286-8F6F839BCBD6)).
  at System.Net.Http.HttpResponseMessage.EnsureSuccessStatusCode () [0x00040] in <7ecf813f2d314058b05c6c092c47b77a>:0 
  at NuGet.Protocol.HttpSource+<>c__DisplayClass12_0`1[T].<GetAsync>b__0 (System.Threading.CancellationToken lockedToken) [0x004a8] in <d0f788a4af354971807e5d8ca6fc682e>:0 
  at NuGet.Common.ConcurrencyUtilities.ExecuteWithFileLockedAsync[T] (System.String filePath, System.Func`2[T,TResult] action, System.Threading.CancellationToken token) [0x0024a] in <d0f788a4af354971807e5d8ca6fc682e>:0 
  at NuGet.Protocol.HttpSource.GetAsync[T] (NuGet.Protocol.HttpSourceCachedRequest request, System.Func`2[T,TResult] processAsync, NuGet.Common.ILogger log, System.Threading.CancellationToken token) [0x000ed] in <d0f788a4af354971807e5d8ca6fc682e>:0 
  at NuGet.Protocol.ServiceIndexResourceV3Provider.GetServiceIndexResourceV3 (NuGet.Protocol.Core.Types.SourceRepository source, System.DateTime utcNow, NuGet.Common.ILogger log, System.Threading.CancellationToken token) [0x00207] in <d0f788a4af354971807e5d8ca6fc682e>:0 
   --- End of inner exception stack trace ---
  at NuGet.Protocol.ServiceIndexResourceV3Provider.GetServiceIndexResourceV3 (NuGet.Protocol.Core.Types.SourceRepository source, System.DateTime utcNow, NuGet.Common.ILogger log, System.Threading.CancellationToken token) [0x002d5] in <d0f788a4af354971807e5d8ca6fc682e>:0 
  at NuGet.Protocol.ServiceIndexResourceV3Provider.TryCreate (NuGet.Protocol.Core.Types.SourceRepository source, System.Threading.CancellationToken token) [0x00233] in <d0f788a4af354971807e5d8ca6fc682e>:0 
  at NuGet.Protocol.Core.Types.SourceRepository.GetResourceAsync[T] (System.Threading.CancellationToken token) [0x000b8] in <d0f788a4af354971807e5d8ca6fc682e>:0 
  at NuGet.Protocol.PackageUpdateResourceV3Provider.TryCreate (NuGet.Protocol.Core.Types.SourceRepository source, System.Threading.CancellationToken token) [0x0007d] in <d0f788a4af354971807e5d8ca6fc682e>:0 
  at NuGet.Protocol.Core.Types.SourceRepository.GetResourceAsync[T] (System.Threading.CancellationToken token) [0x000b8] in <d0f788a4af354971807e5d8ca6fc682e>:0 
  at NuGet.Protocol.Core.Types.SourceRepository.GetResourceAsync[T] () [0x0006e] in <d0f788a4af354971807e5d8ca6fc682e>:0 
  at NuGet.Commands.CommandRunnerUtility.GetPackageUpdateResource (NuGet.Configuration.IPackageSourceProvider sourceProvider, System.String source) [0x000f1] in <d0f788a4af354971807e5d8ca6fc682e>:0 
  at NuGet.Commands.PushRunner.Run (NuGet.Configuration.ISettings settings, NuGet.Configuration.IPackageSourceProvider sourceProvider, System.String packagePath, System.String source, System.String apiKey, System.String symbolSource, System.String symbolApiKey, System.Int32 timeoutSeconds, System.Boolean disableBuffering, System.Boolean noSymbols, NuGet.Common.ILogger logger) [0x00133] in <d0f788a4af354971807e5d8ca6fc682e>:0 
  at NuGet.CommandLine.PushCommand.ExecuteCommandAsync () [0x001b0] in <d0f788a4af354971807e5d8ca6fc682e>:0 
   --- End of inner exception stack trace ---
  at System.Threading.Tasks.Task.ThrowIfExceptional (System.Boolean includeTaskCanceledExceptions) [0x00011] in <285579f54af44a2ca048dad6be20e190>:0 
  at System.Threading.Tasks.Task.Wait (System.Int32 millisecondsTimeout, System.Threading.CancellationToken cancellationToken) [0x00043] in <285579f54af44a2ca048dad6be20e190>:0 
  at System.Threading.Tasks.Task.Wait () [0x00000] in <285579f54af44a2ca048dad6be20e190>:0 
  at NuGet.CommandLine.Command.Execute () [0x000bd] in <d0f788a4af354971807e5d8ca6fc682e>:0 
  at NuGet.CommandLine.Program.MainCore (System.String workingDirectory, System.String[] args) [0x001f3] in <d0f788a4af354971807e5d8ca6fc682e>:0 
---> (Inner Exception #0) NuGet.Protocol.Core.Types.FatalProtocolException: Unable to load the service index for source https://pkgs.dev.Azure.com/sachabarber2019/_packaging/anotherfeed/nuget/v3/index.json. ---> System.Net.Http.HttpRequestException: Response status code does not indicate success: 404 (Not Found - The feed with ID 'anotherfeed' doesn't exist. (DevOps Activity ID: 9E8C7E28-9D51-44A1-9286-8F6F839BCBD6)).
  at System.Net.Http.HttpResponseMessage.EnsureSuccessStatusCode () [0x00040] in <7ecf813f2d314058b05c6c092c47b77a>:0 
  at NuGet.Protocol.HttpSource+<>c__DisplayClass12_0`1[T].<GetAsync>b__0 (System.Threading.CancellationToken lockedToken) [0x004a8] in <d0f788a4af354971807e5d8ca6fc682e>:0 
  at NuGet.Common.ConcurrencyUtilities.ExecuteWithFileLockedAsync[T] (System.String filePath, System.Func`2[T,TResult] action, System.Threading.CancellationToken token) [0x0024a] in <d0f788a4af354971807e5d8ca6fc682e>:0 
  at NuGet.Protocol.HttpSource.GetAsync[T] (NuGet.Protocol.HttpSourceCachedRequest request, System.Func`2[T,TResult] processAsync, NuGet.Common.ILogger log, System.Threading.CancellationToken token) [0x000ed] in <d0f788a4af354971807e5d8ca6fc682e>:0 
  at NuGet.Protocol.ServiceIndexResourceV3Provider.GetServiceIndexResourceV3 (NuGet.Protocol.Core.Types.SourceRepository source, System.DateTime utcNow, NuGet.Common.ILogger log, System.Threading.CancellationToken token) [0x00207] in <d0f788a4af354971807e5d8ca6fc682e>:0 
   --- End of inner exception stack trace ---
  at NuGet.Protocol.ServiceIndexResourceV3Provider.GetServiceIndexResourceV3 (NuGet.Protocol.Core.Types.SourceRepository source, System.DateTime utcNow, NuGet.Common.ILogger log, System.Threading.CancellationToken token) [0x002d5] in <d0f788a4af354971807e5d8ca6fc682e>:0 
  at NuGet.Protocol.ServiceIndexResourceV3Provider.TryCreate (NuGet.Protocol.Core.Types.SourceRepository source, System.Threading.CancellationToken token) [0x00233] in <d0f788a4af354971807e5d8ca6fc682e>:0 
  at NuGet.Protocol.Core.Types.SourceRepository.GetResourceAsync[T] (System.Threading.CancellationToken token) [0x000b8] in <d0f788a4af354971807e5d8ca6fc682e>:0 
  at NuGet.Protocol.PackageUpdateResourceV3Provider.TryCreate (NuGet.Protocol.Core.Types.SourceRepository source, System.Threading.CancellationToken token) [0x0007d] in <d0f788a4af354971807e5d8ca6fc682e>:0 
  at NuGet.Protocol.Core.Types.SourceRepository.GetResourceAsync[T] (System.Threading.CancellationToken token) [0x000b8] in <d0f788a4af354971807e5d8ca6fc682e>:0 
  at NuGet.Protocol.Core.Types.SourceRepository.GetResourceAsync[T] () [0x0006e] in <d0f788a4af354971807e5d8ca6fc682e>:0 
  at NuGet.Commands.CommandRunnerUtility.GetPackageUpdateResource (NuGet.Configuration.IPackageSourceProvider sourceProvider, System.String source) [0x000f1] in <d0f788a4af354971807e5d8ca6fc682e>:0 
  at NuGet.Commands.PushRunner.Run (NuGet.Configuration.ISettings settings, NuGet.Configuration.IPackageSourceProvider sourceProvider, System.String packagePath, System.String source, System.String apiKey, System.String symbolSource, System.String symbolApiKey, System.Int32 timeoutSeconds, System.Boolean disableBuffering, System.Boolean noSymbols, NuGet.Common.ILogger logger) [0x00133] in <d0f788a4af354971807e5d8ca6fc682e>:0 
  at NuGet.CommandLine.PushCommand.ExecuteCommandAsync () [0x001b0] in <d0f788a4af354971807e5d8ca6fc682e>:0 <---)
##[error]Packages failed to publish
##[section]Finishing: NuGet Push
5
sacha barber

Selon la réponse de @mwimwi, l'inclusion du nom du projet dans le chemin du flux a fonctionné pour moi:

- task: DotNetCoreCLI@2
  displayName: Push
  inputs:
    command: Push
    packagesToPush: ...
    feedPublish: <project-name>/<feed-name>
1
Jevon Kendon

J'ai créé un nouveau flux Azure Artifacts il y a quelques jours et je me suis précipité dessus en essayant de créer un pipeline de génération NuGet .NET Core/Standard similaire à cet exemple . Le reste de mon pipeline CI s'est parfaitement déroulé, mais la tâche NuGet Push a échoué à chaque fois avec exactement la même erreur dans le journal des pipelines Azure, malgré toutes mes tentatives pour trouver une solution:

Le flux avec l'ID '{my_feed_name}' n'existe pas.

Étant donné que le flux existait certainement, j'ai creusé un peu plus et découvert d'autres rapports similaires d'un bogue dans Azure Pipelines. Apparemment, Microsoft a récemment modifié le niveau de portée par défaut des nouveaux flux en Project au lieu d'Organisation, ce qui a interrompu plusieurs tâches Azure Pipeline. Les flux plus anciens ne semblent pas être affectés par ce problème. Voir ce message sur le forum :

Les nouveaux flux sont désormais par défaut de portée de projet et un correctif requis pour les tâches de pipeline n'a pas pu être déployé. Nous proposons un correctif pour effectuer la mise à jour vers les dernières versions des tâches de pipeline et il devrait être disponible d'ici la fin de la journée.

Espérons que Microsoft résoudra bientôt ce problème.

1
Kerwin

J'ai fait deux changements comme ci-dessous,

  1. Dans les autorisations FeedSetting, sélectionnez "Autoriser les constructions à portée de projet"

  2. Le fichier YML mis à jour pour NuGetCommand comme ci-dessous,

    task: NuGetCommand@2
      displayName: 'Publish NuGet package'
      inputs:
        command: Push
        feedsToUse: 'select'
        packagesToPush: '$(Build.ArtifactStagingDirectory)/**/*.nupkg;!$(Build.ArtifactStagingDirectory)/**/*.symbols.nupkg'
        nuGetFeedType: 'internal'
        publishVstsFeed: 'Space Game - web - Dependencies/Tailspin.SpaceGame.Web.Models'
        allowPackageConflicts: true

Et le problème est résolu maintenant ...

Merci les gars...

~ KC

0
Kany

Vous avez manqué de définir certains arguments requis dans votre tâche NuGetCommand @ 2.

Essaye ça:

- task: NuGetCommand@2
  displayName: 'NuGet Push'
  inputs:
    command: Push
    feedsToUse: select
    vstsFeed: nugetprojectstestfeed
    nuGetFeedType: internal
    publishVstsFeed: nugetprojectstestfeed
    allowPackageConflicts: true

Si nous examinons la documentation de la tâche NuGet, pour la commande 'Push' certains arguments sont requis.

0
Sudarshan_SMD