Class: EbDeployer::CloudFormationProvisioner

Inherits:
Object
  • Object
show all
Defined in:
lib/eb_deployer/cloud_formation_provisioner.rb

Constant Summary collapse

SUCCESS_STATS =
[:create_complete, :update_complete, :update_rollback_complete]
FAILED_STATS =
[:create_failed, :update_failed]

Instance Method Summary collapse

Constructor Details

#initialize(stack_name) ⇒ CloudFormationProvisioner

Returns a new instance of CloudFormationProvisioner.



6
7
8
# File 'lib/eb_deployer/cloud_formation_provisioner.rb', line 6

def initialize(stack_name)
  @stack_name = stack_name
end

Instance Method Details

#provision(resources) ⇒ Object



10
11
12
13
14
15
16
17
18
# File 'lib/eb_deployer/cloud_formation_provisioner.rb', line 10

def provision(resources)
  params = extract_params
  template = File.read(resources[:template])
  transforms = resources[:transforms]

  stack.exists? ? update_stack(template, params) : create_stack(template, params)
  wait_for_stack_op_terminate
  transform_output_to_settings(transforms)
end