class StackMaster::StackStatus
Attributes
stack_definition[R]
Public Class Methods
new(config, stack_definition)
click to toggle source
# File lib/stack_master/stack_status.rb, line 3 def initialize(config, stack_definition) @config = config @stack_definition = stack_definition end
Public Instance Methods
body_changed?()
click to toggle source
# File lib/stack_master/stack_status.rb, line 26 def body_changed? stack.nil? || differ.body_different? end
changed?()
click to toggle source
# File lib/stack_master/stack_status.rb, line 18 def changed? stack.nil? || body_changed? || parameters_changed? end
changed_message()
click to toggle source
# File lib/stack_master/stack_status.rb, line 8 def changed_message if changed? 'Yes' elsif no_echo_params? 'No *' else 'No' end end
no_echo_params?()
click to toggle source
# File lib/stack_master/stack_status.rb, line 34 def no_echo_params? !differ.noecho_keys.empty? end
parameters_changed?()
click to toggle source
# File lib/stack_master/stack_status.rb, line 30 def parameters_changed? stack.nil? || differ.params_different? end
status()
click to toggle source
# File lib/stack_master/stack_status.rb, line 22 def status stack ? stack.stack_status : nil end
Private Instance Methods
differ()
click to toggle source
# File lib/stack_master/stack_status.rb, line 51 def differ @differ ||= StackMaster::StackDiffer.new(proposed_stack, stack) end
find_stack()
click to toggle source
# File lib/stack_master/stack_status.rb, line 46 def find_stack Stack.find(stack_definition.region, stack_definition.stack_name) rescue Aws::CloudFormation::Errors::ValidationError end
proposed_stack()
click to toggle source
# File lib/stack_master/stack_status.rb, line 55 def proposed_stack @proposed_stack ||= Stack.generate(stack_definition, @config) end
stack()
click to toggle source
# File lib/stack_master/stack_status.rb, line 40 def stack return @stack if defined?(@stack) StackMaster.cloud_formation_driver.set_region(stack_definition.region) @stack = find_stack end