Puppet没有将字符串隐式转换为整数

Puppet没有将字符串隐式转换为整数,puppet,varnish,Puppet,Varnish,我正在使用puppet管理一个具有多个后端的varnish服务器。我正在尝试创建一个循环,以便以后可以添加额外的后端。到目前为止,我在雇员再培训局的文件中有以下内容: <% @backends.each do |backend| -%> backend <%= backend['backend_name'] %> { .host = "<%= @backend_addr %>"; .port = "<%= backend['backend

我正在使用puppet管理一个具有多个后端的varnish服务器。我正在尝试创建一个循环,以便以后可以添加额外的后端。到目前为止,我在雇员再培训局的文件中有以下内容:

<% @backends.each do |backend| -%>
backend <%= backend['backend_name'] %> {
    .host = "<%= @backend_addr %>";
    .port = "<%= backend['backend_port'] %>";
    .connect_timeout = 600s;
    .first_byte_timeout = 600s;
    .between_bytes_timeout = 600s;
}
<% end -%>

我做错了什么?

这是模板的第17行?您将
@backends
(作为
backend
)的每个元素作为散列索引,并使用字符串索引。如果其中一个后端是数组,那么您可能会看到这样的错误。否则,我看不出有什么问题。模板的第17行是什么?您将
@backends
(作为
backend
)的每个元素作为散列索引,并使用字符串索引。如果其中一个后端是数组,那么您可能会看到这样的错误。否则,我看不出有什么问题。
Error: Could not retrieve catalog from remote server: Error 400 on SERVER: Failed to parse template varnish/drupal.vcl.erb:
  Filepath: /etc/puppet/modules/varnish/templates/drupal.vcl.erb
  Line: 17
  Detail: no implicit conversion of String into Integer
 at /etc/puppet/modules/varnish/manifests/init.pp:22 on node x.x.x.x