Skip to content

Commit

Permalink
chore: preempt review comments
Browse files Browse the repository at this point in the history
  • Loading branch information
Julusian committed Oct 9, 2024
1 parent 5ef7c34 commit e8e1a28
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 11 deletions.
22 changes: 14 additions & 8 deletions meteor/server/migration/X_X_X.ts
Original file line number Diff line number Diff line change
Expand Up @@ -107,10 +107,13 @@ export const addSteps = addMigrationSteps(CURRENT_SYSTEM_VERSION, [
id: `convert packageContainers to ObjectWithOverrides`,
canBeRunAutomatically: true,
validate: async () => {
const studios = await Studios.findFetchAsync({ packageContainers: { $exists: true } })
const studios = await Studios.findFetchAsync({
packageContainers: { $exists: true },
packageContainersWithOverrides: { $exists: false },
})

for (const studio of studios) {
//@ts-expect-error packageContainers is not typed as ObjectWithOverrides
// @ts-expect-error packageContainers is typed as Record<string, StudioPackageContainer>
if (studio.packageContainers) {
return 'packageContainers must be converted to an ObjectWithOverrides'
}
Expand All @@ -119,15 +122,18 @@ export const addSteps = addMigrationSteps(CURRENT_SYSTEM_VERSION, [
return false
},
migrate: async () => {
const studios = await Studios.findFetchAsync({ packageContainers: { $exists: true } })
const studios = await Studios.findFetchAsync({
packageContainers: { $exists: true },
packageContainersWithOverrides: { $exists: false },
})

for (const studio of studios) {
//@ts-expect-error packageContainers is not typed as ObjectWithOverrides
if (!studio.packageContainers) continue
//@ts-expect-error packageContainers is not typed as ObjectWithOverrides
const oldPackageContainers = studio.packageContainers as any as Record<string, StudioPackageContainer>
// @ts-expect-error packageContainers is typed as Record<string, StudioPackageContainer>
const oldPackageContainers = studio.packageContainers

const newPackageContainers = convertObjectIntoOverrides(oldPackageContainers)
const newPackageContainers = convertObjectIntoOverrides<StudioPackageContainer>(
oldPackageContainers || {}
)

await Studios.updateAsync(studio._id, {
$set: {
Expand Down
6 changes: 3 additions & 3 deletions packages/job-worker/src/playout/upgrade.ts
Original file line number Diff line number Diff line change
Expand Up @@ -99,11 +99,11 @@ export async function handleBlueprintUpgradeForStudio(context: JobContext, _data
)

const packageContainers = Object.fromEntries(
Object.entries<unknown>(result.packageContainers ?? {}).map((dev) => [
Object.entries<Partial<StudioPackageContainer>>(result.packageContainers ?? {}).map((dev) => [
dev[0],
literal<Complete<StudioPackageContainer>>({
deviceIds: (dev[1] as StudioPackageContainer).deviceIds,
container: (dev[1] as StudioPackageContainer).container,
deviceIds: dev[1].deviceIds ?? [],
container: dev[1].container as any,
}),
])
)
Expand Down

0 comments on commit e8e1a28

Please sign in to comment.