Migrationsbefehle #
Die Migrationsbefehle laufen im Wurzelverzeichnis der Installation als ./console exp:migration:<name> (dasselbe
Programm wie php bin/php/expmigration<name>.php). Führen Sie sie als der Benutzer aus, unter dem der Webserver läuft;
als root mit --allow-root-user. Jeder Befehl, der schreibt, ist ein Probelauf, bis er --apply bekommt. Die
vollständige Liste der Optionen jedes Befehls steht auf seiner erzeugten Referenzseite, erstellt aus den
Optionsdefinitionen des Befehls selbst.
Inhalt #
- Die Befehle
- Nach Aufgabe
- Optionen, die die meisten Befehle teilen
- Exit-Codes und die Maschinenausgabe
- Die exp:upgrade-Befehle, die mit Migrationen arbeiten
- Verwandte Seiten
Die Befehle #
| Befehl | Was er tut | Meistgenutzte Optionen | Referenz |
|---|
exp:migration:status | jede Migration mit ihrem Zustand (done, pending, not-needed, failed, unknown), die verwaisten, die letzten Läufe, die wartenden Pushes, die Sperre | --fail-on-pending, --runs, --environment | expmigrationstatus |
exp:migration:migrate | der Probelauf und mit --apply der Lauf: Sicherungspunkt, Migrationen der Reihe nach, Wiederherstellung bei einem Fehler, neuer Sicherungspunkt, Commit, Tag, Push | --apply, --only, --path, --environment, --login, --no-commit, --no-push, --force --reason | expmigrationmigrate |
exp:migration:dry-run | der Plan jeder ausstehenden Migration; --simulate führt sie in einer Transaktion aus, die zurückgerollt wird (PostgreSQL, SQLite), --diff zeigt, was sich geändert hat | --simulate, --diff, --only, --path | expmigrationdryrun |
exp:migration:rollback | nimmt einen Lauf (seinen Sicherungspunkt von vorher), eine Migration (ihr down()) oder, für Fachleute, einen beliebigen Sicherungspunkt zurück | <run-id>, <migration-id>, --expert --confirm=<caption-id>, --parts | expmigrationrollback |
exp:migration:resume | ein neuer Lauf dessen, was ein gescheiterter oder unterbrochener Lauf ausstehend ließ | --apply, --only | expmigrationresume |
exp:migration:caption | ein Sicherungspunkt der Installation jetzt, oder die Liste der Sicherungspunkte | --apply, --list, --label | expmigrationcaption |
exp:migration:push | pusht die Läufe, deren Push gescheitert ist | --apply, --limit | expmigrationpush |
exp:migration:check | die Prüfung der Migrationsdateien ohne Datenbank: Namen, Kopf, Reihenfolge, PHP-Syntax, die Klasse | --path, --environment | expmigrationcheck |
exp:migration:generate | schreibt eine neue PHP-Migration aus dem Gerüst | --skeleton <name>, --description, --author, --source=extension:<name>, --apply | expmigrationgenerate |
exp:migration:convert | wandelt YAML-Migrationen des Referenz-Bundles in YAML-Migrationen von Exponential um; was sich nicht umwandeln lässt, steht in der neuen Datei | <Datei oder Ordner>, --source=extension:<name>, --apply | expmigrationconvert |
exp:migration:repo:split | trennt den Migrationsordner mit seiner Historie in ein eigenes Repository ab | --to, --remote, --branch, --apply | expmigrationreposplit |
Nach Aufgabe #
Optionen, die die meisten Befehle teilen #
| Option | Bedeutung |
|---|
--apply | die Änderungen vornehmen; ohne sie ein Probelauf, der nichts ändert |
--format=json | die Maschinenausgabe exp-migration/1 statt Text |
--environment=<name> | die Migrationen für eine andere Umgebung als die der Installation zählen (site.ini [AdminEnvironment] Level oder EXP_ENV mit Level=auto) |
--login=<login> | als dieser Benutzer laufen statt als migration.ini [RunSettings] RunAsUser |
--only=<ids> | nur diese Migrationen (eine Komma-Liste oder wiederholt) |
--path=<dateien oder ordner> | nur die Migrationen in diesen Dateien oder Ordnern; exp:migration:check prüft sie statt der Migrationsordner |
--run-id=<id>, --progress=<datei> | den Lauf vor dem Start benennen und ihn über eine Datei mit JSON-Zeilen verfolgen (was die Administration nutzt) |
Jedes Skript nimmt außerdem die Standardoptionen des Skript-Frameworks (--help, --siteaccess, --debug,
--quiet, --allow-root-user).
Exit-Codes und die Maschinenausgabe #
| Code | Bedeutet |
|---|
| 0 | erledigt, oder nichts zu tun |
| 1 | eine Migration ist gescheitert, eine Prüfung hat ein Problem gefunden, die Sperre war belegt, eine geänderte Datei wurde abgelehnt, oder etwas steht mit exp:migration:status --fail-on-pending aus |
| 2 | Bedienung: eine Option ist falsch oder fehlt, oder nicht committeter Code hat einen Lauf verhindert |
| 3 | die Datenbank ist nicht erreichbar |
| 4 | interner Fehler |
--format=json schreibt exp-migration/1: den Lauf, die Umgebung, die Engine und ihren Transaktionsmodus, jede
Migration mit Zustand, Aktion und Meldungen, die Sicherungspunkte, das Repository, eine Zusammenfassung, die Fehler, die
Warnungen und den Exit-Code (Die Maschinenausgabe).
./console exp:migration:status --fail-on-pending --format=json > var/log/migration-status.json || echo "pending or failed"
Die exp:upgrade-Befehle, die mit Migrationen arbeiten #
Die Upgrade-Schritte des Kernels sind Migrationen der Quelle kernel, und exp:upgrade teilt die Aufzeichnung, die
Sperre und die Sicherungspunkte mit den Migrationen:
| Befehl | Mit Migrationen |
|---|
exp:upgrade | legt die Aufzeichnungstabellen an (Schritt 6.0.15-migration-tables); führt jede Stufe aus, auch code, libraries und finish, die ein Migrationslauf ihm überlässt |
exp:upgrade:status | die Schritte und ihr Zustand; ein von einem Migrationslauf angewendeter Schritt ist auch hier done |
exp:upgrade:captions | listet die Sicherungspunkte von Upgrades und von Migrationsläufen (Arten migration-pre, migration-post, migration-failure) |
exp:upgrade:rollback | stellt jeden Sicherungspunkt wieder her, auch einen, den ein Migrationslauf genommen hat |
exp:upgrade:finish | nach einem Migrationslauf, der Schritte angewendet hat, oder nach einer Wiederherstellung: Deploy, Caches, Smoke-Check |
exp:upgrade:verify | findet Abweichungen: einen als erledigt aufgezeichneten Schritt, dessen Wirkung fehlt |
Verwandte Seiten #
- Migrationen: der Einstieg, Alle Rezepte, Häufige Fragen
- Die Anleitung, das Tutorial,
PHP-Migrationen,
Zurücknehmen und Sicherungspunkte,
Das Migrations-Repository
- In der Administration, Einstellungen,
Richtlinien, Ansichten und Ereignisse
- Das Dateiformat,
Die Funktion
- Wenn eine Migration scheitert,
Fehlermeldungen
- Migrationen oder Umzug einer Site
- Alle Konsolenbefehle, Upgrade mit der Konsole
- Freie Dokumentation: Diese Seite darf unter der GNU FDL 1.3 frei kopiert, übersetzt und verbessert werden.