Issue #12397 has been updated by Alex Jurkiewicz.

Status changed from Duplicate to Re-opened

Sorry, it seems this is another bug. I downloaded puppet-2.7.3.tar.gz official 
package and installed it (after removing all puppet.* packages from my system). 
Same test results:
<pre># touch /home/puppet/main/manifests/site.pp 
# puppetd -t
notice: Ignoring --listen on onetime run
err: Could not retrieve catalog from remote server: Error 400 on SERVER: Could 
not find class ssh::auth for puppet.fqdn at 
/home/puppet/main/manifests/roles/soe.pp:36 on node puppet.fqdn
warning: Not using cache on failed catalog
err: Could not retrieve catalog; skipping run
Time:
         Last run: 1328666002
# puppetd -t
notice: Ignoring --listen on onetime run
info: Caching catalog for puppet.fqdn
err: Failed to apply catalog: Parameter options failed: Options must be 
provided as an array, not a comma separated list
Time:
         Last run: 1328666015
# touch /home/puppet/main/manifests/site.pp
# puppetd -t                               
notice: Ignoring --listen on onetime run
err: Could not retrieve catalog from remote server: Error 400 on SERVER: Could 
not find class ssh::auth for puppet.fqdn at 
/home/puppet/main/manifests/roles/soe.pp:36 on node puppet.fqdn
warning: Not using cache on failed catalog
err: Could not retrieve catalog; skipping run
Time:
         Last run: 1328666034
# 
</pre>
(I've never seent he "parameter options failed" error before, I'm assuming it's 
unimportant.)

Then I tested 2.7.10 with the same results. Here's our Puppet.conf. I think a 
lot is irrelevant (we don't use the test/dev environments anywhere) but didn't 
want to strip anything important:
<pre># File managed by Puppet 

[main]
vardir = /var/lib/puppet
logdir = /var/log/puppet
rundir = /var/run/puppet
ssldir = $vardir/ssl
manifest = "/home/puppet/main/manifests/site.pp"
modulepath = "/home/puppet/main/modules"

# Report Translactions to Master (or separated report) server
report = true
reportserver=puppet.fqdn

summarize = true
# trace = true
usecacheonfailure = true

[test]
vardir = /var/lib/puppet
logdir = /var/log/puppet
rundir = /var/run/puppet
ssldir = $vardir/ssl
manifest = "/home/puppet/test/manifests/site.pp"
modulepath = "/home/puppet/test/modules"

# Report Translactions to Master (or separated report) server
report = true
reportserver=puppet.fqdn

summarize = true
# trace = true
usecacheonfailure = true

[dev]
vardir = /var/lib/puppet
logdir = /var/log/puppet
rundir = /var/run/puppet
ssldir = $vardir/ssl
manifest = "/home/puppet/dev/manifests/site.pp"
modulepath = "/home/puppet/dev/modules"

# Report Translactions to Master (or separated report) server
report = true
reportserver=puppet.fqdn

summarize = true
# trace = true
usecacheonfailure = true

[user]
vardir = /var/lib/puppet
logdir = /var/log/puppet
rundir = /var/run/puppet
ssldir = $vardir/ssl

[agent]
pluginsync=false
pluginsource = puppet://$server/plugins
plugindest = $vardir/lib/plugins
factpath = $vardir/lib/puppet/facter
listen=true
report=true
classfile = $vardir/classes.txt
localconfig = $vardir/localconfig
runinterval = 1800
# runinterval = 21600 # Run every 6 hours

server=puppet.fqdn

[puppetrun]
allow = puppet.fqdn

[master]
certname = puppet.fqdn
# autosign = true

# Storeconfigs activated
storeconfigs = true

# Sets MySQL database backend
dbadapter=mysql
dbserver=XXXXX
dbuser=XXXXX
dbpassword=XXXXX

# Reporting
reports=rrdgraph,log
graph = true
reportfrom = XXXXX
smtpserver = XXXXX
tagmap = $confdir/tagmail.conf
syslogfacility = user
rrddir = $vardir/rrd
rrdinterval = $runinterval
rrdgraph = true</pre>
----------------------------------------
Bug #12397: Puppet doesn't work initially after touch'ing any .pp source file
https://projects.puppetlabs.com/issues/12397

Author: Alex Jurkiewicz
Status: Re-opened
Priority: Normal
Assignee: 
Category: compiler
Target version: 
Affected Puppet version: 2.7.1
Keywords: 
Branch: 


Hi, we recently upgraded to 2.7.1 (from 2.6.x) and are seeing a strange 
problem. If we touch any *.pp file on the master the next puppet client run 
will fail, but all subsequent runs succeed.

An example of running Puppet on our puppetmaster itself:
<pre>
$ sudo puppetd -t                                    
notice: Ignoring --listen on onetime run
info: Caching catalog for puppet.fqdn
[...]
notice: Finished catalog run in 25.01 seconds
$ sudo touch /home/puppet/main/manifests/site.pp
$ sudo puppetd -t
notice: Ignoring --listen on onetime run
err: Could not retrieve catalog from remote server: Error 400 on SERVER: Could 
not find class ssh::auth for puppet.fqdn at 
/home/puppet/main/manifests/roles/soe.pp:34 on node puppet.fqdn
warning: Not using cache on failed catalog
err: Could not retrieve catalog; skipping run
Time:
         Last run: 1328226675
$
</pre>

The ssh::auth mentioned line is the first non-top level module included by 
every node:
<pre>
$ cat /home/puppet/main/manifests/roles/soe.pp
class soe {
    $servername = $puppet_server
    include common
    include hosts
    include resolver
    include cron
    include sysctl
    include misc
    package { "bsd-mailx": ensure => installed }
    package { "sysstat": ensure => installed }
    include ssh::auth
[...]
</pre>

What's going on here?


-- 
You have received this notification because you have either subscribed to it, 
or are involved in it.
To change your notification preferences, please click here: 
http://projects.puppetlabs.com/my/account

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Bugs" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/puppet-bugs?hl=en.

Reply via email to