52 lines
2.1 KiB
YAML
52 lines
2.1 KiB
YAML
name: Update Mirror Issue
|
|
on:
|
|
discussion:
|
|
types:
|
|
- labeled
|
|
issues:
|
|
types:
|
|
- closed
|
|
- reopened
|
|
|
|
env:
|
|
GH_TOKEN: ${{ secrets.DUCKDBLABS_BOT_TOKEN }}
|
|
TITLE_PREFIX: "[duckdb/#${{ github.event.issue.number || github.event.discussion.number }}]"
|
|
|
|
jobs:
|
|
update_mirror_issue:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Get mirror issue number
|
|
run: |
|
|
gh issue list --repo duckdblabs/duckdb-internal --search "${TITLE_PREFIX}" --json title,number --state all --jq ".[] | select(.title | startswith(\"$TITLE_PREFIX\")).number" > mirror_issue_number.txt
|
|
echo "MIRROR_ISSUE_NUMBER=$(cat mirror_issue_number.txt)" >> $GITHUB_ENV
|
|
|
|
- name: Print whether mirror issue exists
|
|
run: |
|
|
if [ "$MIRROR_ISSUE_NUMBER" == "" ]; then
|
|
echo "Mirror issue with title prefix '$TITLE_PREFIX' does not exist yet"
|
|
else
|
|
echo "Mirror issue with title prefix '$TITLE_PREFIX' exists with number $MIRROR_ISSUE_NUMBER"
|
|
fi
|
|
|
|
- name: Add comment with status to mirror issue
|
|
run: |
|
|
if [ "$MIRROR_ISSUE_NUMBER" != "" ]; then
|
|
gh issue comment --repo duckdblabs/duckdb-internal $MIRROR_ISSUE_NUMBER --body "The issue has been ${{ github.event.action }} (https://github.com/duckdb/duckdb/issues/${{ github.event.issue.number || github.event.discussion.number }})."
|
|
fi
|
|
|
|
- name: Add closed label to mirror issue
|
|
if: github.event.action == 'closed'
|
|
run: |
|
|
if [ "$MIRROR_ISSUE_NUMBER" != "" ]; then
|
|
gh issue edit --repo duckdblabs/duckdb-internal $MIRROR_ISSUE_NUMBER --add-label "public closed" --remove-label "public reopened"
|
|
fi
|
|
|
|
- name: Reopen mirror issue and add reopened label
|
|
if: github.event.action == 'reopened'
|
|
run: |
|
|
if [ "$MIRROR_ISSUE_NUMBER" != "" ]; then
|
|
gh issue reopen --repo duckdblabs/duckdb-internal $MIRROR_ISSUE_NUMBER
|
|
gh issue edit --repo duckdblabs/duckdb-internal $MIRROR_ISSUE_NUMBER --add-label "public reopened" --remove-label "public closed"
|
|
fi
|