11name : ci 
22on :
33  push :
4-     branches : [ release, alpha, beta ] 
4+     branches : [ release* , alpha, beta ] 
55  pull_request :
6-     branches : [ release, alpha, beta ] 
6+     branches : [ release* , alpha, beta ] 
77env :
8-   NODE_VERSION : 18.1 .0
8+   NODE_VERSION : 19.3 .0
99  PARSE_SERVER_TEST_TIMEOUT : 20000 
1010jobs :
1111  check-code-analysis :
3232  check-ci :
3333    name : Node Engine Check 
3434    timeout-minutes : 15 
35-     runs-on : ubuntu-20.04  
35+     runs-on : ubuntu-latest  
3636    steps :
3737      - uses : actions/checkout@v2 
3838      - name : Use Node.js ${{ matrix.NODE_VERSION }} 
5353  check-lint :
5454     name : Lint 
5555     timeout-minutes : 15 
56-      runs-on : ubuntu-20.04  
56+      runs-on : ubuntu-latest  
5757     steps :
5858       - uses : actions/checkout@v2 
5959       - name : Use Node.js ${{ matrix.NODE_VERSION }} 
@@ -70,10 +70,31 @@ jobs:
7070        - name : Install dependencies 
7171         run : npm ci 
7272       - run : npm run lint 
73+   check-definitions :
74+      name : Check Definitions 
75+      timeout-minutes : 5 
76+      runs-on : ubuntu-18.04 
77+      steps :
78+       - uses : actions/checkout@v2 
79+       - name : Use Node.js ${{ matrix.NODE_VERSION }} 
80+         uses : actions/setup-node@v2 
81+         with :
82+           node-version : ${{ matrix.node-version }} 
83+       - name : Cache Node.js modules 
84+         uses : actions/cache@v2 
85+         with :
86+           path : ~/.npm 
87+           key : ${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-${{ hashFiles('**/package-lock.json') }} 
88+           restore-keys : | 
89+             ${{ runner.os }}-node-${{ matrix.NODE_VERSION }}- 
90+        - name : Install dependencies 
91+         run : npm ci 
92+       - name : CI Definitions Check 
93+         run : npm run ci:definitionsCheck 
7394  check-circular :
7495     name : Circular Dependencies 
7596     timeout-minutes : 5 
76-      runs-on : ubuntu-20.04  
97+      runs-on : ubuntu-latest  
7798     steps :
7899       - uses : actions/checkout@v2 
79100       - name : Use Node.js ${{ matrix.NODE_VERSION }} 
93114  check-docker :
94115    name : Docker Build 
95116    timeout-minutes : 15 
96-     runs-on : ubuntu-20.04  
117+     runs-on : ubuntu-latest  
97118    steps :
98119      - name : Checkout repository 
99120        uses : actions/checkout@v2 
@@ -110,77 +131,54 @@ jobs:
110131  check-lock-file-version :
111132    name : NPM Lock File Version 
112133    timeout-minutes : 5 
113-     runs-on : ubuntu-20.04  
134+     runs-on : ubuntu-latest  
114135    steps :
115136      - uses : actions/checkout@v2 
116137      - name : Check NPM lock file version 
117138        uses : mansona/npm-lockfile-version@v1 
118139        with :
119-           version : 1 
140+           version : 2 
120141  check-mongo :
121142    strategy :
122143      matrix :
123144        include :
124-           - name : MongoDB 4.0, Standalone, MMAPv1 
125-             MONGODB_VERSION : 4.0.28 
126-             MONGODB_TOPOLOGY : standalone 
127-             MONGODB_STORAGE_ENGINE : mmapv1 
128-             NODE_VERSION : 18.1.0 
129-           - name : MongoDB 4.0, ReplicaSet, WiredTiger 
130-             MONGODB_VERSION : 4.0.28 
131-             MONGODB_TOPOLOGY : replicaset 
132-             MONGODB_STORAGE_ENGINE : wiredTiger 
133-             NODE_VERSION : 18.1.0 
134-           - name : MongoDB 4.2, ReplicaSet, WiredTiger 
145+           - name : MongoDB 4.2, ReplicaSet 
135146            MONGODB_VERSION : 4.2.19 
136147            MONGODB_TOPOLOGY : replicaset 
137-             MONGODB_STORAGE_ENGINE : wiredTiger 
138-             NODE_VERSION : 18.1.0 
139-           - name : MongoDB 4.4, ReplicaSet, WiredTiger 
148+             NODE_VERSION : 19.3.0 
149+           - name : MongoDB 4.4, ReplicaSet 
140150            MONGODB_VERSION : 4.4.13 
141151            MONGODB_TOPOLOGY : replicaset 
142-             MONGODB_STORAGE_ENGINE : wiredTiger 
143-             NODE_VERSION : 18.1.0 
144-           - name : MongoDB 5, ReplicaSet, WiredTiger 
152+             NODE_VERSION : 19.3.0 
153+           - name : MongoDB 5, ReplicaSet 
145154            MONGODB_VERSION : 5.3.2 
146155            MONGODB_TOPOLOGY : replicaset 
147-             MONGODB_STORAGE_ENGINE : wiredTiger 
148-             NODE_VERSION : 18.1.0 
149-           - name : MongoDB 6, ReplicaSet, WiredTiger 
156+             NODE_VERSION : 19.3.0 
157+           - name : MongoDB 6, ReplicaSet 
150158            MONGODB_VERSION : 6.0.2 
151159            MONGODB_TOPOLOGY : replicaset 
152-             MONGODB_STORAGE_ENGINE : wiredTiger 
153-             NODE_VERSION : 18.1.0 
160+             NODE_VERSION : 19.3.0 
154161          - name : Redis Cache 
155162            PARSE_SERVER_TEST_CACHE : redis 
156163            MONGODB_VERSION : 4.4.13 
157164            MONGODB_TOPOLOGY : standalone 
158-             MONGODB_STORAGE_ENGINE : wiredTiger 
159-             NODE_VERSION : 18.1.0 
160-           - name : Node 12 
161-             MONGODB_VERSION : 4.4.13 
162-             MONGODB_TOPOLOGY : standalone 
163-             MONGODB_STORAGE_ENGINE : wiredTiger 
164-             NODE_VERSION : 12.22.11 
165+             NODE_VERSION : 19.3.0 
165166          - name : Node 14 
166167            MONGODB_VERSION : 4.4.13 
167168            MONGODB_TOPOLOGY : standalone 
168-             MONGODB_STORAGE_ENGINE : wiredTiger 
169-             NODE_VERSION : 14.19.1 
169+             NODE_VERSION : 14.21.1 
170170          - name : Node 16 
171171            MONGODB_VERSION : 4.4.13 
172172            MONGODB_TOPOLOGY : standalone 
173-             MONGODB_STORAGE_ENGINE : wiredTiger 
174-             NODE_VERSION : 16.14.2 
175-           - name : Node 17 
173+             NODE_VERSION : 16.18.1 
174+           - name : Node 18 
176175            MONGODB_VERSION : 4.4.13 
177176            MONGODB_TOPOLOGY : standalone 
178-             MONGODB_STORAGE_ENGINE : wiredTiger 
179-             NODE_VERSION : 17.9.0 
177+             NODE_VERSION : 18.12.1 
180178      fail-fast : false 
181179    name : ${{ matrix.name }} 
182180    timeout-minutes : 15 
183-     runs-on : ubuntu-20.04  
181+     runs-on : ubuntu-latest  
184182    services :
185183      redis :
186184        image : redis 
@@ -195,6 +193,9 @@ jobs:
195193    steps :
196194      - name : Fix usage of insecure GitHub protocol 
197195        run : sudo git config --system url."https://github".insteadOf "git://github" 
196+       - name : Fix git protocol for Node 14 
197+         if : ${{ startsWith(matrix.NODE_VERSION, '14.') }} 
198+         run : sudo git config --system url."https://github".insteadOf "ssh://git@github" 
198199      - uses : actions/checkout@v2 
199200      - name : Use Node.js ${{ matrix.NODE_VERSION }} 
200201        uses : actions/setup-node@v2 
@@ -220,32 +221,32 @@ jobs:
220221        include :
221222          - name : PostgreSQL 11, PostGIS 3.0 
222223            POSTGRES_IMAGE : postgis/postgis:11-3.0 
223-             NODE_VERSION : 18.1 .0
224+             NODE_VERSION : 19.3 .0
224225          - name : PostgreSQL 11, PostGIS 3.1 
225226            POSTGRES_IMAGE : postgis/postgis:11-3.1 
226-             NODE_VERSION : 18.1 .0
227+             NODE_VERSION : 19.3 .0
227228          - name : PostgreSQL 11, PostGIS 3.2 
228229            POSTGRES_IMAGE : postgis/postgis:11-3.2 
229-             NODE_VERSION : 18.1 .0
230+             NODE_VERSION : 19.3 .0
230231          - name : PostgreSQL 11, PostGIS 3.3 
231232            POSTGRES_IMAGE : postgis/postgis:11-3.3 
232-             NODE_VERSION : 18.1 .0
233+             NODE_VERSION : 19.3 .0
233234          - name : PostgreSQL 12, PostGIS 3.3 
234235            POSTGRES_IMAGE : postgis/postgis:12-3.3 
235-             NODE_VERSION : 18.1 .0
236+             NODE_VERSION : 19.3 .0
236237          - name : PostgreSQL 13, PostGIS 3.3 
237238            POSTGRES_IMAGE : postgis/postgis:13-3.3 
238-             NODE_VERSION : 18.1 .0
239+             NODE_VERSION : 19.3 .0
239240          - name : PostgreSQL 14, PostGIS 3.3 
240241            POSTGRES_IMAGE : postgis/postgis:14-3.3 
241-             NODE_VERSION : 18.1 .0
242+             NODE_VERSION : 19.3 .0
242243          - name : PostgreSQL 15, PostGIS 3.3 
243244            POSTGRES_IMAGE : postgis/postgis:15-3.3 
244-             NODE_VERSION : 18.1 .0
245+             NODE_VERSION : 19.3 .0
245246      fail-fast : false 
246247    name : ${{ matrix.name }} 
247248    timeout-minutes : 15 
248-     runs-on : ubuntu-20.04  
249+     runs-on : ubuntu-latest  
249250    services :
250251      redis :
251252        image : redis 
0 commit comments