Hi Guys,

I searched through the forum and found a few related threads but no clear 
puppet sanctioned solution. We have several modules that require the same 
package, for example rsync or gcc. We usually solve these conflicts by 
making that package a standalone module. We don't want to have modules 
exist for the sole purpose of installing gcc. Initially we had a 
development-tools module that installed the RH equivalent of the 
"Development Tools" yum group. In some cases only a third of the packages 
were truly required, so this solution seems suboptimal.

What would be the downside of creating a module called common-packages 
which would become the central location for simple packages (no 
daemon/service, etc)? Declare all the packages within the common-packages 
class as virtual resources. Then each module can feed off that class for 
the individual packages it requires. This would solve the problem caused by 
multiple identical package resources being defined throughout modules.

class  common-packages {

    @package { "rsync":
        ensure => "present",
    }

...
}

class somemodule {
    include common-packages
    realize(Package["rsync"])

...
}

We obviously would create individual modules for packages that require any 
advanced logic: apache, tomcat, etc. What would be the downside to doing 
this?

Thanks,
Ryan

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/puppet-users/-/EYtF4SJppcQJ.
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