Open turicas opened 11 years ago
Good shot!
Would be nice if we are able to specify a cluster shared cryptography key (for authentication of the daemons) in this config file too (but #11 needs to be implemented before it).
Currently, the "daemons" are not real daemons since they do not detach from tty, neither create new process session id and other things daemons should do by definition (read more about UNIX daemons at Wikipedia). We should use the library python-daemon (described in PEP-3143) to implement it (it's very easy to use).
Since there are lots of tasks involved in this, I've created other issues (as dependencies of this one) and updated its description with dependencies and describing some possible command-line options.
We could use something like number_of_workers_per_cpu
instead of number_of_workers
in order to have more flexibility
This issue is actually related to lots of tasks and has some dependencies:
Broker
,Router
andPipeliner
classes - more on #56, #57 and #58;from_configuration
- more on #59;Broker
,Router
andPipeliner
'sstart
methods as a daemon - more on #60;A sample config file should be like:
All
store_*
directives insidebroker
section should be passed toBroker
and then toStoreClass.__init__
, as Broker should not ask for configuration to Router (as described in #56).And the main usage should be like:
Some command-line arguments are worth implementing:
-f <config-file>
: specify a configuration file to be used.-
meansstdin
. If not specified, try/etc/pypelinin.conf
,$HOME/.pypelinin
-c <config-file>
: specify a configuration file to be checked.-
meansstdin
-g <config-file>
: specify a configuration file to be generated (as an example).-
meansstdin
--version
,-V
(or maybe-v
): printspypelinin
version (pypelinin.__version__
) and exit-h
,--help
: show help information about command-line arguments and exitA manual page for
pypelinin
command is also desired, but it's not really needed on the first implementation.