Migrate
Brandbox bietet die Möglichkeit, Migrationspfade zu erstellen, die direkt bei der Installation ausgeführt werden. Das kann verwendet werden, wenn sich Veränderungen ergeben, die über generische ORM-Migration nicht mehr möglich sind.
Pfade
Es gibt zwei Ordner, in denen Migrations-Skripte liegen können:
plugin/remote/component/migrations/cases/
plugin/migrateCases/
Aufbau der Datei
Dateiname
20170124150000_welcome.php
Namespace
\brandbox\migration\cases\welcome
Datum
Das Datum im Dateinamen gibt an, in welcher Reihenfolge das Skript greift.
Up
Up wird bei der Durchführung der Installation vor allen anderen Aktionen ausgeführt.
Dabei werden alle Migrations-Skripte anhand des Dateinamens aufsteigend sortiert.
Down
Down wird nicht automatisch ausgeführt. Diese Migrationsrichtung muss aufgrund
des Interfaces angeboten werden, wird aber nicht aufgeraufen.
Führt man diese Migrations-Richtung aus, werden die Dateinamen absteigend sortiert.
Beispiel
namespace brandbox\migration\cases {
use brandbox\component\log;
use brandbox\component\migrations;
/**
* @author Dirk Münker <muenker@konmedia.com>
*/
class welcome implements migrations\lib\migrateInterface {
/**
*
*/
public function up() {
log\log::get()->critical('Welcome migrations!');
}
/**
*
*/
public function down() {
log\log::get()->critical('Bye migrations!');
}
}
}