We have a puppet (version 0.24.5) server configured with Git, running on Debian Lenny x64. This is a currently functioning environment that pushes puppet updates as needed, except for one snag.

I recently defined a custom check command that calls a python script. I put the script in /etc/puppet/files/nagios/plugins/ which is the distribution directory on the puppet box where the other (already previously pushed) scripts reside . I defined which hosts will use the new check command, etc.

When I commit the change on the puppet server, Git sees the new file and commits. On the client side I can restart the puppet client and daemon.log will show the new file is found, but it never gets pushed to any of the clients. However, Nagios does get updated and of course the checks fail because it can't find the script to run.

For the life of me I cannot figure out why this is happening. On the puppet server I have triple-checked the permissions on my new python script against the other scripts in the plugins directory and just can't figure out what I'm missing.


  • Have you set puppet logging to debug to see if that gives you anything extra?
    – Scott Pack
    Dec 8, 2010 at 21:19
  • 1
    please show your manifest and debug logs from the client. Jan 31, 2011 at 5:46

1 Answer 1


Thanks for the replies guys. Sorry, the thread got lost on me and I forgot about it.

I solved the problem -- I wasn't putting the new file in the correct manifest, so as a result it wasn't being pushed out to the server types I was expecting to receive it.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .