Ошибка при попытке запустить delayed_job в рабочей среде - PullRequest
1 голос
/ 26 августа 2011

Я использую delayed_job для отправки электронных писем, все отлично работает в процессе разработки при запуске процесса с помощью:

jobs:work

Проблема возникает на моем общем хосте в процессе производства, когда я пытаюсь запустить процесс с помощьюскрипт "delayed_job" (как подробно здесь )

script/delayed_job start staging

дает мне следующую ошибку

/home/blog/applications/staging/blog/shared/bundle/ruby/1.8/gems/activesupport-3.1.0.rc6/lib/active_support/dependencies.rb:237:in `require': no such file to load -- delayed/command (LoadError)
    from /home/blog/applications/staging/blog/shared/bundle/ruby/1.8/gems/activesupport-3.1.0.rc6/lib/active_support/dependencies.rb:237:in `require'
    from /home/blog/applications/staging/blog/shared/bundle/ruby/1.8/gems/activesupport-3.1.0.rc6/lib/active_support/dependencies.rb:223:in `load_dependency'
    from /home/blog/applications/staging/blog/shared/bundle/ruby/1.8/gems/activesupport-3.1.0.rc6/lib/active_support/dependencies.rb:636:in `new_constants_in'
    from /home/blog/applications/staging/blog/shared/bundle/ruby/1.8/gems/activesupport-3.1.0.rc6/lib/active_support/dependencies.rb:223:in `load_dependency'
    from /home/blog/applications/staging/blog/shared/bundle/ruby/1.8/gems/activesupport-3.1.0.rc6/lib/active_support/dependencies.rb:237:in `require'
    from script/delayed_job:4

Любые идеи, как решить эту проблему, пожалуйста?

Я использую Rails 3.1 на Ruby 1.8.7 с Phusion Passenger.

1 Ответ

0 голосов
/ 26 августа 2011

Я бы предложил использовать Capistrano для подобных вещей. Затем вы можете просто поместить это в ваш файл deploy.rb (или Capfile):

require 'delayed/recipes'

after "deploy:start", "delayed_job:start"
after "deploy:stop", "delayed_job:stop"
after "deploy:restart", "delayed_job:restart"

Конечно, мне стало намного легче =)

...