Page MenuHomePhabricator
Diviner libphutil Tech Docs ArcanistConfiguration

class ArcanistConfiguration
libphutil Technical Documentation ()

Runtime workflow configuration. In Arcanist, commands you type like "arc diff" or "arc lint" are called "workflows". This class allows you to add new workflows (and extend existing workflows) by subclassing it and then pointing to your subclass in your project configuration.

When specified as the arcanist_configuration class in your project's .arcconfig, your subclass will be instantiated (instead of this class) and be able to handle all the method calls. In particular, you can:

  • create, replace, or disable workflows by overriding buildWorkflow() and buildAllWorkflows();
  • add additional steps before or after workflows run by overriding willRunWorkflow() or didRunWorkflow() or didAbortWorkflow(); and
  • add new flags to existing workflows by overriding getCustomArgumentsForCommand().

Methods

public function buildWorkflow($command)

This method is not documented.
Parameters
$command
Return
wild

public function buildAllWorkflows()

This method is not documented.
Return
wild

final public function isValidWorkflow($workflow)

This method is not documented.
Parameters
$workflow
Return
wild

public function willRunWorkflow($command, $workflow)

This method is not documented.
Parameters
$command
ArcanistWorkflow$workflow
Return
wild

public function didRunWorkflow($command, $workflow, $err)

This method is not documented.
Parameters
$command
ArcanistWorkflow$workflow
$err
Return
wild

public function didAbortWorkflow($command, $workflow, $ex)

This method is not documented.
Parameters
$command
$workflow
Exception$ex
Return
wild

public function getCustomArgumentsForCommand($command)

This method is not documented.
Parameters
$command
Return
wild

final public function selectWorkflow(&$command, &$args, $configuration_manager, $console)

This method is not documented.
Parameters
&$command
array&$args
ArcanistConfigurationManager$configuration_manager
PhutilConsole$console
Return
wild

private function raiseUnknownCommand($command, $maybe)

This method is not documented.
Parameters
$command
array$maybe
Return
wild

private function expandCommandPrefix($command, $options)

This method is not documented.
Parameters
$command
array$options
Return
wild