Skip to the content
Documentation
Help Start
Reading in:
  • German: 9,059 of 9,059 pages
About the help in other languages
All help pages

migration.ini [CaptionSettings]

The settings of [CaptionSettings] in migration.ini: Before, After, ReuseUnchanged, ReuseIgnoreTableList, RestoreOnFailure, RestoreParts, CodeTreeList, BackupDirectory

Download as PDF

Address: https://doc.exponential.earth/exphelp/viewer/examples/ini-settings/migration/CaptionSettings.md

On this page

migration.ini [CaptionSettings]

The block [CaptionSettings] of settings/migration.ini, with 8 setting(s).

Never edit settings/migration.ini itself: an update replaces it. Put the settings you change in an override, which wins over the shipped file:

  • settings/override/migration.ini.append.php for every siteaccess,
  • settings/siteaccess/<siteaccess>/migration.ini.append.php for one siteaccess,
  • extension/<extension>/settings/migration.ini.append.php in an extension (read when the extension is active).

Before

Captions are exp:upgrade's (./console exp:upgrade:captions lists them all): git_manager's full caption, or the
database dump of exp:upgrade without git_manager, with settings/override and the commits of the code.

enabled: a caption (kind migration-pre) is taken before a run that applies migrations. When none can be taken
(an engine without a dump, a full disk) the run goes on with a warning: there is then no automatic restore.

Default: enabled.

<?php /* #?ini charset="utf-8"?
# settings/override/migration.ini.append.php
[CaptionSettings]
Before=enabled
*/ ?>

After

enabled: a caption (kind migration-post, labelled with the migrations that ran) is taken after a run that
succeeded: the next run reuses it while nothing has changed since.

Default: enabled.

<?php /* #?ini charset="utf-8"?
# settings/override/migration.ini.append.php
[CaptionSettings]
After=enabled
*/ ?>

ReuseUnchanged

enabled: the newest migration caption is reused instead of a new one while the database, var/ storage,
settings/override and the commit of the installation are as they were when it was taken. The check is exact on
PostgreSQL (the change counters of every table), MySQL/MariaDB (CHECKSUM TABLE of every table) and SQLite (the
rows of every table); MongoDB and Oracle always take a new caption.

Default: enabled.

<?php /* #?ini charset="utf-8"?
# settings/override/migration.ini.append.php
[CaptionSettings]
ReuseUnchanged=enabled
*/ ?>

ReuseIgnoreTableList

The tables the reuse check leaves out: the record of the runs and captions, sessions and the audit index (each
caption writes an audit event). A name ending in * stands for every table that starts with it.

Default: a list of 4: exp_migration, exp_migration_run, ezsession, expaudit_*.

<?php /* #?ini charset="utf-8"?
# settings/override/migration.ini.append.php
[CaptionSettings]
# an empty "ReuseIgnoreTableList[]" first replaces the shipped list; without it the items are added
ReuseIgnoreTableList[]
ReuseIgnoreTableList[]=exp_migration
ReuseIgnoreTableList[]=exp_migration_run
ReuseIgnoreTableList[]=ezsession
ReuseIgnoreTableList[]=expaudit_*
*/ ?>

RestoreOnFailure

enabled: a run that fails is put back to its pre caption at once (after a caption of the failed state, kind
migration-failure). Oracle has no built-in restore: the run stops and prints the steps to restore by hand.

Default: enabled.

<?php /* #?ini charset="utf-8"?
# settings/override/migration.ini.append.php
[CaptionSettings]
RestoreOnFailure=enabled
*/ ?>

RestoreParts

The parts of a caption a failed run is put back to (exp:upgrade:rollback --parts): database, storage, settings.

Default: a list of 3: database, storage, settings.

<?php /* #?ini charset="utf-8"?
# settings/override/migration.ini.append.php
[CaptionSettings]
# an empty "RestoreParts[]" first replaces the shipped list; without it the items are added
RestoreParts[]
RestoreParts[]=database
RestoreParts[]=storage
RestoreParts[]=settings
*/ ?>

CodeTreeList

The code trees of the installation a run checks for changes that are not committed: a run with --apply is refused
while one has some, unless it is given --include-uncommitted (the changes then go into the caption as a patch and
a copy of the new files).

Default: a list of 3: settings, extension, design.

<?php /* #?ini charset="utf-8"?
# settings/override/migration.ini.append.php
[CaptionSettings]
# an empty "CodeTreeList[]" first replaces the shipped list; without it the items are added
CodeTreeList[]
CodeTreeList[]=settings
CodeTreeList[]=extension
CodeTreeList[]=design
*/ ?>

BackupDirectory

The folder of the captions made without git_manager. Empty: var/backup/upgrade, as exp:upgrade.

Default: empty.

<?php /* #?ini charset="utf-8"?
# settings/override/migration.ini.append.php
[CaptionSettings]
BackupDirectory=
*/ ?>

Generated by ./console exp:help:examples from settings/migration.ini. Do not edit this page: change the source and generate again (how). Free documentation: GFDL 1.3 or later.

Something wrong on this page? Report an error

Documentation license

This documentation is free documentation, licensed under the GNU Free Documentation License 1.3 or later.

Exponential Copyright © 1998-2026 Exponential Foundation and 7x