Class: Container::Backup::Action
- Inherits:
-
Object
- Object
- Container::Backup::Action
- Defined in:
- lib/container/action.rb
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(container_info, directory, backup, actions) ⇒ Action
constructor
A new instance of Action.
- #perform ⇒ Object
Constructor Details
#initialize(container_info, directory, backup, actions) ⇒ Action
Returns a new instance of Action.
33 34 35 36 37 38 |
# File 'lib/container/action.rb', line 33 def initialize(container_info,directory,backup,actions) @container_info = container_info @directory = directory @backup = backup @steps = StepFactory.generate(@container_info, @directory, @backup,actions) end |
Class Method Details
.perform ⇒ Object
13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
# File 'lib/container/action.rb', line 13 def self.perform parameters = Parameter.parse(ARGV) pp parameters if parameters[:review] DockerCompose.file = parameters[:filename] backups = DockerCompose.instance.with_label pp backups if parameters[:review] parameters[:containers] = backups.keys if parameters[:containers].size == 0 containers = parameters[:containers] - ( parameters[:containers]- backups.keys.map(&:keys).flatten) backups.keys.select{|k| containers.include?(k.keys.first)}.each do |container_info| backup = :details if parameters[:details] backup ||= parameters[:backup] && !parameters[:restore] Action.new(container_info,parameters[:directory],backup,backups[container_info]).perform end rescue Errno::ENOENT => e puts "File not found: #{e.message}" end |
Instance Method Details
#perform ⇒ Object
30 31 32 |
# File 'lib/container/action.rb', line 30 def perform @steps.each(&:perform) end |