#!/usr/bin/env php <?php /** * 'Remo' commandline front controller * * Use site aliases to make remote calls. */ // If we're running from phar load the phar autoload file. $pharPath = \Phar::running(true); if ($pharPath) { $autoloaderPath = "$pharPath/vendor/autoload.php"; } else { if (file_exists(__DIR__.'/vendor/autoload.php')) { $autoloaderPath = __DIR__.'/vendor/autoload.php'; } elseif (file_exists(__DIR__.'/../../autoload.php')) { $autoloaderPath = __DIR__ . '/../../autoload.php'; } else { die("Could not find autoloader. Run 'composer install'."); } } $classLoader = require $autoloaderPath; // Customization variables $argv = $_SERVER['argv']; $appName = "Remo"; $appVersion = trim(file_get_contents(__DIR__ . '/VERSION')); $commandClasses = [ \Consolidation\SiteProcess\Remo\RemoCommands::class ]; $selfUpdateRepository = 'consolidation/site-process'; $configPrefix = 'REMO'; $configFilePath = getenv($configPrefix . '_CONFIG') ?: getenv('HOME') . '/.remo/remo.yml'; // Define our Runner, and pass it the command classes we provide. $runner = new \Robo\Runner($commandClasses); $runner ->setSelfUpdateRepository($selfUpdateRepository) ->setConfigurationFilename($configFilePath) ->setEnvConfigPrefix($configPrefix) ->setClassLoader($classLoader); // Execute the command and return the result. $output = new \Symfony\Component\Console\Output\ConsoleOutput(); $statusCode = $runner->execute($argv, $appName, $appVersion, $output); exit($statusCode);