GitLab integrates with multiple third-party services to allow external issue trackers and external authentication.
See the documentation below for details on how to configure these services.
- Akismet Configure Akismet to stop spam
- Auth0 OmniAuth Enable the Auth0 OmniAuth provider
- Bitbucket Import projects from Bitbucket.org and login to your GitLab instance with your Bitbucket.org account
- CAS Configure GitLab to sign in using CAS
- External issue tracker Redmine, JIRA, etc.
- Gmail actions buttons Adds GitLab actions to messages
- Jenkins Integrate with the Jenkins CI
- JIRA Integrate with the JIRA issue tracker
- Kerberos Integrate with Kerberos
- LDAP Set up sign in via LDAP
- OAuth2 provider OAuth2 application creation
- OmniAuth Sign in via Twitter, GitHub, GitLab.com, Google, Bitbucket, Facebook, Shibboleth, SAML, Crowd, Azure and Authentiq ID
- OpenID Connect Use GitLab as an identity provider
- PlantUML Configure PlantUML to use diagrams in AsciiDoc documents.
- reCAPTCHA Configure GitLab to use Google reCAPTCHA for new users
- SAML Configure GitLab as a SAML 2.0 Service Provider
- Trello Integrate Trello with GitLab
GitLab Enterprise Edition contains advanced Jenkins support.
Integration with services such as Campfire, Flowdock, HipChat, Pivotal Tracker, and Slack are available in the form of a Project Service.
SSL certificate errors
When trying to integrate GitLab with services that are using self-signed certificates, it is very likely that SSL certificate errors will occur on different parts of the application, most likely Sidekiq. There are 2 approaches you can take to solve this:
- Add the root certificate to the trusted chain of the OS.
- If using Omnibus, you can add the certificate to GitLab's trusted certificates.
OS main trusted chain
This resource has all the information you need to add a certificate to the main trusted chain.
This answer at Super User also has relevant information.
Omnibus Trusted Chain
Install the self signed certificate or custom certificate authorities in to GitLab Omnibus.
It is enough to concatenate the certificate to the main trusted certificate however it may be overwritten during upgrades:
cat jira.pem >> /opt/gitlab/embedded/ssl/certs/cacert.pem
After that restart GitLab with:
sudo gitlab-ctl restart