Amazon web services 为什么';我的自定义食谱是否在AWS OpsWorks上运行?

Amazon web services 为什么';我的自定义食谱是否在AWS OpsWorks上运行?,amazon-web-services,chef-infra,aws-opsworks,Amazon Web Services,Chef Infra,Aws Opsworks,我已经为我的简单自定义配方创建了GitHub repo: my-cookbook/ |- recipes/ |- appsetup.rb 我已经将repo添加到定制厨师食谱中,如https://github.com/my-github-user/my-github-repo.git 我已将我的食谱::appsetup添加到设置“循环”中 我知道它已经被执行了,因为如果我弄乱了语法,它将无法加载 这是我的appsetup.rb: node[:deploy].each do |app_nam

我已经为我的简单自定义配方创建了GitHub repo:

my-cookbook/
|- recipes/
   |- appsetup.rb
我已经将repo添加到定制厨师食谱中,如
https://github.com/my-github-user/my-github-repo.git

我已将
我的食谱::appsetup
添加到设置“循环”中

我知道它已经被执行了,因为如果我弄乱了语法,它将无法加载

这是我的appsetup.rb:

node[:deploy].each do |app_name, deploy|
  script "install_composer" do
    interpreter "bash"
    user "root"
    cwd "#{deploy[:deploy_to]}/current"
    code "curl -sS https://getcomposer.org/installer | php && php composer.phar install --no-dev"
  end
end
当我使用ubuntu用户通过SSH登录实例时,没有安装composer

我还尝试了以下操作,但没有成功(nodejs安装):

未安装节点,并且日志中没有错误。日志中对食谱的唯一引用只是说:

[2014-03-31T13:26:04+00:00] INFO: OpsWorks Custom Run List: ["opsworks_initial_setup", "ssh_host_keys", "ssh_users", "mysql::client", "dependencies", "ebs", "opsworks_ganglia::client", "opsworks_stack_state_sync", "mod_php5_apache2", "my-cookbook::appsetup", "deploy::default", "deploy::php", "test_suite", "opsworks_cleanup"]
...
2014-03-31T13:26:04+00:00] INFO: New Run List expands to ["opsworks_initial_setup", "ssh_host_keys", "ssh_users", "mysql::client", "dependencies", "ebs", "opsworks_ganglia::client", "opsworks_stack_state_sync", "mod_php5_apache2", "my-cookbook::appsetup", "deploy::default", "deploy::php", "test_suite", "opsworks_cleanup"]
...
[2014-03-31T13:26:05+00:00] DEBUG: Loading Recipe my-cookbook::appsetup via include_recipe
[2014-03-31T13:26:05+00:00] DEBUG: Found recipe appsetup in cookbook my-cookbook
我是否遗漏了某个关键步骤?配方被清楚地识别和加载,但似乎没有执行


(以下是虚构的名称:我的github用户、我的github repo、我的烹饪书)

如果这些命令以静默方式失败,则可能是您对&&的使用掩盖了失败


至于addaptreepository,这是一个交互式命令。尝试使用“-yes”选项在默认情况下回答yes,使其不再具有交互作用。

如果这些命令以静默方式失败,则可能是您使用&&掩盖了失败


至于addaptreepository,这是一个交互式命令。尝试使用“-yes”选项在默认情况下回答yes,使其不再交互。

如果您没有成功执行命令,您将无法在当前目录中找到文件。检查上一个发行版文件夹,看看它是否放在那里


通过将CWD更改为:/tmp

来检查您是否获得了正确的目录etc设置可能是明智的。如果您没有成功执行命令,您将无法在当前目录中找到文件。检查上一个发行版文件夹,看看它是否放在那里


通过将CWD更改为:/tmp

您的食谱名称不应包含破折号,检查您是否获得了正确的目录etc设置。我也遇到了同样的问题,用“u”代替它为我解决了。

你的食谱名称不应该包含破折号。我也有同样的问题,替换为“uu”为我解决了问题。

我知道你已经放弃了食谱,但我几乎100%肯定这是因为你的食谱根目录中没有
metadata.rb
文件。

我知道你已经放弃了食谱,但我几乎100%肯定这是因为你的食谱根目录中没有
metadata.rb
文件菜谱。

谢谢,我尝试了分叉,然后用它来代替,在安装周期中使用composer::install(),不幸的是,这也没有做任何事情,所以我认为除了&:s之外还有其他问题。谢谢,我尝试了分叉,然后用它代替,使用composer::install()不幸的是,在安装周期中,这也没有起到任何作用,因此我假设除了&:s之外还有其他问题。我尝试使用echo“lorem ipsum1”>>/tmp/test.txt等脚本在/tmp/中创建文件,但不幸的是,在随后登录实例时,该文件不存在。因此,我仍然不知所措。我尝试在/tmp/中使用echo“lorem ipsum1”>>/tmp/test.txt等脚本创建文件,但不幸的是,后来登录实例时,该文件不存在。所以我还是不知所措。谢谢你,自从有人问我这个问题以来,我已经放弃了食谱,所以很遗憾,我无法验证这是否解决了我的问题!谢谢你,自从有人问我这个问题以来,我已经放弃了食谱,所以我无法验证这是否解决了我的问题,很不幸!谢谢,这将有助于任何人(或我,如果我再试一次)这是我的问题,添加文件为我工作,谢谢!谢谢,这将有助于任何人(或我,如果我再试一次)这是我的问题,添加文件为我工作,谢谢!
[2014-03-31T13:26:04+00:00] INFO: OpsWorks Custom Run List: ["opsworks_initial_setup", "ssh_host_keys", "ssh_users", "mysql::client", "dependencies", "ebs", "opsworks_ganglia::client", "opsworks_stack_state_sync", "mod_php5_apache2", "my-cookbook::appsetup", "deploy::default", "deploy::php", "test_suite", "opsworks_cleanup"]
...
2014-03-31T13:26:04+00:00] INFO: New Run List expands to ["opsworks_initial_setup", "ssh_host_keys", "ssh_users", "mysql::client", "dependencies", "ebs", "opsworks_ganglia::client", "opsworks_stack_state_sync", "mod_php5_apache2", "my-cookbook::appsetup", "deploy::default", "deploy::php", "test_suite", "opsworks_cleanup"]
...
[2014-03-31T13:26:05+00:00] DEBUG: Loading Recipe my-cookbook::appsetup via include_recipe
[2014-03-31T13:26:05+00:00] DEBUG: Found recipe appsetup in cookbook my-cookbook