Send graceful shutdown signals to daemons in Phabricator
Summary:
Fixes T5855. Adds a --graceful N flag to phd stop and phd restart.
phd will send SIGINT, wait N seconds, SIGTERM, wait 15 seconds, and SIGKILL. By default, N is 15.
Test Plan:
- Ran bin/phd debug ... and used ^C to interrupt daemons. Saw graceful shutdown behavior, and abrupt termination on multiple ^C.
- Ran bin/phd start, bin/phd stop and bin/phd restart with --graceful set to various things, notably 0. Saw graceful shutdowns on the CLI and in the web UI. With 0, abrupt shutdowns.
Reviewers: btrahan, hach-que
Reviewed By: hach-que
Subscribers: epriestley
Maniphest Tasks: T5855
Differential Revision: https://secure.phabricator.com/D10228