Request for ability to add inputs to separate file and call from files
Problem to solve:
An enterprise customer's DevOps teams maintains a shared library of pipelines on behalf of developer teams (developers do not author pipelines, they only supply environment variables). They are migrating to GitLab from Jenkins, and are using CI/CD Components to implement "golden pipelines" for the dev teams to consume.
They have created a top-level component that calls multiple lower-level components depending on the workload (ex: a maven_build component and a gradle_build component that are conditionally loaded based on env variables).
The challenge: they are using spec:inputs at both the top-level and lower-level to parameterize the pipeline, which is difficult for them to maintain. They would like to extract all of the spec:inputs across their entire shared library to a single external file (ex: inputs.yml) that each of the CI/CD components reference
Requirements for solution:
- the ability to reference a file like
inputs.ymlcontainingspec:inputsthat can be reference inside a CI/CD component (likespec:inputs:reference)