6
6
push :
7
7
branches :
8
8
- v2
9
+ - debug
9
10
10
11
permissions :
11
12
contents : read
12
13
13
14
jobs :
14
- lint :
15
- name : Lint
16
- runs-on : ubuntu-latest
17
- steps :
18
- - uses : actions/checkout@v4
19
- - uses : actions/setup-node@v4
20
- with :
21
- cache : yarn
22
- - uses : dtolnay/rust-toolchain@master
23
- with :
24
- toolchain : stable
25
- components : rustfmt
26
- # use `--frozen-lockfile` to fail immediately if the committed yarn.lock needs updates
27
- # https://yarnpkg.com/lang/en/docs/cli/install/#toc-yarn-install-frozen-lockfile
28
- - run : yarn --frozen-lockfile
29
- - run : yarn lint
15
+ # lint:
16
+ # name: Lint
17
+ # runs-on: ubuntu-latest
18
+ # steps:
19
+ # - uses: actions/checkout@v4
20
+ # - uses: actions/setup-node@v4
21
+ # with:
22
+ # cache: yarn
23
+ # - uses: dtolnay/rust-toolchain@master
24
+ # with:
25
+ # toolchain: stable
26
+ # components: rustfmt
27
+ # # use `--frozen-lockfile` to fail immediately if the committed yarn.lock needs updates
28
+ # # https://yarnpkg.com/lang/en/docs/cli/install/#toc-yarn-install-frozen-lockfile
29
+ # - run: yarn --frozen-lockfile
30
+ # - run: yarn lint
30
31
31
- flow :
32
- name : Flow
33
- runs-on : ubuntu-latest
34
- steps :
35
- - uses : actions/checkout@v4
36
- - uses : actions/setup-node@v4
37
- with :
38
- cache : yarn
39
- - run : yarn --frozen-lockfile
40
- - run : yarn flow check
32
+ # flow:
33
+ # name: Flow
34
+ # runs-on: ubuntu-latest
35
+ # steps:
36
+ # - uses: actions/checkout@v4
37
+ # - uses: actions/setup-node@v4
38
+ # with:
39
+ # cache: yarn
40
+ # - run: yarn --frozen-lockfile
41
+ # - run: yarn flow check
41
42
42
- ts-types :
43
- name : TypeScript types
44
- runs-on : ubuntu-latest
45
- steps :
46
- - uses : actions/checkout@v4
47
- - uses : actions/setup-node@v4
48
- with :
49
- cache : yarn
50
- - run : yarn --frozen-lockfile
51
- - run : yarn build-ts
43
+ # ts-types:
44
+ # name: TypeScript types
45
+ # runs-on: ubuntu-latest
46
+ # steps:
47
+ # - uses: actions/checkout@v4
48
+ # - uses: actions/setup-node@v4
49
+ # with:
50
+ # cache: yarn
51
+ # - run: yarn --frozen-lockfile
52
+ # - run: yarn build-ts
52
53
53
- benchmarks :
54
- name : Benchmarks
55
- runs-on : ubuntu-latest
56
- steps :
57
- - name : PR Benchmarks
58
- uses : parcel-bundler/parcel-benchmark-action@master
59
- env :
60
- PARCEL_BENCHMARK_APIKEY : ${{ secrets.PARCEL_BENCHMARK_APIKEY }}
54
+ # benchmarks:
55
+ # name: Benchmarks
56
+ # runs-on: ubuntu-latest
57
+ # steps:
58
+ # - name: PR Benchmarks
59
+ # uses: parcel-bundler/parcel-benchmark-action@master
60
+ # env:
61
+ # PARCEL_BENCHMARK_APIKEY: ${{ secrets.PARCEL_BENCHMARK_APIKEY }}
61
62
62
- unit_tests :
63
- name : Unit tests (${{ matrix.os }}, Node ${{ matrix.node }})
64
- strategy :
65
- matrix :
66
- node : [18, 20]
67
- os : [ubuntu-latest, macos-latest, windows-latest]
68
- runs-on : ${{ matrix.os }}
69
- steps :
70
- - uses : actions/checkout@v4
71
- - uses : actions/setup-node@v4
72
- with :
73
- cache : yarn
74
- node-version : ${{ matrix.node }}
75
- - uses : dtolnay/rust-toolchain@master
76
- with :
77
- toolchain : stable
78
- - uses : Swatinem/rust-cache@v2
79
- with :
80
- shared-key : ${{ matrix.os }}
81
- - name : Bump max inotify watches (Linux only)
82
- if : ${{ runner.os == 'Linux' }}
83
- run : echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p;
84
- - run : yarn --frozen-lockfile
85
- - run : yarn build-native-release
86
- - run : yarn test:unit
87
- - name : Upload @parcel/rust artifacts on Linux with Node v20
88
- if : ${{ runner.os == 'Linux' && matrix.node == 20 }}
89
- uses : actions/upload-artifact@v4
90
- with :
91
- name : Rust Linux Binaries
92
- path : |
93
- packages/core/rust/index.d.ts
94
- packages/core/rust/index.js
95
- packages/core/rust/*.node
63
+ # unit_tests:
64
+ # name: Unit tests (${{ matrix.os }}, Node ${{ matrix.node }})
65
+ # strategy:
66
+ # matrix:
67
+ # node: [18, 20]
68
+ # os: [ubuntu-latest, macos-latest, windows-latest]
69
+ # runs-on: ${{ matrix.os }}
70
+ # steps:
71
+ # - uses: actions/checkout@v4
72
+ # - uses: actions/setup-node@v4
73
+ # with:
74
+ # cache: yarn
75
+ # node-version: ${{ matrix.node }}
76
+ # - uses: dtolnay/rust-toolchain@master
77
+ # with:
78
+ # toolchain: stable
79
+ # - uses: Swatinem/rust-cache@v2
80
+ # with:
81
+ # shared-key: ${{ matrix.os }}
82
+ # - name: Bump max inotify watches (Linux only)
83
+ # if: ${{ runner.os == 'Linux' }}
84
+ # run: echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p;
85
+ # - run: yarn --frozen-lockfile
86
+ # - run: yarn build-native-release
87
+ # - run: yarn test:unit
88
+ # - name: Upload @parcel/rust artifacts on Linux with Node v20
89
+ # if: ${{ runner.os == 'Linux' && matrix.node == 20 }}
90
+ # uses: actions/upload-artifact@v4
91
+ # with:
92
+ # name: Rust Linux Binaries
93
+ # path: |
94
+ # packages/core/rust/index.d.ts
95
+ # packages/core/rust/index.js
96
+ # packages/core/rust/*.node
96
97
97
98
integration_tests :
98
99
name : Integration tests (${{ matrix.os }}, Node ${{ matrix.node }})
99
100
strategy :
100
101
matrix :
101
102
node : [18, 20]
102
- os : [ubuntu-latest, macos-latest, windows-latest]
103
+ os : [windows-latest]
103
104
# These tend to be quite flakey, so one failed instance shouldn't stop
104
105
# others from potentially succeeding
105
106
fail-fast : false
@@ -122,76 +123,78 @@ jobs:
122
123
- run : yarn --frozen-lockfile
123
124
- run : yarn build-native-release
124
125
- run : yarn build
126
+ - name : Setup tmate session
127
+ uses : mxschmitt/action-tmate@v3
125
128
- run : yarn test:integration-ci
126
129
127
130
# Deployment steps taken from https://github.com/colinwilson/static-site-to-vercel/blob/master/.github/workflows/deploy-preview.yml
128
- repl_build :
129
- name : Build REPL
130
- if : ${{ github.event_name == 'pull_request' }}
131
- runs-on : ubuntu-latest
132
- permissions :
133
- deployments : write
134
- steps :
135
- - uses : actions/checkout@v4
136
- - uses : actions/setup-node@v4
137
- with :
138
- cache : yarn
139
- node-version : 20
140
- - uses : dtolnay/rust-toolchain@master
141
- with :
142
- toolchain : stable
143
- targets : wasm32-unknown-unknown
144
- - name : Install wasm-opt
145
- run : |
146
- curl -L -O https://github.com/WebAssembly/binaryen/releases/download/version_116/binaryen-version_116-x86_64-linux.tar.gz
147
- tar -xf binaryen-version_116-x86_64-linux.tar.gz
148
- echo "$PWD/binaryen-version_116/bin" >> $GITHUB_PATH
149
- - uses : Swatinem/rust-cache@v2
150
- with :
151
- key : wasm
152
- - name : Bump max inotify watches
153
- run : echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p;
154
- - run : yarn --frozen-lockfile
155
- - name : Build native packages
156
- run : yarn build-native-release
157
- - run : yarn build
158
- - run : yarn build-native-wasm
159
- - run : yarn workspace @parcel/repl build
160
- # - name: Upload REPL
161
- # uses: actions/upload-artifact@v4
162
- # with:
163
- # name: REPL
164
- # path: 'packages/dev/repl/dist'
165
- - name : Start Deployment
166
- uses : bobheadxi/deployments@v1
167
- id : deployment
168
- with :
169
- step : start
170
- token : ${{ secrets.GITHUB_TOKEN }}
171
- ref : ${{ github.head_ref }}
172
- env : Preview
173
- override : false
174
- - name : Deploy to Vercel
175
- uses : amondnet/vercel-action@v25
176
- id : vercel-action
177
- with :
178
- vercel-token : ${{ secrets.REPL_VERCEL_TOKEN }}
179
- vercel-org-id : ${{ secrets.REPL_VERCEL_ORG_ID }}
180
- vercel-project-id : ${{ secrets.REPL_VERCEL_PROJECT_ID }}
181
- github-comment : false
182
- working-directory : packages/dev/repl
183
- # vercel-args: '--prod'
184
- scope : parcel
185
- alias-domains : |
186
- pr-{{PR_NUMBER}}.repl.parceljs.org
187
- - name : Update Deployment Status
188
- uses : bobheadxi/deployments@v1
189
- if : always()
190
- with :
191
- step : finish
192
- token : ${{ secrets.GITHUB_TOKEN }}
193
- env : Preview
194
- override : false
195
- status : ${{ job.status }}
196
- deployment_id : ${{ steps.deployment.outputs.deployment_id }}
197
- env_url : ${{ steps.vercel-action.outputs.preview-url }}
131
+ # repl_build:
132
+ # name: Build REPL
133
+ # if: ${{ github.event_name == 'pull_request' }}
134
+ # runs-on: ubuntu-latest
135
+ # permissions:
136
+ # deployments: write
137
+ # steps:
138
+ # - uses: actions/checkout@v4
139
+ # - uses: actions/setup-node@v4
140
+ # with:
141
+ # cache: yarn
142
+ # node-version: 20
143
+ # - uses: dtolnay/rust-toolchain@master
144
+ # with:
145
+ # toolchain: stable
146
+ # targets: wasm32-unknown-unknown
147
+ # - name: Install wasm-opt
148
+ # run: |
149
+ # curl -L -O https://github.com/WebAssembly/binaryen/releases/download/version_116/binaryen-version_116-x86_64-linux.tar.gz
150
+ # tar -xf binaryen-version_116-x86_64-linux.tar.gz
151
+ # echo "$PWD/binaryen-version_116/bin" >> $GITHUB_PATH
152
+ # - uses: Swatinem/rust-cache@v2
153
+ # with:
154
+ # key: wasm
155
+ # - name: Bump max inotify watches
156
+ # run: echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p;
157
+ # - run: yarn --frozen-lockfile
158
+ # - name: Build native packages
159
+ # run: yarn build-native-release
160
+ # - run: yarn build
161
+ # - run: yarn build-native-wasm
162
+ # - run: yarn workspace @parcel/repl build
163
+ # # - name: Upload REPL
164
+ # # uses: actions/upload-artifact@v4
165
+ # # with:
166
+ # # name: REPL
167
+ # # path: 'packages/dev/repl/dist'
168
+ # - name: Start Deployment
169
+ # uses: bobheadxi/deployments@v1
170
+ # id: deployment
171
+ # with:
172
+ # step: start
173
+ # token: ${{ secrets.GITHUB_TOKEN }}
174
+ # ref: ${{ github.head_ref }}
175
+ # env: Preview
176
+ # override: false
177
+ # - name: Deploy to Vercel
178
+ # uses: amondnet/vercel-action@v25
179
+ # id: vercel-action
180
+ # with:
181
+ # vercel-token: ${{ secrets.REPL_VERCEL_TOKEN }}
182
+ # vercel-org-id: ${{ secrets.REPL_VERCEL_ORG_ID }}
183
+ # vercel-project-id: ${{ secrets.REPL_VERCEL_PROJECT_ID }}
184
+ # github-comment: false
185
+ # working-directory: packages/dev/repl
186
+ # # vercel-args: '--prod'
187
+ # scope: parcel
188
+ # alias-domains: |
189
+ # pr-{{PR_NUMBER}}.repl.parceljs.org
190
+ # - name: Update Deployment Status
191
+ # uses: bobheadxi/deployments@v1
192
+ # if: always()
193
+ # with:
194
+ # step: finish
195
+ # token: ${{ secrets.GITHUB_TOKEN }}
196
+ # env: Preview
197
+ # override: false
198
+ # status: ${{ job.status }}
199
+ # deployment_id: ${{ steps.deployment.outputs.deployment_id }}
200
+ # env_url: ${{ steps.vercel-action.outputs.preview-url }}
0 commit comments