Skip to content

Commit af88212

Browse files
grdsdevclaude
andauthored
feat(ci): integrate reusable CI workflows from supabase/actions (#1299)
* feat(ci): integrate reusable CI workflows from supabase/actions Adds three reusable workflows to standardize CI processes: - block-merge: Prevents merging of WIP/draft PRs and those with do-not-merge labels - stale: Automates management of inactive issues (180 days) and PRs (90 days) - label-issues: Auto-labels issues and PRs based on module scope from conventional commits These workflows align with the CI patterns used across other Supabase client libraries (supabase-swift, supabase-js) and reduce maintenance burden through shared workflow definitions. Closes SDK-624 Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com> * ci: use full commit sha hash for reusable actions --------- Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
1 parent 207ed5f commit af88212

File tree

3 files changed

+69
-0
lines changed

3 files changed

+69
-0
lines changed

.github/workflows/block-merge.yml

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
name: Block WIP/Draft Merges
2+
3+
on:
4+
pull_request:
5+
types:
6+
- opened
7+
- edited
8+
- synchronize
9+
- reopened
10+
- ready_for_review
11+
- labeled
12+
- unlabeled
13+
14+
jobs:
15+
block-merge:
16+
uses: supabase/actions/.github/workflows/block-merge.yml@659b3cd74a64ee2f1ca0a527922f134707e54671
17+
with:
18+
block_labels: "do-not-merge,blocked"
19+
block_keywords: "wip,do not merge"

.github/workflows/label-issues.yml

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
name: Auto-Label Issues and PRs
2+
3+
on:
4+
pull_request:
5+
types:
6+
- opened
7+
- edited
8+
issues:
9+
types:
10+
- opened
11+
- edited
12+
13+
jobs:
14+
label:
15+
uses: supabase/actions/.github/workflows/label-issues.yml@659b3cd74a64ee2f1ca0a527922f134707e54671
16+
with:
17+
label_mappings: |
18+
{
19+
"gotrue": "auth",
20+
"auth": "auth",
21+
"storage": "storage",
22+
"storage_client": "storage",
23+
"realtime": "realtime",
24+
"realtime_client": "realtime",
25+
"postgrest": "postgrest",
26+
"functions": "functions",
27+
"functions_client": "functions",
28+
"auth_ui": "auth-ui",
29+
"supabase": "supabase",
30+
"supabase_flutter": "supabase_flutter"
31+
}

.github/workflows/stale.yml

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
name: Manage Stale Issues and PRs
2+
3+
on:
4+
schedule:
5+
# Run every Sunday at 00:00 UTC
6+
- cron: "0 0 * * 0"
7+
workflow_dispatch:
8+
9+
jobs:
10+
stale:
11+
uses: supabase/actions/.github/workflows/stale.yml@659b3cd74a64ee2f1ca0a527922f134707e54671
12+
with:
13+
days_before_issue_stale: 180
14+
days_before_issue_close: 30
15+
days_before_pr_stale: 90
16+
days_before_pr_close: 14
17+
exempt_issue_labels: "priority,security,planned,good first issue"
18+
exempt_pr_labels: "priority,security"
19+
operations_per_run: 100

0 commit comments

Comments
 (0)