Можно ли запустить Play framework в тестовом режиме на героку - PullRequest
3 голосов
/ 15 января 2012

Я хочу иметь возможность запускать мое игровое приложение в тестовом режиме на Heroku, возможно ли это?Я добавил этот Procfile:

web:    play test --http.port=$PORT $PLAY_OPTS

Но когда я запускаю сервер, я вижу это в журналах Hereoku.

←[32m2012-01-15T19:11:04+00:00 heroku[web.1]:←[0m State changed from crashed to created
←[32m2012-01-15T19:11:04+00:00 heroku[web.1]:←[0m State changed from created to starting
←[32m2012-01-15T19:11:16+00:00 heroku[web.1]:←[0m Starting process with command `play test --http.port=19429 --%prod -Dprecompiled=true
`
←[32m2012-01-15T19:11:17+00:00 app[web.1]:←[0m Listening for transport dt_socket at address: 8000
←[32m2012-01-15T19:11:18+00:00 app[web.1]:←[0m 19:11:18,040 INFO  ~ Starting /app
←[32m2012-01-15T19:11:18+00:00 heroku[web.1]:←[0m Error R11 (Bad bind) -> Process bound to port 8000, should be 19429 (see environment
variable PORT)
←[32m2012-01-15T19:11:18+00:00 heroku[web.1]:←[0m Stopping process with SIGKILL
←[32m2012-01-15T19:11:18+00:00 app[web.1]:←[0m 19:11:18,048 INFO  ~ Module scala is available (/app/modules/scala-0.9.1)
←[32m2012-01-15T19:11:19+00:00 heroku[web.1]:←[0m State changed from starting to crashed
←[32m2012-01-15T19:11:19+00:00 heroku[web.1]:←[0m Process exited

Я думаю, это потому, что игра использует jpda.port = 8000 по умолчанию, а Heroku вылетает с параметрами по умолчанию.Их документация вообще не комментирует тестовый режим, что я видел, поэтому кто-нибудь успешно начал играть в тестовом режиме на Heroku?Я думаю, что мне нужно что-то вроде --jpda.port=$PORT2 в procfile

1 Ответ

4 голосов
/ 16 января 2012

Приложение в Heroku может открыть только один порт (тот, который указан в переменной $ PORT).К сожалению это означает, что Play!тестовый режим не может открыть второй порт, который необходим для удаленной отладки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...