GitLab
For use cases where the limitations of GitHub are problematic, a self-hosted GitLab instance is available. It provides code hosting and development collaboration features that are very similar in scope to GitHub, but by virtue of self-hosting the limitations of data sizes and GitHub Actions (the GitLab equivalent is called GitLab CI/CD) are circumvented. Git Large File Storage (LFS) is supported without payment.1
To get started with GitLab, browse to the LAMASUS GitLab instance and register an account with your institutional email address by clicking on the Register now link at the bottom of the page. Should your email address not be recognized as belonging to a domain of a LAMASUS partner institution, the registration will fail and you will see an error message requesting you to send an e-mail to still request access.
Caution
When using the SSH protocol, the regular SSH port 22 is currently not usable
when connecting from the IIASA-internal network. Until the deployment is improved you will need to connect via port 2222
instead when using a Git client on the IIASA-internal network. You can do so
by adding the port number to the the Git SSH URL as follows
ssh://git@gitlab.iiasa.ac.at:2222/lamasus/repository.git
.
For security, two-factor authentication (2FA) is required. See the GitLab documentation on 2FA for details. The time-based one-time passwords (TOPT) 2FA option can be accommodated via a TOTP app on a smartphone or tablet. If you do not have one installed, TOTP apps are readily available via app stores. If you prefer a free TOTP app that is open-source and without spyware, FreeOTP or its FreeOTP+ fork (which is more user friendly) are good options.
Until a more sensible authentication scheme is enabled on the GitLab instance,
2FA requires the use of personal access tokens when
using the HTTPS protocol. You can insert a GitLab personal access token into a
Git HTTPS URL as follows: https://<GitLab or Token User
Name>:<Token>@gitlab.iiasa.ac.at/<Group>/<Repo Name>.git
Note
When using Git LFS, you need to use the HTTPS protocol.
Warning
When you get an error such as SSL: CERTIFICATE_VERIFY_FAILED
a working certificate has
not been installed on the server side. To make things work
while that is the case, you can use the -c http.sslVerify=false
Git command line option or set the corresponding configuration setting on
your repo. Do not do this for your global Git configuration: it is
insecure.
The GitLab account approval process is manual and may take a while. Once your account has been activated, request access to the LAMASUS GitLab group by…
Visit the GitLab online tutorials to learn more about the platform.
- 1
Beyond the already-sunk storage infrastructure costs at IIASA.