Re: [Puppet Users] Is there a way...

Luke Bigum
Thu, 01 Dec 2011 16:10:50 -0000

Generally when I run into this problem I make the troublesome
configuration file a "Concat" file - there''s a number of
implementations
around, including a pure Ruby one I''ve been meaning to track down but
this is RIP''s original: https://github.com/ripienaar/puppet-concat

Make the Postfix module write out the "common" Postfix configuration
as
a Concat file, and then have a facility to allow other modules to add
configuration. You can do this with a define like postfix::extra_config
that adds fragments to the main postfix config file (main.cf or
master.cf, whatever you need to edit). Other modules can then make
additions to the Postfix config. It implies a level of trust between
your modules, and there''s nothing stopping one module adding one
fragment, and another unrelated module adding a conflicting fragment to
the file.

This approach works quite well for an snmpd module where your base
config is the same but then you allow other modules to add more lines to
snmpd.conf, depending on what modules are declared on that node (mysql,
disk space checks, etc).

On 01/12/11 15:49, Peter Berghold wrote:
> ... to invoke a template from multiple modules?  Here is what I mean:
>
> I have a module called "postfix" which handles the installation
and
> base configuration of the postfix MTA.  I have another module called
> "spamassassin" which deals with the download and installation of
the
> Mail::SpamAssassin Perl module which incidently adds the init scripts
> for SpamAssassin and the clamd binary.
>
> I''d like that spamassassin module to modify both the master.cf
> <http://master.cf> and main.cf <http://main.cf> file of postfix
to
> enable its own functionality.
>
> Rather than make SpamAssassin part of the postfix module I separated
> it out since not all machines running postfix need to have the
> overhead of SpamAssassin (eg. mailers behind the firewall that
don''t
> accept outside email) but my border MX machines do.
>
> There''s another module that needs to modify postfix''s
config files to
> be enabled as well and that''s the ClamAV module, I won''t
go into
> detail here.
>
> The problem I see is if each of them modify the configs, the postfix
> module is going to remove the changes the other modules made.
>
> Is there a slick way of doing this?
>
> --
> Peter L. Berghold
> Owner, Shark River Technical Solutions LLC
> --
> 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+unsubscribe@googlegroups.com.
> For more options, visit this group at
> http://groups.google.com/group/puppet-users?hl=en.


--
Luke Bigum
Information Systems
+44 (0) 20 3192 2520
Luke.Bigum@lmax.com | http://www.lmax.com
LMAX, Yellow Building, 1A Nicholas Road, London W11 4AN



The information in this e-mail and any attachment is confidential and is
intended only for the named recipient(s). The e-mail may not be disclosed or
used by any person other than the addressee, nor may it be copied in any way. If
you are not a named recipient please notify the sender immediately and delete
any copies of this message. Any unauthorized copying, disclosure or distribution
of the material in this e-mail is strictly forbidden. Any view or opinions
presented are solely those of the author and do not necessarily represent those
of the company.