I am trying to set up some virtual users in puppet. The basic users work fine, but for some reason when I try to add "groups" to the user definition the run fails.
Here is the basic virtual user config...
class users::virtual {
define localuser ($uid,$gid) {
user { $title:
ensure => "present",
uid => $uid,
gid => $gid,
shell => "/bin/bash",
home => "/home/$title",
comment => $realname,
managehome => true,
}
}
}
and here is a user called out...
class my::users {
include users::virtual
@users::virtual::localuser { "jdehnert":
uid => "504",
gid => "users",
groups => ["wheel", "rvm"],
require => Group["rvm"],
}
}
the init.pp is...
class people {
include my::users
realize (
Users::Virtual::Localuser["jdehnert"],
)
}
When I run a test --noop on a client, I get this message on the client...
# puppetd --test --noop
err: Could not retrieve catalog from remote server: Error 400 on SERVER: Invalid parameter groups at /etc/puppet/manifests/users/users.pp:7 on node dev-web-1.
and this one on the server...
Aug 23 04:29:38 centos63 puppet-master[21713]: Invalid parameter groups at /etc/puppet/manifests/users/users.pp:7 on node dev-web-1
If I pull the "groups" line out, this config works just fine.
I also discovered that if I just make a plain user resource I can pass the "groups" parameter just fine. So, why does it not work with a virtual user?
Thanks,
James "Zeke" Dehnert
jdehnert@dehnert.com