mirror of
https://we.phorge.it/source/phorge.git
synced 2024-12-23 05:50:55 +01:00
Support an "--active" flag for selecting active tasks
Summary: Ref T13591. This is mostly a workaround for Big Sur not having pcntl/posix installed by default and the mess with M1 / Homebrew / SIP / Code Signing (see T13232) so I can't easily run actual daemons and need to fake them with `bin/worker execute --active`, but it's a reasonable flag on its own. Test Plan: - Ran `bin/worker execute --active` and `bin/worker cancel --active`. Maniphest Tasks: T13591 Differential Revision: https://secure.phabricator.com/D21517
This commit is contained in:
parent
3cb543ef8f
commit
15e022d648
1 changed files with 16 additions and 3 deletions
|
@ -21,6 +21,10 @@ abstract class PhabricatorWorkerManagementWorkflow
|
|||
'param' => 'int',
|
||||
'help' => pht('Limit to tasks with at least this many failures.'),
|
||||
),
|
||||
array(
|
||||
'name' => 'active',
|
||||
'help' => pht('Select all active tasks.'),
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
|
@ -28,10 +32,13 @@ abstract class PhabricatorWorkerManagementWorkflow
|
|||
$ids = $args->getArg('id');
|
||||
$class = $args->getArg('class');
|
||||
$min_failures = $args->getArg('min-failure-count');
|
||||
$active = $args->getArg('active');
|
||||
|
||||
if (!$ids && !$class && !$min_failures) {
|
||||
if (!$ids && !$class && !$min_failures && !$active) {
|
||||
throw new PhutilArgumentUsageException(
|
||||
pht('Use --id, --class, or --min-failure-count to select tasks.'));
|
||||
pht(
|
||||
'Use "--id", "--class", "--active", and/or "--min-failure-count" '.
|
||||
'to select tasks.'));
|
||||
}
|
||||
|
||||
$active_query = new PhabricatorWorkerActiveTaskQuery();
|
||||
|
@ -56,7 +63,13 @@ abstract class PhabricatorWorkerManagementWorkflow
|
|||
}
|
||||
|
||||
$active_tasks = $active_query->execute();
|
||||
$archive_tasks = $archive_query->execute();
|
||||
|
||||
if ($active) {
|
||||
$archive_tasks = array();
|
||||
} else {
|
||||
$archive_tasks = $archive_query->execute();
|
||||
}
|
||||
|
||||
$tasks =
|
||||
mpull($active_tasks, null, 'getID') +
|
||||
mpull($archive_tasks, null, 'getID');
|
||||
|
|
Loading…
Reference in a new issue