Issue #1738 has been updated by luke.

Status changed from Unreviewed to Rejected

I can't reproduce this.  With this code:
<pre>
node default {
    $array = [one, two]
    include fooclass
}

class fooclass {
    file { "/tmp/arraytest": content => template("foo/test.erb") }
}
</pre>
And this template:
<pre>
<% array.each do |val| %>
value <%= val %>
<% end %>
</pre>
I get this content:
<pre>

value one

value two

</pre>

Please reopen with a small test case that clearly demonstrates the problem if 
you can find one.
----------------------------------------
Bug #1738: Array's broken outside of modules manifests
http://projects.reductivelabs.com/issues/show/1738

Author: tek-ops
Status: Rejected
Priority: Normal
Assigned to: 
Category: 
Target version: 
Complexity: Unknown
Affected version: 0.24.5
Keywords: 


It appears that variable arrays only work if the array is declared in the 
manifest of the modules using them.  The elements of the array are concatenated 
into a single string.  This prevents templates from successfully looping over 
the array.

For an examples:
/etc/puppet/manifests/nodes.pp
--------------------------------------------------------------------------------
node "test1" {
    $nameservers = ["192.168.0.2", "192.168.0.3"]
    $domain         = "nfs.example.com"

}

node "test2" {
    $nameservers = ["10.0.0.2", "10.0.0.3"]
    $domain         = "prv.example.com"
}

--------------------------------------------------------------------------------

/etc/puppet/modules/resolv/templates/resolv.conf.erb
--------------------------------------------------------------------------------
search <%= domain %>

<% nameservers.each do |server| %>
nameserver <%= server %>
<% end %>
--------------------------------------------------------------------------------

Results for node "test1"
--------------------------------------------------------------------------------
search nfs.example.com

nameserver 192.168.0.2192.168.0.3
--------------------------------------------------------------------------------

Results for node "test2"
--------------------------------------------------------------------------------
search prv.example.com

nameserver 10.0.0.210.0.0.3
--------------------------------------------------------------------------------

So essentially, if the array is declared in the nodes themselves, then
the elements are concatenated.   Which is more odd since if an array
is declared in /etc/puppet/modules/resolv/init.pp then is does work 


----------------------------------------
You have received this notification because you have either subscribed to it, 
or are involved in it.
To change your notification preferences, please click here: 
http://reductivelabs.com/redmine/my/account

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Puppet Bugs" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/puppet-bugs?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to