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
    Commented Feb 3, 2011 at 12:05

You must log in to answer this question.

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