Puppet Enterprise 3.3, jfryman/nginx SERVER: Invalid parameter ensure on Concat

2014-09-08

If you ever encounter the follwing error on Puppet Enterprise 3.3, using the nginx 0.0.10 module by jfryman:

Error: Could not retrieve catalog from remote server: Error 400 on SERVER: Invalid parameter ensure on Concat[/etc/nginx/conf.d/fpm-upstream.conf] at /opt/eelpuppet/modules/develop/nginx/manifests/resource/upstream.pp:75 on node eelpuppetagent01 Warning: Not using cache on failed catalog Error: Could not retrieve catalog; skipping run

This could be caused by the module path ordering. Puppet Enterprise 3.3 comes with puppetlabs/concat 1.0.4, whereas jfryman/nginx 0.0.10 depends on a puppetlabs/concat 1.1.0.

In attempting to keep my PE setup as clean as possible, I simply added my own environment-based modulepath to the end of the basemodulepath setting in /etc/puppetlabs/puppet/puppet.conf.

basemodulepath = /etc/puppetlabs/puppet/modules:/opt/puppet/share/puppet/modules:/opt/eelpuppet/modules/$environment

Since my own modulepath comes last, Puppet never loads my own version of puppetlabs/concat. I fixed this by reordering basemodulepath:

basemodulepath = /opt/eelpuppet/modules/$environment:/etc/puppetlabs/puppet/modules:/opt/puppet/share/puppet/modules
puppet
Creative Commons License

Ghost

Spare time in IT