Class: AWSCDK::StepFunctionsTasks::EMRModifyInstanceGroupByName::ShrinkPolicyProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
step_functions_tasks/emr_modify_instance_group_by_name.rb

Overview

Policy for customizing shrink operations.

Allows configuration of decommissioning timeout and targeted instance shrinking.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(decommission_timeout: nil, instance_resize_policy: nil) ⇒ ShrinkPolicyProperty

Returns a new instance of ShrinkPolicyProperty.

Parameters:



759
760
761
762
763
764
# File 'step_functions_tasks/emr_modify_instance_group_by_name.rb', line 759

def initialize(decommission_timeout: nil, instance_resize_policy: nil)
  @decommission_timeout = decommission_timeout
  Jsii::Type.check_type(@decommission_timeout, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5EdXJhdGlvbiJ9")), "decommissionTimeout") unless @decommission_timeout.nil?
  @instance_resize_policy = instance_resize_policy.is_a?(Hash) ? ::AWSCDK::StepFunctionsTasks::EMRModifyInstanceGroupByName::InstanceResizePolicyProperty.new(**instance_resize_policy.transform_keys(&:to_sym)) : instance_resize_policy
  Jsii::Type.check_type(@instance_resize_policy, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfc3RlcGZ1bmN0aW9uc190YXNrcy5FbXJNb2RpZnlJbnN0YW5jZUdyb3VwQnlOYW1lLkluc3RhbmNlUmVzaXplUG9saWN5UHJvcGVydHkifQ==")), "instanceResizePolicy") unless @instance_resize_policy.nil?
end

Instance Attribute Details

#decommission_timeoutAWSCDK::Duration? (readonly)

Note:

Default: - EMR selected default

The desired timeout for decommissioning an instance.

Overrides the default YARN decommissioning timeout.

Returns:



772
773
774
# File 'step_functions_tasks/emr_modify_instance_group_by_name.rb', line 772

def decommission_timeout
  @decommission_timeout
end

#instance_resize_policyAWSCDK::StepFunctionsTasks::EMRModifyInstanceGroupByName::InstanceResizePolicyProperty? (readonly)

Note:

Default: - None

Custom policy for requesting termination protection or termination of specific instances when shrinking an instance group.



777
778
779
# File 'step_functions_tasks/emr_modify_instance_group_by_name.rb', line 777

def instance_resize_policy
  @instance_resize_policy
end

Class Method Details

.jsii_propertiesObject



779
780
781
782
783
784
# File 'step_functions_tasks/emr_modify_instance_group_by_name.rb', line 779

def self.jsii_properties
  {
    :decommission_timeout => "decommissionTimeout",
    :instance_resize_policy => "instanceResizePolicy",
  }
end

Instance Method Details

#to_jsiiObject



786
787
788
789
790
791
792
793
# File 'step_functions_tasks/emr_modify_instance_group_by_name.rb', line 786

def to_jsii
  result = {}
  result.merge!({
    "decommissionTimeout" => @decommission_timeout,
    "instanceResizePolicy" => @instance_resize_policy,
  })
  result.compact
end