summaryrefslogtreecommitdiffstats
path: root/doc/development
diff options
context:
space:
mode:
authorChris St. Pierre <chris.a.st.pierre@gmail.com>2013-10-30 10:02:38 -0400
committerChris St. Pierre <chris.a.st.pierre@gmail.com>2013-10-30 12:54:24 -0400
commita8de10cde0b83743e8e453c8318cd1ab15e7c419 (patch)
treeef1749c586f5c6521de28ffe7a8674f045f2fc7a /doc/development
parent1c5c4f285293142e38ff54797e1c4b5a820e9cb0 (diff)
downloadbcfg2-a8de10cde0b83743e8e453c8318cd1ab15e7c419.tar.gz
bcfg2-a8de10cde0b83743e8e453c8318cd1ab15e7c419.tar.bz2
bcfg2-a8de10cde0b83743e8e453c8318cd1ab15e7c419.zip
DB: fixed how Django settings are loaded
Diffstat (limited to 'doc/development')
-rw-r--r--doc/development/option_parsing.txt10
1 files changed, 10 insertions, 0 deletions
diff --git a/doc/development/option_parsing.txt b/doc/development/option_parsing.txt
index 52da8fced..091f43cdd 100644
--- a/doc/development/option_parsing.txt
+++ b/doc/development/option_parsing.txt
@@ -67,9 +67,19 @@ There is no required interface for an option component. They may
* An ``options`` attribute that is a list of
:class:`Bcfg2.Options.Options.Option` objects or option groups.
+* A boolean ``parse_first`` attribute; if set to True, the options for
+ the component are parsed before all other options. This is useful
+ for, e.g., Django database settings, which must be parsed before
+ plugins that use Django can be loaded.
* A function or static method, ``options_parsed_hook``, that is called
when all options have been parsed. (This will be called again if
:func:`Bcfg2.Options.Parser.Parser.reparse` is called.)
+* A function or static method, ``component_parsed_hook``, that is
+ called when early option parsing for a given component has
+ completed. This is *only* called for components with
+ ``parse_first`` set to True. It is passed a single argument: a
+ :class:`argparse.Namespace` object containing the complete set of
+ early options.
Options are collected through two primary mechanisms: