Simplify Jira integration/installation flow

Everyone can contribute. Help move this issue forward while earning points, leveling up and collecting rewards.

Problem to solve

Currently, there are three ways to integrate Jira with GitLab:

  1. GitLab Project Integration
  2. Atlassian Connect App (GitLab for Jira)
  3. Jira DVCS Connector

Additionally, both Jira and GitLab have both self-hosted and cloud offerings, and these integrations only apply to specific combinations.

GitLab.com GitLab Self-hosted
Jira Cloud Project Integration + Connect App Project Integration + DVCS Connector*
Jira Server Project Integration + DVCS Connector Project Integration + DVCS Connector

*In the instance of GitLab Self-hosted + Jira Cloud, the DVCS connector is the right approach today, though the Connect App is possible with a workaround. The DVCS connector on Jira Cloud is soon to be deprecated (sometime in Q3 2020), and a moderate amount of work could be undertaken to make the workaround for the Connect App not needed.

Having this variety of installation/configuration flows is confusing and requires the user to be aware of the variety of configuration options and successfully select (and complete) the appropriate integration. Additionally, it's caused significant confusion, which is reflected in the low ratings of the GitLab for Jira application on the Atlassian Marketplace, and low usage rates of the app.

Intended users

This feature is intended for use by anyone leveraging the Jira integration with GitLab.

User experience goal

The ideal UX would be that anyone configuring this integration is able to start from any position in the possible flows and no other work is required. This should look like:

  • When configuring the Jira integration on a GitLab project or group, there is an option that to install the Connect Application on that Jira instance and configure with the appropriate namespace
  • When configuring the Connect Application and selecting a namespace, there is an option to automatically add the integration to projects in that namespace

Proposal

Ideal state

First iteration

Due to the technical constraints identified in #299482 (comment 522605619), in this first iteration, we will make the individual integrations more discoverable in each entry point, making it easier for users to optionally setup the additional integration.

Further details

Permissions and Security

Documentation

Availability & Testing

What does success look like, and how can we measure that?

What is the type of buyer?

Is this a cross-stage feature?

Links / references

Edited by 🤖 GitLab Bot 🤖