Как я могу получить crontab для успешного запуска WEBrick - PullRequest
2 голосов
/ 02 марта 2012

Я пытаюсь запустить почасовое задание cron, которое извлекает некоторый код, запускает рельсы и выполняет некоторые тесты (извлечение кода и тесты на самом деле не имеют для этого значения, поскольку они работают нормально).Вот строка crontab от моего пользователя (я на Ubuntu 10.04):

0 */1 * * * /home/me/src/dev-setup/scripts/hourly_ui_test_cron_script

и вот сам скрипт (за исключением комментариев, которые я повторяю самому себе, мерзавец и тестовый материал):

#!/bin/bash

USER=me
HOME=/home/$USER/
DISPLAY=:0
source $HOME/.bashrc
source $HOME/.rvm/scripts/rvm
PATH=/home/$USER/.rvm/gems/ruby-1.9.2-p290/bin:/home/$USER/.rvm/gems/ruby-1.9.2-p290@global/bin:/home/$USER/.rvm/rubies/ruby-1.9.2-p290/bin:/home/$USER/.rvm/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
cd $HOME/src/project
pgrep -f ruby | xargs kill -9
rails s -e test >> hourly_test.log

и это в основном работает, за исключением того, что мой WEBrick запускается и сразу выходит без ошибок;вот журнал:

=> Booting WEBrick
=> Rails 3.1.3 application starting in test on http://0.0.0.0:3000
=> Call with -d to detach
=> Ctrl-C to shutdown server
Exiting

и в журнале рельсов ничего не зарегистрировано.Я пытался запустить только rails s, я пытался запустить скрипт из crontab root;ничего не работает (скрипт запускается, если я просто запускаю его из командной строки).Кто-нибудь видел это?ТИА

1 Ответ

1 голос
/ 02 марта 2012

Не могли бы вы попробовать добавить -d к скрипту, который будет демонизироваться. Посмотрите, что происходит с этим или вам нужно бегать на переднем плане?

Кажется, что это очень странная вещь, хотя, как правило, я надеюсь, что у вас есть веская причина использовать веббрик таким образом.

...