Skip to content

Plugin skills update #32

Plugin skills update

Plugin skills update #32

name: Generate Diagrams and Traces SVG on PR Merge
on:
pull_request:
types: [closed]
branches:
- main
jobs:
generate-diagrams:
if: github.event.pull_request.merged == true && !startsWith(github.event.pull_request.head.ref, 'release/')
name: Generate and Commit Diagrams
runs-on: ubuntu-latest
permissions:
contents: write # Required to commit to the repository
steps:
- name: Checkout Repository
uses: actions/checkout@v4
with:
ref: main # Checkout the main branch
fetch-depth: 0 # Get full history for proper Git operations
- name: Set up Rust
uses: dtolnay/rust-toolchain@stable
- name: Cache Cargo dependencies
uses: Swatinem/rust-cache@v2
- name: Build Reqvire
run: |
cargo build --release
cp target/release/reqvire ./reqvire
- name: Configure Git
run: |
git config --global user.name "GitHub Action"
git config --global user.email "actions@github.com"
- name: Generate Diagrams
run: |
./reqvire generate-diagrams
- name: Check for Changes
id: check_changes
run: |
if [[ -n "$(git status --porcelain)" ]]; then
echo "HAS_CHANGES=true" >> $GITHUB_ENV
else
echo "HAS_CHANGES=false" >> $GITHUB_ENV
fi
- name: Commit and Push Changes
if: env.HAS_CHANGES == 'true'
run: |
git add -A
git commit -m "Auto-generate diagrams after PR merge to main"
git push origin main