Project

General

Profile

PuppetThreeWorkarounds » History » Revision 6

Revision 5 (Sam Kottler, 11/13/2012 11:34 PM) → Revision 6/19 (Dominic Cleal, 11/27/2012 03:52 PM)

h1. PuppetThreeWorkarounds 

 {{toc}} 

 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. 

 h2. Status 

 Currently Making Foreman 1.1 (unreleased) works reliably with and Puppet 3.    This is available either 3 work together requires quite some hackery. At the least, you should be running Foreman from the nightly packages (.deb Git, or RPM) or from git (develop branch), with updates be willing to both the Foreman UI and the Smart Proxy. 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. 

 h2. Fixed issues uninitialized constant HostObserver (#1872) 

 The develop Foreman itself needs some code updates to load Puppet 3. You can merge the latest version from Sam Kottler's puppet3 branch contains fixes for in the following issues: usual way. Something like this: 

     git pull https://github.com/skottler/foreman puppet3 

 * uninitialized constant HostObserver (#1872) 
 * could h2. Could not find value for $confdir (Puppet::Settings::InterpolationError) 
 * report 

 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: 

     ssldir = $vardir/ssl 
     classfile = $vardir/classes.txt 
     localconfig = $vardir/localconfig 

 would become 

     ssldir = /var/lib/puppet/ssl 
     classfile = /var/lib/puppet/classes.txt 
     localconfig = /var/lib/puppet/localconfig 

 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: 

     ln -s /etc/puppet ~foreman/.puppet 

 h2. Report processing seems to work but the summaries are all zero 
 * cannot 

 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. 

 h2. Cannot view certificates that are present on the proxy 
 ** ensure sudo rules allow access to @/usr/bin/puppet@ now instead This is a problem with loading the "puppet" executable (instead of @/usr/sbin/puppetca@ (foreman-installer has already been updated) "puppetca"). https://github.com/theforeman/smart-proxy/pull/38 fixes this problem. 

 h2. Cannot import classes 
 * cannot import classes, "Attempting This is an issue on the proxy that causes the configuration to initialize global default settings more than once!" get loaded multiple times. https://github.com/theforeman/smart-proxy/pull/40 fixes this issue by ensuring that the load only happens once. 

 h2. Remaining issues 

 h3. Proxy complains of autosign permissions issues 

 The current version of Puppet ignores the file permissions settings in puppet.conf. In other words, this doesn't work: 

     [master] 
       autosign         = /etc/puppet/autosign.conf { mode = 664 } 

 However, for the moment, it's so broken that puppet will not fix the ownership of the file, so you can run this instead: 

     chown foreman-proxy:puppet /etc/puppet/autosign.conf 

 Alternatively, you could try moving it to the [main] section of the puppet.conf, which also seems to fix the problem. 

 Logged with patch as Puppet "issue #17371":http://projects.puppetlabs.com/issues/17371. 

 h1. Conclusions 

 There may well be other problems too. Let us know on the bug tracker, IRC, or the dev mailing list if you find any.