Concept: Separation of Concerns #1299
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Issues Automation | |
on: | |
issues: | |
types: [opened, edited, deleted, closed, reopened, labeled, unlabeled, assigned] | |
concurrency: | |
group: issue-${{ github.event.issue.number }} | |
cancel-in-progress: false | |
jobs: | |
customer: | |
name: Add a label if Issue created by customer | |
if: github.event.action == 'opened' | |
runs-on: ubuntu-latest | |
env: | |
GITHUB_TOKEN: ${{ secrets.GH_RAD_CI_BOT_PAT }} | |
steps: | |
- name: Add label if author in preview team | |
env: | |
ISSUE: ${{ github.event.issue.html_url }} | |
AUTHOR: ${{ github.actor }} | |
run: | | |
MEMBERS=$(gh api orgs/radius-project/teams/Radius-Preview/members | jq -r '.[] | .login') | |
ADMINS=$(gh api orgs/radius-project/teams/Radius-Admin/members | jq -r '.[] | .login') | |
for USER in $MEMBERS; do | |
if [[ "$USER" == "$AUTHOR" ]]; then | |
ISADMIN=false | |
for ADMIN in $ADMINS; do | |
if [[ "$USER" == "$ADMIN" ]]; then | |
echo "$USER is an admin, skipping" | |
ISADMIN=true | |
fi | |
done | |
if [[ "$ISADMIN" == "false" ]]; then | |
echo "Adding label for issue $ISSUE" | |
gh issue edit $ISSUE --add-label "customer-issue" | |
fi | |
fi | |
done | |
ado: | |
name: Sync issue to Azure DevOps | |
runs-on: ubuntu-latest | |
steps: | |
- uses: danhellem/[email protected] | |
env: | |
ado_token: "${{ secrets.ADO_AOCTO_BOT_TOKEN }}" | |
github_token: "${{ secrets.GH_RAD_CI_BOT_PAT }}" | |
ado_organization: "azure-octo" | |
ado_project: "Incubations" | |
ado_area_path: "Incubations\\Radius" | |
ado_iteration_path: "Incubations\\Radius" | |
ado_new_state: "New" | |
ado_active_state: "Active" | |
ado_close_state: "Closed" | |
ado_wit: "GitHub Issue" |