class Chef::Resource::CronD
Public Instance Methods
after_created()
click to toggle source
warn if someone passes the deprecated cookbook property
# File lib/chef/resource/cron/cron_d.rb, line 114 def after_created raise ArgumentError, "The 'cookbook' property for the cron_d resource is no longer supported now that it ships as a core resource." if cookbook end
create_template(create_action)
click to toggle source
# File lib/chef/resource/cron/cron_d.rb, line 163 def create_template(create_action) # cleanup the legacy named job if it exists file "#{new_resource.cron_name} legacy named cron.d file" do path "/etc/cron.d/#{new_resource.cron_name}" action :delete only_if { new_resource.cron_name != sanitized_name } end # @todo this is Chef 12 era cleanup. Someday we should remove it all template "/etc/cron.d/#{sanitized_name}" do source ::File.expand_path("../support/cron.d.erb", __dir__) local true mode new_resource.mode sensitive new_resource.sensitive variables( name: sanitized_name, predefined_value: new_resource.predefined_value, minute: new_resource.minute, hour: new_resource.hour, day: new_resource.day, month: new_resource.month, weekday: new_resource.weekday, command: new_resource.command, user: new_resource.user, mailto: new_resource.mailto, path: new_resource.path, home: new_resource.home, shell: new_resource.shell, comment: new_resource.comment, random_delay: new_resource.random_delay, environment: new_resource.environment ) action create_action end end
define_resource_requirements()
click to toggle source
# File lib/chef/resource/cron/cron_d.rb, line 148 def define_resource_requirements requirements.assert(:create, :create_if_missing) do |a| a.assertion do # ensure valid cron job names for linux, otherwise the jobs won't be executed if linux? new_resource.cron_name =~ /^[a-zA-Z0-9_-]+$/ else true end end a.failure_message("The cron job name should contain letters, numbers, hyphens and underscores only.") a.block_action! end end
sanitized_name()
click to toggle source
@return [String] cron_name property with . replaced with -
# File lib/chef/resource/cron/cron_d.rb, line 144 def sanitized_name new_resource.cron_name.tr(".", "-") end