mirror of
https://github.com/supabase/supabase.git
synced 2026-06-02 10:55:11 +08:00
## I have read the [CONTRIBUTING.md](https://github.com/supabase/supabase/blob/master/CONTRIBUTING.md) file. YES ## What kind of change does this PR introduce? CI / tooling — GitHub Actions workflow update. ## What is the current behavior? PRs that modify `packages/api-types/types/**` can be merged before the corresponding API has shipped to production, breaking the Studio frontend when it calls endpoints that do not exist yet. The `api-deploy-required` label is enforced only by convention and code review, which is easy to miss. ## What is the new behavior? - `.github/labeler.yml`: auto-applies `api-deploy-required` to any PR that touches `packages/api-types/types/**`. - `.github/workflows/label_prs.yml`: drops the `apps/docs/**/*` path filter so the labeler runs on all PRs, and posts a one-time comment when `api-deploy-required` is newly added (uses the labeler's `new-labels` output so re-pushes do not re-comment). - `.github/workflows/validate-pr.yml`: adds a step that fails the `Validate pull request` check while the `api-deploy-required` label is present, mirroring the existing `do-not-merge` pattern. The author removes the label after confirming the API is live to unblock merge. Reviewer: please confirm `Validate pull request` is configured as a required check on `master` in branch protection — that step is what enforces the block. ## Additional context Resolves FE-3479 <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Chores** * Enhanced pull request automation with improved labeling rules for API-related changes. * Added validation that blocks pull request merging until API deployment is confirmed for changes affecting API types. <!-- review_stack_entry_start --> [](https://app.coderabbit.ai/change-stack/supabase/supabase/pull/46482?utm_source=github_walkthrough&utm_medium=github&utm_campaign=change_stack) <!-- review_stack_entry_end --> <!-- end of auto-generated comment: release notes by coderabbit.ai -->
30 lines
872 B
YAML
30 lines
872 B
YAML
name: Validate pull request
|
|
|
|
# This workflow will trigger the authorize-vercel-deploys workflow when it's finished.
|
|
on:
|
|
pull_request:
|
|
types: [opened, labeled, unlabeled, synchronize, ready_for_review]
|
|
|
|
permissions: {}
|
|
|
|
jobs:
|
|
validate-pr:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Tagged with 'do not merge'
|
|
if: contains( github.event.pull_request.labels.*.name, 'do-not-merge')
|
|
run: |
|
|
echo "PR blocked: [tag: do not merge]"
|
|
exit 1
|
|
|
|
- name: Tagged with 'api-deploy-required'
|
|
if: contains( github.event.pull_request.labels.*.name, 'api-deploy-required')
|
|
run: |
|
|
echo "PR blocked: [tag: api-deploy-required] — confirm the API is deployed in production, then remove the label."
|
|
exit 1
|
|
|
|
- name: All good
|
|
if: ${{ success() }}
|
|
run: |
|
|
echo "All good"
|