2015-09-25 3 views
0

Я пишу задачу Rake. Я хочу вызвать его каждое последнее воскресенье каждого месяца в 11 часов вечера.Как вызвать задачу рейка, используя когда-либо в Rails

Как я могу запланировать это, используя драгоценный камень Whenever в Ruby on Rails?

У меня есть рейка задача в следующем месте: приложение/Библиотека/задачи/my_task.rake

task :create_entries => :environment do 
    puts "Hello" 
end 

ответ

2

Я не думаю, что есть правило для «последнего х дня месяца», но вы можете всегда ставить дополнительный if тест внутри блока:

every :sunday, :at => '11pm' do 
    #if the month is different a week from now, we must be in the last 
    #sunday of the month 
    if Time.now.month != 1.week.from_now.month 
    rake "my:rake:task" 
    end 
end 

Таким образом, это запланированный код будет работать каждое воскресенье, но это будет только продолжаться, чтобы вызвать задачу грабель, если время удовлетворяет дополнительные условия.