Include the list of tags for each job in External Pipeline Validation API

Proposal

Customer needs to be able to control which runners can be used in pipelines for certain combinations of projects, refs, and users. They are interested in using the External Pipeline Validation API but it does not currently include the list of tags for each job, which they would want to be able to see as well.

Fix

We added the list of tags to the API ourselves by patching our self-hosted instance and adding a line here https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/ci/pipeline/chain/validate/external.rb#L115:

tag_list: build.dig(:tag_list)

Edited by Sophie Pouliquen