Sha256: 89d03765eb53035ced147119a5cbbd5e2ce98f7580f410282826edb9a1be9bdb

Contents?: true

Size: 975 Bytes

Versions: 42

Compression:

Stored size: 975 Bytes

Contents

module Builderator
  module Model
    module Cleaner
      ##
      # Shared model interface
      ##
      class Base
        attr_reader :resources

        def initialize(*args)
          fetch(*args)
        end

        def fetch
          @resources = {}
        end

        def find(filters = {})
          Util.filter(resources, filters)
        end

        def select(set = [])
          resources.select { |k, _| set.include?(k) }
        end

        def in_use
          find(Config.cleaner.filters)
        end

        def in_use?(key)
          @in_use ||= in_use

          @in_use.include?(key)
        end

        def unused
          resources.reject { |k, _| in_use?(k) }
        end
      end
    end
  end
end

require_relative './cleaner/images'
require_relative './cleaner/instances'
require_relative './cleaner/launch_configs'
require_relative './cleaner/scaling_groups'
require_relative './cleaner/snapshots'
require_relative './cleaner/volumes'

Version data entries

42 entries across 42 versions & 1 rubygems

Version Path
builderator-2.1.1 lib/builderator/model/cleaner.rb
builderator-2.1.0 lib/builderator/model/cleaner.rb
builderator-2.0.4 lib/builderator/model/cleaner.rb
builderator-2.0.3 lib/builderator/model/cleaner.rb
builderator-2.0.2 lib/builderator/model/cleaner.rb
builderator-2.0.1 lib/builderator/model/cleaner.rb
builderator-2.0.0 lib/builderator/model/cleaner.rb
builderator-1.3.2 lib/builderator/model/cleaner.rb
builderator-1.3.1 lib/builderator/model/cleaner.rb
builderator-1.3.0 lib/builderator/model/cleaner.rb
builderator-1.2.3.pre.beta.1 lib/builderator/model/cleaner.rb
builderator-1.2.2 lib/builderator/model/cleaner.rb
builderator-1.2.1 lib/builderator/model/cleaner.rb
builderator-1.2.0 lib/builderator/model/cleaner.rb
builderator-1.1.12 lib/builderator/model/cleaner.rb
builderator-1.1.11 lib/builderator/model/cleaner.rb
builderator-1.1.10 lib/builderator/model/cleaner.rb
builderator-1.1.9 lib/builderator/model/cleaner.rb
builderator-1.1.8 lib/builderator/model/cleaner.rb
builderator-1.1.7 lib/builderator/model/cleaner.rb