From 5477fd38a9a8ad74016ee74ebb55f26f9c6fdcac Mon Sep 17 00:00:00 2001 From: Chris Evich Date: Mon, 21 Aug 2023 14:26:13 -0400 Subject: [PATCH] GHA: Add workflow to lock closed issues/PRs Ref: https://github.com/containers/podman/discussions/19012 Signed-off-by: Chris Evich --- .github/workflows/discussion_lock.yml | 68 +++++++++++++++++++++++++++ CONTRIBUTING.md | 3 ++ 2 files changed, 71 insertions(+) create mode 100644 .github/workflows/discussion_lock.yml diff --git a/.github/workflows/discussion_lock.yml b/.github/workflows/discussion_lock.yml new file mode 100644 index 0000000000..c954675660 --- /dev/null +++ b/.github/workflows/discussion_lock.yml @@ -0,0 +1,68 @@ +--- + +# Format ref: https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions + +name: "Lock closed Issue/PR discussions" + +on: + schedule: + - cron: '0 0 * * *' + # Allow re-use of this workflow by other repositories + # Ref: https://docs.github.com/en/actions/using-workflows/reusing-workflows + workflow_call: + secrets: + ACTION_MAIL_SERVER: + required: true + ACTION_MAIL_USERNAME: + required: true + ACTION_MAIL_PASSWORD: + required: true + ACTION_MAIL_SENDER: + required: true + # Debug: Allow triggering job manually in github-actions WebUI + workflow_dispatch: {} + +permissions: + contents: read + +concurrency: + group: lock + +env: + # Number of days befor a closed issue/PR is be comment-locked. + # Note: dessant/lock-threads will only process a max. of + # 50 issues/PRs at a time. + CLOSED_DAYS: 90 + # Pre-created issue/PR label to add (preferrably a bright color). + # This is intended to direct a would-be commenter's actions. + LOCKED_LABEL: 'locked - please file new issue/PR' + +jobs: + closed_issue_discussion_lock: + name: "Lock closed Issue/PR discussions" + runs-on: ubuntu-latest + permissions: + issues: write + pull-requests: write + steps: + # Ref: https://github.com/dessant/lock-threads#usage + - uses: dessant/lock-threads@v4 + with: + issue-inactive-days: '${{env.CLOSED_DAYS}}' + pr-inactive-days: '${{env.CLOSED_DAYS}}' + add-issue-labels: '${{env.LOCKED_LABEL}}' + add-pr-labels: '${{env.LOCKED_LABEL}}' + pr-lock-reason: 'resolved' + log-output: true + - if: failure() + name: Send job failure notification e-mail + uses: dawidd6/action-send-mail@v3.8.0 + with: + server_address: ${{secrets.ACTION_MAIL_SERVER}} + server_port: 465 + username: ${{secrets.ACTION_MAIL_USERNAME}} + password: ${{secrets.ACTION_MAIL_PASSWORD}} + subject: Github workflow error on ${{github.repository}} + to: rh.container.bot@gmail.com,podman-monitor@lists.podman.io + from: ${{secrets.ACTION_MAIL_SENDER}} + body: "Job failed: https://github.com/${{github.repository}}/actions/runs/${{github.run_id}}" diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index c161904cee..b1d02cea12 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -21,6 +21,9 @@ to see if someone else has already reported it. If so, feel free to add your scenario, or additional information, to the discussion. Or simply "subscribe" to it to be notified when it is updated. +Note: Older closed issues/PRs are automatically locked, if you have a similar +problem please open a new issue instead of commenting. + If you find a new issue with the project we'd love to hear about it! The most important aspect of a bug report is that it includes enough information for us to reproduce it. To make this easier, there are three types of issue