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, 'release-[0-9]+.x.x']
5
5
pull_request :
6
6
branches :
7
7
- ' **'
8
8
paths-ignore :
9
9
- ' **/**.md'
10
10
env :
11
- NODE_VERSION : 19.3.0
11
+ NODE_VERSION : 20.11.1
12
12
PARSE_SERVER_TEST_TIMEOUT : 20000
13
13
jobs :
14
14
check-code-analysis :
@@ -21,29 +21,29 @@ jobs:
21
21
strategy :
22
22
fail-fast : false
23
23
matrix :
24
- language : [ 'javascript' ]
24
+ language : ['javascript']
25
25
steps :
26
- - name : Checkout repository
27
- uses : actions/checkout@v3
28
- - name : Initialize CodeQL
29
- uses : github/codeql-action/init@v2
30
- with :
31
- languages : ${{ matrix.language }}
32
- source-root : src
33
- - name : Perform CodeQL Analysis
34
- uses : github/codeql-action/analyze@v2
26
+ - name : Checkout repository
27
+ uses : actions/checkout@v4
28
+ - name : Initialize CodeQL
29
+ uses : github/codeql-action/init@v2
30
+ with :
31
+ languages : ${{ matrix.language }}
32
+ source-root : src
33
+ - name : Perform CodeQL Analysis
34
+ uses : github/codeql-action/analyze@v2
35
35
check-ci :
36
36
name : Node Engine Check
37
37
timeout-minutes : 15
38
38
runs-on : ubuntu-latest
39
39
steps :
40
- - uses : actions/checkout@v2
40
+ - uses : actions/checkout@v4
41
41
- name : Use Node.js ${{ matrix.NODE_VERSION }}
42
- uses : actions/setup-node@v2
42
+ uses : actions/setup-node@v4
43
43
with :
44
44
node-version : ${{ matrix.node-version }}
45
45
- name : Cache Node.js modules
46
- uses : actions/cache@v2
46
+ uses : actions/cache@v4
47
47
with :
48
48
path : ~/.npm
49
49
key : ${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-${{ hashFiles('**/package-lock.json') }}
@@ -54,37 +54,37 @@ jobs:
54
54
- name : CI Node Engine Check
55
55
run : npm run ci:checkNodeEngine
56
56
check-lint :
57
- name : Lint
58
- timeout-minutes : 15
59
- runs-on : ubuntu-latest
60
- steps :
61
- - uses : actions/checkout@v2
62
- - name : Use Node.js ${{ matrix.NODE_VERSION }}
63
- uses : actions/setup-node@v2
64
- with :
65
- node-version : ${{ matrix.node-version }}
66
- - name : Cache Node.js modules
67
- uses : actions/cache@v2
68
- with :
69
- path : ~/.npm
70
- key : ${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-${{ hashFiles('**/package-lock.json') }}
71
- restore-keys : |
72
- ${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-
73
- - name : Install dependencies
74
- run : npm ci
75
- - run : npm run lint
57
+ name : Lint
58
+ timeout-minutes : 15
59
+ runs-on : ubuntu-latest
60
+ steps :
61
+ - uses : actions/checkout@v4
62
+ - name : Use Node.js ${{ matrix.NODE_VERSION }}
63
+ uses : actions/setup-node@v4
64
+ with :
65
+ node-version : ${{ matrix.node-version }}
66
+ - name : Cache Node.js modules
67
+ uses : actions/cache@v4
68
+ with :
69
+ path : ~/.npm
70
+ key : ${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-${{ hashFiles('**/package-lock.json') }}
71
+ restore-keys : |
72
+ ${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-
73
+ - name : Install dependencies
74
+ run : npm ci
75
+ - run : npm run lint
76
76
check-definitions :
77
- name : Check Definitions
78
- timeout-minutes : 5
79
- runs-on : ubuntu-latest
80
- steps :
81
- - uses : actions/checkout@v2
77
+ name : Check Definitions
78
+ timeout-minutes : 5
79
+ runs-on : ubuntu-latest
80
+ steps :
81
+ - uses : actions/checkout@v4
82
82
- name : Use Node.js ${{ matrix.NODE_VERSION }}
83
- uses : actions/setup-node@v2
83
+ uses : actions/setup-node@v4
84
84
with :
85
85
node-version : ${{ matrix.node-version }}
86
86
- name : Cache Node.js modules
87
- uses : actions/cache@v2
87
+ uses : actions/cache@v4
88
88
with :
89
89
path : ~/.npm
90
90
key : ${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-${{ hashFiles('**/package-lock.json') }}
@@ -95,48 +95,48 @@ jobs:
95
95
- name : CI Definitions Check
96
96
run : npm run ci:definitionsCheck
97
97
check-circular :
98
- name : Circular Dependencies
99
- timeout-minutes : 5
100
- runs-on : ubuntu-latest
101
- steps :
102
- - uses : actions/checkout@v2
103
- - name : Use Node.js ${{ matrix.NODE_VERSION }}
104
- uses : actions/setup-node@v2
105
- with :
106
- node-version : ${{ matrix.node-version }}
107
- - name : Cache Node.js modules
108
- uses : actions/cache@v2
109
- with :
110
- path : ~/.npm
111
- key : ${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-${{ hashFiles('**/package-lock.json') }}
112
- restore-keys : |
113
- ${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-
114
- - name : Install dependencies
115
- run : npm ci
116
- - run : npm run madge:circular
98
+ name : Circular Dependencies
99
+ timeout-minutes : 5
100
+ runs-on : ubuntu-latest
101
+ steps :
102
+ - uses : actions/checkout@v4
103
+ - name : Use Node.js ${{ matrix.NODE_VERSION }}
104
+ uses : actions/setup-node@v4
105
+ with :
106
+ node-version : ${{ matrix.node-version }}
107
+ - name : Cache Node.js modules
108
+ uses : actions/cache@v4
109
+ with :
110
+ path : ~/.npm
111
+ key : ${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-${{ hashFiles('**/package-lock.json') }}
112
+ restore-keys : |
113
+ ${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-
114
+ - name : Install dependencies
115
+ run : npm ci
116
+ - run : npm run madge:circular
117
117
check-docker :
118
118
name : Docker Build
119
119
timeout-minutes : 15
120
120
runs-on : ubuntu-latest
121
121
steps :
122
122
- name : Checkout repository
123
- uses : actions/checkout@v2
123
+ uses : actions/checkout@v4
124
124
- name : Set up QEMU
125
125
id : qemu
126
- uses : docker/setup-qemu-action@v1
126
+ uses : docker/setup-qemu-action@v2
127
127
- name : Set up Docker Buildx
128
- uses : docker/setup-buildx-action@v1
128
+ uses : docker/setup-buildx-action@v2
129
129
- name : Build docker image
130
- uses : docker/build-push-action@v2
130
+ uses : docker/build-push-action@v3
131
131
with :
132
132
context : .
133
- platforms : linux/amd64
133
+ platforms : linux/amd64, linux/arm64/v8
134
134
check-lock-file-version :
135
135
name : NPM Lock File Version
136
136
timeout-minutes : 5
137
137
runs-on : ubuntu-latest
138
138
steps :
139
- - uses : actions/checkout@v2
139
+ - uses : actions/checkout@v4
140
140
- name : Check NPM lock file version
141
141
uses : mansona/npm-lockfile-version@v1
142
142
with :
@@ -147,37 +147,33 @@ jobs:
147
147
include :
148
148
- name : MongoDB 4.2, ReplicaSet
149
149
MONGODB_VERSION : 4.2.19
150
- MONGODB_TOPOLOGY : replicaset
151
- NODE_VERSION : 19.3.0
150
+ MONGODB_TOPOLOGY : replset
151
+ NODE_VERSION : 20.11.1
152
152
- name : MongoDB 4.4, ReplicaSet
153
153
MONGODB_VERSION : 4.4.13
154
- MONGODB_TOPOLOGY : replicaset
155
- NODE_VERSION : 19.3.0
154
+ MONGODB_TOPOLOGY : replset
155
+ NODE_VERSION : 20.11.1
156
156
- name : MongoDB 5, ReplicaSet
157
157
MONGODB_VERSION : 5.3.2
158
- MONGODB_TOPOLOGY : replicaset
159
- NODE_VERSION : 19.3.0
158
+ MONGODB_TOPOLOGY : replset
159
+ NODE_VERSION : 20.11.1
160
160
- name : MongoDB 6, ReplicaSet
161
161
MONGODB_VERSION : 6.0.2
162
- MONGODB_TOPOLOGY : replicaset
163
- NODE_VERSION : 19.3.0
162
+ MONGODB_TOPOLOGY : replset
163
+ NODE_VERSION : 20.11.1
164
+ - name : MongoDB 7, ReplicaSet
165
+ MONGODB_VERSION : 7.0.1
166
+ MONGODB_TOPOLOGY : replset
167
+ NODE_VERSION : 20.11.1
164
168
- name : Redis Cache
165
169
PARSE_SERVER_TEST_CACHE : redis
166
170
MONGODB_VERSION : 4.4.13
167
171
MONGODB_TOPOLOGY : standalone
168
- NODE_VERSION : 19.3.0
169
- - name : Node 14
170
- MONGODB_VERSION : 4.4.13
171
- MONGODB_TOPOLOGY : standalone
172
- NODE_VERSION : 14.21.1
173
- - name : Node 16
174
- MONGODB_VERSION : 4.4.13
175
- MONGODB_TOPOLOGY : standalone
176
- NODE_VERSION : 16.18.1
172
+ NODE_VERSION : 20.11.1
177
173
- name : Node 18
178
174
MONGODB_VERSION : 4.4.13
179
175
MONGODB_TOPOLOGY : standalone
180
- NODE_VERSION : 18.12 .1
176
+ NODE_VERSION : 18.19 .1
181
177
fail-fast : false
182
178
name : ${{ matrix.name }}
183
179
timeout-minutes : 15
@@ -186,7 +182,7 @@ jobs:
186
182
redis :
187
183
image : redis
188
184
ports :
189
- - 6379:6379
185
+ - 6379:6379
190
186
env :
191
187
MONGODB_VERSION : ${{ matrix.MONGODB_VERSION }}
192
188
MONGODB_TOPOLOGY : ${{ matrix.MONGODB_TOPOLOGY }}
@@ -196,16 +192,13 @@ jobs:
196
192
steps :
197
193
- name : Fix usage of insecure GitHub protocol
198
194
run : sudo git config --system url."https://github".insteadOf "git://github"
199
- - name : Fix git protocol for Node 14
200
- if : ${{ startsWith(matrix.NODE_VERSION, '14.') }}
201
- run : sudo git config --system url."https://github".insteadOf "ssh://git@github"
202
- - uses : actions/checkout@v2
195
+ - uses : actions/checkout@v4
203
196
- name : Use Node.js ${{ matrix.NODE_VERSION }}
204
- uses : actions/setup-node@v2
197
+ uses : actions/setup-node@v4
205
198
with :
206
199
node-version : ${{ matrix.NODE_VERSION }}
207
200
- name : Cache Node.js modules
208
- uses : actions/cache@v2
201
+ uses : actions/cache@v4
209
202
with :
210
203
path : ~/.npm
211
204
key : ${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-${{ hashFiles('**/package-lock.json') }}
@@ -222,30 +215,27 @@ jobs:
222
215
strategy :
223
216
matrix :
224
217
include :
225
- - name : PostgreSQL 11, PostGIS 3.0
226
- POSTGRES_IMAGE : postgis/postgis:11-3.0
227
- NODE_VERSION : 19.3.0
228
- - name : PostgreSQL 11, PostGIS 3.1
229
- POSTGRES_IMAGE : postgis/postgis:11-3.1
230
- NODE_VERSION : 19.3.0
231
- - name : PostgreSQL 11, PostGIS 3.2
232
- POSTGRES_IMAGE : postgis/postgis:11-3.2
233
- NODE_VERSION : 19.3.0
234
- - name : PostgreSQL 11, PostGIS 3.3
235
- POSTGRES_IMAGE : postgis/postgis:11-3.3
236
- NODE_VERSION : 19.3.0
237
- - name : PostgreSQL 12, PostGIS 3.3
238
- POSTGRES_IMAGE : postgis/postgis:12-3.3
239
- NODE_VERSION : 19.3.0
218
+ - name : PostgreSQL 13, PostGIS 3.1
219
+ POSTGRES_IMAGE : postgis/postgis:13-3.1
220
+ NODE_VERSION : 20.11.1
221
+ - name : PostgreSQL 13, PostGIS 3.2
222
+ POSTGRES_IMAGE : postgis/postgis:13-3.2
223
+ NODE_VERSION : 20.11.1
240
224
- name : PostgreSQL 13, PostGIS 3.3
241
225
POSTGRES_IMAGE : postgis/postgis:13-3.3
242
- NODE_VERSION : 19.3.0
243
- - name : PostgreSQL 14, PostGIS 3.3
244
- POSTGRES_IMAGE : postgis/postgis:14-3.3
245
- NODE_VERSION : 19.3.0
246
- - name : PostgreSQL 15, PostGIS 3.3
247
- POSTGRES_IMAGE : postgis/postgis:15-3.3
248
- NODE_VERSION : 19.3.0
226
+ NODE_VERSION : 20.11.1
227
+ - name : PostgreSQL 13, PostGIS 3.4
228
+ POSTGRES_IMAGE : postgis/postgis:13-3.4
229
+ NODE_VERSION : 20.11.1
230
+ - name : PostgreSQL 14, PostGIS 3.4
231
+ POSTGRES_IMAGE : postgis/postgis:14-3.4
232
+ NODE_VERSION : 20.11.1
233
+ - name : PostgreSQL 15, PostGIS 3.4
234
+ POSTGRES_IMAGE : postgis/postgis:15-3.4
235
+ NODE_VERSION : 20.11.1
236
+ - name : PostgreSQL 16, PostGIS 3.4
237
+ POSTGRES_IMAGE : postgis/postgis:15-3.4
238
+ NODE_VERSION : 20.11.1
249
239
fail-fast : false
250
240
name : ${{ matrix.name }}
251
241
timeout-minutes : 15
@@ -271,13 +261,13 @@ jobs:
271
261
PARSE_SERVER_TEST_DATABASE_URI : postgres://postgres:postgres@localhost:5432/parse_server_postgres_adapter_test_database
272
262
NODE_VERSION : ${{ matrix.NODE_VERSION }}
273
263
steps :
274
- - uses : actions/checkout@v2
264
+ - uses : actions/checkout@v4
275
265
- name : Use Node.js ${{ matrix.NODE_VERSION }}
276
- uses : actions/setup-node@v2
266
+ uses : actions/setup-node@v4
277
267
with :
278
268
node-version : ${{ matrix.NODE_VERSION }}
279
269
- name : Cache Node.js modules
280
- uses : actions/cache@v2
270
+ uses : actions/cache@v4
281
271
with :
282
272
path : ~/.npm
283
273
key : ${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-${{ hashFiles('**/package-lock.json') }}
0 commit comments