diff options
author | msquare <msquare@notrademark.de> | 2018-09-02 16:55:35 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-09-02 16:55:35 +0200 |
commit | a103bc06e28f5eca6ba9c28c81ae1227d689f224 (patch) | |
tree | 759d675b621eed86b20f14abe448e83fa8d22562 /bin/migrate | |
parent | bd8ceda6830f97247b73932b85ce41af5b8d2ab0 (diff) | |
parent | 2bebbeb1919e1d370ac5c0668e0db5ea63e73292 (diff) |
Merge pull request #452 from MyIgel/rebuild-database
Rebuild database
Diffstat (limited to 'bin/migrate')
-rwxr-xr-x | bin/migrate | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/bin/migrate b/bin/migrate new file mode 100755 index 00000000..ab3598d4 --- /dev/null +++ b/bin/migrate @@ -0,0 +1,38 @@ +#!/usr/bin/env php +<?php + +use Composer\Autoload\ClassLoader; +use Engelsystem\Application; +use Engelsystem\Database\Migration\Migrate; +use Engelsystem\Database\Migration\MigrationServiceProvider; + +require_once __DIR__ . '/../includes/application.php'; + +/** @var $loader ClassLoader */ +$baseDir = __DIR__ . '/../db/migrations'; + +/** @var Application $app */ +$app = app(); +$app->register(MigrationServiceProvider::class); + +/** @var Migrate $migration */ +$migration = $app->get('db.migration'); +$migration->setOutput(function ($text) { echo $text . PHP_EOL; }); + +if (isset($argv[1]) && strtolower($argv[1]) == 'help') { + echo PHP_EOL . 'Usage: ' . $argv[1] . ' [up|down] [one-step]' . PHP_EOL . PHP_EOL; + exit; +} + +$method = Migrate::UP; +if (isset($argv[1]) && strtolower($argv[1]) == 'down') { + $argv = array_values($argv); + $method = Migrate::DOWN; +} + +$oneStep = false; +if (isset($argv[2]) && strtolower($argv[2]) == 'one-step') { + $oneStep = true; +} + +$migration->run($baseDir, $method, $oneStep); |