Class: PuppetHerald::PurgeCronJob
- Inherits:
-
Object
- Object
- PuppetHerald::PurgeCronJob
- Defined in:
- lib/puppet-herald/purgecronjob.rb
Overview
A cron job for Herald
Constant Summary collapse
- SECONDS_IN_DAY =
Number of seconds in a day
86_400
Instance Method Summary collapse
-
#parse_limit(limit) ⇒ DateTime
Parse a limit and returns number of seconds.
-
#run! ⇒ nil
Run a purge job.
Instance Method Details
#parse_limit(limit) ⇒ DateTime
Parse a limit and returns number of seconds
28 29 30 31 32 33 |
# File 'lib/puppet-herald/purgecronjob.rb', line 28 def parse_limit(limit) require 'rufus/scheduler' seconds = Rufus::Scheduler.parse limit now = DateTime.now now - Rational(seconds, SECONDS_IN_DAY) end |
#run! ⇒ nil
Run a purge job
13 14 15 16 17 18 19 20 21 22 |
# File 'lib/puppet-herald/purgecronjob.rb', line 13 def run! require 'puppet-herald' require 'puppet-herald/models/report' limit = ENV['PUPPET_HERALD_PURGE_LIMIT'] || '90d' date = parse_limit limit PuppetHerald.logger.info "Running a purge reports job with limit: `#{limit}` that is `#{date}`..." reports = PuppetHerald::Models::Report.purge_older_then(date) PuppetHerald.logger.info "Job completed. Purged: #{reports} reports." nil end |