ReleaseEngineering/PuppetAgain/Modules/packages: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
(Created page with "This module manages the installation of packages. It provides the level of abstraction between "NRPE should be installed" (<tt>include packages::nrpe</tt>) and the details of th...")
 
No edit summary
Line 2: Line 2:


Most packages will have a dedicated module which abstracts the configuration of that package across operating systems -- for example, NRPE plugins may be installed in different directories on different operating systems.
Most packages will have a dedicated module which abstracts the configuration of that package across operating systems -- for example, NRPE plugins may be installed in different directories on different operating systems.
"Installation" here is taken to mean getting the package installed, along with any supporting files(e.g., NRPE plugins).


= Packages =
= Packages =
Line 7: Line 9:
The following packages are available:
The following packages are available:


(none yet)
* ''packages::ntp'' - installs the NTP daemon
* ''packages::python'' - installs all available versions of python (below)
* ''packages::python26'' - Python-2.6 in /tools/python26, including devel headers
* ''packages::python27'' - Python-2.7 in /tools/python27, including devel headers
* ''packages::mozilla-tools'' - un-abstracted class that will go away


= Implementation =
= Implementation =
In general, package management resources get set up in the 'packagesetup' stage (see [ReleaseEngineering/PuppetAgain#Stages]), so that subsequent uses of the package manager can assume it is configured.  This is done with an invocation of ''packages::setup'' from the ''toplevel::base'' class.


== CentOS ==
== CentOS ==


On CentOS, packages are installed with the yum provider, and the relevant repositories will be added to yum as needed.
On CentOS, packages are installed with the yum provider, and the relevant repositories are added to yum in the packagesetup stage.

Revision as of 04:19, 16 March 2012

This module manages the installation of packages. It provides the level of abstraction between "NRPE should be installed" (include packages::nrpe) and the details of that installation, which will vary widely between linux, OSX, and Windows-based systems.

Most packages will have a dedicated module which abstracts the configuration of that package across operating systems -- for example, NRPE plugins may be installed in different directories on different operating systems.

"Installation" here is taken to mean getting the package installed, along with any supporting files(e.g., NRPE plugins).

Packages

The following packages are available:

  • packages::ntp - installs the NTP daemon
  • packages::python - installs all available versions of python (below)
  • packages::python26 - Python-2.6 in /tools/python26, including devel headers
  • packages::python27 - Python-2.7 in /tools/python27, including devel headers
  • packages::mozilla-tools - un-abstracted class that will go away

Implementation

In general, package management resources get set up in the 'packagesetup' stage (see [ReleaseEngineering/PuppetAgain#Stages]), so that subsequent uses of the package manager can assume it is configured. This is done with an invocation of packages::setup from the toplevel::base class.

CentOS

On CentOS, packages are installed with the yum provider, and the relevant repositories are added to yum in the packagesetup stage.