diff --git a/.github/workflows/on-community-issue.yaml b/.github/workflows/on-community-issue.yaml new file mode 100644 index 00000000000..63af9e0c159 --- /dev/null +++ b/.github/workflows/on-community-issue.yaml @@ -0,0 +1,37 @@ +name: "Slack Notification on Community Issue" + +on: + issues: + types: [opened, labeled] + +jobs: + label-check: + runs-on: ubuntu-latest + + steps: + - name: Check if organization member + id: is_organization_member + uses: JamesSingleton/is-organization-member@1.0.0 + with: + organization: tenstorrent + username: ${{ github.event.issue.user.login }} + token: ${{ secrets.GITHUB_TOKEN }} + - name: Add community label + if: ${{ steps.is_organization_member.outputs.result == 'false' }} + run: gh issue edit "$NUMBER" --add-label "$LABELS" + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + GH_REPO: ${{ github.repository }} + NUMBER: ${{ github.event.issue.number }} + LABELS: community + - name: Send Slack Notification + if: ${{ steps.is_organization_member.outputs.result == 'false' }} + uses: slackapi/slack-github-action@v1.26.0 + with: + payload: | + { + "text": "A new issue has been created by a non-org member `${{ github.event.sender.login }}`: ${{ github.event.issue.html_url }}", + "channel": "C07AZJ5DLL8" + } + env: + SLACK_WEBHOOK_URL: ${{ secrets.SLACK_CHANNEL_WEBHOOK_URL }}