Skip to content

Change response for /ci/api/v1/builds/register.json from 404 to 204

What does this MR do?

To check if there are new builds scheduled for a runner, runner is sending POST /ci/api/v1/builds/register.json requests. If there is a build then a 200 response with build data is returned. However if there is no builds scheduled for this runner it receives a 404 Not Found response. This may end with a lot of 404 Not Found lines in logs that are an expected behavior (please read #14445 (closed) for a reference).

Since v1.0.1 version GitLab Runner is ready to receive a 204 No Content response in case of no builds.

This MR adds a support for this status code for each Runner's version that can be determined while handling POST /ci/api/v1/builds/register.json request.

Are there points in the code the reviewer needs to double check?

Specs in spec/requests/ci/api/builds_spec.rb

Does this MR meet the acceptance criteria?

What are the relevant issue numbers?

Fixes #14445 (closed)

Merge request reports