Python 如何使用salt将支柱变量的内容添加到文件中?

Python 如何使用salt将支柱变量的内容添加到文件中?,python,salt-stack,Python,Salt Stack,在盐州文件中,如何将支柱的内容添加到远程盐仆从的文件中 例如,如果我有如下支柱数据: ssl: some-domain.com: key: -----BEGIN RSA PRIVATE KEY----- MIICX... snip ... 在远程salt minion上,我想要一个文件,比如,/etc/nginx/ssl/som domain.com.key,它包含私钥的内容,我该怎么做?我也愿意接受这样的回答,“你做错了

在盐州文件中,如何将支柱的内容添加到远程盐仆从的文件中

例如,如果我有如下支柱数据:

ssl:
    some-domain.com:
        key:
            -----BEGIN RSA PRIVATE KEY-----
            MIICX... snip ...
在远程salt minion上,我想要一个文件,比如,
/etc/nginx/ssl/som domain.com.key
,它包含私钥的内容,我该怎么做?我也愿意接受这样的回答,“你做错了,笨蛋。”只要你给我一些见解,给我指出正确的方向,这将非常有帮助

我知道salt的
file.managed
,以及
file.*
朋友的一些测试,但我不确定是否有最佳/首选的方法可以像我尝试的那样将任意支柱数据添加到远程文件中

我仍然在学习/使用salt,所以我仍然在使用Yaml+Jinja作为模板,如果这对你制定一个合适的答案很重要的话

谢谢

编辑:顺便说一句,当前的黑客解决方案是:

在我的文件\u root/srv/salt/中创建一个文件,比如
/srv/salt/ssl/some domain.com.key
,其中包含
{salt[posal.get]('ssl:some domain.com:key')}


但这似乎太老套了。在这里寻找更好的解决方案。

这是州政府提供的,但无可否认,文档中很容易遗漏:

# /srv/salt/something.sls
some-domain-key:
  file.managed:
    - name: /etc/nginx/ssl/some-domain.com.key
    - mode: 600
    - contents_pillar: ssl:some-domain.com:key
如果您正按照您的示例所示管理nginx,那么您可能还对以下内容感兴趣。它可以为你做到这一点