我写了一个盐状态,如下所示,它将数据写入config.yaml
file.append:
- name: /etc/xentrax/config.yml
- text: |
tunnel: xentrax
credentials-file: /roor/.xentrax/xentrax.json
logfile: /var/log/xentrax.log
loglevel: info
现在,我想使用pillar将一些敏感数据附加到这个config.yaml中。数据是敏感数据,我想使用支柱进行维护。我想附加的数据低于
ingress:
- hostname: shop.xentrax.com
- keyid: xxxxxxxxxxxxxxxxxxx
originRequest:
httpHostHeader: shop.xentrax.com
originServerName: shop.xentrax.com
service: https://localhost:443
- service: http_status:404
如何书写那根柱子?我对盐堆很陌生。请帮帮我。应用支柱后config.yaml中的最终数据将类似
tunnel: xentrax
credentials-file: /roor/.xentrax/xentrax.json
logfile: /var/log/xentrax.log
loglevel: info
ingress:
- hostname: shop.xentrax.com
- keyid: xxxxxxxxxxxxxxxxxxx
originRequest:
httpHostHeader: shop.xentrax.com
originServerName: shop.xentrax.com
service: https://localhost:443
- service: http_status:404
支柱定义很简单:
xentrax_ingress:
ingress:
- hostname: shop.xentrax.com
- keyid: xxxxxxxxxxxxxxxxxxx
originRequest:
httpHostHeader: shop.xentrax.com
originServerName: shop.xentrax.com
service: https://localhost:443
- service: http_status:404
假设您的最终输出不必是您所说的,只需它是有效的YAML,则此状态将起作用:
/etc/xentrax/config.yml:
file.append:
- text: |
tunnel: xentrax
credentials-file: /roor/.xentrax/xentrax.json
logfile: /var/log/xentrax.log
loglevel: info
{{ pillar["xentrax_ingress"] | tojson }}
如果你可以管理整个文件而不是追加,那么file.serialize
会更好:
/etc/xentrax/config.d/part1.yml:
file.serialize:
- serializer: yaml
- dataset:
tunnel: xentrax
credentials-file: /roor/.xentrax/xentrax.json
logfile: /var/log/xentrax.log
loglevel: info
/etc/xentrax/config.d/part2.yml:
file.serialize:
- serializer: yaml
- dataset_pillar: xentrax_ingress