7
7
branches :
8
8
- ' **'
9
9
env :
10
- COVERAGE_OPTION : ./node_modules/.bin/nyc
11
- NODE_VERSION : 10
10
+ NODE_VERSION : 14.16.1
12
11
PARSE_SERVER_TEST_TIMEOUT : 20000
13
12
jobs :
13
+ check-ci :
14
+ name : CI Self-Check
15
+ timeout-minutes : 15
16
+ runs-on : ubuntu-18.04
17
+ steps :
18
+ - uses : actions/checkout@v2
19
+ - name : Use Node.js ${{ matrix.NODE_VERSION }}
20
+ uses : actions/setup-node@v1
21
+ with :
22
+ node-version : ${{ matrix.node-version }}
23
+ - name : Cache Node.js modules
24
+ uses : actions/cache@v2
25
+ with :
26
+ path : ~/.npm
27
+ key : ${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-${{ hashFiles('**/package-lock.json') }}
28
+ restore-keys : |
29
+ ${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-
30
+ - name : Install dependencies
31
+ run : npm ci
32
+ - name : CI Self-Check
33
+ run : npm run ci:check
34
+ check-lint :
35
+ name : Lint
36
+ timeout-minutes : 15
37
+ runs-on : ubuntu-18.04
38
+ steps :
39
+ - uses : actions/checkout@v2
40
+ - name : Use Node.js ${{ matrix.NODE_VERSION }}
41
+ uses : actions/setup-node@v1
42
+ with :
43
+ node-version : ${{ matrix.node-version }}
44
+ - name : Cache Node.js modules
45
+ uses : actions/cache@v2
46
+ with :
47
+ path : ~/.npm
48
+ key : ${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-${{ hashFiles('**/package-lock.json') }}
49
+ restore-keys : |
50
+ ${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-
51
+ - name : Install dependencies
52
+ run : npm ci
53
+ - run : npm run lint
54
+ check-circular :
55
+ name : Circular Dependencies
56
+ timeout-minutes : 5
57
+ runs-on : ubuntu-18.04
58
+ steps :
59
+ - uses : actions/checkout@v2
60
+ - name : Use Node.js ${{ matrix.NODE_VERSION }}
61
+ uses : actions/setup-node@v1
62
+ with :
63
+ node-version : ${{ matrix.node-version }}
64
+ - name : Cache Node.js modules
65
+ uses : actions/cache@v2
66
+ with :
67
+ path : ~/.npm
68
+ key : ${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-${{ hashFiles('**/package-lock.json') }}
69
+ restore-keys : |
70
+ ${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-
71
+ - name : Install dependencies
72
+ run : npm ci
73
+ - run : npm run madge:circular
74
+ check-docker :
75
+ name : Docker Build
76
+ timeout-minutes : 5
77
+ runs-on : ubuntu-18.04
78
+ steps :
79
+ - uses : actions/checkout@v2
80
+ - name : Build docker image
81
+ uses : docker/build-push-action@v2
82
+ check-lock-file-version :
83
+ name : NPM Lock File Version
84
+ timeout-minutes : 5
85
+ runs-on : ubuntu-18.04
86
+ steps :
87
+ - uses : actions/checkout@v2
88
+ - name : Check NPM lock file version
89
+ uses : mansona/npm-lockfile-version@v1
90
+ with :
91
+ version : 1
14
92
check-mongo :
15
93
strategy :
16
94
matrix :
17
95
include :
18
- - name : Mongo 4.0.4, ReplicaSet, WiredTiger
19
- MONGODB_VERSION : 4.0.4
96
+ - name : MongoDB 4.4, ReplicaSet, WiredTiger
97
+ MONGODB_VERSION : 4.4.4
98
+ MONGODB_TOPOLOGY : replicaset
99
+ MONGODB_STORAGE_ENGINE : wiredTiger
100
+ NODE_VERSION : 14.16.1
101
+ - name : MongoDB 4.2, ReplicaSet, WiredTiger
102
+ MONGODB_VERSION : 4.2.13
103
+ MONGODB_TOPOLOGY : replicaset
104
+ MONGODB_STORAGE_ENGINE : wiredTiger
105
+ NODE_VERSION : 14.16.1
106
+ - name : MongoDB 4.0, ReplicaSet, WiredTiger
107
+ MONGODB_VERSION : 4.0.23
20
108
MONGODB_TOPOLOGY : replicaset
21
109
MONGODB_STORAGE_ENGINE : wiredTiger
22
- NODE_VERSION : 10
23
- - name : Mongo 3.6.21
24
- MONGODB_VERSION : 3.6.21
25
- NODE_VERSION : 10
110
+ NODE_VERSION : 14.16.1
111
+ - name : MongoDB 4.0, Standalone, MMAPv1
112
+ MONGODB_VERSION : 4.0.23
113
+ MONGODB_TOPOLOGY : standalone
114
+ MONGODB_STORAGE_ENGINE : mmapv1
115
+ NODE_VERSION : 14.16.1
26
116
- name : Redis Cache
27
117
PARSE_SERVER_TEST_CACHE : redis
28
- NODE_VERSION : 10
29
- - name : Node 12.12.0
30
- NODE_VERSION : 12.12.0
118
+ MONGODB_VERSION : 4.4.4
119
+ MONGODB_TOPOLOGY : standalone
120
+ MONGODB_STORAGE_ENGINE : wiredTiger
121
+ NODE_VERSION : 14.16.1
122
+ - name : Node 12
123
+ MONGODB_VERSION : 4.4.4
124
+ MONGODB_TOPOLOGY : standalone
125
+ MONGODB_STORAGE_ENGINE : wiredTiger
126
+ NODE_VERSION : 12.22.1
127
+ - name : Node 15
128
+ MONGODB_VERSION : 4.4.4
129
+ MONGODB_TOPOLOGY : standalone
130
+ MONGODB_STORAGE_ENGINE : wiredTiger
131
+ NODE_VERSION : 15.14.0
132
+ fail-fast : false
31
133
name : ${{ matrix.name }}
32
- timeout-minutes : 30
134
+ timeout-minutes : 15
33
135
runs-on : ubuntu-18.04
34
136
services :
35
137
redis :
@@ -57,24 +159,34 @@ jobs:
57
159
${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-
58
160
- name : Install dependencies
59
161
run : npm ci
60
- - if : ${{ matrix.name == 'Mongo 3.6.21' }}
61
- run : npm run lint
62
162
- run : npm run pretest
63
163
- run : npm run coverage
64
164
env :
65
165
CI : true
66
166
- run : bash <(curl -s https://codecov.io/bash)
67
167
check-postgres :
68
- name : Postgresql
69
- timeout-minutes : 30
168
+ strategy :
169
+ matrix :
170
+ include :
171
+ - name : PostgreSQL 11, PostGIS 3.0
172
+ POSTGRES_IMAGE : postgis/postgis:11-3.0
173
+ - name : PostgreSQL 11, PostGIS 3.1
174
+ POSTGRES_IMAGE : postgis/postgis:11-3.1
175
+ - name : PostgreSQL 12, PostGIS 3.1
176
+ POSTGRES_IMAGE : postgis/postgis:12-3.1
177
+ - name : PostgreSQL 13, PostGIS 3.1
178
+ POSTGRES_IMAGE : postgis/postgis:13-3.1
179
+ fail-fast : false
180
+ name : ${{ matrix.name }}
181
+ timeout-minutes : 15
70
182
runs-on : ubuntu-18.04
71
183
services :
72
184
redis :
73
185
image : redis
74
186
ports :
75
187
- 6379:6379
76
188
postgres :
77
- image : postgis/postgis:11-3.0
189
+ image : ${{ matrix.POSTGRES_IMAGE }}
78
190
env :
79
191
POSTGRES_PASSWORD : postgres
80
192
ports :
86
198
--health-retries 5
87
199
env :
88
200
PARSE_SERVER_TEST_DB : postgres
89
- POSTGRES_MAJOR_VERSION : 11
90
201
PARSE_SERVER_TEST_DATABASE_URI : postgres://postgres:postgres@localhost:5432/parse_server_postgres_adapter_test_database
91
202
steps :
92
203
- uses : actions/checkout@v2
@@ -107,4 +218,4 @@ jobs:
107
218
- run : npm run coverage
108
219
env :
109
220
CI : true
110
- - run : bash <(curl -s https://codecov.io/bash)
221
+ - run : bash <(curl -s https://codecov.io/bash)
0 commit comments