summaryrefslogtreecommitdiff
path: root/lib/chef/provider/cron.rb
diff options
context:
space:
mode:
authorRyota Arai <ryota.arai@gmail.com>2013-12-04 09:26:22 +0900
committerBryan McLellan <btm@getchef.com>2014-03-20 13:06:29 -0700
commit2fa66bd039aaed21829df80885d647df29f576e3 (patch)
treeca3f232d51a0d26f2af67f8a60031929ce441872 /lib/chef/provider/cron.rb
parenta167025861a1f06308650a3321a8be8be9f715cd (diff)
downloadchef-2fa66bd039aaed21829df80885d647df29f576e3.tar.gz
Cron resource accepts a symbol as `weekday`
Diffstat (limited to 'lib/chef/provider/cron.rb')
-rw-r--r--lib/chef/provider/cron.rb12
1 files changed, 11 insertions, 1 deletions
diff --git a/lib/chef/provider/cron.rb b/lib/chef/provider/cron.rb
index 87452b4872..e80f70d8bb 100644
--- a/lib/chef/provider/cron.rb
+++ b/lib/chef/provider/cron.rb
@@ -29,6 +29,7 @@ class Chef
ENV_PATTERN = /\A(\S+)=(\S*)/
CRON_ATTRIBUTES = [:minute, :hour, :day, :month, :weekday, :command, :mailto, :path, :shell, :home, :environment]
+ WEEKDAY_SYMBOLS = [:sunday, :monday, :tuesday, :wednesday, :thursday, :friday, :saturday]
def initialize(new_resource, run_context)
super(new_resource, run_context)
@@ -220,9 +221,18 @@ class Chef
@new_resource.environment.each do |name, value|
newcron << "#{name}=#{value}\n"
end
- newcron << "#{@new_resource.minute} #{@new_resource.hour} #{@new_resource.day} #{@new_resource.month} #{@new_resource.weekday} #{@new_resource.command}\n"
+ newcron << "#{@new_resource.minute} #{@new_resource.hour} #{@new_resource.day} #{@new_resource.month} #{weekday_in_crontab} #{@new_resource.command}\n"
newcron
end
+
+ def weekday_in_crontab
+ weekday_in_crontab = WEEKDAY_SYMBOLS.index(@new_resource.weekday)
+ if weekday_in_crontab.nil?
+ @new_resource.weekday
+ else
+ weekday_in_crontab.to_s
+ end
+ end
end
end
end