set :output doen't works on MacOS Rails 4

53 views
Skip to first unread message

rus...@gmail.com

unread,
Sep 18, 2014, 4:03:49 AM9/18/14
to whenev...@googlegroups.com
schedule.rb :

set :output, { error: 'log/error.log', standard: 'log/cron.log' }
#every :day, :at => '3:00am', :roles => [:app] do
every 1.minutes do
  command "echo 'new testing log/cron.log'"
end

 
rails_project/log/error.log exists
rails_project/log/cron.log exists

Running :
whenever --update-crontab --set environment=development
and 
crontab -l :

# Begin Whenever generated tasks for: /Users/ruslan/erosite/config/schedule.rb
* * * * * /bin/bash -l -c 'echo '\''new testing log/cron.log'\'' >> log/cron.log 2>> log/error.log'
# End Whenever generated tasks for: /Users/ruslan/erosite/config/schedule.rb

What can be a problem? Please, help!!!

In bundle list :
* capistrano (3.2.1 00b892a)
 * capistrano-bundler (1.1.3)
 * capistrano-rails (1.1.2)
* rails (4.1.4)

MacOS 10.9.4

Ruslan Korolev

unread,
Sep 18, 2014, 4:27:33 AM9/18/14
to whenev...@googlegroups.com
Hm.. i run cat /var/mail/ruslan and viewed error, that /bin/bash: log/cron.log: No such file or directory
so i changed schedule.rb to set :output, '/Users/ruslan/erosite/log/cron.log' and it seems work
But i need relative path :)

четверг, 18 сентября 2014 г., 12:03:49 UTC+4 пользователь Ruslan Korolev написал:

Ruslan Korolev

unread,
Sep 18, 2014, 4:36:56 AM9/18/14
to whenev...@googlegroups.com
The solution is simple:
`command` don't use relative path because in its source there is no 
 "cd :path && :environment_variable=:environment"
so you can use this schedule.rb for example

set :output, 'log/cron.log'
job_type :test_cron, "cd :path && :environment_variable=:environment :task :output"
every 1.minute do
  test_cron "echo 'test_cron cron!' "
end

and it will be work !:)

четверг, 18 сентября 2014 г., 12:03:49 UTC+4 пользователь Ruslan Korolev написал:
schedule.rb :
Reply all
Reply to author
Forward
0 new messages