エラーが発生します:
User XXX lacks permission to complete this action. You need to have 'AddPackage'
nugetパッケージをAzure DevOpsアーティファクトにプッシュしようとしたとき。私は管理者ですこれがステージです:
- stage:
displayName: 'Release'
condition: succeeded()
jobs:
- job: 'Publish'
displayName: 'Publish nuGet Package'
steps:
- download: current
artifact: $(PIPELINE_ARTIFACT_NAME)
displayName: 'Download pipeline artifact'
- script: ls $(PATH_PIPELINE_ARTIFACT_NAME)
displayName: 'Display contents of downloaded articacts path'
- task: NuGetAuthenticate@0
displayName: 'Authenticate in NuGet feed'
- script: dotnet nuget Push $(PATH_PIPELINE_ARTIFACT_NAME)/**/*.nupkg --source $(NUGET_FEED) --api-key $(NUGET_API_KEY)
displayName: 'Uploads nuGet packages'
そして正確なエラー:
error: Response status code does not indicate success: 403 (Forbidden - User '4a2eb786-540d-4690-a12b-013aec2c86e5' lacks permission to complete this action. You need to have 'AddPackage'. (DevOps Activity ID: XXXXXXX-6DF9-4A98-8A4E-42C556C6FC56)).
##[error]Bash exited with code '1'.
Finishing: Uploads nuGet packages
GitリポジトリはGitHubにあります。誰がユーザーと見なされているのかわからないが、変更する他の権限がわからない
素晴らしい発見! ...メニューでプロジェクトスコープのビルドを許可すると、うまくいきました。
ただし、パッケージをAzure PipelinesからAzure Artifactsフィードにまったくプッシュできるようにするには、dotnetビルドの前のdotnet復元ステップと最後にdotnet Pushのターゲットフィードと同じフィードを追加する必要がありました。 https://docs.Microsoft.com/en-us/Azure/devops/artifacts/nuget/dotnet-exe?view=Azure-devops