| name: Protobuf Janitor |
| |
| on: |
| schedule: |
| # Run daily at 10 AM UTC (2 AM PDT) |
| - cron: 0 10 * * * |
| workflow_dispatch: |
| |
| permissions: {} |
| |
| jobs: |
| stale-prs: |
| name: Close Stale Copybara PRs |
| runs-on: ubuntu-latest |
| permissions: |
| contents: write # to allow deleting branches |
| pull-requests: write # to allow closing the PR |
| env: |
| GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} |
| GH_REPO: ${{ github.repository }} |
| steps: |
| - run: | |
| set -ex |
| STALE_PRS=$(gh pr list --author "app/copybara-service" --limit 500 \ |
| --json "number" --search "updated:<=$(date --date="-7 day" +%F)" \ |
| | jq ".[].number") |
| for pr in $STALE_PRS; do |
| echo "Closing #$pr..." |
| gh pr close --comment "Auto-closing Copybara pull request" --delete-branch "$pr" |
| done |
| |
| stale-others: |
| name: Close stale non-copybara PRs and issues |
| runs-on: ubuntu-latest |
| permissions: |
| issues: write # allow the action to comment on, add labels to, and close issues |
| pull-requests: write # allow the action to comment on, add labels to, and close PRs |
| steps: |
| - uses: actions/stale@b69b346013879cedbf50c69f572cd85439a41936 |
| with: |
| stale-issue-message: > |
| We triage inactive PRs and issues in order to make it easier to find |
| active work. If this issue should remain active or becomes active |
| again, please add a comment. |
| |
| |
| This issue is labeled `inactive` because the last activity was over |
| 90 days ago. |
| close-issue-message: > |
| We triage inactive PRs and issues in order to make it easier to find |
| active work. If this issue should remain active or becomes active |
| again, please reopen it. |
| |
| |
| This issue was closed and archived because there has been no new |
| activity in the 14 days since the `inactive` label was added. |
| stale-pr-message: > |
| We triage inactive PRs and issues in order to make it easier to find |
| active work. If this PR should remain active, please add a comment. |
| |
| |
| This PR is labeled `inactive` because the last activity was over 90 |
| days ago. This PR will be closed and archived after 14 additional |
| days without activity. |
| close-pr-message: > |
| We triage inactive PRs and issues in order to make it easier to find |
| active work. If this PR should remain active or becomes active |
| again, please reopen it. |
| |
| |
| This PR was closed and archived because there has been no new |
| activity in the 14 days since the `inactive` label was added. |
| stale-issue-label: 'inactive' |
| stale-pr-label: 'inactive' |
| exempt-issue-labels: 'help wanted' |
| days-before-stale: 90 |
| days-before-close: 14 |
| operations-per-run: 100 |