name: Delete Workflow Runs on: workflow_dispatch: inputs: days: description: 'Number of days.' required: true default: 0 minimum_runs: description: 'The minimum runs to keep for each workflow.' required: true default: 0 delete_workflow_pattern: description: 'The name or filename of the workflow. if not set then it will target all workflows.' required: false delete_workflow_by_state_pattern: description: 'Remove workflow by state: active, deleted, disabled_fork, disabled_inactivity, disabled_manually' required: true default: "All" type: choice options: - "All" - active - deleted - disabled_inactivity - disabled_manually delete_run_by_conclusion_pattern: description: 'Remove workflow by conclusion: action_required, cancelled, failure, skipped, success' required: true default: "All" type: choice options: - "All" - action_required - cancelled - failure - skipped - success dry_run: description: 'Only log actions, do not perform any delete operations.' required: false jobs: del_runs: runs-on: ubuntu-latest permissions: actions: write steps: - name: Delete workflow runs uses: Mattraks/delete-workflow-runs@v2 with: token: ${{ github.token }} repository: ${{ github.repository }} retain_days: ${{ github.event.inputs.days }} keep_minimum_runs: ${{ github.event.inputs.minimum_runs }} delete_workflow_pattern: ${{ github.event.inputs.delete_workflow_pattern }} delete_workflow_by_state_pattern: ${{ github.event.inputs.delete_workflow_by_state_pattern }} delete_run_by_conclusion_pattern: ${{ github.event.inputs.delete_run_by_conclusion_pattern }} dry_run: ${{ github.event.inputs.dry_run }}