Skip to content

Commit 7b34e5b

Browse files
authored
Merge branch 'bbc-main' into feat/syncIngestUpdateToPartInstance-persistentPlayoutState
2 parents d65335d + 2052c0d commit 7b34e5b

292 files changed

Lines changed: 33064 additions & 3476 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/deploy-docs.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -86,4 +86,4 @@ jobs:
8686
steps:
8787
- name: Deploy to GitHub Pages
8888
id: deployment
89-
uses: actions/deploy-pages@v4
89+
uses: actions/deploy-pages@v5

.github/workflows/node.yaml

Lines changed: 2 additions & 60 deletions
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,7 @@ jobs:
9696
CI: true
9797
- name: Send coverage
9898
if: ((github.event_name == 'pull_request') && (!startsWith(github.head_ref, 'release'))) || ((github.event_name == 'push') && (!startsWith(github.ref_name, 'release')))
99-
uses: codecov/codecov-action@v5
99+
uses: codecov/codecov-action@v6
100100
env:
101101
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
102102

@@ -265,35 +265,6 @@ jobs:
265265
labels: ${{ steps.dockerhub-tag.outputs.labels }}
266266
tags: ${{ steps.dockerhub-tag.outputs.tags }}
267267

268-
# Trivy scanning
269-
- name: Get image for Trivy scanning
270-
id: trivy-image
271-
if: steps.check-build-and-push.outputs.enable == 'true' && steps.check-ghcr.outputs.enable == 'true' && steps.ghcr-tag.outputs.tags != 0
272-
run: |
273-
image=$(echo ${{ steps.ghcr-tag.outputs.tags }} | head -n 1)
274-
echo "image=$image" >> $GITHUB_OUTPUT
275-
- name: Trivy scanning
276-
if: steps.check-build-and-push.outputs.enable == 'true' && steps.check-ghcr.outputs.enable == 'true' && steps.ghcr-tag.outputs.tags != 0
277-
uses: aquasecurity/trivy-action@0.35.0
278-
env:
279-
TRIVY_DB_REPOSITORY: public.ecr.aws/aquasecurity/trivy-db
280-
with:
281-
image-ref: "${{ steps.trivy-image.outputs.image }}"
282-
format: "table"
283-
output: trivy-scan-result.txt
284-
ignore-unfixed: true
285-
severity: "CRITICAL,HIGH"
286-
- name: Post all Trivy scan results to Github Summary as a table
287-
if: steps.check-build-and-push.outputs.enable == 'true' && steps.check-ghcr.outputs.enable == 'true' && steps.ghcr-tag.outputs.tags != 0
288-
env:
289-
CODE_BLOCK: "```"
290-
run: |
291-
echo "# Trivy scan results ~ core" >> $GITHUB_STEP_SUMMARY
292-
293-
echo $CODE_BLOCK >> $GITHUB_STEP_SUMMARY
294-
cat trivy-scan-result.txt >> $GITHUB_STEP_SUMMARY
295-
echo $CODE_BLOCK >> $GITHUB_STEP_SUMMARY
296-
297268
build-gateways:
298269
# TODO - should this be dependant on tests or something passing if we are on a tag?
299270
name: Build gateways
@@ -437,35 +408,6 @@ jobs:
437408
labels: ${{ steps.dockerhub-tag.outputs.labels }}
438409
tags: "${{ steps.dockerhub-tag.outputs.tags }}"
439410

440-
# Trivy scanning
441-
- name: Get image for Trivy scanning
442-
id: trivy-image
443-
if: steps.check-build-and-push.outputs.enable == 'true' && steps.check-ghcr.outputs.enable == 'true' && steps.ghcr-tag.outputs.tags != 0
444-
run: |
445-
image=$(echo ${{ steps.ghcr-tag.outputs.tags }} | head -n 1)
446-
echo "image=$image" >> $GITHUB_OUTPUT
447-
- name: Trivy scanning
448-
if: steps.check-build-and-push.outputs.enable == 'true' && steps.check-ghcr.outputs.enable == 'true' && steps.ghcr-tag.outputs.tags != 0
449-
uses: aquasecurity/trivy-action@0.35.0
450-
env:
451-
TRIVY_DB_REPOSITORY: public.ecr.aws/aquasecurity/trivy-db
452-
with:
453-
image-ref: "${{ steps.trivy-image.outputs.image }}"
454-
format: "table"
455-
output: ${{ matrix.gateway-name }}-trivy-scan-result.txt
456-
ignore-unfixed: true
457-
severity: "CRITICAL,HIGH"
458-
- name: Post all Trivy scan results to Github Summary as a table
459-
if: steps.check-build-and-push.outputs.enable == 'true' && steps.check-ghcr.outputs.enable == 'true' && steps.ghcr-tag.outputs.tags != 0
460-
env:
461-
CODE_BLOCK: "```"
462-
run: |
463-
echo "# Trivy scan results ~ ${{ matrix.gateway-name }}" >> $GITHUB_STEP_SUMMARY
464-
465-
echo $CODE_BLOCK >> $GITHUB_STEP_SUMMARY
466-
cat ${{ matrix.gateway-name }}-trivy-scan-result.txt >> $GITHUB_STEP_SUMMARY
467-
echo $CODE_BLOCK >> $GITHUB_STEP_SUMMARY
468-
469411
lint-packages:
470412
name: Lint Packages
471413
runs-on: ubuntu-latest
@@ -588,7 +530,7 @@ jobs:
588530
CI: true
589531
- name: Send coverage
590532
if: (matrix.node-version == '22.x' || matrix.send-coverage == true) && (((github.event_name == 'pull_request') && (!startsWith(github.head_ref, 'release'))) || ((github.event_name == 'push') && (!startsWith(github.ref_name, 'release'))))
591-
uses: codecov/codecov-action@v5
533+
uses: codecov/codecov-action@v6
592534
env:
593535
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
594536

.github/workflows/trivy.yml

Lines changed: 0 additions & 98 deletions
This file was deleted.

meteor/__mocks__/defaultCollectionObjects.ts

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@ import { Piece, EmptyPieceTimelineObjectsBlob } from '@sofie-automation/corelib/
1010
import { AdLibPiece } from '@sofie-automation/corelib/dist/dataModel/AdLibPiece'
1111
import { getRundownId } from '../server/api/ingest/lib'
1212
import { wrapDefaultObject } from '@sofie-automation/corelib/dist/settings/objectWithOverrides'
13-
import { PartInstance } from '@sofie-automation/meteor-lib/dist/collections/PartInstances'
1413
import { PieceInstance } from '@sofie-automation/corelib/dist/dataModel/PieceInstance'
1514
import {
1615
PartId,
@@ -31,6 +30,7 @@ import {
3130
DEFAULT_FALLBACK_PART_DURATION,
3231
DEFAULT_MINIMUM_TAKE_SPAN,
3332
} from '@sofie-automation/shared-lib/dist/core/constants'
33+
import { PartInstance } from '@sofie-automation/corelib/dist/dataModel/PartInstance'
3434

3535
export function defaultRundownPlaylist(_id: RundownPlaylistId, studioId: StudioId): DBRundownPlaylist {
3636
return {
@@ -52,6 +52,11 @@ export function defaultRundownPlaylist(_id: RundownPlaylistId, studioId: StudioI
5252
type: 'none' as any,
5353
},
5454
rundownIdsInOrder: [],
55+
tTimers: [
56+
{ index: 1, label: '', mode: null, state: null },
57+
{ index: 2, label: '', mode: null, state: null },
58+
{ index: 3, label: '', mode: null, state: null },
59+
],
5560
}
5661
}
5762
export function defaultRundown(

meteor/__mocks__/helpers/database.ts

Lines changed: 1 addition & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ import { Blueprint } from '@sofie-automation/corelib/dist/dataModel/Blueprint'
3939
import { ICoreSystem, SYSTEM_ID } from '@sofie-automation/meteor-lib/dist/collections/CoreSystem'
4040
import { stripVersion } from '../../server/systemStatus/semverUtils'
4141
import { internalUploadBlueprint } from '../../server/api/blueprints/api'
42-
import { literal, getRandomId, getRandomString, Complete, normalizeArray } from '@sofie-automation/corelib/dist/lib'
42+
import { literal, getRandomId, getRandomString, normalizeArray } from '@sofie-automation/corelib/dist/lib'
4343
import { protectString, unprotectString } from '@sofie-automation/corelib/dist/protectedString'
4444
import { DBRundown } from '@sofie-automation/corelib/dist/dataModel/Rundown'
4545
import { DBSegment } from '@sofie-automation/corelib/dist/dataModel/Segment'
@@ -59,7 +59,6 @@ import {
5959
applyAndValidateOverrides,
6060
wrapDefaultObject,
6161
} from '@sofie-automation/corelib/dist/settings/objectWithOverrides'
62-
import { UIShowStyleBase } from '@sofie-automation/meteor-lib/dist/api/showStyles'
6362
import {
6463
BlueprintId,
6564
RundownId,
@@ -888,18 +887,3 @@ export async function setupMockWorker(doc?: Partial<WorkerStatus>): Promise<{
888887

889888
return { worker, workerThreadStatuses: [workerThreadStatus0, workerThreadStatus1] }
890889
}
891-
892-
// const studioBlueprint
893-
// const showStyleBlueprint
894-
// const showStyleVariant
895-
896-
export function convertToUIShowStyleBase(showStyleBase: DBShowStyleBase): UIShowStyleBase {
897-
return literal<Complete<UIShowStyleBase>>({
898-
_id: showStyleBase._id,
899-
name: showStyleBase.name,
900-
hotkeyLegend: showStyleBase.hotkeyLegend,
901-
sourceLayers: applyAndValidateOverrides(showStyleBase.sourceLayersWithOverrides).obj,
902-
outputLayers: applyAndValidateOverrides(showStyleBase.outputLayersWithOverrides).obj,
903-
abChannelDisplay: showStyleBase.abChannelDisplay,
904-
})
905-
}

meteor/server/__tests__/cronjobs.test.ts

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@ import {
2121
import { SYSTEM_ID } from '@sofie-automation/meteor-lib/dist/collections/CoreSystem'
2222
import * as lib from '../lib/lib'
2323
import { DBPart } from '@sofie-automation/corelib/dist/dataModel/Part'
24-
import { PartInstance } from '@sofie-automation/meteor-lib/dist/collections/PartInstances'
2524
import { PieceInstance } from '@sofie-automation/corelib/dist/dataModel/PieceInstance'
2625
import { Meteor } from 'meteor/meteor'
2726
import { EmptyPieceTimelineObjectsBlob } from '@sofie-automation/corelib/dist/dataModel/Piece'
@@ -76,6 +75,7 @@ import { DBSegment } from '@sofie-automation/corelib/dist/dataModel/Segment'
7675
import { Settings } from '../Settings'
7776
import { SofieIngestCacheType } from '@sofie-automation/corelib/dist/dataModel/SofieIngestDataCache'
7877
import { ObjectOverrideSetOp, ObjectWithOverrides } from '@sofie-automation/corelib/dist/settings/objectWithOverrides'
78+
import { PartInstance } from '@sofie-automation/corelib/dist/dataModel/PartInstance'
7979

8080
describe('cronjobs', () => {
8181
let env: DefaultEnvironment
@@ -622,6 +622,11 @@ describe('cronjobs', () => {
622622
type: PlaylistTimingType.None,
623623
},
624624
activationId: protectString(''),
625+
tTimers: [
626+
{ index: 1, label: '', mode: null, state: null },
627+
{ index: 2, label: '', mode: null, state: null },
628+
{ index: 3, label: '', mode: null, state: null },
629+
],
625630
})
626631

627632
return {

meteor/server/api/__tests__/externalMessageQueue.test.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@ describe('Test external message queue static methods', () => {
4141
type: PlaylistTimingType.None,
4242
},
4343
rundownIdsInOrder: [protectString('rundown_1')],
44+
tTimers: [] as any,
4445
})
4546
await Rundowns.mutableCollection.insertAsync({
4647
_id: protectString('rundown_1'),

meteor/server/api/__tests__/peripheralDevice.test.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,7 @@ describe('test peripheralDevice general API methods', () => {
7878
type: PlaylistTimingType.None,
7979
},
8080
rundownIdsInOrder: [rundownID],
81+
tTimers: [] as any,
8182
})
8283
await Rundowns.mutableCollection.insertAsync({
8384
_id: rundownID,

0 commit comments

Comments
 (0)