Skip to content

Commit

Permalink
Implement GitHub PR Issue Checker Workflow
Browse files Browse the repository at this point in the history
Signed-off-by: smog-root <[email protected]>
  • Loading branch information
smog-root authored Oct 18, 2024
1 parent b9e66b7 commit f0854c4
Showing 1 changed file with 57 additions and 0 deletions.
57 changes: 57 additions & 0 deletions .github/workflows/pr-checker.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
name: PR Issue Checker
# Created by @smog-root.
on:
pull_request:
types: [opened, edited]

jobs:
check_pr_details:
runs-on: ubuntu-latest

steps:
- name: Checkout code
uses: actions/checkout@v2

- name: Set up Python
uses: actions/setup-python@v2
with:
python-version: '3.x'

- name: Install dependencies (if needed)
run: pip install re # Install Python's regex library (not needed if using built-in)

- name: Check PR Description and Title
id: check_pr_details
run: |
python -c "
import re
import sys
import os

pr_description = os.getenv('GITHUB_EVENT_PULL_REQUEST_BODY', '')
pr_title = os.getenv('GITHUB_EVENT_PULL_REQUEST_TITLE', '')

# Check if PR description is present
if not pr_description:
print('PR description is missing.')
sys.exit(1)

# Check if the PR description contains 'Fixes #<issue-number>'
if not re.search(r'Fixes #[0-9]+', pr_description):
print('The PR description should include Fixes #<issue-number>.')
sys.exit(1)

# Check if the PR title starts with FIX, FEAT, or DOC
if not re.match(r'^(FIX|FEAT|DOC)', pr_title):
print('The PR title should start with FIX, FEAT, or DOC.')
sys.exit(1)

print('PR description and title are valid.')
"
env:
GITHUB_EVENT_PULL_REQUEST_BODY: ${{ github.event.pull_request.body }}
GITHUB_EVENT_PULL_REQUEST_TITLE: ${{ github.event.pull_request.title }}
- name: Output result
run: echo "All checks passed."

0 comments on commit f0854c4

Please sign in to comment.