2016-11-15 96 views
0

我遍历数组的哈希在我的傀儡一个遍历嵌套哈希当木偶-lint警告的体现在木偶清单

1 # class to manage needed packages 
2 class profile::packages (
3){ 
4 $packages = hiera_hash('profile::packages::managed', {}) 
5 
6 if $packages != {} { 
7  $packages.each | String $package_state, Array $packages_array | { 
8  $packages_array.each | Integer $idx, String $package | { 
9   notify { "${package} with ${idx} should be ${package_state}": } 
10  } 
11  } 
12 } 
13 } 

但我得到一个傀儡皮棉警告。

警告:顶范围可变没有明确命名空间 正在使用第8行 块引用 警告:顶范围可变没有明确 命名空间被使用在第9行

的代码是运行良好,所以这是一个傀儡皮棉的问题。也许有一种方法来配置puppet-lint来识别lambda块中的变量?

+0

添加puppet-lint提示[here](http://puppet-lint.com/checks/variable_scope/)可以禁用整个作用域检查,但这不是在这种情况下需要的。 –

+0

这段代码可以通过重构来改进,也不会丢掉皮棉警告。 –

+0

因此,让我们知道我可以重构代码以删除lint警告。 –

回答

2

这是a known issue在写作时的傀儡皮棉。它对Puppet 4语言功能的支持有限。