Page MenuHomePhabricator

Begin generalizing Aphlict server to prepare for clustering/sensible config file

Authored by epriestley on Apr 13 2016, 4:48 PM.
Referenced Files
Unknown Object (File)
Fri, Sep 16, 11:48 PM
Unknown Object (File)
Aug 18 2022, 10:46 AM
Unknown Object (File)
Aug 16 2022, 9:08 AM
Unknown Object (File)
Aug 16 2022, 5:09 AM
Unknown Object (File)
Aug 16 2022, 12:25 AM
Unknown Object (File)
Aug 9 2022, 5:19 PM
Unknown Object (File)
Jul 30 2022, 8:41 PM
Unknown Object (File)
Jul 30 2022, 8:37 AM



Ref T10697. Currently, aphlict takes a ton of command line flags to configure exactly one admin server and exactly one client server.

I want to replace this with a config file. Additionally, I plan to support:

  • arbitrary numbers of listening client ports;
  • arbitrary numbers of listening admin ports;
  • SSL on any port.

For now, just transform the arguments to look like they're a config file. In the future, I'll load from a config file instead.

This greater generality will allow you to do stuff like run separate HTTP and HTTPS admin ports if you really want. I don't think there's a ton of use for this, but it tends to make the code cleaner anyway and there may be some weird cross-datacneter cases for it. Certainly, we undershot with the initial design and lots of users want to terminate SSL in nginx and run only HTTP on this server.

(Some sort-of-plausible use cases are running separate HTTP and HTTPS client servers, if your Phabricator install supports both, or running multiple HTTPS servers with different certificates if you have a bizarre VPN.)

Test Plan

Started Aphlict, connected to it, sent myself test notifications, viewed status page, reviewed logfile.

Diff Detail

rP Phabricator
Lint Not Applicable
Tests Not Applicable

Event Timeline

epriestley retitled this revision from to Begin generalizing Aphlict server to prepare for clustering/sensible config file.
epriestley updated this object.
epriestley edited the test plan for this revision. (Show Details)
epriestley added a reviewer: chad.
chad edited edge metadata.


This revision is now accepted and ready to land.Apr 13 2016, 6:51 PM
This revision was automatically updated to reflect the committed changes.