Skip to content

Add `runner_unsupported` CI failure

Kamil Trzciński requested to merge runner-features into master

What does this MR do?

Needed by https://gitlab.com/gitlab-org/gitlab-ce/issues/45318.

We gonna introduce features in GitLab that do require latest runner to be used. We have to figure out a way to send to the user a message that the feature being used is not supported by your Runner, please upgrade it.

This does that by introducing runtime error: runner_unsupported as failure_reason of Ci::Build. When job is being picked by runner, we fail the job with the failure that runner used is unsupported. We cannot really prevent this job to be skipped by runner, as the features of runner are sent only when CI picking, and this would conflict with a lot of other features like: detecting stuck jobs, we simply don't have that information.

As long as this is a little bad from UX perspective, it is voicey and visible to the user that actions has to be taken. This only affects new features, it does not affect old ones.

The first usage of that gonna be JUnit reports:

  1. You need a supported runner that can send junit reports,
  2. You need a GitLab version that can ask for these reports,
  3. We will simply require to use junit to have Runner 11.2 with GitLab 11.2.

Does this MR meet the acceptance criteria?

What are the relevant issue numbers?

Related to https://gitlab.com/gitlab-org/gitlab-ce/issues/45318#note_87333942.

Edited by Grzegorz Bizon

Merge request reports