1

When moving a rails app from engine yard to OpsWorks, I am getting the following error:

Error executing action `deploy` on resource 'deploy[{{ app path }}]'
you must supply a name when declaring a config resouce

When deploying a rails app to ops works. The error goes on to say "

I have confirmed that my "custom json" is populating the database.yml file correctly.

Further details are given:

Resource Declaration:
deploy deploy[:deploy_to] do
  provider Chef::Provider::Deploy.const_get(deploy[:chef_provider])
  ..

The interesting thing is that in the following dump, there is a params list which includes

:name => nil

Which appears to be the problem. I have checked over all my forms in OpsWorks and every name field is populated. Beyond that, the custom JSON appears to be correct, as it is populating into the database.yml file. I am not sure what else to check from there.

Has anyone seen this issue before, or can anyone offer any thoughts on how I could pin down what is going wrong here?

1 Answers1

2

The issue was that the old engine yard deploy scripts assume different parameters than what opsworks uses in its deploy scripts. The solution was to rewrite the deploy scripts removing the engine yard wrapper code.