chef-infra - Berkshelf Recipe 没有被复制到 Vagrant 目录

标签 chef-infra vagrant chef-solo berkshelf

我正在尝试使用 Chef-solo、Berkshelf 和 vagrant-berkshelf 插件来配置 Vagrant 机器。但是,配置失败并出现以下错误:
Berkshelf::CookbookNotFound: Cookbook <cookbook name> not found in any of the default locationsberks install成功将所有内容安装到 ~/.berkshelf/cookbooks/ ,但食谱永远不会复制到 ~./berkshelf/default/vagrant/berkshelf-20131017-8441-pqghfq-default这是 Berkshelf 报告它正在更新的地方,就在跟踪之前:
[Berkshelf] Updating Vagrant's berkshelf: '/Users/<me>/.berkshelf/default/vagrant/berkshelf-20131017-8441-pqghfq-default'
所以,我想我的问题是:

  • 谁负责将食谱复制到特定的 Vagrant 文件夹(Berkshelf、vagrant-berkshelf 插件或 Vagrant)?今晚我浏览了每个 repo 的来源,但无法确定应该发生的地方。
  • 我可以提供更多信息来帮助回答问题#1吗? :)

  • 环境详情:

    Mac OSX 10.8
    ruby 1.9.3
    vagrant -v: 1.3.5berks -v : Berkshelf (2.0.10)$: vagrant plugin listbuff-config (0.2.0)mini_portile (0.5.1)nugrant (1.1.0)vagrant-berkshelf (1.3.4)vagrant-cachier (0.1.0)vagrant-omnibus (1.1.1)vagrant-rackspace (0.1.3)

    最佳答案

    Who is responsibile for copying the cookbooks to the specific Vagrant folder (Berkshelf, the vagrant-berkshelf plugin, or Vagrant)?



    A 列的一点点和 B 列的一点点,两者都得到了 C 列的一些帮助。

    Vagrant chef-solo provisioner能够将食谱(+角色/数据包/等)从主机复制到 guest 。它通过在主机上创建一个目录然后在 VM 中挂载该目录来实现。

    vagrant-berkshelf 插件先creates a directory on the host然后使用 vanilla Berkshelf 功能到 export此目录中的所有相关食谱。

    最后,vagrant-berkshelf 插件告诉 Chef-Solo 供应商 use the directory it has created作为食谱的来源,它应该复制给客人。

    关于chef-infra - Berkshelf Recipe 没有被复制到 Vagrant 目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19441847/

    相关文章:

    ruby - 如何在厨房 serverspec 测试中要求 Recipe 库

    nginx - 将 nginx 模块与 chef nginx Recipe 一起使用

    node.js - 使用 NodeJs 和 vagrant

    Vagrant 等待域获取 IP 地址

    nginx - 在 Nginx 代理后面的 Vagrant 上设置 Spring boot 应用程序

    ruby - 如何在 Chef 中使用特殊字符?

    linux - 我们真的应该使用 chef 来管理 sudoers 文件吗?

    ruby - 为什么 Chef 文件 search_file_replace 不起作用

    vagrant - ChefZero 返回 404

    ruby - 使用 Chef 编辑文件