PuppetThreeWorkarounds » History » Version 4
Sam Kottler, 11/13/2012 10:48 PM
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 | 4 | Sam Kottler | h2. Cannot view certificates that are present on the proxy |
38 | This is a problem with loading the "puppet" executable (instead of "puppetca"). https://github.com/theforeman/smart-proxy/pull/38 fixes this problem. |
||
39 | |||
40 | 1 | Greg Sutcliffe | h2. Cannot import classes |
41 | |||
42 | 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 |
||
43 | |||
44 | h2. Proxy complains of autosign permissions issues |
||
45 | |||
46 | The current version of Puppet ignores the file permissions settings in puppet.conf. In other words, this doesn't work: |
||
47 | |||
48 | [master] |
||
49 | autosign = /etc/puppet/autosign.conf { mode = 664 } |
||
50 | |||
51 | However, for the moment, it's so broken that puppet will not fix the ownership of the file, so you can run this instead: |
||
52 | |||
53 | chown foreman-proxy:puppet /etc/puppet/autosign.conf |
||
54 | |||
55 | 3 | Greg Sutcliffe | Alternatively, you could try moving it to the [main] section of the puppet.conf, which also seems to fix the problem. |
56 | |||
57 | 1 | Greg Sutcliffe | h1. Conclusions |
58 | |||
59 | There may well be other problems too. Let us know on the bug tracker, IRC, or the dev mailing list if you find any. |