46
46
# setup zodern:types. No linters are setup, so this simply installs the packages
47
47
meteor lint
48
48
49
- meteor yarn ci:lint
49
+ meteor npm run ci:lint
50
50
env :
51
51
CI : true
52
52
@@ -85,12 +85,12 @@ jobs:
85
85
# setup zodern:types. No linters are setup, so this simply installs the packages
86
86
meteor lint
87
87
88
- NODE_OPTIONS="--max-old-space-size=6144" meteor yarn unitci --force-exit
88
+ NODE_OPTIONS="--max-old-space-size=6144" meteor npm run unitci --force-exit
89
89
env :
90
90
CI : true
91
91
- name : Send coverage
92
92
if : ((github.event_name == 'pull_request') && (!startsWith(github.head_ref, 'release'))) || ((github.event_name == 'push') && (!startsWith(github.ref_name, 'release')))
93
- uses : codecov/codecov-action@v4
93
+ uses : codecov/codecov-action@v5
94
94
env :
95
95
CODECOV_TOKEN : ${{ secrets.CODECOV_TOKEN }}
96
96
@@ -184,11 +184,18 @@ jobs:
184
184
run : |
185
185
cd meteor
186
186
yarn inject-git-hash
187
+ - name : Prepare webui for meteor build
188
+ if : steps.check-build-and-push.outputs.enable == 'true'
189
+ run : |
190
+ rm -Rf meteor/public
191
+ cp -R packages/webui/dist meteor/public
187
192
- name : Meteor Build
188
193
if : steps.check-build-and-push.outputs.enable == 'true'
189
194
run : |
190
195
cd meteor
191
196
NODE_OPTIONS="--max-old-space-size=4096" METEOR_DEBUG_BUILD=1 meteor build --allow-superuser --directory .
197
+ mv bundle/programs/web.browser/assets/ bundle/programs/web.browser/app/assets/ || true
198
+
192
199
- name : Meteor Bundle NPM Build
193
200
if : steps.check-build-and-push.outputs.enable == 'true'
194
201
run : |
@@ -239,7 +246,9 @@ jobs:
239
246
echo "image=$image" >> $GITHUB_OUTPUT
240
247
- name : Trivy scanning
241
248
if : steps.check-build-and-push.outputs.enable == 'true' && steps.check-ghcr.outputs.enable == 'true' && steps.ghcr-tag.outputs.tags != 0
242
- uses :
aquasecurity/[email protected]
249
+ uses :
aquasecurity/[email protected]
250
+ env :
251
+ TRIVY_DB_REPOSITORY : public.ecr.aws/aquasecurity/trivy-db
243
252
with :
244
253
image-ref : " ${{ steps.trivy-image.outputs.image }}"
245
254
format : " table"
@@ -388,7 +397,9 @@ jobs:
388
397
echo "image=$image" >> $GITHUB_OUTPUT
389
398
- name : Trivy scanning
390
399
if : steps.check-build-and-push.outputs.enable == 'true' && steps.check-ghcr.outputs.enable == 'true' && steps.ghcr-tag.outputs.tags != 0
391
- uses :
aquasecurity/[email protected]
400
+ uses :
aquasecurity/[email protected]
401
+ env :
402
+ TRIVY_DB_REPOSITORY : public.ecr.aws/aquasecurity/trivy-db
392
403
with :
393
404
image-ref : " ${{ steps.trivy-image.outputs.image }}"
394
405
format : " table"
@@ -422,9 +433,11 @@ jobs:
422
433
- mos-gateway
423
434
- corelib
424
435
- shared-lib
436
+ - meteor-lib
425
437
- job-worker
426
438
- openapi
427
439
- live-status-gateway
440
+ - webui
428
441
429
442
steps :
430
443
- uses : actions/checkout@v4
@@ -467,7 +480,7 @@ jobs:
467
480
- blueprints-integration
468
481
- server-core-integration
469
482
- shared-lib
470
- node-version : [14.x, 16 .x, 18 .x, 20 .x]
483
+ node-version : [14.x, 18 .x, 20 .x, 22 .x]
471
484
include :
472
485
# include additional configs, to run certain packages only for a certain version of node
473
486
- node-version : 14.x
@@ -477,19 +490,28 @@ jobs:
477
490
package-name : job-worker
478
491
send-coverage : true
479
492
# manual openapi to avoid testing for 14.x
480
- - node-version : 16.x
481
- package-name : openapi
482
493
- node-version : 18.x
483
494
package-name : openapi
484
495
- node-version : 20.x
485
496
package-name : openapi
497
+ - node-version : 22.x
498
+ package-name : openapi
486
499
# No tests for the gateways yet
487
500
# - node-version: 18.x
488
501
# package-name: playout-gateway
489
502
# - node-version: 18.x
490
503
# package-name: mos-gateway
491
504
- node-version : 18.x
492
505
package-name : live-status-gateway
506
+ send-coverage : true
507
+ - node-version : 18.x
508
+ package-name : webui
509
+ # manual meteor-lib as it only needs a couple of versions
510
+ - node-version : 18.x
511
+ package-name : meteor-lib
512
+ send-coverage : true
513
+ - node-version : 14.x
514
+ package-name : meteor-lib
493
515
494
516
steps :
495
517
- uses : actions/checkout@v4
@@ -520,7 +542,7 @@ jobs:
520
542
env :
521
543
CI : true
522
544
- name : Send coverage
523
- if : (matrix.node-version == '16 .x' || matrix.send-coverage == true) && ((github.event_name == 'pull_request') && ((!startsWith(github.head_ref, 'release'))) || ((github.event_name == 'push') && (!startsWith(github.ref_name, 'release'))))
545
+ if : (matrix.node-version == '18 .x' || matrix.send-coverage == true) && ((github.event_name == 'pull_request') && ((!startsWith(github.head_ref, 'release'))) || ((github.event_name == 'push') && (!startsWith(github.ref_name, 'release'))))
524
546
uses : codecov/codecov-action@v4
525
547
env :
526
548
CODECOV_TOKEN : ${{ secrets.CODECOV_TOKEN }}
@@ -569,13 +591,17 @@ jobs:
569
591
yarn
570
592
env :
571
593
CI : true
572
- - name : Run generator
594
+ - name : Build OpenAPI client library
595
+ run : |
596
+ cd packages/openapi
597
+ yarn build
598
+ env :
599
+ CI : true
600
+ - name : Generate OpenAPI docs and server
573
601
run : |
574
602
cd packages/openapi
575
-
576
603
yarn gendocs
577
604
yarn genserver
578
- yarn genclient:ts
579
605
env :
580
606
CI : true
581
607
@@ -664,7 +690,7 @@ jobs:
664
690
else
665
691
# make dependencies of `determine-npm-tag` available
666
692
yarn install --mode=skip-build
667
-
693
+
668
694
cd packages
669
695
PACKAGE_NAME="@sofie-automation/shared-lib"
670
696
PUBLISHED_VERSION=$(yarn npm info --json $PACKAGE_NAME | jq -c '.version' -r)
@@ -682,6 +708,13 @@ jobs:
682
708
yarn build
683
709
env :
684
710
CI : true
711
+ - name : Build OpenAPI client library
712
+ if : ${{ steps.do-publish.outputs.tag }}
713
+ run : |
714
+ cd packages/openapi
715
+ yarn build
716
+ env :
717
+ CI : true
685
718
- name : Modify dependencies to use npm packages
686
719
run : node scripts/prepublish.js
687
720
- name : Publish to NPM
0 commit comments