Add 'include' key to .gitlab-ci.yml
We have a local deployment of GitLab with around 20 VMs running gitlab-ci-multi-runner. We have 50+ projects that all compile exactly the same way on the build slaves, but due to having to support 5+ Linux distros, MacOSX and Windows (7, 8.1, 10) we end up with huge .gitlab-ci.yml
files that are identical in every project. When we add a new distro, for example RHEL has recently become free so we would like to add that, we have to go through all projects (even with a script, it's tedious) and add it to the .gitlab-ci.yml
.
It would be brilliant if we could include a single file for each project using an includes
key:
includes:
- https://our.webserver.com/ci/slaves/cxx/.gitlab-ci.yml
I would envision the includes
key would work as a list of URIs, so local file includes would work as well. I guess to start off with if file://
, http://
and https://
would work that'd cover a lot of peoples use cases.
Another option is that you could upload a YAML file in the GitLab UI and give it a name then the GitLab runner could retrieve those? Maybe that could be a later step.
We would be happy to implement and support this if it is something that the project would accept and could point us in the right location to implement!