传递带有facter的数组



假设我有一个值数组

["node1.example.org", "node2.example.org"]

我想通过这个使用facter,并在这样的木偶中使用它:

host {
  $nodes:
     ...
}

我该怎么做?

Facter 1.x无法将结构化数据作为事实值传递。所有事实都将被强制转换为字符串格式。这对于数组来说尤其不幸,因为它们的元素将在没有连接标记的情况下连接起来。

建议让您的事实返回一个逗号分隔的列表,例如,不要返回Array result,而是进行

result * ","

在你的清单中,把它变成一个数组

$nodes_array = split($nodes, ',')
host { $nodes_array: }

请参阅Puppet函数参考和Ruby的Array方法。

Facter 2确实支持布尔、哈希和数组事实,但这可能还不可用。

相关内容

  • 没有找到相关文章

最新更新