Provide a "--local" flag to "bin/conduit call" to force in-process execution
commit59c855276b0b60d759af0be3ed662f7fafcee989
authorepriestley <git@epriestley.com>
Tue, 14 Apr 2020 19:47:37 +0000 (14 12:47 -0700)
committerepriestley <git@epriestley.com>
Tue, 14 Apr 2020 20:24:26 +0000 (14 13:24 -0700)
treeffa285e03bc36874cb2617851465845b9e67503c
parent4655a5f059c43db4ca1a8b82c12713e686bc6608
Provide a "--local" flag to "bin/conduit call" to force in-process execution

Summary:
See PHI1692. Currently, it's hard to get a local profile or "--trace" of some Diffusion API methods, since they always proxy via HTTP -- even if the local node can serve the request.

This always-proxy behavior is intentional (so we always go down the same code path, to limit surprises) but inconvenient when debugging. Allow an operator to connect to a node which can serve a request and issue a `--local` call to force in-process execution.

This makes it straightforward to "--trace" or "--xprofile" the call.

Test Plan: Ran `bin/conduit call ...` with and without `--local` using a Diffusion method on a clustered repository. Without `--local`, saw proxy via HTTP. With `--local`, saw in-process execution.

Differential Revision: https://secure.phabricator.com/D21114
src/applications/conduit/management/PhabricatorConduitCallManagementWorkflow.php