36 lines
976 B
PHP
Executable file
36 lines
976 B
PHP
Executable file
#!/usr/bin/env php
|
|
<?php
|
|
require_once __DIR__ . '/../misuzu.php';
|
|
|
|
$lockPath = $msz->dbCtx->getMigrateLockPath();
|
|
if(is_file($lockPath))
|
|
die('A migration script is already running.' . PHP_EOL);
|
|
|
|
touch($lockPath);
|
|
try {
|
|
echo 'Creating migration manager...' . PHP_EOL;
|
|
$manager = $msz->dbCtx->createMigrationManager();
|
|
|
|
echo 'Preparing to run migrations...' . PHP_EOL;
|
|
$manager->init();
|
|
|
|
echo 'Creating migration repository...' . PHP_EOL;
|
|
$repo = $msz->dbCtx->createMigrationRepo();
|
|
|
|
echo 'Running migrations...' . PHP_EOL;
|
|
$completed = $manager->processMigrations($repo);
|
|
|
|
if(empty($completed)) {
|
|
echo 'There were no migrations to run!' . PHP_EOL;
|
|
} else {
|
|
echo 'The following migrations have been completed:' . PHP_EOL;
|
|
foreach($completed as $migration)
|
|
echo ' - ' . $migration . PHP_EOL;
|
|
}
|
|
|
|
echo PHP_EOL;
|
|
} catch(Exception $ex) {
|
|
var_dump($ex);
|
|
} finally {
|
|
unlink($lockPath);
|
|
}
|