diff --git a/.gitea/workflows/pr-ready-gate.yml b/.gitea/workflows/pr-ready-gate.yml new file mode 100644 index 0000000..639876c --- /dev/null +++ b/.gitea/workflows/pr-ready-gate.yml @@ -0,0 +1,32 @@ +name: PR Ready Gate + +on: + pull_request: + types: [synchronize] + +jobs: + clear-labels: + runs-on: ubuntu-24.04 + if: contains(github.event.pull_request.labels.*.name, 'self-reviewed') + steps: + - name: Remove self-reviewed label, reassign to author + env: + GITEA_TOKEN: ${{ secrets.RODIN_TOKEN }} + run: | + PR_NUMBER=${{ github.event.pull_request.number }} + AUTHOR=${{ github.event.pull_request.user.login }} + SELF_REVIEWED_LABEL_ID=37 + + # Remove self-reviewed label if present + curl -sS -X DELETE \ + -H "Authorization: token $GITEA_TOKEN" \ + "https://gitea.weiker.me/api/v1/repos/${{ github.repository }}/issues/${PR_NUMBER}/labels/${SELF_REVIEWED_LABEL_ID}" || true + + # Reassign to author + curl -sS -X PATCH \ + -H "Authorization: token $GITEA_TOKEN" \ + -H "Content-Type: application/json" \ + -d "{\"assignees\": [\"${AUTHOR}\"]}" \ + "https://gitea.weiker.me/api/v1/repos/${{ github.repository }}/pulls/${PR_NUMBER}" + + echo "Cleared self-reviewed label and reassigned PR #${PR_NUMBER} to ${AUTHOR}"