Chef infra 厨师定制食谱未安装在AWS opsworks上

Chef infra 厨师定制食谱未安装在AWS opsworks上,chef-infra,aws-opsworks,Chef Infra,Aws Opsworks,在这个问题的后面,我正试图得到一本关于AWS opsworks的定制食谱。正如我在上一个问题中所说的,我是厨师新手,但我使用的是别人编写的食谱 但是,当我将其作为自定义烹饪书添加到实例中时,没有安装任何东西。 从日志中可以看出,食谱被检索并移动到了正确的位置,但是日志的底部看起来像 [2016-02-16T18:48:54+00:00] INFO: Forking chef instance to converge... [2016-02-16T18:48:54+00:00] INFO: **

在这个问题的后面,我正试图得到一本关于AWS opsworks的定制食谱。正如我在上一个问题中所说的,我是厨师新手,但我使用的是别人编写的食谱

但是,当我将其作为自定义烹饪书添加到实例中时,没有安装任何东西。 从日志中可以看出,食谱被检索并移动到了正确的位置,但是日志的底部看起来像

[2016-02-16T18:48:54+00:00] INFO: Forking chef instance to converge...
[2016-02-16T18:48:54+00:00] INFO: *** Chef 12.6.0 ***
[2016-02-16T18:48:54+00:00] INFO: Chef-client pid: 2237
[2016-02-16T18:48:59+00:00] INFO: Setting the run_list to ["recipe[php-phalcon::default]"] from CLI options
[2016-02-16T18:48:59+00:00] INFO: Run List is [recipe[php-phalcon::default]]
[2016-02-16T18:48:59+00:00] INFO: Run List expands to [php-phalcon::default]
[2016-02-16T18:48:59+00:00] INFO: Starting Chef Run for app2
[2016-02-16T18:48:59+00:00] INFO: Running start handlers
[2016-02-16T18:48:59+00:00] INFO: Start handlers complete.
[2016-02-16T18:48:59+00:00] INFO: HTTP Request Returned 404 Not Found: Object not found: 
[2016-02-16T18:48:59+00:00] INFO: HTTP Request Returned 412 Precondition Failed: No such cookbook: git

================================================================================
Error Resolving Cookbooks for Run List:
================================================================================

Missing Cookbooks:
------------------
No such cookbook: git

Expanded Run List:
------------------
* php-phalcon::default

[2016-02-16T18:48:59+00:00] ERROR: Running exception handlers
[2016-02-16T18:48:59+00:00] ERROR: Exception handlers complete
[2016-02-16T18:48:59+00:00] FATAL: Stacktrace dumped to /var/chef/runs/a9eb7a78-2544-413b-aeae-075c959c98ca/local-mode-cache/cache/chef-stacktrace.out
[2016-02-16T18:48:59+00:00] FATAL: Please provide the contents of the stacktrace.out file if you file a bug report
[2016-02-16T18:48:59+00:00] ERROR: 412 "Precondition Failed"
[2016-02-16T18:49:00+00:00] FATAL: Chef::Exceptions::ChildConvergeError: Chef run process exited unsuccessfully (exit code 1)
我不完全确定我应该在这里做什么,git在机器上,所以我不确定为什么前提条件失败。我经常看到“伯克斯”出现。基于我之前的问题,我是否应该能够在机器上本地运行这个食谱,然后运行Berks来打包所有东西,并将其用作我的opsworks食谱

我用的是12号厨师


谢谢

您需要在OpsWorks配置中包含
php phalcon
食谱的所有依赖项。你可以找到这些。Berkshelf是一个cookbook downloader,它可以在内部理解依赖关系,可能是编译东西的正确选择,但我对新的OpsWorks堆栈还不太了解,因此不能肯定。

就像@coderanger所说的,您可以在repo中的Berkshelf文件中包含依赖关系

我已经在repo中添加了一个Berkshelf文件,拉取请求已经合并


您需要将Opsworks堆栈上的Manage Berkshell设置为Yes,以允许您使用Berkshell文件来解决依赖项。

这是正确答案,我还有一步要做,但由于某些原因,它似乎仍然没有安装任何东西。现在,日志指向一个。每个函数,而我期望的目录似乎都没有