Support Jira Server/Data Center integrations in core-gitlens

Author: julianmesa-gitkrakenCreated Sep 17, 2026Updated Sep 17, 2026
Labelsarea-integrationsintegration-jira

Summary

@gitkraken/core-gitlens supports Jira Cloud but cannot discover or read Jira Server/Data Center connections, even though the underlying provider API already supports Jira Server.

Add Jira Server/Data Center as a distinct self-hosted issue integration so consumers such as Kepler can use configured connections without routing requests through Jira Cloud.

Impact

Users with self-hosted Jira cannot currently select their Jira Server/Data Center connection or read its projects and issues through core-gitlens consumers. Supporting it completes the self-hosted issue-provider path and allows multiple Jira hosts to remain independently addressable.

Scope

  • Add a dedicated Jira Server/Data Center integration identifier, separate from Jira Cloud.
  • Reconcile configured jiraServer connections, preserving their connection ID and host domain.
  • Expose the integration through the public core-gitlens integration API.
  • Support resource and project discovery, paged issue reads, search and count where available, and single-issue lookup.
  • Route every read through the selected connection and domain so multiple self-hosted hosts cannot be mixed.
  • Preserve existing Jira Cloud behavior.

Validation

  • A configured Jira Server/Data Center connection appears in the configured integrations with its connection ID and domain.
  • Project and issue reads target the configured self-hosted URL and do not use Jira Cloud endpoints.
  • Multiple Jira Server/Data Center hosts remain independently selectable.
  • Authentication and connection refresh failures return the same structured warnings used by other integrations.
  • Jira Cloud and Jira Server/Data Center can coexist without changing existing Jira Cloud reads.

Risk

Medium. Jira Cloud and Jira Server/Data Center share issue concepts but use different connection, authentication, and endpoint semantics. The implementation must keep their identities and routing separate.

Related

  • gitkraken/kepler#2792 tracks consuming the resulting self-hosted provider support in Kepler.

Source: gitkraken/vscode-gitlens