【问题标题】:Adding chef cookbooks from github从 github 添加厨师食谱
【发布时间】:2012-06-22 05:10:50
【问题描述】:

我使用以下命令从 opscode 站点下载了许多食谱:例如,knife cookbook site install git。但是现在我想从 github 上的存储库中下载一本食谱到我当前的食谱目录中。我该怎么做呢?我应该将存储库克隆到我的食谱目录中吗?

谢谢!

【问题讨论】:

    标签: chef-infra


    【解决方案1】:

    你可以从https://github.com/websterclay/knife-github-cookbooks安装knife github插件,之后你可以简单地使用knife cookbook github install cookbooks/yumhttps://github.com/cookbooks/yum安装yum。

    但是,我建议使用来自 https://github.com/applicationsonline/librarian 的 Librarian-Chef,它的工作原理与 bundler 对 ruby​​ gems 所做的工作非常相似(如果你熟悉的话)。

    编辑:由于这显然仍然收到了意见,我会失职更不用提berkshelf,这太棒了。

    【讨论】:

    • 非常感谢您的回答。对于第一种方法,假设我想从这里安装弹性搜索说明书:github.com/karmi/cookbook-elasticsearch。我会做这样的事情:knife cookbook github install karmi/cookbook-elasticsearch?此外,图书管理员看起来不错,但我有点失落。我对 bundler 很熟悉,但我一直在学习使用 knife cookbook install......的教程...我想将所有的说明书保存在同一个存储库中。抱歉,我在做我的日常工作,所以还不能试试这个。
    • 如果我只是下载了食谱文件夹中的食谱怎么办?假设我已经在一个名为 chef-repo 的文件夹中下载了一堆食谱(来自 opscode 的存储库的名称)。但是还有其他带有食谱的存储库。我可以下载食谱(可能是 zip 文件)并将其添加到食谱文件夹吗?我不明白为什么这行不通。缺点是我不会从原始上游仓库获得更新。
    • 我注意到在使用 knife-github-cookbooks 插件时,从 github 描述中它说:github.com/cookbooks/yum 的 repo 将被克隆到一个临时目录中, 移至 cookbooks/yum 那么在运行此命令时我应该在我的 chef-repo 存储库中吗?这不是先创建一个新的子存储库,然后将食谱复制回我的 cookbooks 文件夹吗?
    • 对,knife cookbook github install karmi/cookbook-elasticsearch 是正确的。它所做的只是为食谱创建一个目录(我相信你的存储库中的一个分支),所以当你想将所有食谱存储在 chef-repo 中时,你绝对可以使用它。您也可以手动下载所有内容,该插件使下载变得更容易,并且还有一些其他工具,例如 knife cookbook github compare 可以将您的本地版本与上游版本进行比较。
    • 将所有说明书保存在同一个存储库中使得跟踪对单个说明书的更改以及更新单个说明书变得有点困难。但我想当你刚开始并保持一切都很小时,这是一个足够体面的解决方案!
    【解决方案2】:

    要下载和管理说明书,您可以使用 Berkshelf,它本身带有一种方法来自行管理说明书依赖项。如果你熟悉 Ruby,它就像 Gemfile 一样工作。 您可以通过在 BerksFile 中添加此命令来从 github 下载食谱

    食谱'nginx',路径:'食谱的github url'

    【讨论】:

    • cookbook 'mysql', git: 'git://github.com/opscode-cookbooks/mysql.git'
    • 更短:cookbook 'nginx',github:'username/nginx'
    【解决方案3】:

    你可以试试这个命令

    knife cookbook site download cookbookname
    

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-29
    • 2021-11-01
    • 1970-01-01
    • 2014-12-05
    相关资源
    最近更新 更多