1
1
name : ci
2
2
on :
3
3
push :
4
- branches : [release, alpha, beta, next-major, 'release-[0-9]+.x.x' ]
4
+ branches : [ release, alpha, beta, next-major ]
5
5
pull_request :
6
6
branches :
7
7
- ' **'
8
- paths-ignore :
9
- - ' **/**.md'
10
8
env :
11
- NODE_VERSION : 22.4.1
9
+ NODE_VERSION : 16.13.0
12
10
PARSE_SERVER_TEST_TIMEOUT : 20000
13
- permissions :
14
- actions : write
15
11
jobs :
16
- check-code-analysis :
17
- name : Code Analysis
18
- runs-on : ubuntu-latest
19
- permissions :
20
- actions : read
21
- contents : read
22
- security-events : write
23
- strategy :
24
- fail-fast : false
25
- matrix :
26
- language : ['javascript']
27
- steps :
28
- - name : Checkout repository
29
- uses : actions/checkout@v4
30
- - name : Initialize CodeQL
31
- uses : github/codeql-action/init@v2
32
- with :
33
- languages : ${{ matrix.language }}
34
- source-root : src
35
- - name : Perform CodeQL Analysis
36
- uses : github/codeql-action/analyze@v2
37
12
check-ci :
38
13
name : Node Engine Check
39
14
timeout-minutes : 15
40
- runs-on : ubuntu-latest
41
- steps :
42
- - uses : actions/checkout@v4
43
- - name : Use Node.js ${{ matrix.NODE_VERSION }}
44
- uses : actions/setup-node@v4
45
- with :
46
- node-version : ${{ matrix.node-version }}
47
- - name : Install prod dependencies
48
- run : npm ci
49
- - name : Remove dev dependencies
50
- run : ./ci/uninstallDevDeps.sh @actions/core
51
- - name : CI Node Engine Check
52
- run : npm run ci:checkNodeEngine
53
- check-lint :
54
- name : Lint
55
- timeout-minutes : 15
56
- runs-on : ubuntu-latest
57
- steps :
58
- - uses : actions/checkout@v4
59
- - name : Use Node.js ${{ matrix.NODE_VERSION }}
60
- uses : actions/setup-node@v4
61
- with :
62
- node-version : ${{ matrix.node-version }}
63
- - name : Cache Node.js modules
64
- uses : actions/cache@v4
65
- with :
66
- path : ~/.npm
67
- key : ${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-${{ hashFiles('**/package-lock.json') }}
68
- restore-keys : |
69
- ${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-
70
- - name : Install dependencies
71
- run : npm ci
72
- - run : npm run lint
73
- check-definitions :
74
- name : Check Definitions
75
- timeout-minutes : 5
76
- runs-on : ubuntu-latest
15
+ runs-on : ubuntu-18.04
77
16
steps :
78
- - uses : actions/checkout@v4
17
+ - uses : actions/checkout@v2
79
18
- name : Use Node.js ${{ matrix.NODE_VERSION }}
80
- uses : actions/setup-node@v4
19
+ uses : actions/setup-node@v2
81
20
with :
82
21
node-version : ${{ matrix.node-version }}
83
22
- name : Cache Node.js modules
84
- uses : actions/cache@v4
23
+ uses : actions/cache@v2
85
24
with :
86
25
path : ~/.npm
87
26
key : ${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-${{ hashFiles('**/package-lock.json') }}
88
27
restore-keys : |
89
28
${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-
90
29
- name : Install dependencies
91
30
run : npm ci
92
- - name : CI Definitions Check
93
- run : npm run ci:definitionsCheck
31
+ - name : CI Node Engine Check
32
+ run : npm run ci:checkNodeEngine
33
+ check-lint :
34
+ name : Lint
35
+ timeout-minutes : 15
36
+ runs-on : ubuntu-18.04
37
+ steps :
38
+ - uses : actions/checkout@v2
39
+ - name : Use Node.js ${{ matrix.NODE_VERSION }}
40
+ uses : actions/setup-node@v2
41
+ with :
42
+ node-version : ${{ matrix.node-version }}
43
+ - name : Cache Node.js modules
44
+ uses : actions/cache@v2
45
+ with :
46
+ path : ~/.npm
47
+ key : ${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-${{ hashFiles('**/package-lock.json') }}
48
+ restore-keys : |
49
+ ${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-
50
+ - name : Install dependencies
51
+ run : npm ci
52
+ - run : npm run lint
94
53
check-circular :
95
- name : Circular Dependencies
96
- timeout-minutes : 5
97
- runs-on : ubuntu-latest
98
- steps :
99
- - uses : actions/checkout@v4
100
- - name : Use Node.js ${{ matrix.NODE_VERSION }}
101
- uses : actions/setup-node@v4
102
- with :
103
- node-version : ${{ matrix.node-version }}
104
- - name : Cache Node.js modules
105
- uses : actions/cache@v4
106
- with :
107
- path : ~/.npm
108
- key : ${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-${{ hashFiles('**/package-lock.json') }}
109
- restore-keys : |
110
- ${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-
111
- - name : Install dependencies
112
- run : npm ci
113
- - run : npm run madge:circular
54
+ name : Circular Dependencies
55
+ timeout-minutes : 5
56
+ runs-on : ubuntu-18.04
57
+ steps :
58
+ - uses : actions/checkout@v2
59
+ - name : Use Node.js ${{ matrix.NODE_VERSION }}
60
+ uses : actions/setup-node@v2
61
+ with :
62
+ node-version : ${{ matrix.node-version }}
63
+ - name : Cache Node.js modules
64
+ uses : actions/cache@v2
65
+ with :
66
+ path : ~/.npm
67
+ key : ${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-${{ hashFiles('**/package-lock.json') }}
68
+ restore-keys : |
69
+ ${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-
70
+ - name : Install dependencies
71
+ run : npm ci
72
+ - run : npm run madge:circular
114
73
check-docker :
115
74
name : Docker Build
116
75
timeout-minutes : 15
117
- runs-on : ubuntu-latest
76
+ runs-on : ubuntu-18.04
118
77
steps :
119
78
- name : Checkout repository
120
- uses : actions/checkout@v4
79
+ uses : actions/checkout@v2
121
80
- name : Set up QEMU
122
81
id : qemu
123
- uses : docker/setup-qemu-action@v2
82
+ uses : docker/setup-qemu-action@v1
124
83
- name : Set up Docker Buildx
125
- uses : docker/setup-buildx-action@v2
84
+ uses : docker/setup-buildx-action@v1
126
85
- name : Build docker image
127
- uses : docker/build-push-action@v3
86
+ uses : docker/build-push-action@v2
128
87
with :
129
88
context : .
130
- platforms : linux/amd64, linux/arm64/v8
89
+ platforms : linux/amd64
131
90
check-lock-file-version :
132
91
name : NPM Lock File Version
133
92
timeout-minutes : 5
134
- runs-on : ubuntu-latest
93
+ runs-on : ubuntu-18.04
135
94
steps :
136
- - uses : actions/checkout@v4
95
+ - uses : actions/checkout@v2
137
96
- name : Check NPM lock file version
138
97
uses : mansona/npm-lockfile-version@v1
139
98
with :
140
- version : 2
99
+ version : 1
141
100
check-mongo :
142
101
strategy :
143
102
matrix :
144
103
include :
145
- - name : MongoDB 5.2, ReplicaSet, WiredTiger
146
- MONGODB_VERSION : 5.2.1
147
- MONGODB_TOPOLOGY : replicaset
148
- MONGODB_STORAGE_ENGINE : wiredTiger
149
- NODE_VERSION : 14.18.1
150
104
- name : MongoDB 5.1, ReplicaSet, WiredTiger
151
- MONGODB_VERSION : 5.1.1
105
+ MONGODB_VERSION : 5.1.0
152
106
MONGODB_TOPOLOGY : replicaset
153
107
MONGODB_STORAGE_ENGINE : wiredTiger
154
108
NODE_VERSION : 14.18.1
155
109
- name : MongoDB 5.0, ReplicaSet, WiredTiger
156
- MONGODB_VERSION : 5.0.6
110
+ MONGODB_VERSION : 5.0.3
157
111
MONGODB_TOPOLOGY : replicaset
158
112
MONGODB_STORAGE_ENGINE : wiredTiger
159
113
NODE_VERSION : 16.13.0
@@ -179,42 +133,43 @@ jobs:
179
133
NODE_VERSION : 16.13.0
180
134
- name : Redis Cache
181
135
PARSE_SERVER_TEST_CACHE : redis
182
- MONGODB_VERSION : 8.0.0
136
+ MONGODB_VERSION : 4.4.10
183
137
MONGODB_TOPOLOGY : standalone
184
- NODE_VERSION : 22.4.1
185
- - name : Node 20
186
- MONGODB_VERSION : 8.0.0
138
+ MONGODB_STORAGE_ENGINE : wiredTiger
139
+ NODE_VERSION : 16.13.0
140
+ - name : Node 12
141
+ MONGODB_VERSION : 4.4.10
187
142
MONGODB_TOPOLOGY : standalone
188
- NODE_VERSION : 20.15.1
189
- - name : Node 18
190
- MONGODB_VERSION : 8.0.0
143
+ MONGODB_STORAGE_ENGINE : wiredTiger
144
+ NODE_VERSION : 12.22.7
145
+ - name : Node 14
146
+ MONGODB_VERSION : 4.4.10
191
147
MONGODB_TOPOLOGY : standalone
192
- NODE_VERSION : 18.20.4
148
+ MONGODB_STORAGE_ENGINE : wiredTiger
149
+ NODE_VERSION : 14.18.1
193
150
fail-fast : false
194
151
name : ${{ matrix.name }}
195
- timeout-minutes : 20
196
- runs-on : ubuntu-latest
152
+ timeout-minutes : 15
153
+ runs-on : ubuntu-18.04
197
154
services :
198
155
redis :
199
156
image : redis
200
157
ports :
201
- - 6379:6379
202
- env :
158
+ - 6379:6379
159
+ env :
203
160
MONGODB_VERSION : ${{ matrix.MONGODB_VERSION }}
204
161
MONGODB_TOPOLOGY : ${{ matrix.MONGODB_TOPOLOGY }}
205
162
MONGODB_STORAGE_ENGINE : ${{ matrix.MONGODB_STORAGE_ENGINE }}
206
163
PARSE_SERVER_TEST_CACHE : ${{ matrix.PARSE_SERVER_TEST_CACHE }}
207
164
NODE_VERSION : ${{ matrix.NODE_VERSION }}
208
165
steps :
209
- - name : Fix usage of insecure GitHub protocol
210
- run : sudo git config --system url."https://github".insteadOf "git://github"
211
- - uses : actions/checkout@v4
166
+ - uses : actions/checkout@v2
212
167
- name : Use Node.js ${{ matrix.NODE_VERSION }}
213
- uses : actions/setup-node@v4
168
+ uses : actions/setup-node@v2
214
169
with :
215
170
node-version : ${{ matrix.NODE_VERSION }}
216
171
- name : Cache Node.js modules
217
- uses : actions/cache@v4
172
+ uses : actions/cache@v2
218
173
with :
219
174
path : ~/.npm
220
175
key : ${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-${{ hashFiles('**/package-lock.json') }}
@@ -226,47 +181,33 @@ jobs:
226
181
- run : npm run coverage
227
182
env :
228
183
CI : true
229
- - name : Upload code coverage
230
- uses : codecov/codecov-action@v4
231
- with :
232
- # Set to `true` once codecov token bug is fixed; https://github.com/parse-community/parse-server/issues/9129
233
- fail_ci_if_error : false
234
- token : ${{ secrets.CODECOV_TOKEN }}
184
+ - run : bash <(curl -s https://codecov.io/bash)
235
185
check-postgres :
236
186
strategy :
237
187
matrix :
238
188
include :
239
- - name : PostgreSQL 13, PostGIS 3.1
240
- POSTGRES_IMAGE : postgis/postgis:13-3.1
241
- NODE_VERSION : 22.4.1
189
+ - name : PostgreSQL 11, PostGIS 3.0
190
+ POSTGRES_IMAGE : postgis/postgis:11-3.0
191
+ NODE_VERSION : 16.13.0
192
+ - name : PostgreSQL 11, PostGIS 3.1
193
+ POSTGRES_IMAGE : postgis/postgis:11-3.1
194
+ NODE_VERSION : 16.13.0
195
+ - name : PostgreSQL 11, PostGIS 3.2
196
+ POSTGRES_IMAGE : postgis/postgis:11-3.2
197
+ NODE_VERSION : 16.13.0
198
+ - name : PostgreSQL 12, PostGIS 3.2
199
+ POSTGRES_IMAGE : postgis/postgis:12-3.2
200
+ NODE_VERSION : 16.13.0
242
201
- name : PostgreSQL 13, PostGIS 3.2
243
202
POSTGRES_IMAGE : postgis/postgis:13-3.2
244
- NODE_VERSION : 22.4.1
245
- - name : PostgreSQL 13, PostGIS 3.3
246
- POSTGRES_IMAGE : postgis/postgis:13-3.3
247
- NODE_VERSION : 22.4.1
248
- - name : PostgreSQL 13, PostGIS 3.4
249
- POSTGRES_IMAGE : postgis/postgis:13-3.4
250
- NODE_VERSION : 22.4.1
251
- - name : PostgreSQL 13, PostGIS 3.5
252
- POSTGRES_IMAGE : postgis/postgis:13-3.5
253
- NODE_VERSION : 22.4.1
254
- - name : PostgreSQL 14, PostGIS 3.5
255
- POSTGRES_IMAGE : postgis/postgis:14-3.5
256
- NODE_VERSION : 22.4.1
257
- - name : PostgreSQL 15, PostGIS 3.5
258
- POSTGRES_IMAGE : postgis/postgis:15-3.5
259
- NODE_VERSION : 22.4.1
260
- - name : PostgreSQL 16, PostGIS 3.5
261
- POSTGRES_IMAGE : postgis/postgis:16-3.5
262
- NODE_VERSION : 22.4.1
263
- - name : PostgreSQL 17, PostGIS 3.5
264
- POSTGRES_IMAGE : postgis/postgis:17-3.5
265
- NODE_VERSION : 22.4.1
203
+ NODE_VERSION : 16.13.0
204
+ - name : PostgreSQL 14, PostGIS 3.2
205
+ POSTGRES_IMAGE : postgis/postgis:14-3.2
206
+ NODE_VERSION : 16.13.0
266
207
fail-fast : false
267
208
name : ${{ matrix.name }}
268
- timeout-minutes : 20
269
- runs-on : ubuntu-latest
209
+ timeout-minutes : 15
210
+ runs-on : ubuntu-18.04
270
211
services :
271
212
redis :
272
213
image : redis
@@ -288,13 +229,13 @@ jobs:
288
229
PARSE_SERVER_TEST_DATABASE_URI : postgres://postgres:postgres@localhost:5432/parse_server_postgres_adapter_test_database
289
230
NODE_VERSION : ${{ matrix.NODE_VERSION }}
290
231
steps :
291
- - uses : actions/checkout@v4
232
+ - uses : actions/checkout@v2
292
233
- name : Use Node.js ${{ matrix.NODE_VERSION }}
293
- uses : actions/setup-node@v4
234
+ uses : actions/setup-node@v2
294
235
with :
295
236
node-version : ${{ matrix.NODE_VERSION }}
296
237
- name : Cache Node.js modules
297
- uses : actions/cache@v4
238
+ uses : actions/cache@v2
298
239
with :
299
240
path : ~/.npm
300
241
key : ${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-${{ hashFiles('**/package-lock.json') }}
@@ -308,13 +249,4 @@ jobs:
308
249
- run : npm run coverage
309
250
env :
310
251
CI : true
311
- - name : Upload code coverage
312
- uses : codecov/codecov-action@v4
313
- with :
314
- fail_ci_if_error : false
315
- token : ${{ secrets.CODECOV_TOKEN }}
316
- env :
317
- CODECOV_TOKEN : ${{ secrets.CODECOV_TOKEN }}
318
- concurrency :
319
- group : ${{ github.workflow }}-${{ github.ref }}
320
- cancel-in-progress : true
252
+ - run : bash <(curl -s https://codecov.io/bash)
0 commit comments