63 lines
1.4 KiB
PHP
63 lines
1.4 KiB
PHP
<?php
|
|
|
|
use Symfony\Component\Console\Helper\HelperSet;
|
|
use Doctrine\ORM\Tools\Console\ConsoleRunner;
|
|
|
|
fwrite(
|
|
STDERR,
|
|
'[Warning] The use of this script is discouraged. See'
|
|
. ' https://www.doctrine-project.org/projects/doctrine-orm/en/current/reference/tools.html#doctrine-console'
|
|
. ' for instructions on bootstrapping the console runner.'
|
|
. PHP_EOL
|
|
);
|
|
|
|
echo PHP_EOL . PHP_EOL;
|
|
|
|
$autoloadFiles = [
|
|
__DIR__ . '/../vendor/autoload.php',
|
|
__DIR__ . '/../../../autoload.php'
|
|
];
|
|
|
|
foreach ($autoloadFiles as $autoloadFile) {
|
|
if (file_exists($autoloadFile)) {
|
|
require_once $autoloadFile;
|
|
break;
|
|
}
|
|
}
|
|
|
|
$directories = [getcwd(), getcwd() . DIRECTORY_SEPARATOR . 'config'];
|
|
|
|
$configFile = null;
|
|
foreach ($directories as $directory) {
|
|
$configFile = $directory . DIRECTORY_SEPARATOR . 'cli-config.php';
|
|
|
|
if (file_exists($configFile)) {
|
|
break;
|
|
}
|
|
}
|
|
|
|
if ( ! file_exists($configFile)) {
|
|
ConsoleRunner::printCliConfigTemplate();
|
|
exit(1);
|
|
}
|
|
|
|
if ( ! is_readable($configFile)) {
|
|
echo 'Configuration file [' . $configFile . '] does not have read permission.' . "\n";
|
|
exit(1);
|
|
}
|
|
|
|
$commands = [];
|
|
|
|
$helperSet = require $configFile;
|
|
|
|
if ( ! ($helperSet instanceof HelperSet)) {
|
|
foreach ($GLOBALS as $helperSetCandidate) {
|
|
if ($helperSetCandidate instanceof HelperSet) {
|
|
$helperSet = $helperSetCandidate;
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
|
|
ConsoleRunner::run($helperSet, $commands);
|