A syntax error in the puppetmaster config, doesn't cause an error to be displayed when running puppetd --test on the CLI of a node that would be affected. I'm using 24.4 on both client and master.
When this is my node config:
node nyvl-flstg2 inherits virtual-php-web-node {
$custom_environment = "staging"
include www2
}
this is the output of puppetd --test on that node:
[root@nyvl-flstg2 ~]# puppetd --test
notice: Ignoring cache
info: Caching catalog at /var/lib/puppet/localconfig.yaml
notice: Starting catalog run
notice: Finished catalog run in 9.98 seconds
[root@nyvl-flstg2 ~]#
Which is all to be expected, everything is working correctly. However, if this is my node config:
node nyvl-flstg2 inherits virtual-php-web-node {
$custom_environment = "staging"
include www2 ?
}
I get this in /var/log/messages on the puppetmaster:
May 6 17:14:20 nyvl-flintranet puppetmasterd[29418]: Could not parse for environment development: Syntax error at '}' at /etc/puppet/manifests/nodes/nyvl-flstg2.pp:4
Which makes sense, because of the '?' in the line that is "include www2 ?"
However, if I run puppetd on the client, I have no knowledge that there is a syntax error:
[root@nyvl-flstg2 ~]# puppetd --test
notice: Ignoring cache
info: Caching catalog at /var/lib/puppet/localconfig.yaml
notice: Starting catalog run
notice: Finished catalog run in 9.15 seconds
[root@nyvl-flstg2 ~]#
In this case, I actually don't know what config the client is using, since it can't be using the current one (there's a significant syntax error) and it is "ignoring cache". I'd expect an error to be displayed saying that there is a syntax issue.