Skip to content

Extract and dogfood components in GitLab projects

This issue relates to https://gitlab.com/gitlab-com/gitlab-OKRs/-/work_items/4703+

Goal

Now that we have launched CI/CD components and catalog to Beta we need to start dogfooding components on GitLab projects in order to gain first-hand experience on it and identify any opportunities for improvements early.

We should collaborate closely with Engineering Productivity as they will:

  1. Help us identify whether the ideas below are good candidates and whether there are better low-hanging fruit.
  2. Review and merge the MRs related to creating/converting components.
  3. Help us identify where existing templates are used and what projects we need to modify to dogfood the new components.
  4. Ultimately, keep maintaining these new components as you currently maintain the templates.

grouppipeline authoring will iterate over the ideas below following the official docs https://docs.gitlab.com/ee/ci/components/:

  1. Pick a template to convert to component.
  2. Copy the content into an existing or new component project.
  3. Refactor the content to follow the best practices.
  4. Deprecate the template and ask users to use the component instead.
  5. Convert existing usage of the template to use the component (this would require an MR per project using the template).
  6. Remove the template file when it's no longer used by any other GitLab project (alternatively create follow-up issues).

Ideas

Edited by Fabio Pitino