gpt4 book ai didi

arrays - 我可以将 hiera 与 YAML 后端一起使用来组合数组吗?

转载 作者:行者123 更新时间:2023-12-01 05:03:59 24 4
gpt4 key购买 nike

我正在使用带有 YAML 后端的 hiera 来管理我的 Puppet 配置,我想将一些值附加到数组中。

我有一个配置文件,看起来有点像这样:

---
some_config:
- one
- two
- three

some_more_config:
- one
- two
- three
- four

哪里 some_more_config总是 some_config 的超集.

我想改进此文件以删除重复项,但我还没有弄清楚是否可行或语法是什么:
---
some_config:
- one
- two
- three

some_more_config:
- "%{::some_config}"
- four

用文字而不是代码, some_more_configsome_config的全部内容加上一个附加值。

最佳答案

我认为您不能在 Hiera 中做到这一点,因为它只能插入基于字符串的信息(数字转换为字符串),而不能插入数组或散列。

来自 Hiera 3: Interpolation Tokens, Variables, and Lookup Functions :

Hiera can interpolate values of any of Puppet’s data types, but the value will be converted to a string.



不过,您仍然可以通过 Puppet DSL 执行此操作。这里有几个选项:
  • Hiera 3: Lookup Types文档详细介绍了这一点,但如果这些位于层次结构的多个级别,您可以使用 hiera_array() 将它们合并在一起。方法。考虑到您的层次结构是如何设置的,某些主机可以获得较小的列表,而某些主机可以获得较大的列表。
  • puppetlabs-stdlib module也可以帮忙。它有 concatunion数组的方法。
  • 关于arrays - 我可以将 hiera 与 YAML 后端一起使用来组合数组吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30823309/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com