Puppet apache module causing 'Error 400 on SERVER: Invalid parameter identifier'
- by Andy Shinn
I am receiving the following error when trying to use the latest puppetlabs-apache module from github (https://github.com/puppetlabs/puppetlabs-apache):
Error: Could not retrieve catalog from remote server: Error 400 on SERVER: Invalid parameter identifier at /etc/puppet/environments/apache_update/modules/apache/manifests/mod.pp:40 on node zordon.mydomain.com
Warning: Not using cache on failed catalog
Error: Could not retrieve catalog; skipping run
My node config looks like:
node 'zordon.mydomain.com' {
  include template::common
  include template::puppetagent
  include template::lamp
  User::Create 
  sudo::conf { 'joe':
    priority = 60,
    content  = 'joe  ALL=(ALL)       NOPASSWD: ALL',
    require  = User::Create['joe'],
  }
}
The template::lamp class is what uses apache module:
class template::lamp {
  include myfirewall
  Firewall 
  Firewall 
  class { 'apache':
  }
  class { 'apache::mod::php':
  }
  class { 'apache::mod::ssl':
  }
  class { 'mysql::server':
  }
}
It looks like serverfault markup is getting garbled on Puppet realize statements. The User::Create and Firewall lines are just realizing a user and 2 firewall rules.
I have verified that the /var/lib/puppet/lib/puppet/type/a2mod.rb type has the identifier parameter and it is the same MD5 as the server. I am using Puppet 3.0.1 on both agent and master. Any idea what may cause this?