blob: d6147e8447c6b0d5245b66e77c403f20d02006d3 (
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
|
.. -*- mode: rst -*-
.. _development-packages:
=======================
Developing for Packages
=======================
The :ref:`server-plugins-generators-packages` plugin offers multiple
backends to support different types of software repositories. New
backends can be written to handle new types of software repositories.
Each new Packages backend must be contained in its own module in
``Bcfg2.Server.Plugins.Packages``. Each module must implement two
classes: A
:class:`Bcfg2.Server.Plugins.Packages.Collection.Collection` subclass
called ``<module>Collection``, and a
:class:`Bcfg2.Server.Plugins.Packages.Source.Source` subclass called
``<module>Source``. E.g., the
:mod:`Bcfg2.Server.Plugins.Packages.Yum` backend has
:class:`Bcfg2.Server.Plugins.Packages.Yum.YumCollection` and
:class:`Bcfg2.Server.Plugins.Packages.Yum.YumSource` objects. These
interfaces are explained in detail below.
The Collection Object
=====================
.. automodule:: Bcfg2.Server.Plugins.Packages.Collection
The Source Object
=================
.. automodule:: Bcfg2.Server.Plugins.Packages.Source
The Packages Module
===================
.. automodule:: Bcfg2.Server.Plugins.Packages
Packages Source Description
===========================
.. automodule:: Bcfg2.Server.Plugins.Packages.PackagesSources
Existing Packages Backends
==========================
Yum
---
.. automodule:: Bcfg2.Server.Plugins.Packages.Yum
APT
---
.. automodule:: Bcfg2.Server.Plugins.Packages.Apt
Pacman
------
.. automodule:: Bcfg2.Server.Plugins.Packages.Pac
|