- From: Mike <
>
- To:
- Subject: [chef] Re: including erubis fragments within a template
- Date: Thu, 28 Jun 2012 08:42:31 -0400
Now that I re-read your email, I see the concept of embedded template
within a template.
That makes it more complex.
I don't know about that one yet.
On Thu, Jun 28, 2012 at 8:39 AM, Mike
<
>
wrote:
>
Hi Bryan,
>
>
Here's a segment of a configuration file that uses 'if' statements:
>
https://github.com/DataDog/cookbooks/blob/master/datadog/templates/default/datadog.conf.erb#L21-53
>
(Do as I say, not as I do: the node attribute accessors should
>
probably be strings vs symbols, but that's a future improvement).
>
>
My template is referencing directly against node attributes, you may
>
with to pass variables to the template resource for config items that
>
aren't exactly node attributes.
>
>
More on templates: http://wiki.opscode.com/display/chef/Templates
>
>
Best,
>
-M
>
>
On Thu, Jun 28, 2012 at 8:32 AM, Bryan Berry
>
<
>
>
wrote:
>
> Dear Chefs,
>
>
>
> I work on almost basis with the Enterprise Java container known as JBoss AS
>
> 7. JBoss's main configuration file, standalone-full.xml, is a whopping 553
>
> lines long. While it is very long, it actually quite cleanly structured,
>
> especially when compared to something like sendmail.cf
>
>
>
> Templating such a large file is a mega PITA. JBoss AS 7 is nicely
>
> componentized so that you can easily turn on and off modules. This process
>
> would be a billion times easier and more readable if I could include
>
> fragments within and erubis template like this:
>
>
>
> <?xml version='1.0' encoding='UTF-8'?>
>
>
>
> <server xmlns="urn:jboss:domain:1.2">
>
> <extensions>
>
> <% if @infinispan -%>
>
> <extension module="org.jboss.as.clustering.infinispan"/>
>
> <% end -%>
>
> <extension module="org.jboss.as.web"/>
>
> <% if @webservices -%>
>
> <extension module="org.jboss.as.webservices"/>
>
> <% end -%>
>
> <extension module="org.jboss.as.weld"/>
>
> </extensions>
>
> <% if @infinispan
>
> include_template "infinispan.xml.erb"
>
> end -%>
>
> <% if @webservices
>
> include_template "webservices.xml.erb"
>
> end -%>
>
> <socket-binding-group name="standard-sockets" >
>
> ......
>
> </socket-binding-group>
>
> </server>
>
>
>
> As you can see, this is far more readable than adding complex logic to
>
> already large file
>
>
>
> Is this at all feasible currently in Chef? It would make life a lot easier
>
> for me
- [chef] including erubis fragments within a template, Bryan Berry, 06/28/2012
- [chef] Re: including erubis fragments within a template, Mike, 06/28/2012
- [chef] Re: including erubis fragments within a template, Mike, 06/28/2012
- [chef] Re: including erubis fragments within a template, Michael Della Bitta, 06/28/2012
- [chef] RE: including erubis fragments within a template, Todd H. Foster, 06/28/2012
- [chef] Re: including erubis fragments within a template, John Dyer, 06/28/2012
Archive powered by MHonArc 2.6.16.