按原样将数据包放在节点上(目录中的 json 个文件)
Drop databag on node as is (json files in a dir)
说我有这个厨师资料包:
- data_bags
- things
- alpha.json
- bravo.json
- charlie.json
如何使用配方将 things
数据包按原样(一个包含三个 json 文件的目录)放入节点上的 /tmp/things
中?目前,我正在使用 .each
遍历 things
数据包,读取每个数据包项,然后从返回的散列中写入一个 json 文件。这看起来很愚蠢,是否有一个内置的 chef 实用程序可以将数据包按原样放到节点上?
不,这就是做到这一点的方法。您可以使用 search(:things, '*:*')
来保存一些 API 调用,但代码结构是相同的。 bag一般是用来配置recipe代码的,不会写入文件,所以没有专门针对这个的。如果要将数据逐字复制到文件系统,请将其放在食谱中的 files/
下并使用 remote_directory
资源。
说我有这个厨师资料包:
- data_bags
- things
- alpha.json
- bravo.json
- charlie.json
如何使用配方将 things
数据包按原样(一个包含三个 json 文件的目录)放入节点上的 /tmp/things
中?目前,我正在使用 .each
遍历 things
数据包,读取每个数据包项,然后从返回的散列中写入一个 json 文件。这看起来很愚蠢,是否有一个内置的 chef 实用程序可以将数据包按原样放到节点上?
不,这就是做到这一点的方法。您可以使用 search(:things, '*:*')
来保存一些 API 调用,但代码结构是相同的。 bag一般是用来配置recipe代码的,不会写入文件,所以没有专门针对这个的。如果要将数据逐字复制到文件系统,请将其放在食谱中的 files/
下并使用 remote_directory
资源。