Automate Jira tickets for new GitHub issues - #1694
Conversation
Signed-off-by: Vu Anh Phung <vu.phung@databricks.com>
There was a problem hiding this comment.
Verdict: 2 Low
Looks good — a clean, self-contained CI workflow that correctly avoids script injection (reads issue data from the event file, not ${{ }} interpolation) and is idempotent via label search + comment marker + per-issue concurrency group. Two low maintainability notes below (hardcoded personal Jira email; duplicate search not scoped by status). Nit: comment.get("body", "") returns None if a comment's body key is present-but-null, which would raise a TypeError in the in check — comment.get("body") or "" is safer, though GitHub issue-comment bodies are effectively always strings so this is largely defensive. NO_CHANGELOG=true is correctly set for this CI-only change per CLAUDE.md.
| GITHUB_TOKEN: ${{ github.token }} | ||
| JIRA_API_TOKEN: ${{ secrets.JIRA_API_TOKEN }} | ||
| shell: python | ||
| run: | |
There was a problem hiding this comment.
🔵 Low — JIRA_EMAIL is hardcoded to an individual's personal address (vu.phung@databricks.com). The Basic-auth credential is email:token, so if this person's account is deprovisioned or their email changes, the automation silently breaks (all Jira calls start returning 401) with no obvious owner. Consider using a shared/service Jira account email, or sourcing it from a repository secret/variable alongside JIRA_API_TOKEN, so the automation isn't tied to one employee's identity.
| { | ||
| "type": "heading", | ||
| "attrs": {"level": 2}, | ||
| "content": [{"type": "text", "text": "GitHub issue"}], |
There was a problem hiding this comment.
🔵 Low — The duplicate-ticket search (project = ES AND labels = "...") does not scope by status. If a matching ES incident was previously created and later closed/resolved, a re-run (or a future trigger) will reuse that closed ticket and only re-post the tracking comment, rather than opening a fresh incident. If reopening a tracking ticket for renewed activity is desired, this is worth handling; if reuse-forever is intended, a brief comment noting that would help future maintainers.
Description
Create an ES Incident when a GitHub issue is opened, then post the Jira link back to the issue. The workflow uses the OSS JDBC component and avoids duplicate tickets on reruns.
NO_CHANGELOG=true
Testing
git diff --checkTelemetry Errors
DatabricksDriverErrorCodewhere appropriate, and any new code is uniquely numbered and tested.Additional Notes to the Reviewer
Requires the
JIRA_API_TOKENrepository secret. Jira assignee is intentionally omitted.This PR was created with GitHub MCP.