1
1
name : ci-rsc
2
+
3
+ permissions : {}
4
+
2
5
on :
6
+ workflow_dispatch :
3
7
push :
4
8
branches :
5
9
- main
17
21
test :
18
22
runs-on : ubuntu-latest
19
23
steps :
20
- - uses : actions/checkout@v4
24
+ - uses : actions/checkout@v5
21
25
- uses : actions/setup-node@v4
22
26
with :
23
27
node-version : 22
@@ -28,34 +32,55 @@ jobs:
28
32
- run : pnpm -C packages/plugin-rsc test
29
33
30
34
test-e2e :
31
- name : test-rsc (${{ matrix.os }} / ${{ matrix.browser }})
35
+ name : test-rsc (${{ matrix.os }} / ${{ matrix.browser }}) ${{ matrix.rolldown == true && '(rolldown)' || '' }} ${{ matrix.react_version && format('(react-{0})', matrix.react_version) || '' }}
32
36
runs-on : ${{ matrix.os }}
33
37
strategy :
34
- # TODO: shard?
35
38
matrix :
36
39
os : [ubuntu-latest, macos-latest, windows-latest]
37
40
browser : [chromium]
41
+ rolldown : [false]
42
+ react_version : [""]
38
43
include :
39
44
- os : ubuntu-latest
40
45
browser : firefox
41
46
- os : macos-latest
42
47
browser : webkit
48
+ - os : ubuntu-latest
49
+ browser : chromium
50
+ rolldown : true
51
+ - os : ubuntu-latest
52
+ browser : chromium
53
+ react_version : canary
54
+ - os : ubuntu-latest
55
+ browser : chromium
56
+ react_version : experimental
43
57
fail-fast : false
44
58
steps :
45
- - uses : actions/checkout@v4
59
+ - uses : actions/checkout@v5
46
60
- uses : actions/setup-node@v4
47
61
with :
48
62
node-version : 22
49
63
- uses : pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0
50
64
- run : pnpm i
65
+ - name : install react
66
+ if : ${{ matrix.react_version }}
67
+ run : |
68
+ sed -i "/^overrides:/a\ react: \"${{ matrix.react_version }}\"" pnpm-workspace.yaml
69
+ sed -i "/^overrides:/a\ react-dom: \"${{ matrix.react_version }}\"" pnpm-workspace.yaml
70
+ sed -i "/^overrides:/a\ react-server-dom-webpack: \"${{ matrix.react_version }}\"" pnpm-workspace.yaml
71
+ pnpm i --no-frozen-lockfile
51
72
- run : pnpm build
73
+ - name : install rolldown
74
+ if : ${{ matrix.rolldown }}
75
+ run : |
76
+ sed -i '/^overrides:/a\ vite: "npm:rolldown-vite@latest"' pnpm-workspace.yaml
77
+ pnpm i --no-frozen-lockfile
52
78
- run : pnpm -C packages/plugin-rsc exec playwright install ${{ matrix.browser }}
53
79
- run : pnpm -C packages/plugin-rsc test-e2e-ci --project=${{ matrix.browser }}
54
- env :
55
- TEST_ISOLATED : true
56
80
- uses : actions/upload-artifact@v4
57
81
if : always()
58
82
with :
59
- name : test-results-${{ matrix.os }}-${{ matrix.browser }}
83
+ name : test-results-${{ matrix.os }}-${{ matrix.browser }}${{ matrix.rolldown == true && '-rolldown' || '' }}${{ matrix.react_version && format('-react-{0}', matrix.react_version) || '' }}
60
84
path : |
61
85
packages/plugin-rsc/test-results
86
+ if-no-files-found : ignore
0 commit comments