Консоль Heroku rails больше не запускается

У меня проблема с запуском консоли rails в heroku (cedar-stack). Каждая из следующих команд heroku run console, heroku run rails console, heroku run bundle exec rails console приводит к следующему сообщению об ошибке:

Запуск bundle exec rails console подключен к терминалу... up, run.8155

Прервите тестирование: ваша среда Rails работает в рабочем режиме!

Это сообщение об ошибке немного сбивает с толку. Какой тест пытается запустить героку? Я просто хочу запустить консоль, которая отлично работала 4 недели назад.


person Micha    schedule 09.05.2013    source источник
comment
Я не совсем уверен, какую команду вы пытаетесь запустить? heroku run rails console?   -  person Leo Correa    schedule 10.05.2013
comment
Я просто хочу войти в консоль rails для своего приложения, размещенного на heroku.com, через Git-bash.   -  person Micha    schedule 10.05.2013
comment
ОК, я понял прямо сейчас: использование консольной разработки heroku run делает свою работу. Но мне интересно об этом. Это поведение по умолчанию?   -  person Micha    schedule 10.05.2013
comment
Кстати, вызов производства консоли heroku run приводит к тому же сообщению об ошибке и также прерывается.   -  person Micha    schedule 10.05.2013
comment
Вы не должны получать доступ к консоли heroku в среде разработки. Приложение heroku работает в производстве, поэтому я не понимаю, почему вам нужен доступ к нему в процессе разработки. Вам следует связаться с ними или задать вопрос.   -  person Leo Correa    schedule 10.05.2013
comment
Я не хочу получать к нему доступ в режиме разработки! Но по другому это не работает. Это проблема, о которой я пытался вам рассказать.   -  person Micha    schedule 15.05.2013


Ответы (5)


Для Cedar Stack и более поздних версий:

heroku run rails console --app <app name>

Предыдущие стеки могли использовать эту команду:

heroku run console --app <app name>
person Chris Barretto    schedule 10.05.2013
comment
Потрясающий. Рад слышать. Вы также можете взглянуть на драгоценный камень heroku_san. Это помогает в предоставлении множества специфичных для среды задач rake для консоли, развертывания или перехватов для выполнения до/после развертывания. - person Chris Barretto; 16.05.2013
comment
Примечание: если вы используете Cedar, вам нужно будет выполнить 'heroku run rails console --app ‹имя приложения› - person Chris Barretto; 02.02.2014

Если у вас несколько сред (staging/production/etc), вам понадобится эта команда:

heroku run -a app-name console

Если у вас есть только одна среда и вы никогда не настраиваете промежуточную среду или другие среды, вы можете просто запустить:

heroku run console

https://github.com/nemrow/rails_app_cheatsheet/blob/master/heroku.rdoc

person Jordan Rumpelstiltskin Nemrow    schedule 23.08.2013

По какой-то причине вам нужно явно определить консольный процесс в Procfile:

# Procfile

web: script/rails server -p $PORT
console: script/rails console

Эта запись в блоге содержит более подробную информацию: http://platypus.belighted.com/blog/2013/01/21/ruby-2-rails-4-heroku/

person Christos Zisopoulos    schedule 10.05.2013
comment
вам не нужно делать это (больше?). для меня все, что вам нужно сделать, это heroku run script/rails console - person phoet; 02.07.2013
comment
Это больше не действует в Rails 4.0.0, поскольку он удаляет script/rails в пользу bin/rails. - person Andrew Gertig; 07.07.2013

У меня была такая же проблема, и я решил сделать это, и это сработало

$ heroku run bash
$ cd bin
~/bin $ ruby rails console
person Naiguel Developer    schedule 23.06.2017

Вы должны просто использовать heroku run console, как ответили другие.

Heroku одновременно работает только в одной среде, которая настроена Переменные среды RAILS_ENV и RACK_ENV.

При подключении консоль автоматически использует правильную среду.

person jordelver    schedule 11.05.2013