мне удалось получить работу хрон, чтобы запустить задачу грабель, выполнив следующие действия:грабель задача по проблемным хронам погрузочного RubyGems
cd /home/myusername/approotlocation/ && /usr/bin/rake sendnewsletter RAILS_ENV=development
Я проверил с which ruby
и which rake
, чтобы убедиться, что пути являются правильными (от Баша)
работа выглядит, как он хочет работать, как я получаю следующее сообщение электронной почты от хрон демона, когда он завершает
Missing these required gems:
chronic
whenever
searchlogic
adzap-ar_mailer
twitter
gdata
bitly
ruby-recaptcha
You're running:
ruby 1.8.7.22 at /usr/bin/ruby
rubygems 1.3.5 at /home/myusername/gems, /usr/lib/ruby/gems/1.8
Run `rake gems:install` to install the missing gems.
(in /home/myusername/approotlocation)
моей корки ом реки файл в LIB/задаче выглядит следующим образом:
task :sendnewsletter => :environment do
require 'rubygems'
require 'chronic'
require 'whenever'
require 'searchlogic'
require 'adzap-ar_mailer'
require 'twitter'
require 'gdata'
require 'bitly'
require 'ruby-recaptcha'
@recipients = Subscription.all(:conditions => {:active => true})
for user in @recipients
Email.send_later(:deliver_send_newsletter,user)
end
end
с или без требуют пунктов, она по-прежнему дает мне ту же ошибку ...
кто может пролить некоторый свет на это? или же сообщить мне о том, как сделать собственный файл в директории скрипта, который будет выполнять эту функцию (у меня уже есть хрон рабочего, который будет работать и обрабатывать все мои delayed_jobs.
После Jonathans предложения ниже я побежал
окр
как хроны сами по себе и получил следующий результат:
SHELL=/bin/sh
MAILTO=myemailaddress
USER=myusername
PATH=/usr/bin:/bin
PWD=/home/myusername
SHLVL=1
HOME=/home/myusername
LOGNAME= myusername
_=/usr/bin/env
делает это означает, что он не загружает рубиновые файлы правильно? .... также принял совет Jonathans и произвел следующий cron.sh
файл
#!/bin/sh
date
echo "Executing Matenia Rake Task"
PATH=/usr/bin:/bin
cd /home/myusername/approotlocation/
rake sendnewsletter
по-прежнему получать недостающие камни заметить ... Ура!
Было много затруднений в обновлении файла с его вставкой текста там, где он не должен был ... невозможно выполнить этот вариант, к сожалению ... спасибо за попытку :) –
Я все еще думаю, что это проблема пути, просто используя/usr/bin и/bin - довольно маленький и узкий путь. Из ВАШЕЙ оболочки типа echo $ PATH, и это то, что вы должны сделать. – kSiR
yeh Я положил это в файл cron.sh, который я хотел запустить, чтобы выполнить задачу rake .. но, к сожалению, он не хочет загружать установленные приложениями драгоценные камни ... Мне должно быть что-то не так просто ... –