Class: Heirloom::Destroyer

Inherits:
Object
  • Object
show all
Defined in:
lib/heirloom/destroyer/s3.rb,
lib/heirloom/archive/destroyer.rb

Defined Under Namespace

Classes: S3

Instance Method Summary collapse

Constructor Details

#initialize(args) ⇒ Destroyer

Returns a new instance of Destroyer.



5
6
7
8
9
10
11
# File 'lib/heirloom/archive/destroyer.rb', line 5

def initialize(args)
  @config = args[:config]
  @name = args[:name]
  @domain = "heirloom_#{@name}"
  @id = args[:id]
  @logger = @config.logger
end

Instance Method Details

#destroy(args) ⇒ Object



13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
# File 'lib/heirloom/archive/destroyer.rb', line 13

def destroy(args)
  regions = args[:regions]

  @logger.info "Destroying #{@name} #{@id}"

  regions.each do |region|
    bucket = reader.get_bucket :region => region

    key_name = reader.key_name

    if bucket
      @logger.debug "Destroying 's3://#{bucket}/#{@name}/#{key_name}'."

      s3_destroyer = Destroyer::S3.new :config => @config,
                                       :region => region

      s3_destroyer.destroy_file :key_name   => key_name,
                                :bucket     => bucket,
                                :key_folder => @name
    end
  end

  sdb.delete @domain, @id
end