我已經構建了我自己的作業服務器,它本質上是一個私有gem,作爲圍繞resque的包裝而構建。無Rakefile運行resque
(我不是在Rails環境中運行這個)
我到處看,它似乎是一個記錄/推薦的方式開始了工人,是這樣的:
$ QUEUE=* rake resque:work
哪意味着它必須在Rakefile存在的文件夾中執行。
我正在尋找一種方法來啓動它沒有Rakefile。
我已經學會爲止:
- 我已經通過issues看,也許有人問過類似的問題。
- 我已經瀏覽了wiki,特別是FAQ。
- 我知道我可以通過分析tasks file創建我自己的「bin」來運行它,而不用耙子。
- 我看到resque安裝了一個
resque
二進制文件,但它似乎只提供有限的功能,例如刪除和列出工作人員,但沒有啓動。 - 我目前的解決方法是,我的寶石的二進制文件在運行之前(和該文件夾有一個Rakefile)在做gem的文件夾
chdir
,就像下面的代碼一樣。
def start_worker
ENV['QUEUE'] = '*'
Dir.chdir gemdir do
exec "rake resque:work"
end
end
def gemdir
File.expand_path "../../", __dir__
end
欣賞在正確的方向上的任何輕推。