Network/Roadmap/MigrateToGitlab

From NURDspace
Revision as of 21:05, 6 September 2024 by R3boot (talk | contribs) (→‎Summary)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Summary

We run a Gitlab Enterprise setup to provide GIT and CI/CD services for NURDspace members. You can reach this instance via the following URL:

https://git.nurd.space/

Architecture

We use a single Gitlab-ee instance running on a dedicated KVM. There are two dedicated VMs that are used for CI/CD pipelines using both a docker and a shell runner. Storage for gitlab is done on a minio instance. In total, the following 4 VMs are in use:

  • gitlab.vm.nurd.space
  • gh-runner-almalinux.vm.nurd.space
  • gh-runner-debian.vm.nurd.space
  • minio.vm.nurd.space

Access control

To gain access to this setup, you need to have an LDAP account, and one of the gitlab admins will need to link you to the members group. In order to do this, you need to login once. This will sync your LDAP account to gitlab.

There are two top-level groups. One which contains code for members (and the public), and one that contains code that is used by the BOFH group, and only accessible via membership of the BOFH group.

TODO

Currently it is only possible to work with this system if you are on the space network or connected via VPN. We want to expose gitlab on a dedicated ip address, so that both HTTP and SSH will be able to work properly.

Also, this setup is linked to the new FreeIPA setup. As of right now, FreeIPA is not fully rolled out, so you might run into issues while connecting to gitlab.