config_blueprint.txt
33 lines
| 1.2 KiB
| text/plain
|
TextLexer
Brian Granger
|
r1767 | ========================================= | ||
Notes on the IPython configuration system | ||||
========================================= | ||||
Brian Granger
|
r1790 | This document has some random notes on the configuration system. | ||
Brian Granger
|
r1767 | To start, an IPython process needs: | ||
* Configuration files | ||||
* Command line options | ||||
* Additional files (FURL files, extra scripts, etc.) | ||||
It feeds these things into the core logic of the process, and as output, | ||||
produces: | ||||
* Log files | ||||
* Security files | ||||
There are a number of things that complicate this: | ||||
* A process may need to be started on a different host that doesn't have | ||||
any of the config files or additional files. Those files need to be | ||||
moved over and put in a staging area. The process then needs to be told | ||||
about them. | ||||
* The location of the output files should somehow be set by config files or | ||||
command line options. | ||||
* Our config files are very hierarchical, but command line options are flat, | ||||
making it difficult to relate command line options to config files. | ||||
* Some processes (like ipcluster and the daemons) have to manage the input and | ||||
output files for multiple different subprocesses, each possibly on a | ||||
different host. Ahhhh! | ||||
* Our configurations are not singletons. A given user will likely have | ||||
many different configurations for different clusters. | ||||