thegrowthexponent/GitHub Issue → Jira Sync
Automatically syncs GitHub Issues to Jira. Checks for an existing jira:PROJ-123 label (the sync key) before creating a ticket — fully idempotent. Closes the GitHub Issue with a Jira link after syncing.
View on GitHubTrust Signals
- Scorecard Score
- not yet scored
- Maintenance Recency
- Stale
- License
- None
Inputs
| name | description | required | default |
|---|---|---|---|
| jira_project_key | Jira project key (e.g. OLSF, PA, DED). Recommend setting as repo variable JIRA_PROJECT_KEY. | yes | — |
| jira_base_url | Jira instance URL, e.g. https://yourorg.atlassian.net | yes | — |
| jira_user_email | Email of the Jira account used for the API token | yes | — |
| jira_api_token | Jira API token — create one at https://id.atlassian.com/manage-profile/security/api-tokens | yes | — |
| github_token | GitHub token with issues:write permission. Use secrets.GITHUB_TOKEN. | yes | ${{ github.token }} |
| dry_run | Set to true to log actions without creating Jira tickets or closing issues | no | false |
| bulk_sync | Set to true to sync all open issues without a jira: label (for workflow_dispatch runs) | no | false |
| close_after_sync | Close the GitHub Issue after the Jira ticket is created | no | true |
| jira_issue_type_default | Fallback Jira issue type when no recognised type label is present | no | Task |
Outputs
| name | description |
|---|---|
| jira_key | The Jira issue key created (e.g. OLSF-42), or empty if skipped |