Sha256: f5f396ca11876d3cb25bc62873db869a84627312b202133430a287a667c9684d

Contents?: true

Size: 576 Bytes

Versions: 1

Compression:

Stored size: 576 Bytes

Contents

# frozen_string_literal: true

module Expire
  # Keep the most recent backups for a
  # certain period of time.
  class KeepMostRecentForRule < FromNowKeepMostRecentForRule
    extend FromRangeValue
    include NumerusUnit

    RULE_RANK = 11

    attr_reader :unit

    def self.rank
      RULE_RANK
    end

    def apply(backups, _)
      reference_datetime = backups.newest
      super(backups, reference_datetime)
    end

    def rank
      self.class.rank
    end

    def reason_to_keep
      "keep most recent backups for #{amount} #{numerus_unit}"
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
expire-0.2.0 lib/expire/keep_most_recent_for_rule.rb