Background
enterprise/integrations/jira-data-center.mdx (added in #532) documents the Jira Data Center integration end-to-end for the Replicated / KOTS Admin Console install path. The page is the right entry point and should stay that way.
This issue tracks a focused operator-facing follow-up that adds the missing material on top of that page — primarily for customers running OpenHands Enterprise via standalone Helm (e.g. C3.ai on GKE) and for support cases the current troubleshooting table doesn't cover. Framed as a diff/extension of the existing page, not a replacement.
Scope was carved out of closed PR #527, which #532 superseded.
What to add
1. Standalone Helm install path
Today's page is Replicated-only — there's no values.yaml guidance, so Helm-only customers can't follow it. Add a Helm tab alongside each Admin Console step covering:
openhands chart: jiraDc.enabled, jiraDc.linkMethod (oauth | email)
openhands-secrets chart: the resulting Secret/jira-dc-app and the keys it must contain
- Operators who manage
jira-dc-app directly (e.g. External Secrets / Vault) — what keys are read
Source of truth: charts/openhands/templates/_env.yaml, charts/openhands-secrets/templates/jira-dc-app.yaml in OpenHands/OpenHands-Cloud.
2. The OH_WEB_CLIENT_FEATURE_FLAGS_ENABLE_JIRA_DC gotcha
The Replicated overlay sets this env var automatically. Helm users have to set it themselves, and without it the backend routes are live but the Settings → Integrations card never renders. There is nothing in the current page for an operator to grep for when they hit this. Document the flag, where to set it, and the symptom.
3. Verification one-liner
A kubectl set env … --list (or kubectl exec env | grep JIRA_DC_) snippet showing the expected JIRA_DC_* env vars on the integrations pod for both linkMethod=oauth and linkMethod=email. Lets an operator confirm the secret actually propagated without reading chart source.
4. Reference deep-links into OpenHands-Cloud
Append a short Reference section linking to the canonical source-of-truth files for operators doing custom Helm overlays:
- the Replicated config group definition
charts/openhands-secrets/templates/jira-dc-app.yaml
charts/openhands/templates/_env.yaml
- the
/integration/jira-dc/events ingress route
5. Troubleshooting recipes the current table doesn't have
Extend the existing 8-row symptom/check table (or add an accordion below it) with:
- Email-match link "succeeds" but
@openhands still asks the user to re-link — include a psql query against the user-link table to diagnose.
- Rotating the service-account PAT or OAuth client secret — step-by-step procedure, including which pods need to restart.
- Settings → Integrations card missing on a Helm install — cross-link to the
ENABLE_JIRA_DC feature-flag note above.
Out of scope (intentionally)
- Rewriting Alona's
jira-data-center.mdx. All additions should be additive sections / tabs on the same page.
- Bitbucket Data Center (separate page, same Helm-vs-Replicated story may apply later).
- Air-gapped support (not currently supported per the page's prereqs).
Provenance
The deeper-dive material in closed PR #527 already covers items 1–5 above and can be lifted onto Alona's page as the implementation of this issue.
Related
This issue was filed by an AI agent (OpenHands) on behalf of @jpshackelford.
Background
enterprise/integrations/jira-data-center.mdx(added in #532) documents the Jira Data Center integration end-to-end for the Replicated / KOTS Admin Console install path. The page is the right entry point and should stay that way.This issue tracks a focused operator-facing follow-up that adds the missing material on top of that page — primarily for customers running OpenHands Enterprise via standalone Helm (e.g. C3.ai on GKE) and for support cases the current troubleshooting table doesn't cover. Framed as a diff/extension of the existing page, not a replacement.
Scope was carved out of closed PR #527, which #532 superseded.
What to add
1. Standalone Helm install path
Today's page is Replicated-only — there's no
values.yamlguidance, so Helm-only customers can't follow it. Add a Helm tab alongside each Admin Console step covering:openhandschart:jiraDc.enabled,jiraDc.linkMethod(oauth|email)openhands-secretschart: the resultingSecret/jira-dc-appand the keys it must containjira-dc-appdirectly (e.g. External Secrets / Vault) — what keys are readSource of truth:
charts/openhands/templates/_env.yaml,charts/openhands-secrets/templates/jira-dc-app.yamlinOpenHands/OpenHands-Cloud.2. The
OH_WEB_CLIENT_FEATURE_FLAGS_ENABLE_JIRA_DCgotchaThe Replicated overlay sets this env var automatically. Helm users have to set it themselves, and without it the backend routes are live but the Settings → Integrations card never renders. There is nothing in the current page for an operator to grep for when they hit this. Document the flag, where to set it, and the symptom.
3. Verification one-liner
A
kubectl set env … --list(orkubectl exec env | grep JIRA_DC_) snippet showing the expectedJIRA_DC_*env vars on the integrations pod for bothlinkMethod=oauthandlinkMethod=email. Lets an operator confirm the secret actually propagated without reading chart source.4. Reference deep-links into
OpenHands-CloudAppend a short Reference section linking to the canonical source-of-truth files for operators doing custom Helm overlays:
charts/openhands-secrets/templates/jira-dc-app.yamlcharts/openhands/templates/_env.yaml/integration/jira-dc/eventsingress route5. Troubleshooting recipes the current table doesn't have
Extend the existing 8-row symptom/check table (or add an accordion below it) with:
@openhandsstill asks the user to re-link — include apsqlquery against the user-link table to diagnose.ENABLE_JIRA_DCfeature-flag note above.Out of scope (intentionally)
jira-data-center.mdx. All additions should be additive sections / tabs on the same page.Provenance
The deeper-dive material in closed PR #527 already covers items 1–5 above and can be lifted onto Alona's page as the implementation of this issue.
Related
enterprise/integrations/jira-data-center.mdx(the Replicated guide this builds on)This issue was filed by an AI agent (OpenHands) on behalf of @jpshackelford.