Notes on the IPython configuration systemΒΆ

This document has some random notes on the configuration system.

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.

Previous topic

IPython.kernel.core.notification blueprint

Next topic

The IPython API

This Page

Quick search