While GitLab helps engineering teams take their collaboration to the next level, it can be hard for for those in other departments to get the high-level picture of their team's ongoing projects. To better visualize your GitLab projects in a consumable, simple to understand roadmap, users can create a one-way connection with GitLab which allows them to pull content into their roadmaps and visualize it against other projects across all the tools your team uses on a daily basis.
Getting Started with GitLab
Linking Roadmunk to your GitLab Instance
In order to connect your Roadmaps to your instances & projects in GitLab, an Account Admin on your Roadmunk account will need to establish the connection between Roadmunk and GitLab first. Once this connection is established, users will be able to view and select this integration option during their on-roadmap setup and save both instance & credential details for future setup of additional roadmaps.
Generating Credentials for Roadmunk in GitLab
In order to authorize the data transfer between Roadmunk and GitLab, Roadmunk relies on a user-generated credential which allows the user to view and pull their data from their projects. In this case, we require a Personal Access Token (PAT) generated in GitLab as your credential and during the roadmap setup will allow you to set a Credential Label so you can easily differentiate this particular token from others you may use (in the case of teams working across multiple active GitLab deployments).
Users can generate a Personal Access Token from the Preferences menu in GitLab. For more details see GitLab's article on creating a personal access token.
In GitLab, click on your public avatar and select Preferences > Access Tokens.
Specify a Token name. It can be anything and does not need to match the Credentials Label in Roadmunk.
At a minimum select read_api from the Select scopes section and update the Expiration date.
Click the Create personal access token button.
Click copy personal access token button and paste the value into the Personal Access Token field in Roadmunk.
Once they've expired (or as needed prior to expiration), tokens can be revoked, removed, or regenerated from the Personal Access Tokens menu.
Connecting your Roadmaps to GitLab
Integrations Setup Walkthrough
It's a quick and easy process to set up an integration between your GitLab projects and your team's roadmaps in Roadmunk. The setup process can be broken down into three stages: triggering the integration, applying synchronization settings, and applying field and filter settings. Once those have been completed, your roadmap will be set to pull and visualize data from GitLab as needed.
Step 1 - Triggering the Roadmap Integration
Once the integration connector has been set up by your Account Admin, you will be able to select the Setup GitLab Integration option in the Integrations tool on your roadmap. Triggering this integration will not overwrite your existing data; however, once you've linked a roadmap to a project you are unable to remove that connection or change the specified project.
This option will activate a setup wizard which will walk you through the process of connecting your roadmap to a specific project in GitLab to act as a data source for your roadmap.
Step 2 - Applying Synchronization Settings
Once in the setup wizard, you will be prompted to follow the preset workflow to complete the integration. In the first phase of this workflow, you will have the option to select which GitLab connector you would like to pull project data through, the synchronization direction (one-way, at this time), and the automatic sync cadence (default is set to 12 hours).
Step 3 - Applying Credentials, Field & Filter Settings
Once your instance has been selected, you'll be prompted to choose your credentials for syncing with GitLab. If you haven't previously set up credentials to sync with, please enter the Personal Access Token that was generated in the steps above and apply a Credential Label for future reference.
After these details above have been provided, you will be able to select the project you would like to pull data from and the state of issues being pulled to bring in only the relevant content is being pulled. Once these settings have been applied, you'll be able to specify Start Date & End Date and select the GitLab fields to use on your roadmap. While the specified projects can't be changed after the setup, the user-defined dates and fields can be updated later if needed.
Once you've completed this phase of the setup, you'll be taken to a confirmation screen to let you know that the integration has been setup successfully. After completing the setup wizard, you'll be returned to the roadmap view where your data will begin to populate from your specified GitLab project.
What to Expect After Integrating
Once you've integrated your data from GitLab, there will be a few changes to your roadmaps. The following changes may occur after you've setup your integration:
All fields pulled from GitLab are Account-Level by default - Since the properties and values of these synchronized fields are managed in GitLab, we automatically promote them to account-level so they can be accessible as common fields in Portfolio roadmaps.
There is an External ID field that appears in the Items Table view - When synchronizing data from GitLab, we pull in the ID of each issue for reference on your roadmap. This is clickable and linked out to your team's GitLab instance, so you can quickly access the respective work item from either your Table view and Item Card.
Unable to change or add new projects on a single roadmap - As with our other integrations, we limit connections between roadmaps and third-party tools to be a 1:1 connection. This means that you will be unable to sync multiple projects into a single roadmap; however, you will be able to create multiple roadmaps for each project and use those as sources in a Portfolio roadmap.
Additional Date fields will be read-only - Due to a variance in field formatting between Roadmunk and GitLab, any additional Date fields selected which are not mapped to Start and End Dates will be pulled in as read-only text fields.
Tokens may expire a set number of days after being created - Unlike API tokens generated for credentials in Jira, which have a longer-term expiry, Personal Access Tokens generated in GitLab will expire depending on your specifications during the setup. These tokens can be easily regenerated for continued use, but your in-app credentials will need to be updated.
Modifying GitLab Integration Setup
Once the initial integration setup is complete, the roadmap owner will be able to modify the setup at any time. To do so, from the Items Table or in a roadmap visualization, simply click the GitLab button (which replaced the Integrations button) in the roadmapping toolbar and select "Modify Setup" from the drop-down menu. This will open the integration setup menu and you can update sync settings, credentials, filter work items, and select fields.