Skip to content

Approval Automations #37

Approval Automations

Approval Automations #37

Workflow file for this run

name: Approval Automations
permissions:
contents: read
on:
pull_request_review:
types: [submitted]
jobs:
approved:
runs-on: ubuntu-latest
steps:
- name: Checkout Community Check
uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1
with:
sparse-checkout: .github/actions/community_check
- name: Run Community Check
id: community_check
uses: ./.github/actions/community_check
with:
user_login: ${{ github.event.review.user.login }}
maintainers: ${{ secrets.MAINTAINERS }}
partners: ${{ secrets.PARTNERS }}
- name: Maintainer Approval
if: |
github.event.review.state == 'approved'
&& (steps.community_check.outputs.maintainer == 'true' || steps.community_check.outputs.partner == 'true')
uses: slackapi/slack-github-action@37ebaef184d7626c5f204ab8d3baff4262dd30f0 # v1.27.0
env:
REVIEW_AUTHOR_URL: ${{ github.event.review.user.html_url }}
REVIEW_AUTHOR_LOGIN: ${{ github.event.review.user.login }}
PR_HTML_URL: ${{ github.event.pull_request.html_url }}
PR_TITLE: ${{ github.event.pull_request.title }}
SLACK_WEBHOOK_URL: ${{ secrets.FEED_SLACK_WEBHOOK_URL }}
SLACK_WEBHOOK_TYPE: INCOMING_WEBHOOK
with:
payload: |
{
"blocks": [
{
"type": "section",
"text": {
"type": "mrkdwn",
"text": ${{ toJSON(format(':bufo-approves: <{0}|{1}> approved <{2}|{3}>', env.REVIEW_AUTHOR_URL, env.REVIEW_AUTHOR_LOGIN, env.PR_HTML_URL, env.PR_TITLE)) }}
}
}
]
}