Draft: [PoC] Separate out components to own packages and make GitLab essentially a metapackage
What does this MR do?
NOTE: THIS IS SEPARATE FROM THE BUILD EFFICIENCY WORK WHERE WE ARE LOOKING AT SEPARATING THE BUILDS, BUT STILL CREATE AN ALL-IN-ONE PACKAGE. THEY ARE RELATED, BUT ONE IS NOT DEPENDENT ON ANOTHER.
As a demo, separate out Mattermost to its own package, gitlab-mattermost
and then have the GitLab package depend on it.
If we can separate out common stuff that all components use to its own package, like gitlab-common
, then technically we can have gitlab-mattermost
depend on it and drop gitlab-(ce|ee)
s dependency on gitlab-mattermost
. Then, we enable users to install only what they want.
Related issues
Checklist
See Definition of done.
For anything in this list which will not be completed, please provide a reason in the MR discussion
Required
-
Merge Request Title, and Description are up to date, accurate, and descriptive -
MR targeting the appropriate branch -
MR has a green pipeline on GitLab.com -
Pipeline is green on dev.gitlab.org if the change is touching anything besides documentation or internal cookbooks -
trigger-package
has a green pipeline running against latest commit
Expected (please provide an explanation if not completing)
-
Test plan indicating conditions for success has been posted and passes -
Documentation created/updated -
Tests added -
Integration tests added to GitLab QA -
Equivalent MR/issue for the GitLab Chart opened