----- "Kenton Brede" <[EMAIL PROTECTED]> wrote:
> > With a small operation, it is okay.  With something larger, it
> doesn't scale well and it doesn't make good use of module grouping. 
> For instance, when setting up openldap, I want to talk about what I do
> (packages I install, conf files I drop in, etc) all in one place so I
> can see what I do with openldap as a whole more easily.  If it were
> broken out into several places based on OS type, it isn't quite as
> easy to ensure that each OS type is similar.  For instance, on a
> debian box and a redhat box, I can look at classes.txt and see that
> openssh class is applied, so I know that I'm managing openssh on
> debian and redhat boxes, but with the other approach, I wouldn't be
> able to see that without digging into the debian.pp and redhat.pp
> files.
> >
> 
> Hmmm, unless I'm missing something, what you describe is what I'm
> doing.  If I'm wrong please let me know.
> 
> Currently I have two types of modules:
> 
> Modules based on type (file, cron, etc) that are not tied to a
> particular service.  For example, a custom script that goes to host
> foo, or a group such as rhel5.  And modules based on a service
> (apache, iptables, etc), which contain any resources that are needed.
> 
> The only time I have a rhel5.pp class, is if it's as sub-module.  For
> example cron::rhel5.pp, which contains cron jobs for rhel5  servers.
> Or apache::rhel5.pp, which contains rhel5 specifics for that group. 
> I
> don't have a single class rhel5.pp where I try to manage all
> resources, if that's what you thought I did.
> 
> <snip>

That is indeed what I thought you were doing.  Phew.  Yes, what you are doing 
seems logical.  We don't currently break things down into OS.  Instead, our 
apache and apache::foo and whatnot all have internal logic to handle different 
operating systems with case statements.  But what you're doing is something 
I've seen other people doing and it seems pretty good to.  Doesn't quite fit my 
view of how I organize things in my head but that doesn't necessarily make it 
"wrong."



> >> Could you give a couple examples of what you mean by "action type"
> >> and
> >> "functional role?"
> 
> > An action type is like sort of like "what you do to a system."  So,
> things like "install this file" or "install this package."  Functional
> role is things like "manage openldap" or "ensure these users are
> present" which would in turn include actions like installing packages
> or files or setting up user preferences.
> >
> 
> Thanks for the clarification :)
> Kent

No problem!

-- 
Digant C Kasundra <[EMAIL PROTECTED]>
Technical Lead, ITS Unix Systems and Applications, Stanford University

--~--~---------~--~----~------------~-------~--~----~
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 [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/puppet-users?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to