当从引擎工厂移动轨道应用程序到OpsWorks时,出现以下错误:
Error executing action `deploy` on resource 'deploy[{{ app path }}]' you must supply a name when declaring a config resouce
当部署一个轨道应用程序的作品。 错误继续说“
我已经确认我的“自定义JSON”正确填充database.yml文件。
进一步的细节给出:
Resource Declaration: deploy deploy[:deploy_to] do provider Chef::Provider::Deploy.const_get(deploy[:chef_provider]) ..
有趣的是,在下面的转储中,有一个包含的params列表
:name => nil
这似乎是问题。 我已经检查了OpsWorks中的所有表单,并且填充了每个名称字段。 除此之外,自定义的JSON看起来是正确的,因为它被填充到database.yml文件中。 我不知道还有什么要从那里检查。
有没有人见过这个问题,或者任何人都可以提供任何想法,我怎样才能确定哪里出了问题呢?
问题是旧的引擎代码部署脚本采用与opsworks在其部署脚本中使用的参数不同的参数。 解决方法是重写部署脚本,删除引擎包装代码。