If GitLab is your VCS provider, you must create an OAuth applicationand a personal access token to connect with Garden Cloud. The app and access token will be used to authenticate users, import projects, run workflows on GitLab events (e.g. when a merge request is opened), and more.
The relevant app and user properties will be provided to Garden Cloud.
Creating an OAuth Application
Please see the official documentation for creating the Oauth application. While creating the application, fill in the appropriate values as described below.
The main URL for Garden Enterprise or the main URL for Garden Cloud provided by the Garden Team along with the appropriate paths:
Note that you should have an entry for both the gitlab/callback endpoint and the gitlab/callback/cli endpoint.
Select the following scopes:
Once the oauth service provider is created, you should get a Secret and an Application ID. You'll need these values during the Garden Cloud installation.
Creating an Access Token
We recommend creating a dedicated user service account for Garden Cloud, enabling 2FA authentication for that user and granting it access to only the repositories that Garden Cloud should have access to. This includes repositories that are referenced as remote sources in your Garden projects.
Note that the access token only works for clones over HTTPS. If your workflow runs require remote sources to be cloned over SSH, you will need to configure git specifically for that.
You can optionally set an expiry date date on the token, in which case you must make sure to update the token in Garden Cloud before it expires. You can update the token via the Replicated admin console.
You'll need this access token when installing Garden Cloud.
Required Values for Garden Cloud
You'll need to have the following values at hand when installing Garden Cloud:
The Oauth application Application ID you received when creating the Oauth application.
The Oauth application Secret you received when creating the Oauth application.
The GitLab instance hostname. If you're using hosted GitLab, this is simply gitlab.com
The GitLab Access Token.
You'll also need to provide a GitLab webhooks secret during the installation that's used internally between Garden Cloud and GitLab. Note that this is only in the context of installing Garden Cloud, you won't find this value in GitLab.