I've just setup a new production environment with puppet. Using 0.25.4 in client/server. Ruby is at 1.8.5, CentOS 5.4.

I've made a simple manifest for configuring yum-updatesd, but the puppetmaster doesn't seem to notice changes done to site.pp:

err: Could not parse for environment production: Could not match 'node' at /etc/puppet/manifests/site.pp:1
err: Could not retrieve catalog from remote server: Error 400 on SERVER: Could not parse for environment production: Could not match 'node' at /etc/puppet/manifests/site.pp:1

Notice, it says line 1. But line 1 contains an import statement:

# cat -n /etc/puppet/manifests/site.pp
1 import "update-notification"
3 node default {
4 include update-notification
5 update-notification::configure()
6 }

I've tried to reboot the server, delete and recreate site.pp, start and stop puppetmaster and puppet, with no luck. What am I missing?

2 Answers 2


I've found the problem. I've been writing the manifests with notepad++, with EOL set to Windows, NOT Unix. So there was there problem :/


Looks like you're already including update-notification in your node, so just remove the import statement, it's not necessary.

  • "import" is used to include other configuration files, i.e. "include the 'update-notification' file from the manifests directory, while "include" is used for class matching, i.e. "include the 'update-notification' class for this client", where the class could possibly be defined in the included import "update-notification" file.
    – user69344
    Feb 3, 2011 at 12:05

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.