Class: AWSCDK::StepFunctionsTasks::EMRModifyInstanceGroupByName::InstanceResizePolicyProperty
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::StepFunctionsTasks::EMRModifyInstanceGroupByName::InstanceResizePolicyProperty
- Defined in:
- step_functions_tasks/emr_modify_instance_group_by_name.rb
Overview
Custom policy for requesting termination protection or termination of specific instances when shrinking an instance group.
Instance Attribute Summary collapse
-
#instance_termination_timeout ⇒ AWSCDK::Duration?
readonly
Decommissioning timeout override for the specific list of instances to be terminated.
-
#instances_to_protect ⇒ Array<String>?
readonly
Specific list of instances to be protected when shrinking an instance group.
-
#instances_to_terminate ⇒ Array<String>?
readonly
Specific list of instances to be terminated when shrinking an instance group.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(instances_to_protect: nil, instances_to_terminate: nil, instance_termination_timeout: nil) ⇒ InstanceResizePolicyProperty
constructor
A new instance of InstanceResizePolicyProperty.
- #to_jsii ⇒ Object
Constructor Details
#initialize(instances_to_protect: nil, instances_to_terminate: nil, instance_termination_timeout: nil) ⇒ InstanceResizePolicyProperty
Returns a new instance of InstanceResizePolicyProperty.
705 706 707 708 709 710 711 712 |
# File 'step_functions_tasks/emr_modify_instance_group_by_name.rb', line 705 def initialize(instances_to_protect: nil, instances_to_terminate: nil, instance_termination_timeout: nil) @instances_to_protect = instances_to_protect Jsii::Type.check_type(@instances_to_protect, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "instancesToProtect") unless @instances_to_protect.nil? @instances_to_terminate = instances_to_terminate Jsii::Type.check_type(@instances_to_terminate, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "instancesToTerminate") unless @instances_to_terminate.nil? @instance_termination_timeout = instance_termination_timeout Jsii::Type.check_type(@instance_termination_timeout, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5EdXJhdGlvbiJ9")), "instanceTerminationTimeout") unless @instance_termination_timeout.nil? end |
Instance Attribute Details
#instance_termination_timeout ⇒ AWSCDK::Duration? (readonly)
Default: cdk.Duration.seconds
Decommissioning timeout override for the specific list of instances to be terminated.
728 729 730 |
# File 'step_functions_tasks/emr_modify_instance_group_by_name.rb', line 728 def instance_termination_timeout @instance_termination_timeout end |
#instances_to_protect ⇒ Array<String>? (readonly)
Default: - No instances will be protected when shrinking an instance group
Specific list of instances to be protected when shrinking an instance group.
718 719 720 |
# File 'step_functions_tasks/emr_modify_instance_group_by_name.rb', line 718 def instances_to_protect @instances_to_protect end |
#instances_to_terminate ⇒ Array<String>? (readonly)
Default: - No instances will be terminated when shrinking an instance group.
Specific list of instances to be terminated when shrinking an instance group.
723 724 725 |
# File 'step_functions_tasks/emr_modify_instance_group_by_name.rb', line 723 def instances_to_terminate @instances_to_terminate end |
Class Method Details
.jsii_properties ⇒ Object
730 731 732 733 734 735 736 |
# File 'step_functions_tasks/emr_modify_instance_group_by_name.rb', line 730 def self.jsii_properties { :instances_to_protect => "instancesToProtect", :instances_to_terminate => "instancesToTerminate", :instance_termination_timeout => "instanceTerminationTimeout", } end |
Instance Method Details
#to_jsii ⇒ Object
738 739 740 741 742 743 744 745 746 |
# File 'step_functions_tasks/emr_modify_instance_group_by_name.rb', line 738 def to_jsii result = {} result.merge!({ "instancesToProtect" => @instances_to_protect, "instancesToTerminate" => @instances_to_terminate, "instanceTerminationTimeout" => @instance_termination_timeout, }) result.compact end |