From 4ef29ab7ed7555b14b25630c35dfd5273a5c1116 Mon Sep 17 00:00:00 2001 From: Mathieu Kardous Date: Fri, 7 Oct 2022 14:48:35 +0000 Subject: [PATCH] Pull request #159: Add Github Issue Automation to SMG Merge in WMN_TOOLS/matter from feature/github_automation to silabs Squashed commit of the following: commit d1a2cd0d0780e925a3451ca437e1224f66a53bf2 Author: Mathieu Kardous Date: Thu Oct 6 12:02:16 2022 -0400 Update smg version field commit 4419dbd1181324a0f48df30175c23aff80e75682 Author: mkardous-silabs <84793247+mkardous-silabs@users.noreply.github.com> Date: Tue Sep 13 09:48:58 2022 -0400 Adding Silabs Custom Actions Fix issue closer --- .github/ISSUE_TEMPLATE/bug_report.yaml | 99 ++++++++++++++++++++ .github/ISSUE_TEMPLATE/config.yml | 5 + .github/ISSUE_TEMPLATE/feature_request.yaml | 73 +++++++++++++++ .github/workflows/auto-assign.yml | 20 ++++ .github/workflows/duplicate-closer.yml | 28 ++++++ .github/workflows/label.yml | 20 ++++ .github/workflows/stale.yml | 27 ++++++ .github/workflows/support-request-closer.yml | 28 ++++++ .github/workflows/wont-fix-closer.yml | 28 ++++++ 9 files changed, 328 insertions(+) create mode 100644 .github/ISSUE_TEMPLATE/bug_report.yaml create mode 100644 .github/ISSUE_TEMPLATE/config.yml create mode 100644 .github/ISSUE_TEMPLATE/feature_request.yaml create mode 100644 .github/workflows/auto-assign.yml create mode 100644 .github/workflows/duplicate-closer.yml create mode 100644 .github/workflows/label.yml create mode 100644 .github/workflows/stale.yml create mode 100644 .github/workflows/support-request-closer.yml create mode 100644 .github/workflows/wont-fix-closer.yml diff --git a/.github/ISSUE_TEMPLATE/bug_report.yaml b/.github/ISSUE_TEMPLATE/bug_report.yaml new file mode 100644 index 00000000000000..d29c37dd411a6c --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.yaml @@ -0,0 +1,99 @@ +name: "Bug report" +description: "File a bug report for Silabs Matter" +body: + - type: markdown + attributes: + value: "Thank you for reporting an issue against the Silabs Matter Repository! To correctly address your issue, please fill out the necessary information." + + - type: textarea + id: description + attributes: + label: "Description of the issue" + placeholder: "Textual description of the issue and of its symptoms." + validations: + required: true + + - type: textarea + id: reproduce_steps + attributes: + label: "Steps to reproduce the issue" + description: "How do you trigger this bug? Please walk us through it step by step." + placeholder: | + 1. + 2. + 3. + ... + render: bash + validations: + required: true + + - type: textarea + id: network + attributes: + label: "Device type(s) and network topology" + description: "Description of the network in which this issue happens (devices/types/connections/etc)." + placeholder: "Mattertool Raspberry Pi connected over OpenThread with two FTDs." + validations: + required: true + + - type: textarea + id: solution + attributes: + label: "Proposed solution(s)" + description: "If available, any steps, changes, etc. that can solve the reported issue." + validations: + required: false + + - type: dropdown + id: smg-version + attributes: + label: "SMG version" + description: "What Matter SMG version are you using?" + options: + - release_0.1.0 + - release_0.2.0 + - release_0.3.0 + - release_0.4.0 + validations: + required: true + + - type: dropdown + id: protocol + attributes: + label: "Protocol(s)" + description: "What protocol(s) is(are) affected? (multiple choices allowed)" + multiple: true + options: + - "Openthread" + - "Wifi" + - "Bluetooth" + validations: + required: true + + - type: input + id: hardware_platform + attributes: + label: "Hardware platform(s)" + description: "What hardware platform(s) are you using such as radio part, host part/host OS (if any), etc.?" + placeholder: "ex: MG24 Explorer Kit, BRD4186C" + validations: + required: true + + - type: input + id: platform-version + attributes: + label: "Development platform(s)" + description: "What development platform(s) are you using" + placeholder: "If relevant to the bug report, please add details about your development environment used where the bug occurs." + validations: + required: false + + - type: textarea + id: logs + attributes: + label: "Captured data or logs" + description: | + Attach any relevant logs or network captures. + Tip: You can attach images or log files by clicking this area to highlight it and then dragging files in. + validations: + required: false diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml new file mode 100644 index 00000000000000..45104a4377ff7a --- /dev/null +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -0,0 +1,5 @@ +blank_issues_enabled: false +contact_links: + - name: Support Request + url: https://community.silabs.com/s/topic/0TO1M000000qHZgWAM/matter?language=en_US + about: For support requests, please ask your questions in Silabs Matter Community diff --git a/.github/ISSUE_TEMPLATE/feature_request.yaml b/.github/ISSUE_TEMPLATE/feature_request.yaml new file mode 100644 index 00000000000000..a521132291d6e0 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.yaml @@ -0,0 +1,73 @@ +name: "Feature request" +description: "File a feature request for Matter development" +body: + - type: markdown + attributes: + value: "Thank you for requesting a new feature! To help us understand your request, please fill out the necessary information." + + - type: textarea + id: description + attributes: + label: "General description of the feature" + validations: + required: true + + - type: textarea + id: proposed_solution + attributes: + label: "Proposed solution" + description: "High level description of a possible implementation" + validations: + required: false + + - type: textarea + id: alternatives + attributes: + label: "Alternatives" + description: "Describe any alternatives already considered or attempted and the results." + validations: + required: false + + - type: input + id: bug_relation + attributes: + label: "Related bug" + description: "If this feature request is related to a bug, please link it here." + placeholder: "ex: #12345" + validations: + required: false + + - type: dropdown + id: smg-version + attributes: + label: "SMG version" + description: "What Matter SMG version are you using?" + options: + - release_0.1.0 + - release_0.2.0 + - release_0.3.0 + - release_0.4.0 + validations: + required: true + + - type: dropdown + id: Protocol + attributes: + label: "Protocol(s)" + description: "What protocol(s) is(are) affected? (multiple choices allowed)" + multiple: true + options: + - "Openthread" + - "Wifi" + - "Bluetooth" + validations: + required: true + + - type: input + id: hardware_platform + attributes: + label: "Hardware platform(s)" + description: "What hardware platform(s) are you using such as radio part, host part or host OS (if any), etc.?" + placeholder: "ex: MG24 Explorer Kit, BRD4186C" + validations: + required: true diff --git a/.github/workflows/auto-assign.yml b/.github/workflows/auto-assign.yml new file mode 100644 index 00000000000000..ef543632f4a4c6 --- /dev/null +++ b/.github/workflows/auto-assign.yml @@ -0,0 +1,20 @@ +# This workflow auto assigns Matter-Apps team to a newly created issue +# +# You can adjust the behavior by modifying this file. +# For more information, see: +# https://github.com/marketplace/actions/auto-assign-issue +name: Issue assignment + +on: + issues: + types: [opened] + +jobs: + auto-assign: + runs-on: ubuntu-latest + steps: + - name: "Auto-assign issue" + uses: pozil/auto-assign-issue@v1 + with: + assignees: ${{secrets.APPS_MATTER_SUPPORT}} + allowSelfAssign: true diff --git a/.github/workflows/duplicate-closer.yml b/.github/workflows/duplicate-closer.yml new file mode 100644 index 00000000000000..ea55b5a9fbc91a --- /dev/null +++ b/.github/workflows/duplicate-closer.yml @@ -0,0 +1,28 @@ +# This workflow auto closes issues with specific tags at least 24 hours after the tag has been set. +# +# You can adjust the behavior by modifying this file. +# For more information, see: +# https://github.com/marketplace/actions/tiangolo-s-issue-manager +name: duplicate Closer + +on: + schedule: + - cron: "0 11 * * *" + workflow_dispatch: + +jobs: + issue-manager: + runs-on: ubuntu-latest + steps: + - uses: tiangolo/issue-manager@0.4.0 + with: + token: ${{ secrets.GITHUB_TOKEN }} + config: > + { + "duplicate": { + "delay": 86400, + "message": "This issue is a duplicate of an existing issue.. Automatically closing the issue.", + "remove_label_on_comment": false, + "remove_label_on_close": false + } + } diff --git a/.github/workflows/label.yml b/.github/workflows/label.yml new file mode 100644 index 00000000000000..5b98b0393cb340 --- /dev/null +++ b/.github/workflows/label.yml @@ -0,0 +1,20 @@ +# This workflow will triage pull requests and apply a label based on the +# paths that are modified in the pull request. +# +# To use this workflow, you will need to set up a .github/labeler.yml +# file with configuration. For more information, see: +# https://github.com/actions/labeler + +name: Labeler +on: + issues: + types: [opened] + +jobs: + automate-issues-labels: + runs-on: ubuntu-latest + steps: + - name: initial labeling + uses: andymckay/labeler@master + with: + add-labels: "triage" diff --git a/.github/workflows/stale.yml b/.github/workflows/stale.yml new file mode 100644 index 00000000000000..872120802f976c --- /dev/null +++ b/.github/workflows/stale.yml @@ -0,0 +1,27 @@ +# This workflow warns and then closes issues that have had no activity for a specified amount of time. +# +# You can adjust the behavior by modifying this file. +# For more information, see: +# https://github.com/actions/stale +name: Mark stale issues + +on: + schedule: + - cron: "0 11 * * *" + +jobs: + stale: + runs-on: ubuntu-latest + permissions: + issues: write + + steps: + - uses: actions/stale@v5 + with: + repo-token: ${{ secrets.GITHUB_TOKEN }} + stale-issue-message: "This issue has been auhtomatically marked as stale due to inactivity. It will be closed if no further activity occurs." + stale-issue-label: "stale" + close-issue-message: "This issue has been automatically closed. Thank you for your contributions." + days-before-issue-stale: 7 + days-before-issue-close: 7 + any-of-labels: "more-info-needed" diff --git a/.github/workflows/support-request-closer.yml b/.github/workflows/support-request-closer.yml new file mode 100644 index 00000000000000..3e7993d85b3c0b --- /dev/null +++ b/.github/workflows/support-request-closer.yml @@ -0,0 +1,28 @@ +# This workflow auto closes issues with specific tags at least 24 hours after the tag has been set. +# +# You can adjust the behavior by modifying this file. +# For more information, see: +# https://github.com/marketplace/actions/tiangolo-s-issue-manager +name: Support Request Closer + +on: + schedule: + - cron: "0 11 * * *" + workflow_dispatch: + +jobs: + issue-manager: + runs-on: ubuntu-latest + steps: + - uses: tiangolo/issue-manager@0.4.0 + with: + token: ${{ secrets.GITHUB_TOKEN }} + config: > + { + "support-request": { + "delay": 86400, + "message": "This issue requires community support. Automatically closing the issue.", + "remove_label_on_comment": false, + "remove_label_on_close": false + } + } diff --git a/.github/workflows/wont-fix-closer.yml b/.github/workflows/wont-fix-closer.yml new file mode 100644 index 00000000000000..e25829282f297b --- /dev/null +++ b/.github/workflows/wont-fix-closer.yml @@ -0,0 +1,28 @@ +# This workflow auto closes issues with specific tags at least 24 hours after the tag has been set. +# +# You can adjust the behavior by modifying this file. +# For more information, see: +# https://github.com/marketplace/actions/tiangolo-s-issue-manager +name: won't fix Closer + +on: + schedule: + - cron: "0 11 * * *" + workflow_dispatch: + +jobs: + issue-manager: + runs-on: ubuntu-latest + steps: + - uses: tiangolo/issue-manager@0.4.0 + with: + token: ${{ secrets.GITHUB_TOKEN }} + config: > + { + "won't-fix": { + "delay": 86400, + "message": "This issue does not require anymore actions. Automatically closing the issue.", + "remove_label_on_comment": false, + "remove_label_on_close": false + } + }