Skip to content

keryx reel migrate

Description

Bring a reel workspace to the current schema version.

Every workspace records a schema_version in its workspace.yaml. When keryx changes what a workspace means — where its media lives, what a card is — that version moves, and a workspace written before the change is refused rather than read as though nothing had happened. reel migrate is how you move one forward.

It is safe to run repeatedly: a workspace already on the current version is left untouched, and the command says so.

Usage

keryx reel migrate <slug> [flags]
keryx reel migrate --all

Flags

Flag Description Default Required
-w, --workspace reel workspace slug
--all migrate every workspace under the reel root false
--dry-run report what would change without writing false

Run keryx reel migrate --help for the authoritative, always-current flag set.

What it does

Start with --dry-run, which reports and writes nothing:

$ keryx reel migrate --all --dry-run
a-website-for-the-place-i-still-call-home: schema version 1 → 2
everyone-reads-your-config: schema version 1 → 2

2 workspace(s) would be migrated. Re-run without --dry-run to write them.

Then without it:

$ keryx reel migrate --all
a-website-for-the-place-i-still-call-home: schema version 1 → 2
everyone-reads-your-config: schema version 1 → 2

2 workspace(s) migrated.

When you will meet it

You will not go looking for this command. It is named in the error that sends you here:

$ keryx reel plan --workspace my-post
workspace is schema version 1, this keryx reads 2 — run `keryx reel migrate` to bring it forward

An out-of-date workspace still appears in keryx reel list, deliberately — a workspace you cannot see is one you cannot fix.

A workspace from the future

The version travels both ways, and only one of them is fixable here.

$ keryx reel plan --workspace my-post
workspace is schema version 3, this keryx reads 2 — it was written by a newer keryx; run `keryx update`

A workspace written by a newer keryx cannot be converted by an older one: a field this binary does not know about may be the one that changes what a card means. reel migrate refuses it rather than pretending, and the fix is a newer keryx rather than an older workspace.

What it does not do

It does not migrate the storyboard or the media layout, which have their own commands and their own schedules:

See also

  • keryx reel list — enumerate reels, including out-of-date ones.
  • keryx reel plan — the pre-build report, and the command most likely to surface a version mismatch first.