diff --git a/.github/workflows/labeler-approve.yml b/.github/workflows/labeler-approve.yml index 79642c3067e0..3cf0f5b08e2e 100644 --- a/.github/workflows/labeler-approve.yml +++ b/.github/workflows/labeler-approve.yml @@ -1,21 +1,20 @@ name: "Labels: Approve" on: - pull_request_review: - types: [submitted, edited, dismissed] - -permissions: write-all + pull_request: + types: [edited] jobs: remove_label: runs-on: ubuntu-latest - if: github.event.review.state == 'approved' steps: - - name: check all revs + - name: check all reviewers id: check_approvals - uses: actions/github-script@v7 + uses: actions/github-script@v6 with: + github-token: ${{ secrets.URPRICE_PAT }} script: | + console.log('L:A verby 1502 23022025'); const { data: reviews } = await github.rest.pulls.listReviews({ owner: context.repo.owner, repo: context.repo.repo, @@ -26,3 +25,21 @@ jobs: const approvedReviews = reviews.filter(review => review.state === 'APPROVED').length; return approvedReviews >= requiredApprovals; + - name: rm labels + if: steps.check_approvals.outputs.result == 'true' + uses: actions/github-script@v6 + with: + github-token: ${{ secrets.URPRICE_PAT }} + script: | + const labelsToRemove = ['Status: Needs Review', 'Status: Awaiting Changes']; + const currentLabels = context.payload.pull_request.labels.map(label => label.name); + for (const label of labelsToRemove) { + if (currentLabels.includes(label)) { + await github.request('DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels/{name}', { + owner: context.repo.owner, + repo: context.repo.repo, + issue_number: context.payload.pull_request.number, + name: label, + }); + } + }