Class: Builderator::Tasks::Clean

Inherits:
Thor
  • Object
show all
Defined in:
lib/builderator/tasks/clean.rb

Instance Method Summary collapse

Constructor Details

#initialize(*_) ⇒ Clean



25
26
27
28
29
30
31
32
# File 'lib/builderator/tasks/clean.rb', line 25

def initialize(*_)
  super

  ## Convert array of filter key-values to a hash
  options['filters'] = Hash[*options['filter']] if options['filter'].is_a?(Array)

  Control::Clean.options(options)
end

Instance Method Details

#allObject



77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
# File 'lib/builderator/tasks/clean.rb', line 77

def all
  invoke :volumes, [], options
  invoke :configs, [], options
  invoke :images, [], options
  invoke :snapshots, [], options

  ## TODO Print resource counts here.
  return if Control::Clean.exceptions.empty?

  say_status :fail, 'Not all tasks completed successfully. The following '\
    'exceptions occured:', :red
  Control::Clean.exceptions.each do |e|
    say_status(*e.status)
  end
end

#configsObject



35
36
37
# File 'lib/builderator/tasks/clean.rb', line 35

def configs
  Control::Clean.configs!(&method(:say_status))
end

#imagesObject



51
52
53
# File 'lib/builderator/tasks/clean.rb', line 51

def images
  Control::Clean.images!(&method(:say_status))
end

#snapshotsObject



56
57
58
# File 'lib/builderator/tasks/clean.rb', line 56

def snapshots
  Control::Clean.snapshots!(&method(:say_status))
end

#volumesObject



61
62
63
# File 'lib/builderator/tasks/clean.rb', line 61

def volumes
  Control::Clean.volumes!(&method(:say_status))
end