Class: Convection::Model::Template::ResourceAttribute::UpdatePolicy

Inherits:
Convection::Model::Template::ResourceAttribute show all
Defined in:
lib/convection/model/template/resource_attribute/update_policy.rb

Overview

Instance Method Summary collapse

Methods inherited from Convection::Model::Template::ResourceAttribute

#initialize

Constructor Details

This class inherits a constructor from Convection::Model::Template::ResourceAttribute

Instance Method Details

#max_batch_size(val) ⇒ Object



22
23
24
# File 'lib/convection/model/template/resource_attribute/update_policy.rb', line 22

def max_batch_size(val)
  @max_batch = val
end

#min_instances_in_service(val) ⇒ Object



18
19
20
# File 'lib/convection/model/template/resource_attribute/update_policy.rb', line 18

def min_instances_in_service(val)
  @min_in_service = val
end

#pause_time(val) ⇒ Object



14
15
16
# File 'lib/convection/model/template/resource_attribute/update_policy.rb', line 14

def pause_time(val)
  @pause = val
end

#render(resource) ⇒ Object



30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
# File 'lib/convection/model/template/resource_attribute/update_policy.rb', line 30

def render(resource)
  resource.tap do |r|
    r['UpdatePolicy'] = {
      'AutoScalingScheduledAction' => {
        'IgnoreUnmodifiedGroupSizeProperties' => true
      },
      'AutoScalingRollingUpdate' => {
        'MinInstancesInService' => @min_in_service,
        'MaxBatchSize' => @max_batch,
        'WaitOnResourceSignals' => @wait_on_res,
        'PauseTime' => @pause
      }
    }
  end
end

#wait_on_resource_signals(val) ⇒ Object



26
27
28
# File 'lib/convection/model/template/resource_attribute/update_policy.rb', line 26

def wait_on_resource_signals(val)
  @wait_on_res = val
end