在puppet函数中使用数组时出错

问题描述 投票:0回答:1

我正在尝试在puppet中进行循环,我将此代码放在manifests / site.pp中

class ubuntu_fw {
        ufw::allow { "allow-ssh-from-all":
          port => 22,
        }

        $trustips = ["1.1.1.1", "2.2.2.2"]

        $trustips.each |$trustip| {
                ufw::allow { "allow-all-from-trusted-$trustip":
                        from => $trustip,
                }
        }
}

但是我得到了这个错误

“无法解析环境生成:在/opt/puppet/manifests/site.pp:13上的'。';期望'}'语法错误”

使用木偶3.4.3

loops each puppet
1个回答
0
投票

正如Evgeny所说,Puppet 4中提供了循环,迭代等功能。(此处记录的新功能:https://docs.puppetlabs.com/references/4.0.0/function.html

您可以将主要版本设置为4.0或在Puppet> 3.7.3中启用Future解析器来模拟较新的语法。

您可以使用以下内容执行此操作:

  • 在运行puppet apply或puppet agent -t时将--parser future添加到cli
  • parser = future添加到mainpuppet.conf配置部分

您可以使用以下Puppet代码更改puppet.conf

augeas { 'puppet.conf':
  context => '/files/etc/puppet/puppet.conf',
  changes => [
    'set main/parser future',
  ],
}
最新问题
© www.soinside.com 2019 - 2024. All rights reserved.