mirror of
https://github.com/element-hq/element-android
synced 2024-11-24 18:35:40 +03:00
8af92a4091
Add automation for * labelling Labs issues * adding design and product issues to boards * adding design and product PRs to boards * adding UISI issues to Crypto team board Fixes issue #4949
62 lines
2.8 KiB
YAML
62 lines
2.8 KiB
YAML
name: Move unlabelled from needs info columns to triaged
|
|
|
|
on:
|
|
issues:
|
|
types: [unlabeled]
|
|
|
|
jobs:
|
|
Move_Unabeled_Issue_On_Project_Board:
|
|
name: Move no longer X-Needs-Info issues to Triaged
|
|
runs-on: ubuntu-latest
|
|
# Skip in forks
|
|
if: >
|
|
github.repository == 'vector-im/element-android' &&
|
|
!contains(github.event.issue.labels.*.name, 'X-Needs-Info')
|
|
env:
|
|
BOARD_NAME: "Issue triage"
|
|
OWNER: ${{ github.repository_owner }}
|
|
REPO: ${{ github.event.repository.name }}
|
|
ISSUE: ${{ github.event.issue.number }}
|
|
steps:
|
|
- name: Check if issue is already in "${{ env.BOARD_NAME }}"
|
|
run: |
|
|
if curl -i -H 'Content-Type: application/json' -H "Authorization: bearer ${{ secrets.GITHUB_TOKEN }}" -X POST -d '{"query": "query($issue: Int!, $owner: String!, $repo: String!) { repository(owner: $owner, name: $repo) { issue(number: $issue) { projectCards { nodes { project { name } } } } } } ", "variables" : "{ \"issue\": '${ISSUE}', \"owner\": \"'${OWNER}'\", \"repo\": \"'${REPO}'\" }" }' https://api.github.com/graphql | grep "\b$BOARD_NAME\b"; then
|
|
echo "Issue is already in Project '$BOARD_NAME', proceeding";
|
|
echo "ALREADY_IN_BOARD=true" >> $GITHUB_ENV
|
|
else
|
|
echo "Issue is not in project '$BOARD_NAME', cancelling this workflow"
|
|
echo "ALREADY_IN_BOARD=false" >> $GITHUB_ENV
|
|
fi
|
|
- name: Move issue
|
|
uses: alex-page/github-project-automation-plus@bb266ff4dde9242060e2d5418e120a133586d488
|
|
if: ${{ env.ALREADY_IN_BOARD == 'true' }}
|
|
with:
|
|
project: Issue triage
|
|
column: Triaged
|
|
repo-token: ${{ secrets.ELEMENT_BOT_TOKEN }}
|
|
|
|
remove_Z-Labs_label:
|
|
name: Remove Z-Labs label when features behind labs flags are removed
|
|
runs-on: ubuntu-latest
|
|
if: >
|
|
!(contains(github.event.issue.labels.*.name, 'A-Maths') ||
|
|
contains(github.event.issue.labels.*.name, 'A-Message-Pinning') ||
|
|
contains(github.event.issue.labels.*.name, 'A-Threads') ||
|
|
contains(github.event.issue.labels.*.name, 'A-Polls') ||
|
|
contains(github.event.issue.labels.*.name, 'A-Location-Sharing') ||
|
|
contains(github.event.issue.labels.*.name, 'A-Message-Bubbles') ||
|
|
contains(github.event.issue.labels.*.name, 'Z-IA') ||
|
|
contains(github.event.issue.labels.*.name, 'A-Themes-Custom') ||
|
|
contains(github.event.issue.labels.*.name, 'A-E2EE-Dehydration') ||
|
|
contains(github.event.issue.labels.*.name, 'A-Tags')) &&
|
|
contains(github.event.issue.labels.*.name, 'Z-Labs')
|
|
steps:
|
|
- uses: actions/github-script@v5
|
|
with:
|
|
script: |
|
|
github.rest.issues.removeLabel({
|
|
issue_number: context.issue.number,
|
|
owner: context.repo.owner,
|
|
repo: context.repo.repo,
|
|
name: ['Z-Labs']
|
|
})
|