前端之家收集整理的这篇文章主要介绍了
ruby – 如何在厨师食谱中分享厨师食谱中的代码?,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想在厨师回购中
分享一小部分食谱中的
方法.我知道在食谱级别我可以把
代码放在库目录中的模块中(见
related question).我正在寻找的是类似的东西,但可用于我厨师回购中的所有食谱.
我可以想到几个解决方案:
>创建一个宝石,安装宝石作为厨师跑步的一部分.这似乎太过分了.
>将文件放在某个文件夹中,并将该文件夹添加到配方文件中的$LOAD_PATH中.我有一种感觉,因为厨师服务器不了解这个回购,所以不能实际部署.
>将文件放在某个文件夹和符号链接到每个食谱的库目录中.
最后一个选项似乎是最可行的.有没有更好/更惯用的方式来做我想要的?
您可以使用另一本食谱的图书馆定义的
功能,但是您必须教授厨师您的食谱依赖于提供的食谱.
所以,例如,如果在食谱A中,你有一个库/ default.rb提供一些函数f,只要B的Metadata.rb文件包含一行,你可以从菜谱B访问它:
depends "A"
有关详细信息,请参阅metadata和libraries的Chef文档.
原文链接:https://www.f2er.com/ruby/266366.html