2016-04-11 12 views
1

Vielleicht ist Stackoverlow Community kann mir helfen, weil ich keine Ideen habe.Cron Job für Redmine Rake Befehle. E-Mail-Verarbeitung

Ich habe installiert Test Redmine mit Hilfe von this guide

Also, ich habe zwei Benutzer - „serveradminuser“ und „redmine“ (von Führern) Rake Befehle nur vom Benutzer „redmine“ werden können.

Wenn ich diesen Code in Terminal von redmine Benutzer einfügen

cd /opt/redmine/redmine; /usr/lib/ruby/gems/2.1.0/gems/rake-10.1.0./bin/rake -f /opt/redmine/redmine/Rakefile redmine:email:receive_imap RAILS_ENV="production" host=XX username=XX password=XX port=XX allow_override=all 

und alles ist gut.

Ich habe dieses crontab -u redmine -e mit diesem Code:

*/2 * * * * cd /opt/redmine/redmine; /usr/lib/ruby/gems/2.1.0/gems/rake-10.1.0./bin/rake -f /opt/redmine/redmine/Rakefile redmine:email:receive_imap RAILS_ENV="production" host=XX username=XX password=XX port=XX allow_override=all 

aber nichts passiert. Syslog hat nichts besonderes geschrieben.

Ich benutze Ubuntu Server 14.04. Irgendwelche Ideen, wie kann ich Cron-Jobs laufen lassen?

Antwort

0

Peronnaly für meinen Cronjob in Ruby verwende ich rufus-scheduler.

Sie können es versuchen, diese Datei in Ihrem config/initializer Ordner hinzufügen:

require 'rubygems' 
require 'rake' 
require 'rufus-scheduler' 

load File.join(Rails.root, 'Rakefile') 

ENV['host']='XX' 
ENV['username']='XX' 
ENV['password']='XX' 
ENV['port']='XX' 
ENV['allow_override']='all' 

scheduler = Rufus::Scheduler.new 

scheduler.interval '1m' do 
    task = Rake.application['redmine:email:receive_imap'] 
    task.reenable 
    task.invoke 
end 

nicht Vergessen gem 'rufus-scheduler' in Ihrem Gemfile hinzuzufügen und sie zu bündeln.

Luc