Within the user type I am unable to pass an empty array to the groups value so that the user is not assigned to any groups.
@user { "test":
ensure => "present",
uid => "500",
gid => "500",
comment => "test user",
home => "/home/test",
shell => "/bin/bash",
groups => [], <----
membership => "inclusive",
require => Group["test"]
The error is:
err: //basenode/virt_all_users/User[test]/groups: change from root to failed: interning empty string
I was able to track it down to the symbolize function in util.rb. Checking for the length of the string and not "intern"ing it fixed that problem, however, I have no idea if it breaks anything else.
def symbolize(value)
if value.respond_to? :intern
if( value.length == 0 )
value
else
value.intern
end
else
value
end
end