上帝不会开始Resque工人:耙子堕胎了!非绝对居所

| 我在log / resque-0.log中收到以下错误:
rake aborted!
non-absolute home
/srv/myapp/current/Rakefile:4
如果我使用上帝使用的相同命令手动启动工人,则启动起来就很好:
QUEUE=* RAILS_ENV=production /usr/bin/rake -f /srv/myapp/current/Rakefile environment resque:work
我尝试在\'rails \'用户和\'root \'用户(上帝在其下运行)下运行该命令。有任何想法吗?     
已邀请:
您在\“ Rakefile \”和\“ resque \”之间有一个额外的环境 我的上帝脚本通常看起来像这样:
rails_env = ENV[\'RAILS_ENV\'] || \"development\"
rails_root = ENV[\'RAILS_ROOT\'] || \"/path/to/app\"


God.watch do |w|
    w.name = \"resque-task\"
    w.group = \'resque\'
    w.interval = 30.seconds
    w.start = \"/path/to/rake -f #{rails_root}/Rakefile resque:work QUEUE=* RAILS_ENV=#{rails_env}\"

    w.uid = \'gazler\'
    w.gid = \'gazler\'
    
因此,问题的一部分是shadow_puppet试图解析路径,但是如果您实际上是在尝试使用shadow_puppet或其他尝试在〜上扩展路径的东西(例如Capistrano),请确保包括以下内容:
w.env = {\"HOME\" => \"/users/home/dir\"}
这为我的情况解决了这个问题(由一位受上帝监督的救助工人开了顶帽子)。     
好的,原来我只需要从我的Gemfile中删除shadow_puppet。不知道为什么我首先要把它放在那儿,也许是从旧版本的Moonshine遗留下来的。     

要回复问题请先登录注册