MigrationHandle interface
The six verbs of a live migration between two Norsk instances, as one node speaks them. Every participating node — each rendition’s CMAF output, the multi-variant playlist — answers all six, so a coordinator never has to special-case a participant that implements only some.
The same migrationId runs through every verb of one handover. A node answers verbs out of order (an abort overtakes a ready that is still waiting for a segment), which is why each call resolves on its own.
A handover, in order:
-
getStateon the SOURCE, before the target is launched. Its payload is what the target is booted with. 2.applyInitialStateon the TARGET, at boot. 3.readyon the TARGET. Resolves once it is at a known position. 4.stopon the SOURCE, given the target’sreadypayload. 5.applyon the TARGET, given the source’sstoppayload.
abort at any point releases anything still waiting. Nothing already published is undone: a source that has stopped pushing cannot resume.
Signature:
export interface MigrationHandle