Unhelpful error when creating release with tag protection
Summary
I tried creating a release using the UI, but got an error. The failing request seems to say “access defined” even though I'm maintainer? I seem to recall succeeding in doing this earlier; maybe if I didn't fill out the milestone?
Steps to reproduce
- Go to https://foss.heptapod.net/mercurial/hg-git/-/releases/new
- Fill in the data as describe in the screenshot in the bottom.
- Submit!
Example Project
I do not have project creation rights, but it happens with hg-git.
What is the current bug behavior?
I cannot create a release; I get no useful error.
What is the expected correct behavior?
I either succeed in creating a release or get a meaningful error telling me why I can't do so.
Relevant logs and/or screenshots
The request:
curl 'https://foss.heptapod.net/api/graphql' \
-X 'POST' \
-H 'Content-Type: application/json' \
-H 'Accept: */*' \
-H 'Accept-Language: en-gb' \
-H 'Accept-Encoding: gzip, deflate, br' \
-H 'Host: foss.heptapod.net' \
-H 'Origin: https://foss.heptapod.net' \
-H 'User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.2 Safari/605.1.15' \
-H 'Referer: https://foss.heptapod.net/mercurial/hg-git/-/releases/new' \
-H 'Content-Length: 883' \
-H 'Connection: keep-alive' \
-H 'Cookie: <snip>' \
-H 'X-CSRF-Token: <snip>' \
-H 'x-gitlab-feature-category: release_orchestration' \
--data-binary '[{"operationName":"createRelease","variables":{"input":{"projectPath":"mercurial/hg-git","tagName":"0.10.4","name":"0.10.4","description":"This is a minor release, focusing on bugs and compatibility.\n\nBug fixes:\n\n* Fix compatibility with the ``mercurial_keyring`` extension. (#360)\n* Add missing test files to the source archive. (#375)\n* Fix tests with Git 2.34.\n","milestones":["0.10.4"],"ref":"branch/default","assets":{"links":[{"name":"PyPI release","url":"https://pypi.org/project/hg-git/0.10.4/","linkType":"OTHER"},{"name":"Python wheel","url":"https://foss.heptapod.net/mercurial/hg-git/-/packages/138","linkType":"PACKAGE"}]}}},"query":"mutation createRelease($input: ReleaseCreateInput!) {\n releaseCreate(input: $input) {\n release {\n links {\n selfUrl\n __typename\n }\n __typename\n }\n errors\n __typename\n }\n}\n"}]'
The response:
[
{
"data": {
"releaseCreate": {
"release": null,
"errors": [
"Access Denied"
],
"__typename": "ReleaseCreatePayload"
}
}
}
]
Details about the Heptapod instance where the bug occurs
This happens on the FOSS instance.