Ошибка команды консоли Heroku - PullRequest
0 голосов
/ 20 октября 2011

Я не хочу спрашивать об этом, но я не могу понять это.Когда я запускаю следующую команду в heroku console, я получаю синтаксическую ошибку.Почему?

QUEUE='*' rake jobs:work

Ошибка:

SyntaxError: compile error
/home/heroku_rack/lib/console.rb:150: syntax error, unexpected tIDENTIFIER, expecting $end
QUEUE='*' rake jobs:work
          ^
/home/heroku_rack/lib/console.rb:150
/home/heroku_rack/lib/console.rb:150:in `call'
/home/heroku_rack/lib/console.rb:28:in `call'
/usr/ruby1.8.7/lib/ruby/1.8/monitor.rb:242:in `synchronize'

Мой файл resque.rake содержит псевдоним task "jobs:work" => "resque:work", и команда дословно скопирована из истории консоли, поэтому я знаю, что она запускалась раньше.

Ответы [ 2 ]

1 голос
/ 20 октября 2011

Консоль Heroku - это консоль Rails, а не оболочка bash.

Вы пытаетесь выполнить QUEUE='*' rake jobs:work, как если бы это была допустимая команда Ruby, что, конечно, не так.

Возможно, вы пытаетесь сделать это? (прокрутите вниз, чтобы "запустить что-нибудь", где говорится о Resque).

0 голосов
/ 21 октября 2011

Если вы используете что-либо, кроме стека Cedar, вы можете использовать DelayedJob на Heroku.

http://devcenter.heroku.com/articles/delayed-job

http://devcenter.heroku.com/articles/queueing#background_jobs_on_herokubamboo

...