Update triage automation to check doc team member (#21856)
* to check if team members * check for doc team member * remove duplicate check for team members * delete/readd step Co-authored-by: skedwards88 <skedwards88@github.com>
This commit is contained in:
45
.github/workflows/os-ready-for-review.yml
vendored
45
.github/workflows/os-ready-for-review.yml
vendored
@@ -18,31 +18,30 @@ jobs:
|
||||
if: github.event.label.name == 'waiting for review' && github.repository == 'github/docs'
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Exit if not triggered by a docs team member
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.DOCUBOT_READORG_REPO_WORKFLOW_SCOPES }}
|
||||
run: |
|
||||
members="$( gh api graphql -f query='
|
||||
query {
|
||||
organization(login: "github") {
|
||||
team(slug: "docs") {
|
||||
members {
|
||||
nodes {
|
||||
login
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
- name: Check if this run was triggered by a member of the docs team
|
||||
uses: actions/github-script@2b34a689ec86a68d8ab9478298f91d5401337b7d
|
||||
id: triggered-by-member
|
||||
with:
|
||||
github-token: ${{secrets.DOCUBOT_READORG_REPO_WORKFLOW_SCOPES}}
|
||||
result-encoding: string
|
||||
script: |
|
||||
const triggerer_login = context.payload.sender.login
|
||||
const teamMembers = await github.request(
|
||||
`/orgs/github/teams/docs/members?per_page=100`
|
||||
)
|
||||
const logins = teamMembers.data.map(member => member.login)
|
||||
if (logins.includes(triggerer_login)) {
|
||||
console.log(`This workflow was triggered by ${triggerer_login} (on the docs team).`)
|
||||
return 'true'
|
||||
}
|
||||
' --jq '.data.organization.team.members.nodes | [(.[].login)]')"
|
||||
console.log(`This workflow was triggered by ${triggerer_login} (not on the docs team), so no action will be taken.`)
|
||||
return 'false'
|
||||
|
||||
isMember=$(echo ${members[@]} | grep -ow $GITHUB_ACTOR | wc -w)
|
||||
|
||||
if [ $isMember -eq 0 ]
|
||||
then
|
||||
echo "$GITHUB_ACTOR is not a docs team member. exiting..."
|
||||
exit 1
|
||||
fi
|
||||
- name: Exit if not triggered by a docs team member
|
||||
if: steps.triggered-by-member.outputs.result == 'false'
|
||||
run: |
|
||||
echo Aborting. This workflow must be triggered by a member of the docs team.
|
||||
exit 1
|
||||
|
||||
- name: Check out repo content
|
||||
uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f
|
||||
|
||||
Reference in New Issue
Block a user