Integrating Jira 101: how to safely integrate Jira with GitLab
This article starts the series of tutorials demonstrating the powerful engine of Project Bookmarks — a project that enables stateless, configurable, project-scoped integrations with Jira.
How to integrate Jira with GitLab in 2022
First, install Project Bookmarks and create a new bookmark
Then, make sure to fill the URL with your GitLab search URL.
To do it, go to your GitLab instance, enter your project and select Commits tab. Then, search for something and copy the URL into Bookmark URL:
Use {issueKey} where a search param is. Most likely, the URL will look like this:
http://YOURGITLAB.com/YOURPROJECT/commits/master?search={issueKey}
Then, press Save. It works!
This little smart bookmark will redirect you to a search results page on GitLab!
But how it works?
First of all, Project Bookmarks won’t store any commits or information on 3rd party or Atlassian servers. This way, your information is much more secure.
Since all search is performed on GitLab side, there’s nothing that can go wrong or be out of sync. The search is as accurate, as it can possibly be!
Philosophy of Project Bookmarks
Three core values of Project Bookmarks will give you the mental model of working with the concept of Dynamic Values enabling the work on more complex integrations.
Stateless
Project Bookmarks does not store any information apart from the URL of your GitLab account. What is more, only a relevant projects are stored. We can’t see or interact with any metadata based on your input. There’s nothing to be synchronised, there’s nothing to upload or download from your servers. Think of bookmarking search results page — it’s always up to date, isn’t it?
Configurable
The example I shared can be refined. More repositories can be added, search can happen in a different branch.
Project-scoped
Since all bookmarks are project scoped, no information will leak to other teams, no information will pollute your Jira. Each project can configure their own bookmarks, be it integration with source code, Confluence or other wikis.