2016-06-24 16 views
1

Ich habe ein optionales Attribut auf meinen Knoten. Ich möchte, dass meine Vorlage nur einen bestimmten Wert festgelegt, wenn das Attribut vorhanden ist:Chefvorlage Wenn Attribut vorhanden ist

<% if node['haproxy']['server']['backup'] %> 
server <%= node['haproxy']['server']['backup']['hostname'] %> <%= node['haproxy']['server']['backup']['ipaddress'] %>:<%= node['mysql']['port'] %> weight 1 maxconn 100 check 
<% end %> 

Das sieht mir gut, aber wenn ich es benutze ich erhalte den folgenden Fehler:

Chef::Mixin::Template::TemplateError 
------------------------------------ 
no implicit conversion of String into Integer 

Wie kann Ich bekomme das funktioniert so Chef erkennt, wenn das Attribut festgelegt ist?

+0

Stellt sich heraus, ich brauchte ein Objekt anstelle eines Arrays zu verwenden. – user3063045

Antwort

2

Versuchen

<% if node['haproxy']['server'].attribute?('backup') %> 
Verwandte Themen