ci: consolidate Jira sync workflows and update to sync-jira-actions@v1
Replace three separate Jira sync workflows (new_issues.yml, issue_comment.yml, new_prs.yml) with a single sync-jira.yml following the recommended pattern from espressif/sync-jira-actions. Changes: - Migrate from espressif/github-actions/sync_issues_to_jira@master to espressif/sync-jira-actions@v1 - Add missing GITHUB_TOKEN permissions (contents:read, issues:write, pull-requests:write) - Add workflow_dispatch trigger for manual syncing - Add dynamic run-name for better visibility in Actions UI Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -1,20 +0,0 @@
|
||||
name: Sync issue comments to JIRA
|
||||
|
||||
# This workflow will be triggered when new issue comment is created (including PR comments)
|
||||
on: issue_comment
|
||||
|
||||
jobs:
|
||||
sync_issue_comments_to_jira:
|
||||
name: Sync Issue Comments to Jira
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v6
|
||||
- name: Sync issue comments to JIRA
|
||||
uses: espressif/github-actions/sync_issues_to_jira@master
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
JIRA_PASS: ${{ secrets.JIRA_PASS }}
|
||||
JIRA_PROJECT: QEMU
|
||||
JIRA_COMPONENT: GitHub
|
||||
JIRA_URL: ${{ secrets.JIRA_URL }}
|
||||
JIRA_USER: ${{ secrets.JIRA_USER }}
|
||||
@@ -1,20 +0,0 @@
|
||||
name: Sync issues to Jira
|
||||
|
||||
# This workflow will be triggered when a new issue is opened
|
||||
on: issues
|
||||
|
||||
jobs:
|
||||
sync_issues_to_jira:
|
||||
name: Sync issues to Jira
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v6
|
||||
- name: Sync GitHub issues to Jira project
|
||||
uses: espressif/github-actions/sync_issues_to_jira@master
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
JIRA_PASS: ${{ secrets.JIRA_PASS }}
|
||||
JIRA_PROJECT: QEMU
|
||||
JIRA_COMPONENT: GitHub
|
||||
JIRA_URL: ${{ secrets.JIRA_URL }}
|
||||
JIRA_USER: ${{ secrets.JIRA_USER }}
|
||||
@@ -1,25 +0,0 @@
|
||||
name: Sync remain PRs to Jira
|
||||
|
||||
# This workflow will be triggered every hour, to sync remaining PRs (i.e. PRs with zero comment) to Jira project
|
||||
# Note that, PRs can also get synced when new PR comment is created
|
||||
on:
|
||||
schedule:
|
||||
- cron: "0 * * * *"
|
||||
|
||||
jobs:
|
||||
sync_prs_to_jira:
|
||||
name: Sync PRs to Jira
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v6
|
||||
- name: Sync PRs to Jira project
|
||||
uses: espressif/github-actions/sync_issues_to_jira@master
|
||||
with:
|
||||
cron_job: true
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
JIRA_PASS: ${{ secrets.JIRA_PASS }}
|
||||
JIRA_PROJECT: QEMU
|
||||
JIRA_COMPONENT: GitHub
|
||||
JIRA_URL: ${{ secrets.JIRA_URL }}
|
||||
JIRA_USER: ${{ secrets.JIRA_USER }}
|
||||
@@ -0,0 +1,45 @@
|
||||
name: Sync to Jira
|
||||
|
||||
run-name: >
|
||||
Sync to Jira -
|
||||
${{ github.event_name == 'issue_comment' && 'Issue Comment' ||
|
||||
github.event_name == 'schedule' && 'New Pull Requests' ||
|
||||
github.event_name == 'issues' && 'New Issue' ||
|
||||
github.event_name == 'workflow_dispatch' && 'Manual Sync' }}
|
||||
|
||||
on:
|
||||
issues: {types: [opened]}
|
||||
issue_comment: {types: [created, edited, deleted]}
|
||||
schedule: [cron: '0 * * * *']
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
action: {description: 'Action to be performed', required: true, default: 'mirror-issues'}
|
||||
issue-numbers: {description: 'Issue numbers to sync (comma-separated)', required: true}
|
||||
|
||||
jobs:
|
||||
sync-to-jira:
|
||||
name: >
|
||||
Sync to Jira -
|
||||
${{ github.event_name == 'issue_comment' && 'Issue Comment' ||
|
||||
github.event_name == 'schedule' && 'New Pull Requests' ||
|
||||
github.event_name == 'issues' && 'New Issue' ||
|
||||
github.event_name == 'workflow_dispatch' && 'Manual Sync' }}
|
||||
runs-on: ubuntu-latest
|
||||
permissions:
|
||||
contents: read
|
||||
issues: write
|
||||
pull-requests: write
|
||||
steps:
|
||||
- uses: actions/checkout@v6
|
||||
|
||||
- name: Sync to Jira
|
||||
uses: espressif/sync-jira-actions@v1
|
||||
with:
|
||||
cron_job: ${{ github.event_name == 'schedule' && 'true' || '' }}
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
JIRA_PASS: ${{ secrets.JIRA_PASS }}
|
||||
JIRA_PROJECT: QEMU
|
||||
JIRA_COMPONENT: GitHub
|
||||
JIRA_URL: ${{ secrets.JIRA_URL }}
|
||||
JIRA_USER: ${{ secrets.JIRA_USER }}
|
||||
Reference in New Issue
Block a user