in versions >= 0.46.0, I'm seeing this behavior on foreman run.
vagrant@lucid64:~/site$ foreman run python bootstrap.py
/usr/lib/ruby/gems/1.8/gems/foreman-0.53.0/lib/foreman/cli.rb:79:in `exec': can't convert Hash into String (TypeError)
from /usr/lib/ruby/gems/1.8/gems/foreman-0.53.0/lib/foreman/cli.rb:79:in `run'
from /usr/lib/ruby/gems/1.8/gems/thor-0.15.4/lib/thor/task.rb:27:in `send'
from /usr/lib/ruby/gems/1.8/gems/thor-0.15.4/lib/thor/task.rb:27:in `run'
from /usr/lib/ruby/gems/1.8/gems/thor-0.15.4/lib/thor/invocation.rb:120:in `invoke_task'
from /usr/lib/ruby/gems/1.8/gems/thor-0.15.4/lib/thor.rb:275:in `dispatch'
from /usr/lib/ruby/gems/1.8/gems/thor-0.15.4/lib/thor/base.rb:425:in `start'
from /usr/bin/foreman:19:in `load'
In earlier versions this works as expected.
Did the syntax change on this? I see that there was some changes made to how commands were handled internally around that time, see #209 and in the changelog.
I'm now stuck just running older versions - but it'd be great to get to the root of this problem. Should I be formatting my commands differently?
I had a similar problem running ruby 1.8. It looks like the most recent versions of foreman require ruby 1.9. If you upgrade it should work.
@omarkhan Correct! Upgrading to ruby 1.9.3p194 worked for me.