尝试使用cronjob调用rake文件

时间:2016-01-26 14:58:37

标签: ruby rubygems rake redmine

这是我在提示中开始的:

root@debian{/usr/share}:rake /usr/share/redmine/Rakefile redmine:email:receive_pop3 RAILS_ENV="production" host=mail.dd.com port=995 username=test password=D ssl=true project=Helpdesk --trace

这是它的痕迹:

rake aborted!
No Rakefile found (looking for: rakefile, Rakefile, rakefile.rb, Rakefile.rb)
/var/lib/gems/2.1.0/gems/rake-10.5.0/lib/rake/application.rb:684:in `raw_load_rakefile'
/var/lib/gems/2.1.0/gems/rake-10.5.0/lib/rake/application.rb:94:in `block in load_rakefile'
/var/lib/gems/2.1.0/gems/rake-10.5.0/lib/rake/application.rb:176:in `standard_exception_handling'
/var/lib/gems/2.1.0/gems/rake-10.5.0/lib/rake/application.rb:93:in `load_rakefile'
/var/lib/gems/2.1.0/gems/rake-10.5.0/lib/rake/application.rb:77:in `block in run'
/var/lib/gems/2.1.0/gems/rake-10.5.0/lib/rake/application.rb:176:in `standard_exception_handling'
/var/lib/gems/2.1.0/gems/rake-10.5.0/lib/rake/application.rb:75:in `run'
/var/lib/gems/2.1.0/gems/rake-10.5.0/bin/rake:33:in `'
/usr/local/bin/rake:23:in `load'
/usr/local/bin/rake:23:in `'

当我进入文件夹/ usr / share / redmine时,它没有问题。

我称之为假吗?

编辑:文件系统中的图像:

enter image description here

1 个答案:

答案 0 :(得分:0)

你必须正确地调用它。转到redmine目录并省略该文件,因为rake会找到Rakefile本身。

root@debian{/usr/share/redmine}:rake redmine:email:receive_pop3 ...

如果Rakefile具有不同的名称,请使用-f或--rakefile:

root@debian{/usr/share/redmine}:rake -f different_rake_file_name redmine:email:receive_pop3 ...

来自doc

  

%rake [options ...] [VAR = VALUE ...] [目标...]

     

...

     

- rakefile filename(-f)

     

使用filename作为rakefile的名称。默认的rakefile名称是rakefile和Rakefile(rakefile优先)。如果   在当前目录中找不到rakefile,rake会搜索   匹配的父目录。 Rakefile所在的目录   找到将成为执行中的操作的当前目录   Rakefile。