Skip to content

Commit f807277

Browse files
committed
refactor(example): migrate all example workflows to prebuilt deployment
- Add vercel pull -> vercel build -> vercel deploy --prebuilt flow - Add pnpm/node setup steps where missing - Remove vercel-org-id input (now set via env vars in pull step) - Separate preview/production builds with conditional steps - Replace shell script for prod_or_not with explicit conditional build steps
1 parent 3c572bd commit f807277

4 files changed

Lines changed: 152 additions & 31 deletions

File tree

.github/workflows/example-angular.yml

Lines changed: 36 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -10,43 +10,67 @@ jobs:
1010
runs-on: ubuntu-latest
1111
steps:
1212
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
13-
- uses: pnpm/action-setup@fc06bc1257f339d1d5d8b3a19a8cae5388b55320 # v5.0.0
13+
14+
- name: Setup pnpm
15+
uses: pnpm/action-setup@fc06bc1257f339d1d5d8b3a19a8cae5388b55320 # v5.0.0
1416
with:
1517
version: 10.15.0
1618

17-
- name: Install Node.js
19+
- name: Setup Node.js
1820
uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
1921
with:
2022
node-version: 24
2123
cache: pnpm
2224

23-
- name: build
24-
run: |
25-
cd example/angular
26-
pnpm install --frozen-lockfile
27-
pnpm exec ng build --prod
25+
- name: Install dependencies
26+
run: pnpm install --frozen-lockfile
27+
working-directory: example/angular
2828
env:
2929
NODE_OPTIONS: --openssl-legacy-provider
3030

31+
- name: Pull Vercel environment
32+
run: pnpm exec vercel pull --yes --token=${VERCEL_TOKEN}
33+
working-directory: example/angular
34+
env:
35+
VERCEL_ORG_ID: ${{ secrets.VERCEL_ORG_ID }}
36+
VERCEL_PROJECT_ID: ${{ secrets.VERCEL_PROJECT_ID_ANGULAR }}
37+
VERCEL_TOKEN: ${{ secrets.VERCEL_TOKEN }}
38+
39+
- name: Build (preview)
40+
if: github.event_name == 'pull_request_target'
41+
run: pnpm exec vercel build
42+
working-directory: example/angular
43+
env:
44+
VERCEL_ORG_ID: ${{ secrets.VERCEL_ORG_ID }}
45+
VERCEL_PROJECT_ID: ${{ secrets.VERCEL_PROJECT_ID_ANGULAR }}
46+
NODE_OPTIONS: --openssl-legacy-provider
3147
- uses: ./
3248
id: vercel-action-staging
3349
if: github.event_name == 'pull_request_target'
3450
with:
3551
github-token: ${{ secrets.GITHUB_TOKEN }}
3652
vercel-token: ${{ secrets.VERCEL_TOKEN }}
37-
vercel-org-id: ${{ secrets.VERCEL_ORG_ID }}
3853
vercel-project-id: ${{ secrets.VERCEL_PROJECT_ID_ANGULAR }}
39-
working-directory: example/angular/dist/angular
54+
vercel-args: --prebuilt
55+
working-directory: example/angular
4056
alias-domains: |
4157
staging.angular.vercel-action.amond.dev
4258
pr-{{PR_NUMBER}}.angular.vercel-action.amond.dev
59+
60+
- name: Build (production)
61+
if: github.event_name == 'push'
62+
run: pnpm exec vercel build --prod
63+
working-directory: example/angular
64+
env:
65+
VERCEL_ORG_ID: ${{ secrets.VERCEL_ORG_ID }}
66+
VERCEL_PROJECT_ID: ${{ secrets.VERCEL_PROJECT_ID_ANGULAR }}
67+
NODE_OPTIONS: --openssl-legacy-provider
4368
- uses: ./
4469
id: vercel-action-production
4570
if: github.event_name == 'push'
4671
with:
4772
github-token: ${{ secrets.GITHUB_TOKEN }}
4873
vercel-token: ${{ secrets.VERCEL_TOKEN }}
49-
vercel-org-id: ${{ secrets.VERCEL_ORG_ID }}
5074
vercel-project-id: ${{ secrets.VERCEL_PROJECT_ID_ANGULAR }}
51-
working-directory: example/angular/dist/angular
52-
vercel-args: '--prod '
75+
vercel-args: --prod --prebuilt
76+
working-directory: example/angular

.github/workflows/example-express-basic-auth.yml

Lines changed: 39 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,22 +10,58 @@ jobs:
1010
runs-on: ubuntu-latest
1111
steps:
1212
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
13+
14+
- name: Setup pnpm
15+
uses: pnpm/action-setup@fc06bc1257f339d1d5d8b3a19a8cae5388b55320 # v5.0.0
16+
with:
17+
version: 10.15.0
18+
19+
- name: Setup Node.js
20+
uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
21+
with:
22+
node-version: 24
23+
cache: pnpm
24+
25+
- name: Pull Vercel environment
26+
run: |
27+
pnpm install --frozen-lockfile
28+
pnpm exec vercel pull --yes --token=${VERCEL_TOKEN}
29+
working-directory: example/express-basic-auth
30+
env:
31+
VERCEL_ORG_ID: ${{ secrets.VERCEL_ORG_ID }}
32+
VERCEL_PROJECT_ID: ${{ secrets.VERCEL_PROJECT_ID_AUTH }}
33+
VERCEL_TOKEN: ${{ secrets.VERCEL_TOKEN }}
34+
35+
- name: Build (preview)
36+
if: github.event_name == 'pull_request_target'
37+
run: pnpm exec vercel build
38+
working-directory: example/express-basic-auth
39+
env:
40+
VERCEL_ORG_ID: ${{ secrets.VERCEL_ORG_ID }}
41+
VERCEL_PROJECT_ID: ${{ secrets.VERCEL_PROJECT_ID_AUTH }}
1342
- uses: ./
1443
id: now-deployment-staging
1544
if: github.event_name == 'pull_request_target'
1645
with:
1746
github-token: ${{ secrets.GITHUB_TOKEN }}
1847
vercel-token: ${{ secrets.VERCEL_TOKEN }}
19-
vercel-org-id: ${{ secrets.VERCEL_ORG_ID }}
2048
vercel-project-id: ${{ secrets.VERCEL_PROJECT_ID_AUTH }}
49+
vercel-args: --prebuilt
2150
working-directory: example/express-basic-auth
51+
52+
- name: Build (production)
53+
if: github.event_name == 'push'
54+
run: pnpm exec vercel build --prod
55+
working-directory: example/express-basic-auth
56+
env:
57+
VERCEL_ORG_ID: ${{ secrets.VERCEL_ORG_ID }}
58+
VERCEL_PROJECT_ID: ${{ secrets.VERCEL_PROJECT_ID_AUTH }}
2259
- uses: ./
2360
id: now-deployment-production
2461
if: github.event_name == 'push'
2562
with:
2663
github-token: ${{ secrets.GITHUB_TOKEN }}
2764
vercel-token: ${{ secrets.VERCEL_TOKEN }}
28-
vercel-org-id: ${{ secrets.VERCEL_ORG_ID }}
2965
vercel-project-id: ${{ secrets.VERCEL_PROJECT_ID_AUTH }}
30-
vercel-args: --prod
66+
vercel-args: --prod --prebuilt
3167
working-directory: example/express-basic-auth

.github/workflows/example-scope.yml

Lines changed: 39 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,24 +10,60 @@ jobs:
1010
runs-on: ubuntu-latest
1111
steps:
1212
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
13+
14+
- name: Setup pnpm
15+
uses: pnpm/action-setup@fc06bc1257f339d1d5d8b3a19a8cae5388b55320 # v5.0.0
16+
with:
17+
version: 10.15.0
18+
19+
- name: Setup Node.js
20+
uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
21+
with:
22+
node-version: 24
23+
cache: pnpm
24+
25+
- name: Pull Vercel environment
26+
run: |
27+
pnpm install --frozen-lockfile
28+
pnpm exec vercel pull --yes --token=${VERCEL_TOKEN}
29+
working-directory: example/team-scope
30+
env:
31+
VERCEL_ORG_ID: ${{ secrets.VERCEL_ORG_ID_TEAM_SCOPE }}
32+
VERCEL_PROJECT_ID: ${{ secrets.VERCEL_PROJECT_ID_TEAM_SCOPE }}
33+
VERCEL_TOKEN: ${{ secrets.VERCEL_TOKEN }}
34+
35+
- name: Build (preview)
36+
if: github.event_name == 'pull_request_target'
37+
run: pnpm exec vercel build
38+
working-directory: example/team-scope
39+
env:
40+
VERCEL_ORG_ID: ${{ secrets.VERCEL_ORG_ID_TEAM_SCOPE }}
41+
VERCEL_PROJECT_ID: ${{ secrets.VERCEL_PROJECT_ID_TEAM_SCOPE }}
1342
- uses: ./
1443
id: now-deployment-staging
1544
if: github.event_name == 'pull_request_target'
1645
with:
1746
github-token: ${{ secrets.GITHUB_TOKEN }}
1847
vercel-token: ${{ secrets.VERCEL_TOKEN }}
19-
vercel-org-id: ${{ secrets.VERCEL_ORG_ID_TEAM_SCOPE }}
2048
vercel-project-id: ${{ secrets.VERCEL_PROJECT_ID_TEAM_SCOPE }}
49+
vercel-args: --prebuilt
2150
working-directory: example/team-scope
2251
scope: ${{ secrets.VERCEL_SCOPE }}
52+
53+
- name: Build (production)
54+
if: github.event_name == 'push'
55+
run: pnpm exec vercel build --prod
56+
working-directory: example/team-scope
57+
env:
58+
VERCEL_ORG_ID: ${{ secrets.VERCEL_ORG_ID_TEAM_SCOPE }}
59+
VERCEL_PROJECT_ID: ${{ secrets.VERCEL_PROJECT_ID_TEAM_SCOPE }}
2360
- uses: ./
2461
id: now-deployment-production
2562
if: github.event_name == 'push'
2663
with:
2764
github-token: ${{ secrets.GITHUB_TOKEN }}
2865
vercel-token: ${{ secrets.VERCEL_TOKEN }}
29-
vercel-org-id: ${{ secrets.VERCEL_ORG_ID_TEAM_SCOPE }}
3066
vercel-project-id: ${{ secrets.VERCEL_PROJECT_ID_TEAM_SCOPE }}
31-
vercel-args: --prod
67+
vercel-args: --prod --prebuilt
3268
scope: ${{ secrets.VERCEL_SCOPE }}
3369
working-directory: example/team-scope

.github/workflows/example-static.yml

Lines changed: 38 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -11,38 +11,63 @@ jobs:
1111
runs-on: ubuntu-latest
1212
steps:
1313
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
14+
15+
- name: Setup pnpm
16+
uses: pnpm/action-setup@fc06bc1257f339d1d5d8b3a19a8cae5388b55320 # v5.0.0
17+
with:
18+
version: 10.15.0
19+
20+
- name: Setup Node.js
21+
uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
22+
with:
23+
node-version: 24
24+
cache: pnpm
25+
26+
- name: Pull Vercel environment
27+
run: |
28+
pnpm install --frozen-lockfile
29+
pnpm exec vercel pull --yes --token=${VERCEL_TOKEN}
30+
working-directory: example/static
31+
env:
32+
VERCEL_ORG_ID: ${{ secrets.VERCEL_ORG_ID }}
33+
VERCEL_PROJECT_ID: ${{ secrets.VERCEL_PROJECT_ID_STATIC }}
34+
VERCEL_TOKEN: ${{ secrets.VERCEL_TOKEN }}
35+
36+
- name: Build (preview)
37+
if: github.event_name == 'pull_request_target'
38+
run: pnpm exec vercel build
39+
working-directory: example/static
40+
env:
41+
VERCEL_ORG_ID: ${{ secrets.VERCEL_ORG_ID }}
42+
VERCEL_PROJECT_ID: ${{ secrets.VERCEL_PROJECT_ID_STATIC }}
1443
- uses: ./
1544
id: now-deployment-staging
1645
if: github.event_name == 'pull_request_target'
1746
with:
1847
github-token: ${{ secrets.GITHUB_TOKEN }}
1948
vercel-token: ${{ secrets.VERCEL_TOKEN }}
20-
vercel-org-id: ${{ secrets.VERCEL_ORG_ID }}
2149
vercel-project-id: ${{ secrets.VERCEL_PROJECT_ID_STATIC }}
50+
vercel-args: --prebuilt
2251
working-directory: example/static
2352
alias-domains: |
2453
staging.static.vercel-action.amond.dev
2554
pr-{{PR_NUMBER}}.static.vercel-action.amond.dev
26-
- name: production or not
27-
id: prod_or_not
28-
run: |
29-
if [ "$REF" == 'refs/heads/master' ]
30-
then
31-
echo "vercel-args=--prod" >> $GITHUB_OUTPUT
32-
else
33-
echo "vercel-args=" >> $GITHUB_OUTPUT
34-
fi
55+
56+
- name: Build (production)
57+
if: github.event_name == 'push'
58+
run: pnpm exec vercel build --prod
59+
working-directory: example/static
3560
env:
36-
REF: ${{ github.ref }}
61+
VERCEL_ORG_ID: ${{ secrets.VERCEL_ORG_ID }}
62+
VERCEL_PROJECT_ID: ${{ secrets.VERCEL_PROJECT_ID_STATIC }}
3763
- uses: ./
3864
id: now-deployment-production
3965
if: github.event_name == 'push'
4066
with:
4167
github-token: ${{ secrets.GITHUB_TOKEN }}
4268
vercel-token: ${{ secrets.VERCEL_TOKEN }}
43-
vercel-org-id: ${{ secrets.VERCEL_ORG_ID }}
4469
vercel-project-id: ${{ secrets.VERCEL_PROJECT_ID_STATIC }}
45-
vercel-args: ${{ steps.prod_or_not.outputs.vercel-args }}
70+
vercel-args: --prod --prebuilt
4671
working-directory: example/static
4772
alias-domains: |
4873
{{BRANCH}}.static.vercel-action.amond.dev

0 commit comments

Comments
 (0)