Skip to content

Commit eae61bf

Browse files
committed
chore: move all npm ops to beta workflow
1 parent e2992a3 commit eae61bf

File tree

3 files changed

+44
-79
lines changed

3 files changed

+44
-79
lines changed

.github/workflows/release-beta.yml

Lines changed: 32 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,13 +14,17 @@ permissions:
1414

1515
jobs:
1616
approved:
17+
name: fast-forward
1718
if: |
1819
github.event.pull_request.head.ref == 'develop' &&
1920
github.event.pull_request.base.ref == 'main' &&
2021
github.event.review.state == 'approved'
2122
runs-on: ubuntu-latest
2223
permissions:
2324
contents: write
25+
packages: write
26+
outputs:
27+
release_tag: ${{ steps.latest-release.outputs.tagName }}
2428
steps:
2529
- uses: actions/checkout@v6
2630
with:
@@ -29,21 +33,46 @@ jobs:
2933
git checkout main
3034
git merge --ff-only "${{ github.event.pull_request.head.sha }}"
3135
git push origin main
36+
- id: latest-release
37+
run: |
38+
latest=$(gh release list --limit 1 --json tagName --jq '.[].tagName')
39+
gh release edit $latest --latest --prerelease=false
40+
echo "tagName=$latest" >> $GITHUB_OUTPUT
41+
env:
42+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
3243

33-
deploy:
44+
tag:
45+
name: Move latest tag
3446
needs:
3547
- approved
48+
runs-on: ubuntu-latest
3649
permissions:
37-
contents: write
38-
packages: write
50+
contents: read
3951
# Required for npm OIDC
4052
id-token: write
53+
steps:
54+
- uses: actions/checkout@v6
55+
- uses: actions/setup-node@v6
56+
with:
57+
node-version: latest
58+
registry-url: https://registry.npmjs.org
59+
- run: npm dist-tag add "supabase@${RELEASE_TAG#v}" latest
60+
env:
61+
RELEASE_TAG: ${{ needs.approved.outputs.release_tag }}
62+
63+
deploy:
64+
needs:
65+
- approved
66+
- tag
4167
# Call workflow explicitly because events from actions cannot trigger more actions
4268
uses: ./.github/workflows/release.yml
69+
with:
70+
release: ${{ needs.approved.outputs.release_tag }}
4371
secrets: inherit
4472

4573
release:
4674
name: semantic-release
75+
if: ${{ github.event_name != 'pull_request_review' }}
4776
runs-on: ubuntu-latest
4877
permissions:
4978
contents: write

.github/workflows/release.yml

Lines changed: 12 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -1,36 +1,24 @@
11
name: Release
22

33
on:
4-
push:
5-
branches:
6-
- main
74
workflow_call:
5+
inputs:
6+
release:
7+
required: true
8+
type: string
9+
workflow_dispatch:
10+
inputs:
11+
release:
12+
description: "v1.0.0"
13+
required: true
14+
type: string
815

916
permissions:
1017
contents: read
1118

1219
jobs:
13-
settings:
14-
runs-on: ubuntu-latest
15-
permissions:
16-
contents: write
17-
packages: write
18-
env:
19-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
20-
outputs:
21-
release_tag: ${{ steps.prerelease.outputs.tagName }}
22-
steps:
23-
- uses: actions/checkout@v6
24-
- id: prerelease
25-
run: |
26-
gh release list --limit 1 --json tagName --jq \
27-
'.[]|to_entries|map("\(.key)=\(.value|tostring)")|.[]' >> $GITHUB_OUTPUT
28-
- run: gh release edit ${{ steps.prerelease.outputs.tagName }} --latest --prerelease=false
29-
3020
commit:
3121
name: Publish Brew and Scoop
32-
needs:
33-
- settings
3422
runs-on: ubuntu-latest
3523
steps:
3624
- uses: actions/checkout@v6
@@ -47,26 +35,12 @@ jobs:
4735
repositories: |
4836
homebrew-tap
4937
scoop-bucket
50-
- run: go run tools/publish/main.go ${{ needs.settings.outputs.release_tag }}
38+
- run: go run tools/publish/main.go ${{ inputs.release }}
5139
env:
5240
GITHUB_TOKEN: ${{ steps.app-token.outputs.token }}
5341

54-
publish:
55-
name: Publish NPM
56-
needs:
57-
- settings
58-
permissions:
59-
contents: read
60-
id-token: write
61-
uses: ./.github/workflows/tag-npm.yml
62-
with:
63-
release: ${{ needs.settings.outputs.release_tag }}
64-
secrets: inherit
65-
6642
compose:
6743
name: Bump self-hosted versions
68-
needs:
69-
- settings
7044
runs-on: ubuntu-latest
7145
steps:
7246
- uses: actions/checkout@v6
@@ -89,9 +63,7 @@ jobs:
8963
changelog:
9064
name: Publish changelog
9165
needs:
92-
- settings
9366
- commit
94-
- publish
9567
runs-on: ubuntu-latest
9668
steps:
9769
- uses: actions/checkout@v6
@@ -114,8 +86,6 @@ jobs:
11486

11587
docs:
11688
name: Publish reference docs
117-
needs:
118-
- settings
11989
runs-on: ubuntu-latest
12090
steps:
12191
- uses: actions/checkout@v6
@@ -131,6 +101,6 @@ jobs:
131101
owner: ${{ github.repository_owner }}
132102
repositories: |
133103
supabase
134-
- run: go run docs/main.go ${{ needs.settings.outputs.release_tag }} | go run tools/bumpdoc/main.go apps/docs/spec/cli_v1_commands.yaml
104+
- run: go run docs/main.go ${{ inputs.release }} | go run tools/bumpdoc/main.go apps/docs/spec/cli_v1_commands.yaml
135105
env:
136106
GITHUB_TOKEN: ${{ steps.app-token.outputs.token }}

.github/workflows/tag-npm.yml

Lines changed: 0 additions & 34 deletions
This file was deleted.

0 commit comments

Comments
 (0)