Loading
Add gitlab-shell opt-in for Topology Service client
What does this MR do?
Adds a dedicated gitlab-shell chart value, config.topologyService.enabled, that controls whether GitLab Shell uses the Topology Service (Cells routing). Previously this was derived solely from the global Cells settings via gitlab.gitlab-shell.topologyService.enabled in templates/_helpers.tpl.
The two concerns are now separated:
config.topologyService.enabled(defaultfalse) turns on GitLab Shell's use of the Topology Service. It must be set explicitly and does not inherit the global Cells setting. The service address is read fromglobal.appConfig.cell.topologyServiceClient.address.- mTLS is driven by the global Cells setting (
global.appConfig.cell.enabled). When GitLab Shell opts in and Cells is enabled globally, the client config includes thetlssection and the mTLS cert/key are mounted and copied. When Cells is disabled, the client config omits thetlssection and no certs are mounted or copied.
Also updates the gitlab-shell values schema and documentation, and adds rspec coverage for the opt-in, Cells-enabled, Cells-disabled, and missing-address paths.
Related issues
Author checklist
For general guidance, please follow our Contributing guide.
Required
For anything in this list which will not be completed, please provide a reason in the MR discussion.
- Merge Request Title and Description are up to date, accurate, and descriptive.
- MR targeting the appropriate branch.
- MR has a green pipeline.
- Documentation created/updated.
- Tests added/updated, and test plan for scenarios not covered by automated tests.
- Equivalent MR/issue for omnibus-gitlab opened.
Reviewers checklist
- MR has a green pipeline on https://gitlab.com/gitlab-org/charts/gitlab.
- Consider downstream impact to the Operator, as per evaluating impact from changes to GitLab chart.