summaryrefslogtreecommitdiffstats
path: root/doc/plugins/index.txt
blob: a478f6a8faa4ac13376e7793faf8de8e18c6063a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
.. -*- mode: rst -*-

=======
Plugins
=======

Plugins are the source of all logic used in building a config. They can perform one of several tasks:

#. Generating configuration inventory lists for clients
#. Generating configuration entry contents for clients
#. Probing client-side state (like hardware inventory, etc) -- the generic client probing mechanism is described at :doc:`probes`.
#. Automating administrative tasks (e.g. :doc:`generators/sshbase` which automates ssh key management)
#. Generating client per-entry installation decision-lists

Enabling Plugins
================

In order for the bcfg2 server to use a plugin, it needs to be listed on the *plugins* line in bcfg2.conf.

Default Plugins
===============

The `Bcfg2 repository`_ has the default plugin list currently distributed with Bcfg2: http://trac.mcs.anl.gov/projects/bcfg2/browser/trunk/bcfg2/src/lib/Server/Plugins.

.. _Bcfg2 repository: http://trac.mcs.anl.gov/projects/bcfg2/browser/trunk/bcfg2/src/lib/Server/Plugins.

Metadata (Grouping)
-------------------

.. toctree::
   :maxdepth: 2
   :glob:

   grouping/*

Each of these plugins has a corresponding subdirectory with the same name in the Bcfg2 repository.

Abstract Configuration (Structures)
-----------------------------------

.. toctree::
   :maxdepth: 2
   :glob:

   structures/*

Each of these plugins has a corresponding subdirectory with the same name in the Bcfg2 repository.

Literal Configuration (Generators)
----------------------------------

.. toctree::
   :maxdepth: 2
   :glob:

   generators/*

Each of these plugins has a corresponding subdirectory with the same name in the Bcfg2 repository.

Statistics Plugins
------------------

.. toctree::
   :maxdepth: 2
   :glob:

   statistics/*

DBStats can be enabled by adding it to the plugins line in /etc/bcfg2.conf.

Version Plugins
---------------

.. toctree::
   :maxdepth: 2
   :glob:

   version/*

Plugin Roles (in 1.0)
=====================

In version 1.0, plugins have been refactored into a series of roles. This are fine-grained plugin capabilities that govern how the server core interacts with plugins.

More details can be found in :doc:`plugin-roles`

.. toctree::
   :hidden:

   plugin-roles
   probes