# cleans up our S3 staging area if a PR is closed without merge

name: pkgx/s3-cleanup
run-name: 'cleanup: ${{ github.event.pull_request.title }}'

on:
  pull_request:
    types: [closed]

jobs:
  cleanup:
    runs-on: ubuntu-latest
    if: github.event.pull_request.merged == false
    steps:
      - name: Configure AWS Credentials
        uses: aws-actions/configure-aws-credentials@v1
        with:
          aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
          aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
          aws-region: us-east-1

      - name: remove staged artifacts
        run: |
          REPO=$(echo ${{github.repository}} | sed -e 's_pkgxdev/__')
          PR=$(echo ${{github.ref}} | sed -e 's_refs/pull/\(.*\)/merge_\1_')

          aws s3 rm --recursive s3://$AWS_S3_CACHE/pull-request/$REPO/$PR
        if: startsWith(github.ref, 'refs/pull/') && github.repository_owner == 'pkgxdev'
        env:
          AWS_S3_CACHE: ${{ secrets.AWS_S3_CACHE }}