Skip to content

Commit

Permalink
Merge pull request nrkno#231 from tv2/SOF-1410/moveMigrationAwayFromX…
Browse files Browse the repository at this point in the history
…_X_X

SOF-1410 Move migrations away from X_X_X file
  • Loading branch information
LindvedKrvang committed Apr 3, 2023
2 parents e531394 + 927808a commit 4274b1c
Show file tree
Hide file tree
Showing 4 changed files with 78 additions and 66 deletions.
68 changes: 68 additions & 0 deletions meteor/server/migration/46_1.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
import { addMigrationSteps } from './databaseMigration'
import { ShowStyleVariant, ShowStyleVariants } from '../../lib/collections/ShowStyleVariants'
import { PieceInstances } from '../../lib/collections/PieceInstances'
import { TriggeredActions } from '../../lib/collections/TriggeredActions'

export const addSteps = addMigrationSteps('46.1.0', [
{
id: 'Add missing ranks to ShowStyleVariants',
canBeRunAutomatically: true,
validate: () => {
return (
ShowStyleVariants.find({
_rank: { $exists: false },
}).count() > 0
)
},
migrate: () => {
ShowStyleVariants.find({
_rank: { $exists: false },
}).forEach((variant: ShowStyleVariant, index: number) => {
ShowStyleVariants.upsert(variant._id, {
$set: {
_rank: index,
},
})
})
},
},
{
id: 'Change PieceInstances.dynamicallyInserted type',
canBeRunAutomatically: true,
validate: () => {
return (
PieceInstances.find({
dynamicallyInserted: { $type: 'number' },
}).count() > 0
)
},
migrate: () => {
PieceInstances.find({
dynamicallyInserted: { $type: 'number' },
}).forEach((pieceInstance) => {
if (typeof pieceInstance.dynamicallyInserted !== 'number') {
return
}
PieceInstances.update(pieceInstance._id, {
$set: { dynamicallyInserted: { time: pieceInstance.dynamicallyInserted } },
})
})
},
},
{
id: 'Add "useNameForDisplay" attribute to TriggeredActions',
canBeRunAutomatically: true,
validate: () => {
return (
TriggeredActions.find({
useNameForDisplay: { $exists: false },
}).count() > 0
)
},
migrate: () => {
TriggeredActions.find({}).forEach((action) => {
TriggeredActions.update(action._id, { $set: { useNameForDisplay: false } })
})
},
},
])
4 changes: 4 additions & 0 deletions meteor/server/migration/46_2.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
import { addMigrationSteps } from './databaseMigration'
import { createMigrationsForAddingMissingIdsInSelectFromColumnEntries } from './addMissingIdsForSelectFromColumns'

export const addSteps = addMigrationSteps('46.2.1', [...createMigrationsForAddingMissingIdsInSelectFromColumnEntries()])
66 changes: 0 additions & 66 deletions meteor/server/migration/X_X_X.ts
Original file line number Diff line number Diff line change
@@ -1,9 +1,5 @@
import { addMigrationSteps } from './databaseMigration'
import { CURRENT_SYSTEM_VERSION } from './currentSystemVersion'
import { ShowStyleVariant, ShowStyleVariants } from '../../lib/collections/ShowStyleVariants'
import { PieceInstances } from '../../lib/collections/PieceInstances'
import { TriggeredActions } from '../../lib/collections/TriggeredActions'
import { createMigrationsForAddingMissingIdsInSelectFromColumnEntries } from './addMissingIdsForSelectFromColumns'

/*
* **************************************************************************************
Expand All @@ -17,66 +13,4 @@ import { createMigrationsForAddingMissingIdsInSelectFromColumnEntries } from './

export const addSteps = addMigrationSteps(CURRENT_SYSTEM_VERSION, [
// Add some migrations!
{
id: 'Add missing ranks to ShowStyleVariants',
canBeRunAutomatically: true,
validate: () => {
return (
ShowStyleVariants.find({
_rank: { $exists: false },
}).count() > 0
)
},
migrate: () => {
ShowStyleVariants.find({
_rank: { $exists: false },
}).forEach((variant: ShowStyleVariant, index: number) => {
ShowStyleVariants.upsert(variant._id, {
$set: {
_rank: index,
},
})
})
},
},
{
id: 'Change PieceInstances.dynamicallyInserted type',
canBeRunAutomatically: true,
validate: () => {
return (
PieceInstances.find({
dynamicallyInserted: { $type: 'number' },
}).count() > 0
)
},
migrate: () => {
PieceInstances.find({
dynamicallyInserted: { $type: 'number' },
}).forEach((pieceInstance) => {
if (typeof pieceInstance.dynamicallyInserted !== 'number') {
return
}
PieceInstances.update(pieceInstance._id, {
$set: { dynamicallyInserted: { time: pieceInstance.dynamicallyInserted } },
})
})
},
},
{
id: 'Add "useNameForDisplay" attribute to TriggeredActions',
canBeRunAutomatically: true,
validate: () => {
return (
TriggeredActions.find({
useNameForDisplay: { $exists: false },
}).count() > 0
)
},
migrate: () => {
TriggeredActions.find({}).forEach((action) => {
TriggeredActions.update(action._id, { $set: { useNameForDisplay: false } })
})
},
},
...createMigrationsForAddingMissingIdsInSelectFromColumnEntries(),
])
6 changes: 6 additions & 0 deletions meteor/server/migration/migrations.ts
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,12 @@ addSteps1_44_0()
import { addSteps as addSteps1_46_0 } from './1_46_0'
addSteps1_46_0()

import { addSteps as addSteps46_1 } from './46_1'
addSteps46_1()

import { addSteps as addSteps46_2 } from './46_2'
addSteps46_2()

// Migrations for the in-development release:
import { addSteps as addStepsX_X_X } from './X_X_X'
addStepsX_X_X()

0 comments on commit 4274b1c

Please sign in to comment.