Thanks you John, I'm taking notes.

    Best Regards,
    eduardo.

On 5 jul, 09:48, jcbollinger <john.bollin...@stjude.org> wrote:
> On Tuesday, July 3, 2012 4:43:24 PM UTC-5, eduardo wrote:
>
> > Thanks your answers.
> >  I don't figure out how avoid execute because i have a massive input
> > account by ENC json setting all users and membership of each one of
> > them.  I had to make uniq entries array to avoid Duplicate definition
> > error condition because many users could (in fact are) belong to a
> > same group.
>
> That sounds like a different issue.  Certainly you should be sure that your
> ENC does not emit redundant data, but the involvement of an ENC or lots of
> data does not speak to the solution Nan suggested.
>
> >  May be i miss something but i think that i can benefit from working
> > with defined resource types
> > (vs classes) so the same nesting call is setting dependencies
> > implicitly.
>
> Likely you can indeed benefit from careful application of defined types,
> but that doesn't really have anything to do with implicit dependencies
> (a.k.a. "autorequires").
>
>
>
> >  For example a big picture of nesting call in my recipe is something
> > like :
>
> >  class updssh( $users ) -> Parameter class having json as input.
> >  └── user_keys { $arrays_users:   } Call it foreach user.
> >       ├── updssh::check_groups { $usr_groups: } Call it for ensure
> > membership of user
> >       └── updssh::load_ssh_key{ $user_ssh :     Call it to set account
> > (create/update)
>
> Your language and naming shows that you are thinking of classes and
> resources as actions, but that conflicts with Puppet's design.  Puppet
> classes and resources are things (nouns).  That includes defined type
> instances.  Class and resource declarations are not instructions to Puppet
> to do something (not even Execs), but rather descriptions of the state that
> the target node is supposed to be in.  You need to understand this to
> master Puppet.
>
> > So I don't see dependencies like any problem because the nesting call
> > is doing by self.
> >  Testing are tell me that nevertheless , i'm wondering , Am i wrong ?
>
> Are you asking whether you need to express the relationships between User
> resources and the Group resources representing their secondary groups?
> Yes, you do.  Puppet does not generate those particular relationships
> automatically, and the order in which the Puppet agent *applies* resources
> is constrained only by resource relationships.  In particular, that order
> has nothing to do with the order in which resource declarations were
> parsed.  You need to be sure the secondary groups should already exist
> before you manage users that are supposed to belong to them, so you need to
> declare relationships between them.
>
> > Even knowing it's the first version i have to confess that i'm happy
> > with it because not only resolve dependencies by self but also it
> > create groups that don't exist. Also i enjoy using functions like
> > 'defined' which it's great to check current status.
>
> I'm glad you're pleased (now), but you are setting yourself up for pain.
> In particular, you should avoid the 'defined' function at all costs, as it
> introduces problematic and unneeded parse-order dependencies.  With an ENC
> at your disposal, 'defined' doesn't even give you anything that you cannot
> easily achieve by other means.
>
> It's not clear to me what practical problems you may now be facing, so I'm
> going to leave it at commentary for the time being.
>
> John

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To post to this group, send email to puppet-users@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