我想在厨师仓库中分享一些跨食谱的方法。我知道在食谱级别上,我可以将代码放在库目录中的模块中(请参阅相关问题)。我正在寻找的是类似的东西,但可以在我的 Chef 存储库中的所有食谱中找到。
我可以想到几个解决方案:
- 创建一个 gem,将 gem 安装为 chef 运行的一部分。这似乎有点矫枉过正。
- 将文件放在某个文件夹中,然后将该文件夹添加到
$LOAD_PATH
配方文件中。我有一种感觉不适用于实际部署,因为主厨服务器对存储库一无所知。 - 将文件放在某个文件夹中,并将其符号链接到每个食谱的库目录中。
最后一个选项似乎是最可行的。有没有更好/更惯用的方法来做我想做的事?