summaryrefslogtreecommitdiffstats
path: root/doc
diff options
context:
space:
mode:
Diffstat (limited to 'doc')
-rw-r--r--doc/client/tools.txt31
-rw-r--r--doc/development/compat.txt2
-rw-r--r--doc/development/option_parsing.txt20
-rw-r--r--doc/installation/distributions.txt6
-rw-r--r--doc/installation/prerequisites.txt2
-rw-r--r--doc/man/bcfg2.conf.txt14
-rw-r--r--doc/releases/1.3.5.txt33
-rw-r--r--doc/releases/1.3.6.txt34
-rw-r--r--doc/releases/index.txt1
-rw-r--r--doc/reports/dynamic.txt3
-rw-r--r--doc/server/database.txt10
-rw-r--r--doc/server/plugins/connectors/awstags.txt4
-rw-r--r--doc/server/plugins/connectors/templatehelper.txt2
-rw-r--r--doc/server/plugins/generators/cfg.txt9
14 files changed, 134 insertions, 37 deletions
diff --git a/doc/client/tools.txt b/doc/client/tools.txt
index 09ea76230..93eb11925 100644
--- a/doc/client/tools.txt
+++ b/doc/client/tools.txt
@@ -152,7 +152,36 @@ Systemd service support.
SYSV
----
-Handles System V Packaging format that is available on Solaris.
+Handles `System V Packaging <http://docs.oracle.com/cd/E19683-01/806-7008/index.html>`_ format that is available on Solaris.
+
+.. note::
+
+ If the Packages specified in the PackageList are datastream format
+ packages distributed via HTTP, you must specify a simplefile attribute.
+ Such packages will be downloaded and installed from a local path.
+
+ Note the use of the uri attribute in the datastream format example. If
+ the simplefile attribute exists, the
+ :ref:`Pkgmgr <server-plugins-generators-pkgmgr>` plugin will
+ automatically construct the url attribute by concatenating the uri and
+ simplefile attributes (with an intervening slash).
+
+ Datastream format over HTTP:
+
+ .. code-block:: xml
+
+ <PackageList uri='http://install/packages' type='sysv' priority='0'>
+ <Package name='SCbcfg2' version='1.3.4' simplefile='bcfg-1.3.4-1' />
+ </PackageList>
+
+ File system format over NFS or local path:
+
+ .. code-block:: xml
+
+ <PackageList url='/mnt/install/packages' type='sysv' priority='0'>
+ <Package name='SCbcfg2' version='1.3.4' />
+ </PackageList>
+
Upstart
-------
diff --git a/doc/development/compat.txt b/doc/development/compat.txt
index f90274ce5..8700c46d3 100644
--- a/doc/development/compat.txt
+++ b/doc/development/compat.txt
@@ -60,6 +60,8 @@ behavior (e.g., :func:`input`) do not cause unexpected side-effects.
+---------------------------------+--------------------------------------------------+---------------------------------------------------------+
| urlparse | :func:`urlparse.urlparse` | :func:`urllib.parse.urlparse` |
+---------------------------------+--------------------------------------------------+---------------------------------------------------------+
+| urlretrieve | :func:`urllib.urlretrieve` | :func:`urllib.request.urlretrieve` |
++---------------------------------+--------------------------------------------------+---------------------------------------------------------+
| HTTPBasicAuthHandler | :class:`urllib2.HTTPBasicAuthHandler` | :class:`urllib.request.HTTPBasicAuthHandler` |
+---------------------------------+--------------------------------------------------+---------------------------------------------------------+
| HTTPPasswordMgrWithDefaultRealm | :class:`urllib2.HTTPPasswordMgrWithDefaultRealm` | :class:`urllib.request.HTTPPasswordMgrWithDefaultRealm` |
diff --git a/doc/development/option_parsing.txt b/doc/development/option_parsing.txt
index 091f43cdd..e14031e1e 100644
--- a/doc/development/option_parsing.txt
+++ b/doc/development/option_parsing.txt
@@ -174,28 +174,32 @@ The normal implementation pattern is this:
#. Define all of your subcommands as children of
:class:`Bcfg2.Options.Subcommand`.
-#. Define a :class:`Bcfg2.Options.CommandRegistry` object that will be
+#. Create a :class:`Bcfg2.Options.CommandRegistry` object that will be
used to register all of the commands. Registering a command
collect its options and adds it as a
:class:`Bcfg2.Options.Subparser` option group to the main option
parser.
-#. Register your commands with
- :func:`Bcfg2.Options.register_commands`, parse options, and run.
+#. Register your commands with the
+ :func:`Bcfg2.Options.CommandRegistry.register_commands` method of
+ your ``CommandRegistry`` object.
+#. Add options from the
+ :attr:`Bcfg2.Options.CommandRegistry.command_options`
+ attribute to the option parser.
+#. Parse options, and run.
:mod:`Bcfg2.Server.Admin` provides a fairly simple implementation,
-where the CLI class is itself the command registry:
+where the CLI class subclasses the command registry:
.. code-block:: python
class CLI(Bcfg2.Options.CommandRegistry):
def __init__(self):
Bcfg2.Options.CommandRegistry.__init__(self)
- Bcfg2.Options.register_commands(self.__class__,
- globals().values(),
- parent=AdminCmd)
+ self.register_commands(globals().values(), parent=AdminCmd)
parser = Bcfg2.Options.get_parser(
description="Manage a running Bcfg2 server",
components=[self])
+ parser.add_options(self.subcommand_options)
parser.parse()
In this case, commands are collected from amongst all global variables
@@ -208,9 +212,7 @@ At a minimum, the :func:`Bcfg2.Options.Subcommand.run` method must be
overridden, and a docstring written.
.. autoclass:: Subcommand
-.. autoclass:: HelpCommand
.. autoclass:: CommandRegistry
-.. autofunction:: register_commands
Actions
-------
diff --git a/doc/installation/distributions.txt b/doc/installation/distributions.txt
index 306439485..5dad4d860 100644
--- a/doc/installation/distributions.txt
+++ b/doc/installation/distributions.txt
@@ -36,9 +36,9 @@ Just use `pacman` to perform the installation ::
Debian
======
-Packages of Bcfg2 are available for Debian Lenny, Debian Squeeze, and
-Debian Sid. The fastest way to get Bcfg2 onto your Debian system
-is to use ``apt-get`` or ``aptitude``. ::
+Packages of Bcfg2 are available for all current versions of Debian.
+The fastest way to get Bcfg2 onto your Debian system is to use ``apt-get``
+or ``aptitude``. ::
sudo aptitude install bcfg2 bcfg2-server
diff --git a/doc/installation/prerequisites.txt b/doc/installation/prerequisites.txt
index 8119be06b..d89d44894 100644
--- a/doc/installation/prerequisites.txt
+++ b/doc/installation/prerequisites.txt
@@ -25,7 +25,7 @@ Bcfg2 Client
+----------------------------+------------------------+--------------------------------+
| lxml or elementtree [#f2]_ | Any | lxml: libxml2, libxslt, python |
+----------------------------+------------------------+--------------------------------+
-| python-apt [#f3]_ | Any | python |
+| python-apt [#f3]_ | 0.7.91 and greater | python |
+----------------------------+------------------------+--------------------------------+
| debsums (if APT tool | Any | |
| driver is used) | | |
diff --git a/doc/man/bcfg2.conf.txt b/doc/man/bcfg2.conf.txt
index 825ab2121..62c4ac1a8 100644
--- a/doc/man/bcfg2.conf.txt
+++ b/doc/man/bcfg2.conf.txt
@@ -662,9 +662,8 @@ control the database connection of the server.
Port for database connections. Not used for sqlite3.
options
- Various options for the database connection. The value is
- expected as multiple key=value pairs, separated with commas.
- The concrete value depends on the database engine.
+ Various options for the database connection. The value expected
+ is the literal value of the django OPTIONS setting.
reporting_engine
The database engine used by the Reporting plugin. One of the
@@ -697,9 +696,8 @@ control the database connection of the server.
Port for reporting database connections. Not used for sqlite3.
reporting_options
- Various options for the reporting database connection. The value
- is expected as multiple key=value pairs, separated with commas.
- The concrete value depends on the database engine.
+ Various options for the database connection. The value expected
+ is the literal value of the django OPTIONS setting.
Reporting options
-----------------
@@ -716,6 +714,10 @@ Reporting options
web_debug
Turn on Django debugging.
+ max_children
+ Maximum number of children for the reporting collector. Use 0 to
+ disable the limit. (default is 0)
+
See Also
--------
diff --git a/doc/releases/1.3.5.txt b/doc/releases/1.3.5.txt
new file mode 100644
index 000000000..893cdbf39
--- /dev/null
+++ b/doc/releases/1.3.5.txt
@@ -0,0 +1,33 @@
+.. -*- mode: rst -*-
+.. vim: ft=rst
+
+.. _releases-1.3.5:
+
+1.3.5
+=====
+
+We are happy to announce the release of Bcfg2 1.3.5. It is available for
+download at:
+
+ ftp://ftp.mcs.anl.gov/pub/bcfg
+
+This is primarily a bugfix release.
+
+* Properly close db connections
+* Improved error messages
+* Fix yum upgrade/downgrade
+* Enable bcfg2-yum-helper to depsolve for arches incompatible with
+ server
+* Spec file fixes
+* bcfg2-crypet: Default to only (En|De)crypt vars that need it
+* Fix email reporting bug
+* Fix debsums parsing
+* Fix solaris makefile
+* SYSV: Implement downloading and installing SYSV packages from HTTP:
+ http://docs.bcfg2.org/client/tools.html#sysv
+* Fix debian bcfg2-server init script
+
+
+Special thanks to the following contributors for this release: John
+Morris, Jonathan Billings, Chris Brinker, Tim Laszlo, Matt Kemp, Michael
+Fenn, Pavel Labushev, Nathan Olla, Alexander Sulfrian.
diff --git a/doc/releases/1.3.6.txt b/doc/releases/1.3.6.txt
new file mode 100644
index 000000000..757fbf6f5
--- /dev/null
+++ b/doc/releases/1.3.6.txt
@@ -0,0 +1,34 @@
+.. -*- mode: rst -*-
+.. vim: ft=rst
+
+.. _releases-1.3.6:
+
+1.3.6
+=====
+
+We are happy to announce the release of Bcfg2 1.3.6. It is available for
+download at:
+
+ ftp://ftp.mcs.anl.gov/pub/bcfg
+
+This is primarily a bugfix release.
+
+* Fix python 2.4 compatibility
+* Fix stale lockfile detection and behavior
+* Reporting: fix filter urls
+* Fix client protocol option handling
+* YUM: Add options to enable and disable Yum plugins
+* Packages: add name to sources
+* Reporting: better exception handling
+* Various interrupt handling fixes
+* Fix client decision whitelist/blacklist handling
+* Fix database OPTIONS parsing
+
+ This change requires you to set the *options* value of the
+ ``[database`` section in ``bcfg2.conf`` to the literal value which is
+ passed through to the django OPTIONS setting.
+
+ https://docs.djangoproject.com/en/1.7/ref/settings/#std:setting-OPTIONS
+
+Special thanks to the following contributors for this release: Michael
+Fenn, Matt Kemp, Alexander Sulfrian, Jonathan Billings.
diff --git a/doc/releases/index.txt b/doc/releases/index.txt
index 479aa19de..271fc23cc 100644
--- a/doc/releases/index.txt
+++ b/doc/releases/index.txt
@@ -10,4 +10,5 @@ Release Announcements
.. toctree::
1.4.0pre1
+ 1.3.5
1.3.4
diff --git a/doc/reports/dynamic.txt b/doc/reports/dynamic.txt
index 53bdef24e..38d4c7e3a 100644
--- a/doc/reports/dynamic.txt
+++ b/doc/reports/dynamic.txt
@@ -270,6 +270,9 @@ reporting
* web_prefix: Prefix to be added to Django's MEDIA_URL
* file_limit: The maximum size of a diff or binary data to
store in the database.
+* max_children: Maximum number of children for the reporting
+ collector. Use 0 to disable the limit and spawn a thread
+ as soon as a working file is available.
.. _dynamic_transports:
diff --git a/doc/server/database.txt b/doc/server/database.txt
index 986914171..c90dcb710 100644
--- a/doc/server/database.txt
+++ b/doc/server/database.txt
@@ -69,8 +69,8 @@ of ``/etc/bcfg2.conf``.
+--------------------+------------------------------------------------------------+---------------------------------------+
| options | Extra parameters to use when connecting to the database. | None |
| | Available parameters vary depending on your database | |
-| | backend. The parameters are supplied as comma separated | |
-| | key=value pairs. | |
+| | backend. The parameters are supplied as the value of the | |
+| | django OPTIONS setting. | |
+--------------------+------------------------------------------------------------+---------------------------------------+
| reporting_engine | The name of the Django database backend to use for the | None |
| | reporting database. Takes the same values as ``engine``. | |
@@ -86,9 +86,9 @@ of ``/etc/bcfg2.conf``.
| reporting_port | The port to connect to for the reporting database | None |
+--------------------+------------------------------------------------------------+---------------------------------------+
| reporting_options | Extra parameters to use when connecting to the reporting | None |
-| | database. Available parameters vary depending on your | |
-| | database backend. The parameters are supplied as comma | |
-| | separated key=value pairs. | |
+| | database. Available parameters vary depending on your | |
+| | database backend. The parameters are supplied as the | |
+| | value of the django OPTIONS setting. | |
+--------------------+------------------------------------------------------------+---------------------------------------+
diff --git a/doc/server/plugins/connectors/awstags.txt b/doc/server/plugins/connectors/awstags.txt
index b884ca065..5ac2fbc28 100644
--- a/doc/server/plugins/connectors/awstags.txt
+++ b/doc/server/plugins/connectors/awstags.txt
@@ -7,8 +7,8 @@
=========
The AWSTags plugin is a connector that retrieves tags from instances
-in EC2, and can assign optionally assign
-group membership pased on patterns in the tags. See `Using Tags
+in EC2, and can optionally assign group membership based on patterns
+in the tags. See `Using Tags
<http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html>`_
for details on using tags in EC2.
diff --git a/doc/server/plugins/connectors/templatehelper.txt b/doc/server/plugins/connectors/templatehelper.txt
index c719f93cb..d113dcab7 100644
--- a/doc/server/plugins/connectors/templatehelper.txt
+++ b/doc/server/plugins/connectors/templatehelper.txt
@@ -56,7 +56,7 @@ Usage
Specific helpers can be referred to in
templates as ``metadata.TemplateHelper[<modulename>]``. That accesses
-a HelperModule object will has, as attributes, all symbols listed in
+a HelperModule object will have, as attributes, all symbols listed in
``__export__``. For example, consider this helper module::
__export__ = ["hello"]
diff --git a/doc/server/plugins/generators/cfg.txt b/doc/server/plugins/generators/cfg.txt
index 8b49e244b..c991f20c9 100644
--- a/doc/server/plugins/generators/cfg.txt
+++ b/doc/server/plugins/generators/cfg.txt
@@ -321,15 +321,6 @@ processed for any Genshi, Cheetah, or Jinja2 base file.
Cfg/etc/fstab/fstab.H_host.example.com.genshi
Cfg/etc/fstab/fstab.G50_server.cheetah
-Genshi templates take precence over cheetah templates. For example, if
-two files exist named::
-
- Cfg/etc/fstab/fstab.genshi
- Cfg/etc/fstab/fstab.cheetah
-
-The Cheetah template is ignored. Exploiting this fact is probably a
-pretty bad idea in practice.
-
You can mix Genshi and Cheetah when using different host-specific or
group-specific files. For example::