【发布时间】:2020-01-17 12:55:12
【问题描述】:
有没有办法告诉厨师节点运行食谱中的所有食谱文件,而无需手动将每个文件添加到运行列表或从工作站执行一些其他手动任务?
我怀疑可能有一种方法可以在厨师客户端执行时查询可用食谱列表,但我不知道 ruby 命令/语法是什么。
【问题讨论】:
-
目录列表保存到文件?试试
find /recipes/directory -type f -maxdepth 1 >> runlist.file或任何适合厨师的东西。 -
我想到的第一个想法是创建一个脚本,它将 include_recipes 添加到食谱的每个食谱的默认食谱中。以“bash”的方式:
for f in `ls -I default.rb -1`; do echo "include_recipe 'cookbook::$f'"; done > default.rb这意味着默认配方应该只有这些包含,如果你在 ti 中有代码,请将其移至 anotehr 配方。 (但这听起来很糟糕)
标签: chef-infra