mirror of
https://we.phorge.it/source/phorge.git
synced 2024-11-24 15:52:41 +01:00
48fc3126a1
Summary: Ref T7352. This supports passing autoscaling configuration to daemons, and adds `debug --autoscale`. Test Plan: See D11711. Reviewers: btrahan Reviewed By: btrahan Subscribers: epriestley Maniphest Tasks: T7352 Differential Revision: https://secure.phabricator.com/D11860
57 lines
1.3 KiB
PHP
57 lines
1.3 KiB
PHP
<?php
|
|
|
|
final class PhabricatorDaemonManagementLaunchWorkflow
|
|
extends PhabricatorDaemonManagementWorkflow {
|
|
|
|
public function shouldParsePartial() {
|
|
return true;
|
|
}
|
|
|
|
protected function didConstruct() {
|
|
$this
|
|
->setName('launch')
|
|
->setExamples('**launch** [n] __daemon__ [options]')
|
|
->setSynopsis(pht(
|
|
'Start a specific __daemon__, or __n__ copies of a specific '.
|
|
'__daemon__.'))
|
|
->setArguments(
|
|
array(
|
|
array(
|
|
'name' => 'argv',
|
|
'wildcard' => true,
|
|
),
|
|
));
|
|
}
|
|
|
|
public function execute(PhutilArgumentParser $args) {
|
|
$argv = $args->getArg('argv');
|
|
|
|
$daemon_count = 1;
|
|
if ($argv) {
|
|
if (is_numeric(head($argv))) {
|
|
$daemon_count = array_shift($argv);
|
|
}
|
|
|
|
if ($daemon_count < 1) {
|
|
throw new PhutilArgumentUsageException(
|
|
pht('You must launch at least one daemon.'));
|
|
}
|
|
}
|
|
|
|
if (!$argv) {
|
|
throw new PhutilArgumentUsageException(
|
|
pht('You must specify which daemon to launch.'));
|
|
}
|
|
|
|
$daemon = array();
|
|
$daemon['class'] = array_shift($argv);
|
|
$daemon['argv'] = $argv;
|
|
|
|
$daemons = array_fill(0, $daemon_count, $daemon);
|
|
|
|
$this->launchDaemons($daemons, $is_debug = false);
|
|
|
|
return 0;
|
|
}
|
|
|
|
}
|