On Jun 14, 1:14 pm, Brian Gallew <g...@gallew.org> wrote:
> class jboss {
>   include users
>   User["java"]{home => "/home/app1"
>   realize(User["java"])}
>
> where java is declared in
>
> class users {
>   @user{"java": uid=500, gid=501}
>
> }

Brian,

I'm still in .24.8 land, so some of this is WAG.
For your stated example the error means you need to use 'class jboss
inherits users { }'[1]. This puts your Class[jboss] resources in the
right scope so you can redefine existing resources from Class[users].
The existing 'include users' will add that puppetclass, and resources,
to your node but you aren't in the correct scope to redefine them.

You might also try #1088[2] style collections, with overrides[3]. I
haven't used these, but I think you'd do something like:

class users {
 @user{ "java": uid => 500, gid => 500 }
}

class jboss {
 include users
 User <| name == "java" |> { home => "/home/app1" }
}

class notjboss {
 include users
 User <| name == "java" |> { home => "/home/app2" }
}

[1] http://docs.reductivelabs.com/guides/language_tutorial.html#classes
[2] http://projects.puppetlabs.com/issues/1088
[3] http://docs.reductivelabs.com/guides/exported_resources.html

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To post to this group, send email to puppet-us...@googlegroups.com.
To unsubscribe from this group, send email to 
puppet-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/puppet-users?hl=en.

Reply via email to