synapsecns/sanguine

View on GitHub
.github/workflows/clean-up-pr.yml

Summary

Maintainability
Test Coverage
name: Cleanup caches for closed branches

on:
  pull_request:
    types:
      - closed
  workflow_dispatch:
  push:
    paths:
      - .github/workflows/cleanup-caches.yml

jobs:
  cleanup:
    runs-on: ubuntu-latest
    steps:
      - name: Cleanup caches
        run: |
          gh extension install actions/gh-actions-cache

          REPO="${{ github.repository }}"
          BRANCH="${{ github.ref }}"

          echo "Fetching list of cache key"
          cacheKeysForPR="$(gh actions-cache list -R "$REPO" -B "$BRANCH" | cut -f 1 )"

          ## Setting this to not fail the workflow while deleting cache keys.
          set +e
          echo "Deleting caches..."
          for cacheKey in $cacheKeysForPR
          do
              gh actions-cache delete "$cacheKey" -R "$REPO" -B "$BRANCH" --confirm
          done
          echo "Done"
        env:
          GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}

      - name: Delete closed PR branch
        uses: dawidd6/action-delete-branch@v3
        with:
          github_token: ${{ secrets.GITHUB_TOKEN }}
          numbers: ${{github.event.pull_request.number}}
          soft_fail: true