Skip to content

Support installing and upgrading GitLab Shell

Lucas Li requested to merge 9-add-gitlab-shell into main

What does this MR do?

The MR adds support for GitLab shell installations & configuration.

It adds 2 workflows:

  • GenerateHostKeys: will generate host keys if there are no existing ones
  • InstallGitLabShell: will configure and install GitLab Shell

And updates the DevKit:

  • Add a script to install ingress-nginx. OrbStack and kind are supported.
  • Add a README

Current limitations:

Please also see the comments below.

  • GitLab Shell images are tagged differently, this MR uses gitlab-shell:{gitlab-version}. We may need to clarify this later.
  • Inside the gitlabShell.config.monitoring, only enabled is used, it must be enabled, other fields will be ignored.
    • GitLab shell uses the same port for health check and metrics, defaults to 9122
    • The endpoints are barely customizable
    • Expect for enabled; there is little point in customizing other monitoring settings.
  • The Service object is not customizable, it will create a ClusterIP service by default.
    • DevKit includes an example for exposing SSH port with ingress-nginx
  • Some defaulting logic should be moved to a defaulter

Test plan

Follow the same steps described in https://gitlab.com/gitlab-org/cloud-native/operator/-/tree/9-add-gitlab-shell/scripts/development-kit

Except:

The GitLab Shell service should be up and accessible from the specified port, 32022 see install-nginx.sh.

Author's Checklist

For anything in this list which will not be completed, please provide a reason in the MR discussion.

Required

  • Ensure a release milestone is set.
  • MR title and description are up to date, accurate, and descriptive.
  • MR targeting the appropriate branch.
  • MR has a green pipeline on GitLab.com.
  • When ready for review, MR is labeled workflowready for review per the MR workflow.

Expected

  • Test plan indicating conditions for success has been posted and passes.
  • Documentation is created or updated.
  • Tests are added.

Related issues

Closes #9

Edited by Lucas Li

Merge request reports