Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
46 changes: 46 additions & 0 deletions .github/workflows/jiralabels.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
name: Ensure GH PRs have a corresponding JIRA issue

on:
pull_request:
types: [opened, edited]

permissions:
contents: read
pull-requests: write

env:
GH_REPO: ${{ github.repository }}
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
NUM: ${{ github.event.pull_request.number }}

jobs:
check-jira-uri:
runs-on: ubuntu-latest
steps:
- name: Check for required URI pattern
id: check_uri
env:
PR_BODY: ${{ github.event.pull_request.body }}
URIPAT: "https://issues.redhat.com/browse/OPENJDK-"
run: |
if echo "$PR_BODY" | grep -q "$URIPAT"; then
echo "missing=false" >> $GITHUB_OUTPUT
else
echo "missing=true" >> $GITHUB_OUTPUT
fi

- name: Apply label if URI missing
if: steps.check_uri.outputs.missing == 'true'
run: |
gh pr edit "$NUM" --add-label "needs-jira-issue"
exit 1 # fail workflow; must be resolved to green-light PR

- name: Remove label if URI present
if: steps.check_uri.outputs.missing == 'false'
run: gh pr edit "$NUM" --remove-label "needs-jira-issue"

label-branch:
runs-on: ubuntu-latest
steps:
- name: Add branch label if missing
run: gh pr edit "$NUM" --add-label "$GITHUB_BASE_REF"
Loading