当我在厨师的模板文件中放置循环时,我收到错误"TemplateError (no implicit conversion of String into Integer)"



这是我的属性文件。我想通过循环获取WKA成员详细信息。

default["clustering"] = {
        "enabled"           => true,
        "membership_scheme" => 'wka',
        "domain"            => 'wr.as.domain',
        "local_member_host" => '10.100.4.777',
        "local_member_port" => '4000',
        "sub_domain"        => 'mgt',
        "wka"               => {
            "members" => [
              {
                "hostname" => '10.100.4.555',
                "port"     => 4000
              },
             {
                "hostname" => '10.100.4.556',
                "port"     => 4000
             }
            ]
        }
    }

这是我的模板文件

<members>
         <%= node["clustering"]["wka"]["members"].each do |member| -%>
            <member>
                <hostName><%= member['hostname'] %></hostName>
                <port><%= member['port'] %></port>
            </member>
          <% end %>
        </members>

有人可以建议我解决此错误的正确解决方案吗?

用于模板中的非打印位,例如循环或条件,您使用 <%<%-(后者的额外修剪额,通常是您想要的(,而不是 <%=

最新更新