2014-02-08 4 views
1

The Heroku docs indicate, что вы можете установить переменные среды для использования в procfile. Я пытаюсь установить переменную SIDEKIQ_CONCURRENCY, так что моя промежуточная среда выделяет меньше рабочих для Sidekiq, чем моя производственная среда.Управление рабочими сайтами Sidekiq для нескольких сред в Heroku с использованием procfile

Я установил новые переменные, как так:

heroku config:set SIDEKIQ_CONCURRENCY=3 --app mystaging 
heroku config:set SIDEKIQ_CONCURRENCY=15 --app myproduction 

Затем я добавил следующую строку в моей PROCFILE:

worker: bundle exec sidekiq -c ENV[SIDEKIQ_CONCURRENCY] 

Я также попытался это:

worker: bundle exec sidekiq -c $SIDEKIQ_CONCURRENCY 

И когда Я развертываю, я получаю следующую ошибку в своих журналах:

invalid value for Integer(): "ENV[SIDEKIQ_CONCURRENCY]" 
+1

odd - я использую 'worker: bundle exec sidekiq -c $ SIDEKIQ_CONCURRENCY', который работает для меня. –

+0

Из любопытства, когда вы просматриваете страницу ресурсов Heroku для своего приложения под Dynos, вы видите 'work bundle exec sidekiq -c $ SIDEKIQ_CONCURRENCY' или вы видите' work bundle exec sidekiq -c', а затем целое число? –

+1

вырезать и вставлять со страницы ресурсов - bundle exec sidekiq -c $ SIDEKIQ_CONCURRENCY –

ответ

1

Просто, чтобы закрыть это, worker: bundle exec sidekiq -c $SIDEKIQ_CONCURRENCY действительно работает. Я перераспределен, и ошибка решена.