Project

General

Profile

PuppetThreeWorkarounds » History » Version 2

Greg Sutcliffe, 11/12/2012 11:47 AM

1 1 Greg Sutcliffe
h1. PuppetThreeWorkarounds
2
3
{{toc}}
4
5
This page details the various fixes for making Foreman work with Puppet 3. If your issue is not listed, please open a bug report on the issue tracker, and detail appropriate workarounds (with link to the bug number) here.
6
7
Making Foreman and Puppet 3 work together requires quite some hackery. At the least, you should be running Foreman from Git, or be willing to perform serious amounts patching by hand. Usual disclaimers apply - this may all break in horrible ways, don't use it in production, etc etc etc.
8
9
h2. uninitialized constant HostObserver (#1872)
10
11
Foreman itself needs some code updates to load Puppet 3. You can merge the latest version from Sam Kottler's puppet3 branch in the usual way. Something like this:
12
13
    git pull https://github.com/skottler/foreman puppet3
14
15
h2. Could not find value for $confdir (Puppet::Settings::InterpolationError)
16
17
Puppet's parser is currently having issues with interpolated variables. If you have any variables in your puppet.conf, change them to explicit paths (exception: $environment seems ok). For example:
18
19
    ssldir = $vardir/ssl
20
    classfile = $vardir/classes.txt
21
    localconfig = $vardir/localconfig
22
23
would become
24
25
    ssldir = /var/lib/puppet/ssl
26
    classfile = /var/lib/puppet/classes.txt
27
    localconfig = /var/lib/puppet/localconfig
28
29
In addition, a change in Puppet 3 causes it to look in the wrong place for the puppet.conf file (~/.puppet instead of /etc/puppet). You may need to run:
30
31
    ln -s /etc/puppet ~foreman/.puppet
32
33
h2. Report processing seems to work but the summaries are all zero
34
35 2 Greg Sutcliffe
This appears to be a minor change in the Puppet::Transaction::Report object. Sam Kottler's puppet3 branch has been updated with a workaround, so please let us know if you're still seeing this.
36 1 Greg Sutcliffe
37
h2. Cannot import classes
38
39
This is a bug in the Puppet parser code. We've submitted a pull request, and are waiting for PuppetLabs to merge it. You can try it yourself, the code is at https://github.com/puppetlabs/puppet/pull/1270
40
41
h2. Proxy complains of autosign permissions issues
42
43
The current version of Puppet ignores the file permissions settings in puppet.conf. In other words, this doesn't work:
44
45
    [master]
46
      autosign       = /etc/puppet/autosign.conf { mode = 664 }
47
48
However, for the moment, it's so broken that puppet will not fix the ownership of the file, so you can run this instead:
49
50
    chown foreman-proxy:puppet /etc/puppet/autosign.conf
51
52
h1. Conclusions
53
54
There may well be other problems too. Let us know on the bug tracker, IRC, or the dev mailing list if you find any.