feat: add reusable GitHub Actions workflows#1
Merged
Conversation
Add four reusable workflows for use across Supabase repositories: 1. block-merge.yml - Prevents merging of WIP/draft PRs - Blocks draft PRs - Blocks PRs with specific labels (configurable) - Blocks PRs with keywords in title (configurable) 2. stale.yml - Manages stale issues and PRs - Configurable timelines for issues vs PRs - Exempts labeled/assigned items - Different handling for different label categories 3. label-issues.yml - Auto-labels issues and PRs - Extracts scope from conventional commit PR titles - Parses issue templates for affected modules - Supports custom label mappings via JSON input 4. slack-notify.yml - Sends rich Slack notifications - Supports success/failure/info statuses - Includes repository, workflow, and commit info - Action buttons for quick access Also updated README with comprehensive documentation including: - Usage examples for each workflow - Input parameter documentation - Best practices for versioning and permissions - Contributing guidelines These workflows can now be consumed by supabase-swift, supabase-js, and other Supabase repositories using the workflow_call pattern. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
grdsdev
added a commit
to supabase/supabase-js
that referenced
this pull request
Jan 21, 2026
Refactor CI workflows to use shared reusable workflows from the supabase/actions repository, standardizing patterns across Supabase repos. Changes: 1. block-merge.yml - Now uses supabase/actions/.github/workflows/block-merge.yml - Same functionality, simplified implementation - Prevents merging of draft PRs, PRs with do-not-merge label, or WIP in title 2. label-issues.yml - Now uses supabase/actions/.github/workflows/label-issues.yml - Extracts scope from conventional commit PR titles - Labels: auth-js, functions-js, postgrest-js, storage-js, realtime-js, supabase-js - Simplified from 107 lines to 26 lines Kept as-is: - stale.yml - Has sophisticated multi-tier stale handling specific to this repo - slack-notify.yml - Already a reusable workflow, uses repo-specific secrets - Other workflows (ci.yml, docs.yml, publish.yml, etc.) - Repo-specific logic Benefits: - Easier maintenance (single source of truth) - Consistent behavior across Supabase repositories - Automatic updates when supabase/actions workflows improve - Reduced duplication Related: - Reusable workflows: supabase/actions#1 - supabase-swift adoption: supabase/supabase-swift#887 Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
3 tasks
mandarini
approved these changes
Jan 21, 2026
staaldraad
approved these changes
Jan 21, 2026
This file contains hidden or 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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR adds four reusable GitHub Actions workflows that can be shared across Supabase repositories, reducing duplication and standardizing common CI/CD patterns.
New Reusable Workflows
1. Block WIP/Draft Merges (
.github/workflows/block-merge.yml)Prevents accidental merging of incomplete work by blocking:
do-not-merge)wip,do not merge)2. Stale Issue Management (
.github/workflows/stale.yml)Automatically manages inactive issues and PRs with:
3. Auto-Label Issues and PRs (
.github/workflows/label-issues.yml)Automatically applies labels based on content:
fix(auth):→authlabel)4. Slack Notifications (
.github/workflows/slack-notify.yml)Sends rich Slack notifications with:
Benefits
workflow_callUsage Example
Documentation
Comprehensive README updated with:
Testing Plan
After merge, these workflows will be tested by integrating them into:
Related
This supports the ongoing effort to standardize CI/CD practices across Supabase repositories and was developed based on patterns from supabase-js.
Co-Authored-By: Claude Sonnet 4.5 noreply@anthropic.com