How satyavinayv/backport_request_automation works
Backport Request Automation is a command-line workflow for validating a GitLab merge request against Jira release metadata and GM2 test results, then optionally creating release backports and updating Jira. The README documents the end-to-end stages; the sampled source confirms the single script owns command dispatch, identifier parsing, Jira fix-version extraction, OpenSearch run filtering, eligibility evaluation, and comment construction. Later execution wiring is only partially sampled, so those links follow documented behavior rather than inspected call sites.
Main entry points: backport.py CLI Orchestrator
Components 16
Request Intake
- CLI Orchestrator
tools/backport/backport.py - MR Details
tools/backport/backport.py - ID Extraction
tools/backport/backport.py
Eligibility Validation
- Jira Metadata
tools/backport/backport.py - GM2 Results
tools/backport/backport.py - GM2 Eligibility
tools/backport/backport.py - Eligibility Report
tools/backport/backport.py
Backport Delivery
- Release Targets
tools/backport/backport.py - Branch & Cherry-pick
tools/backport/backport.py - Backport MR
tools/backport/backport.py
Jira Updates
- Approval Comment
tools/backport/backport.py - Workflow Transition
tools/backport/backport.py
Other components
- Operator
- GitLab
- Jira
- OpenSearch
Connections 27
- Operator → CLI Orchestrator: runs command
- CLI Orchestrator → MR Details: fetches MR
- GitLab → MR Details: returns metadata
- CLI Orchestrator → ID Extraction: extracts IDs
- MR Details → ID Extraction: provides diff
- CLI Orchestrator → Jira Metadata: fetches issue
- Jira → Jira Metadata: returns fields
- CLI Orchestrator → GM2 Results: queries runs
- OpenSearch → GM2 Results: returns results
- CLI Orchestrator → GM2 Eligibility: evaluates runs
- GM2 Results → GM2 Eligibility: supplies runs
- CLI Orchestrator → Eligibility Report: prints report
- GM2 Eligibility → Eligibility Report: supplies decision
- CLI Orchestrator → Release Targets: selects targets
- Jira Metadata → Release Targets: supplies fix versions
- CLI Orchestrator → Branch & Cherry-pick: creates and cherry-picks
- Release Targets → Branch & Cherry-pick: sets release branch
- GitLab → Branch & Cherry-pick: applies repository changes
- CLI Orchestrator → Backport MR: opens MR
- Branch & Cherry-pick → Backport MR: provides backport branch
- GitLab → Backport MR: stores MR
- CLI Orchestrator → Approval Comment: posts comment
- Jira Metadata → Approval Comment: provides Jira context
- Jira → Approval Comment: receives comment
- CLI Orchestrator → Workflow Transition: transitions issue
- Jira Metadata → Workflow Transition: provides current status
- Jira → Workflow Transition: updates workflow