如何修复以下代码?
$parts = split('test-test','-')
notice( $parts[0] )
见:http ://docs.puppetlabs.com/references/2.6.8/function.html#split
对我来说,它会导致以下错误:
can't convert String into Integer at ....:2
尝试使用以下方法修复它:
notice( ${parts[0]} )
notice( "${parts[0]}" )
使用以下命令我现在得到错误,但也没有输出
notice( "${parts}" )
我用它的稳定 puppet 包 2.6.2-5+squeeze3 puppetmaster 运行 debian squeeze 也是 debian stable 2.6.2-5+squeeze3
问题是从“真实”问题中“剔除”出来的,我正在尝试启动并运行 duritongshorewall 模块(https://github.com/duritong/puppet-shorewall)
那里的shorewall::entry 失败并显示以下消息:
err: Could not retrieve catalog from remote server: Error 400 on SERVER:
can't convert String into Integer at
/etc/puppet/modules/shorewall/manifests/entry.pp:9 on node
完整代码
define shorewall::entry(
$ensure = present,
$line
){
$parts = split($name,'-')
concat::fragment{$name:
ensure => $ensure,
content => "${line}\n",
order => $parts[1],
target => "/etc/shorewall/puppet/${parts[0]}",
}
}