Skip to content

Refactor CI `config` so that it's decouple from Project

After https://gitlab.com/gitlab-org/gitlab-ee/merge_requests/4262 EE::Ci::Config is now strictly related to a Project. We did this so in case a local file is referenced on the include, we can make sure the file actually exists in the project. This validation is done by fetching the file from the repository through a SHA.

This brought the following problems:

It'd nice to decouple Project from EE::Ci::Config, because it's only use for processing external files, so it doesn't make too much sense to have it there.

Issue related: https://gitlab.com/gitlab-org/gitlab-ce/issues/43941