Puppet Debian

Version 2 (Anonymous, 03/13/2010 08:01 pm)

1 1
# Running Puppet on Debian
2 1
3 1
## Reporting Problems
4 1
5 1
If you have problems with the released Debian packages (as obtained
6 1
from Debian), please report bugs to the usual Debian bug submission
7 1
address, NOT to the Puppet lists or bug tracker.
8 1
9 1
## Package Maintainer
10 1
11 1
The Debian packages of Puppet is team maintained on
12 1
[Alioth](https://alioth.debian.org/projects/pkg-puppet/). If you
13 1
are interested in participating, please join Alioth and request to
14 1
join the project.
15 1
16 1
The packaging repository is available through
17 1
[git](git://git.debian.org/git/pkg-puppet/puppet.git)
18 1
19 1
## Installation
20 1
21 1
Puppet packages are maintained as part of the standard Debian
22 1
solution, so you should be able to install Puppet and Facter
23 1
directly from your regular installation medium using apt or
24 1
dselect:
25 1
26 1
    # apt-get install puppet
27 1
28 1
The current stable release of Debian (codenamed "Etch") comes with
29 1
Puppet version 0.20.1, but the latest versions of Puppet are
30 1
available from the unstable repositories. It is an explicit goal of
31 1
the package maintainer that uploaded packages should work
32 1
acceptably on the current stable release of Debian.
33 1
34 1
For up-to-date information on the versions of Puppet in Debian, it
35 1
is best to refer to
36 1
[http://packages.qa.debian.org/puppet](http://packages.qa.debian.org/puppet),
37 1
as it has the latest and greatest information.
38 1
39 1
# Install Puppet packages from Testing on Debian
40 1
41 1
These packages were previously available in **unstable** and have
42 1
now been migrated to **testing**.
43 1
44 1
However, even these versions seem to be trailing puppet's
45 1
**stable** release by at least 2 minor versions. A fully up-to-date
46 1
version is available from Debian **experimental**. (The below
47 1
instructions apply, save for replacing **testing** with
48 1
**experimental**)
49 1
50 1
In order to use these packages you'll have to pin your
51 1
configuration. For more info, Google for apt and pinning. Here's
52 1
the short version:
53 1
54 1
\1. Edit /etc/apt/preferences and add the following lines:
55 1
56 1
    Package: *
57 1
    Pin: release a=testing
58 1
    Pin-Priority: 1
59 1
    
60 1
    Package: puppet
61 1
    Pin: release a=testing
62 1
    Pin-Priority: 1001
63 1
    
64 1
    Package: puppetmaster
65 1
    Pin: release a=testing
66 1
    Pin-Priority: 1001
67 1
68 1
\2. Edit /etc/apt/sources.list and add the following lines (change
69 1
 the mirror to your own localized mirror):
70 1
71 1
    deb http://ftp.nl.debian.org/debian/ testing main
72 1
73 1
\3. Edit /etc/apt/apt.conf.d/release and add:
74 1
75 1
    APT::Default-Release "stable";
76 1
77 1
\4. Do a "apt-get update" and "apt-get install puppet
78 1
 puppetmaster". You'll get the version from testing, without
79 1
 upgrading your whole system to lenny.
80 1
81 1
If you have a problem installing the packages from unstable or
82 1
testing on a stock Etch system, please report it as a bug in
83 1
[The Debian BTS](http://bugs.debian.org/).
84 1
85 1
# Storeconfigs
86 1
87 1
If you want to use the storeconfigs directive, the puppetmaster
88 1
also needs the packages:
89 1
90 1
-   rails
91 1
-   libsqlite3-ruby1.8
92 1
93 1
# Puppet with Runit on Debian
94 1
95 1
If you wish to use runit instead of SysV init scripts you can refer
96 1
to [[Puppet With Runit]] page.
97 1
98 1
# Gotchas
99 1
100 1
The useradd provider needs libshadow-ruby1.8
101 1
102 1
Install the lsb-release package if you want see lsb\* related
103 1
variables from facter.
104 1
105 1
This example shows how you can pull these packages in
106 1
automatically.
107 1
108 1
    class debian {
109 1
            package { "libshadow-ruby1.8": ensure => installed }
110 1
            package { "lsb-release": ensure => installed }
111 1
    }
112 1
113 1
# Additional Help
114 1
115 1
If you are managing more than one Debian release, you may want to
116 1
refer to [[Debian\_Patterns|Recipes/Debian]] for some guidance
117 1
about how Puppet can differentiate between Debian releases. There
118 1
is also a guide to [[Bootstrapping With Puppet]] with Puppet.