@@ -135,6 +135,32 @@ jobs:
135
135
with :
136
136
name : mwdb-web-tests-image
137
137
path : mwdb-web-tests-image
138
+ build_frontend_unit_test :
139
+ name : Build frontend unit test image
140
+ runs-on : ubuntu-latest
141
+ env :
142
+ DOCKER_BUILDKIT : 1
143
+ steps :
144
+ - name : Check out repository
145
+ uses : actions/checkout@v3
146
+ - name : Set up QEMU
147
+ uses : docker/setup-qemu-action@v2
148
+ - name : Set up Docker Buildx
149
+ uses : docker/setup-buildx-action@v2
150
+ - name : Build and push mwdb-web-unit-tests image
151
+ uses : docker/build-push-action@v4
152
+ with :
153
+ file : ./deploy/docker/Dockerfile-web-unit-test
154
+ tags : |
155
+ certpl/mwdb-web-unit-tests:${{ github.sha }}
156
+ cache-from : |
157
+ type=registry,ref=certpl/mwdb-web-unit-tests:buildcache
158
+ outputs : type=docker,dest=./mwdb-web-unit-tests-image
159
+ - name : Upload unit test image
160
+ uses : actions/upload-artifact@v3
161
+ with :
162
+ name : mwdb-web-unit-tests-image
163
+ path : mwdb-web-unit-tests-image
138
164
test_backend_e2e :
139
165
needs : [build_core, build_frontend, build_backend_e2e]
140
166
name : Perform backend e2e tests
@@ -211,8 +237,31 @@ jobs:
211
237
with :
212
238
name : mwdb-e2e-web-videos
213
239
path : artifacts
240
+ test_frontend_unit :
241
+ needs : [ build_frontend_unit_test ]
242
+ name : Perform frontend unit tests
243
+ runs-on : ubuntu-latest
244
+ env :
245
+ DOCKER_BUILDKIT : 1
246
+ steps :
247
+ - name : Check out repository
248
+ uses : actions/checkout@v3
249
+ - name : Download all artifacts
250
+ uses : actions/download-artifact@v3
251
+ - name : Import images
252
+ run : |
253
+ docker load --input ./mwdb-web-unit-tests-image/mwdb-web-unit-tests-image
254
+ docker tag certpl/mwdb-web-unit-tests:$GITHUB_SHA certpl/mwdb-web-unit-tests:latest
255
+ - name : Setup configuration
256
+ run : |
257
+ chmod +x gen_vars.sh
258
+ ./gen_vars.sh test
259
+ - name : Perform tests
260
+ run : |
261
+ docker-compose -f docker-compose-unit-test.yml up -d
262
+ docker-compose -f docker-compose-unit-test.yml logs -f -t
214
263
push_images :
215
- needs : [test_backend_e2e, test_frontend_e2e]
264
+ needs : [test_backend_e2e, test_frontend_e2e, test_frontend_unit ]
216
265
name : Push images on Docker Hub
217
266
runs-on : ubuntu-latest
218
267
if : ${{ github.event_name == 'push' }}
@@ -266,7 +315,7 @@ jobs:
266
315
type=registry,ref=certpl/mwdb-web:buildcache,mode=max
267
316
push : true
268
317
push_test_images :
269
- needs : [test_backend_e2e, test_frontend_e2e]
318
+ needs : [test_backend_e2e, test_frontend_e2e, test_frontend_unit ]
270
319
name : Push test images on Docker Hub
271
320
runs-on : ubuntu-latest
272
321
if : ${{ github.event_name == 'push' }}
@@ -310,3 +359,16 @@ jobs:
310
359
cache-to : |
311
360
type=registry,ref=certpl/mwdb-web-tests:buildcache,mode=max
312
361
push : true
362
+ - name : Build and push mwdb-web-unit-tests image
363
+ uses : docker/build-push-action@v4
364
+ with :
365
+ file : ./deploy/docker/Dockerfile-web-unit-test
366
+ context : mwdb/web
367
+ tags : |
368
+ certpl/mwdb-web-unit-tests:${{ github.sha }}
369
+ certpl/mwdb-web-unit-tests:master
370
+ cache-from : |
371
+ type=registry,ref=certpl/mwdb-web-unit-tests:buildcache
372
+ cache-to : |
373
+ type=registry,ref=certpl/mwdb-web-unit-tests:buildcache,mode=max
374
+ push : true
0 commit comments