GitLab

Set up
Navigate to the Integration settings view
Select an app in the top left corner from the Switcher
Navigate to App Settings by clicking the gear icon (⚙️) at the top of the Timeline sidebar
Click on Integrations in the sidebar
Connect GitLab
Find the GitLab integration module under the Version control section
Click the Connect button
You’ll be taken through a standard GitLab app OAuth flow
You must be logged into GitLab as a user with at least Developer permissions in the GitLab org.
GitLab OAuth applications are tied to the user account that connected them. If this user account is deactivated from your GitLab organization, your Runway integration will also stop functioning. (This can be corrected by removing and reinstalling the GitLab integration as a new user.)
We recommend that organizations connect to the GitLab OAuth application using a shared service account (e.g. a tools@ or dev@ account) to prevent disruptions to Runway's integration syncing service.
GitLab redirects you back to Runway, Runway presents a dialog:
Select the project/repo where your code for this app lives
Add a release tag pattern
Runway uses this to read tags from GitLab and delineate your releases, and also to generate tags when auto-tagging releases upon completion
Pattern accepts the string
{version}
as a stand-in for the release version, e.g.v{version}
Add a release branch pattern
For GitFlow or similar, pattern accepts the string
{version}
as a stand-in for the release version, e.g.release-ios-{version}
You can assign different patterns to different types of releases using the Release type dropdown
Omit pattern for trunk-based, e.g.
main
Be sure to select all types in the Release type dropdown
Add any additional branches
Working branch: your main working branch, e.g.
development
Staging branch: if you create your Release Candidate builds from some branch other than your release branch, set that here
Deploy branch: if you create your final builds from some branch other than your release branch, set that here
Adjusting permissions in GitLab
Certain permissions need to be configured in GitLab in order for Runway to execute automations.
How to update branch protection settings in GitLab
To enable Runway to bypass merge requests in GitLab and push directly to a target branch, follow these steps:
In GitLab, select Main menu > Projects and find your project
On the left sidebar, select Settings > Repository
Expand Protected branches
From the Branch dropdown list, select the target branch
From the Allowed to push list, select the user that originally installed the GitLab integration in Runway
GitLab's integration with Runway is OAuth-based, which means that the integration's scopes and permission are tied to those of the GitLab user that ran through the OAuth flow in Runway. To avoid unintentionally granting push access to a specific user (and to avoid integration issues if that user leaves the company), we strongly suggest setting up a service account user to use for authentication between GitLab and Runway.
Last updated
Was this helpful?