77 branches :
88 - ' **'
99env :
10- COVERAGE_OPTION : ./node_modules/.bin/nyc
11- NODE_VERSION : 10
10+ NODE_VERSION : 14.16.1
1211 PARSE_SERVER_TEST_TIMEOUT : 20000
1312jobs :
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
1492 check-mongo :
1593 strategy :
1694 matrix :
1795 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
20108 MONGODB_TOPOLOGY : replicaset
21109 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
26116 - name : Redis Cache
27117 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
31133 name : ${{ matrix.name }}
32- timeout-minutes : 30
134+ timeout-minutes : 15
33135 runs-on : ubuntu-18.04
34136 services :
35137 redis :
@@ -57,24 +159,34 @@ jobs:
57159 ${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-
58160 - name : Install dependencies
59161 run : npm ci
60- - if : ${{ matrix.name == 'Mongo 3.6.21' }}
61- run : npm run lint
62162 - run : npm run pretest
63163 - run : npm run coverage
64164 env :
65165 CI : true
66166 - run : bash <(curl -s https://codecov.io/bash)
67167 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
70182 runs-on : ubuntu-18.04
71183 services :
72184 redis :
73185 image : redis
74186 ports :
75187 - 6379:6379
76188 postgres :
77- image : postgis/postgis:11-3.0
189+ image : ${{ matrix.POSTGRES_IMAGE }}
78190 env :
79191 POSTGRES_PASSWORD : postgres
80192 ports :
86198 --health-retries 5
87199 env :
88200 PARSE_SERVER_TEST_DB : postgres
89- POSTGRES_MAJOR_VERSION : 11
90201 PARSE_SERVER_TEST_DATABASE_URI : postgres://postgres:postgres@localhost:5432/parse_server_postgres_adapter_test_database
91202 steps :
92203 - uses : actions/checkout@v2
@@ -107,4 +218,4 @@ jobs:
107218 - run : npm run coverage
108219 env :
109220 CI : true
110- - run : bash <(curl -s https://codecov.io/bash)
221+ - run : bash <(curl -s https://codecov.io/bash)
0 commit comments