HTTP 500 responses from failed runner registration attempts
Summary
Attempted runner registrations using --registration-token
are returning 500, instead of 4xx on self-managed instance v17.0.1-ee.
The same on gitlab.com returns 403.
Users who have failed to upgrade to the new registration workflow are causing operational alerts to fire due to the 500 responses, where 4xx responses would be ignored.
Possibly related to #433256 (closed)
Steps to reproduce
sudo gitlab-runner register --non-interactive --url "https://mygitlab.com/" --registration-token "something"
returns 500. The same with --url "https://mygitlab.com/"
returns 403
What is the expected correct behavior?
The API should return 4xx responses for issues relating to input parameters.
Relevant logs and/or screenshots
$ sudo gitlab-runner register --non-interactive --url "https://dev.gitlab.redacted/" --registration-token "something"
Runtime platform arch=amd64 os=linux pid=10218 revision=44feccdf version=17.0.0
Running in system-mode.
WARNING: Support for registration tokens and runner parameters in the 'register' command has been deprecated in GitLab Runner 15.6 and will be replaced with support for authentication tokens. For more information, see https://docs.gitlab.com/ee/ci/runners/new_creation_workflow
ERROR: Registering runner... failed runner=somethin status=POST https://dev.gitlab.redacted/api/v4/runners: 500 Internal Server Error ()
PANIC: Failed to register the runner.
There is no stack trace or exception information in the webservice logs.
Results of GitLab environment info
GitLab version 17.0.1-ee Runner version 17.0.0
Edited by Jon M