omnidash/.github/workflows/gh-pages-cleanup.yaml

34 lines
954 B
YAML

name: Cleanup GitHub Pages on Branch Deletion
on:
delete
permissions:
contents: write
concurrency:
group: "pages"
cancel-in-progress: false
jobs:
cleanup:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v3.5.3
- name: Delete directory in gh-pages
if: github.event.ref_type == 'branch'
run: |
git config --global user.email "support@github.com"
git config --global user.name "cleanup[bot]"
git fetch --all
git checkout gh-pages
branchName=$(echo "${{ github.event.ref }}" | sed -e 's,^refs/heads/,,')
if [ -d "./${branchName}" ]; then
git rm -rf --ignore-unmatch "${branchName}"
git commit -m "Cleanup directory for deleted branch ${branchName}"
git push origin gh-pages
else
echo "Directory doesn't exist for branch ${branchName}"
fi