exp:expmigrationrecordstart
Start a recording of changes: one user's own changes (a session recording) or every change of the site (--site-wide), kept as the steps of a YAML migration; a dry run unless --apply.
Script bin/php/expmigrationrecordstart.php, code in kernel/private/classes/commands/expmigrationrecordstart.php. Run it from the installation root, as the user the web server runs as:
./console exp:expmigrationrecordstart --help
./console exp:migration:record:start --help
php bin/php/expmigrationrecordstart.php --helpHelp text
Start a recording of changes
From now until exp:migration:record:stop, what is changed is recorded at the kernel's operation level
(content published, moved, hidden, removed or translated, classes stored, roles, policies and their
assignments, sections, users and groups, URL aliases, settings written, workflow triggers), as the
steps of a YAML migration with remote ids and identifiers instead of numeric ids. A session recording
keeps the changes of one user (--user, by login; in the administration: the signed-in user), made
anywhere: the administration, the website sidebar, or a command run as that user. --site-wide opens
the site-wide window instead: every change of every user and of the console. One session recording
per user and one site-wide window at a time. The account of a user (login, e-mail, password) and the
fields of user objects are never recorded. --for=<minutes> or --until=<time> gives the recording a
window: it stops by itself when the window ends (at most 31 days). Without --apply it says what it
would start.
./console exp:migration:record:start --label="news section" --apply
./console exp:migration:record:start --user=editor --apply
./console exp:migration:record:start --site-wide --label="release 2.4 setup" --apply
./console exp:migration:record:start --site-wide --for=120 --label="editors' afternoon" --apply
./console exp:migration:record:start --site-wide --until="2026-11-20 18:00" --applyOptions
| Option | Value | Help |
|---|---|---|
--apply | Make the changes (the default is a dry run that lists them and changes nothing) | |
--dry-run | The default, accepted for scripts that pass it: list what would change, change nothing | |
--format | required | text (default) or json (the machine output exp-migration/1) |
--site-wide | The site-wide recording: every change of every user and of the console (without it: one user's own changes) | |
--label | required | The label of the caption or of the recording (a caption without one: "manual caption" with the time) |
--user | required | The user, by login, whose own changes a session recording keeps (default: [RunSettings] RunAsUser of migration.ini) |
--for | required | A window of this many minutes: the recording stops by itself when it ends |
--until | required | A window until this time (2026-11-20 18:00, the server's time zone): the recording stops by itself then |
Read from the option definitions in the code (startup(), getOptions(), options() or ezcConsoleOption). Every script also takes the standard options of the script framework (--help, --siteaccess, --debug, --quiet, --allow-root-user ...).
Related
Generated by ./console exp:help:examples from bin/php/expmigrationrecordstart.php, kernel/private/classes/commands/expmigrationrecordstart.php. Do not edit this page: change the source and generate again (how). Free documentation: GFDL 1.3 or later.