Flagsmith Jira Integration Guide: A Comprehensive How-to Guide

By
Abhishek Agarwal
on
February 28, 2024

This article delves into the Flagsmith Jira integration, looking at the collaborative benefits of combining open source feature flag software and robust project management tools. This integration lets you view your feature flags inside Jira.

What are Feature Flags? 

Before we dive into the development work, let’s first understand what feature flags (or feature toggles) are and why they are required. 

Feature flags are a pivotal development technique allowing teams to toggle specific software features on or off, even post-deployment. These flags empower teams to release, test, and monitor new functionalities incrementally while maintaining the flexibility to roll back changes if needed.

Not only do feature flags allow you to turn some behavior of code on/off, they also provide the ability to alter the code behavior based on the feature flag value. As a basic example, if you frequently want to change the price of an article on your website without needing to redeploy code, it can be added behind a feature flag. There are various ways in which these are implemented: a) by fetching the value periodically from the server, b) fetching the value every time it is required. We will be looking at both these methods in detail below. 

Feature Flags Jira

Jira is used extensively in the software industry as a project management tool. This integration lets you use Flagsmith as your feature flag software for Jira feature flag management and A/B testing. In this article, we will see how the combined power of the Jira Flagsmith integration helps us effectively develop, test and deploy our functionality. 

Why are Feature Flags required?

Feature flags offer a spectrum of advantages in software development, facilitating continuous delivery, minimizing deployment risks, and enabling A/B testing. They empower development teams to adapt quickly to changing requirements, fostering a collaborative and agile development process. 

Let’s get started!

Flagsmith Account Setup

As a first step, we need to create a (free) account on https://flagsmith.com/. It offers simple sign-in with Google or GitHub options. Or you can just fill in your basic details on https://app.flagsmith.com/signup

After signup, enter your organization name followed by the creation of the first project. 

Integrating Jira Feature Flags

Adding Flagsmith App to Jira

  • Navigate to Atlassian Marketplace and search for “Flagsmith”
  • This link should take you directly to the Flagsmith app
  • This will  install the app to your Jira instance
  • Refresh the Jira project, and now you should be able to see the “Linked Feature Flags” option for all your Jira issues. Something similar to the one shown below:

Configure Flagsmith Organization with Jira

After the above installation, ideally, you should get redirected to the Flagsmith for Jira configuration page where you would need to add the Flagsmith API key. In case you do not get redirected, follow the below steps:

  • Get the Flagsmith API key so that our Jira project can fetch the Feature Flag values. 
  • On the Flagsmith UI, navigate to Account -> Keys
  • Copy the API token value from there
  • Under your Jira project, go to “Apps” section and click on “Manage your apps”
  • Click on “Flagmith for Jira” under the “User Installed Apps”
  • Click on Configure and in the API Key section, paste the API Key we copied above
  • It should now display your Organisation name as shown below
jira configuration screenshot

Link Flagsmith Project to Jira project

  • Navigate to Jira project settings
  • Under “Apps’, click on “Connect Flagsmith Project”
jira configuration screenshot
  • In the dropdown option, find your project and click on “Save”

Link a Feature Flag to the Jira ticket

Let’s say we are working on creating a new API which fetches the user information and returns it. For most APIs, we generally also add a corresponding Kill Switch so that we can toggle the API behaviour with that. 

We already have a feature flag named is_user_api_enabled created for this API. The Jira ticket below tracks the progress of the development of this API. We can simply link the feature flag `is_user_enabled` with this ticket. 

  • Click on “Linked feature flags”
  • Choose the feature flag of your choice from the dropdown menu
  • Click on “Link to issue”
jira API configuration screenshot

Having this integration proves to be extremely beneficial for both development and testing purposes. 

The developers, QA team, product managers all benefit with this. Now, there’s no need  to visit the Flagsmith UI to check the current state of the flag. The Jira ticket itself displays everything including the feature flag value and when was it last updated. 

We can also link multiple issues to the same Jira ticket. 

Below is another example of linking the Feature flag to a Jira ticket, where we require the value of the feature flag. This Jira ticket is related to implementing pagination, and we have kept the default page size as a configurable integer. This value can be viewed from the ticket directly, making it much easier to test and develop. 

jira configuration screenshot to set up endpoint

Any updates to the feature flag value are reflected near real-time with a simple reload of the Jira ticket. 

Conclusion

In conclusion, the seamless integration between Flagsmith and Jira proves to be an invaluable asset for our development and testing endeavours. This collaborative approach not only benefits developers, QA teams, and product managers but also enhances efficiency by eliminating the need to navigate through the Flagsmith UI for flag status checks. With the pertinent information conveniently displayed within Jira tickets, including feature flag values and update timestamps, our workflow becomes more streamlined and transparent.

Furthermore, the ability to link multiple issues to a single Jira ticket adds a layer of organizational flexibility. By allowing direct access to configurable values from the Jira ticket, we empower our teams to work more cohesively and effectively.

In essence, the feature flags Jira integration not only enhances our project management capabilities but also fosters a more interconnected and efficient development environment.

More Reading

View the Docs to set up the integration and learn more

Read about other Flagsmith integrations

Written by Abhishek Agarwal

Quote

Subscribe

Learn more about CI/CD, AB Testing and all that great stuff

Success!
We'll keep you up to date with the latest Flagsmith news.
Must be a valid email
Illustration Letter