1name: Stale Workflow Queue Cleanup
2
3on:
4  workflow_dispatch:
5  schedule:
6  # everyday at 15:00
7  - cron: '0 15 * * *'
8
9permissions:
10  contents: read
11
12concurrency:
13  group: stale-workflow-queue-cleanup
14  cancel-in-progress: true
15
16jobs:
17  cleanup:
18    name: Cleanup
19    runs-on: ubuntu-24.04
20    if: github.ref == 'refs/heads/main'
21    permissions:
22      actions: write # to delete stale workflow runs
23
24    steps:
25    - name: Delete stale queued workflow runs
26      uses: MajorScruffy/delete-old-workflow-runs@78b5af714fefaefdf74862181c467b061782719e # v0.3.0
27      with:
28        repository: ${{ github.repository }}
29        # Remove any workflow runs in "queued" state for more than 1 day
30        older-than-seconds: 86400
31        status: queued
32      env:
33        GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
34