Class ComputeRegionInstanceGroupManagerUpdatePolicy.Jsii$Proxy

    • Method Detail

      • getMinimalAction

        public final String getMinimalAction()
        Description copied from interface: ComputeRegionInstanceGroupManagerUpdatePolicy
        Minimal action to be taken on an instance.

        You can specify either NONE to forbid any actions, REFRESH to update without stopping instances, RESTART to restart existing instances or REPLACE to delete and create new instances from the target template. If you specify a REFRESH, the Updater will attempt to perform that action only. However, if the Updater determines that the minimal action you specify is not enough to perform the update, it might perform a more disruptive action. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_group_manager#minimal_action ComputeRegionInstanceGroupManager#minimal_action}

        Specified by:
        getMinimalAction in interface ComputeRegionInstanceGroupManagerUpdatePolicy
      • getType

        public final String getType()
        Description copied from interface: ComputeRegionInstanceGroupManagerUpdatePolicy
        The type of update process.

        You can specify either PROACTIVE so that the instance group manager proactively executes actions in order to bring instances to their target versions or OPPORTUNISTIC so that no action is proactively executed but the update will be performed as part of other actions (for example, resizes or recreateInstances calls). Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_group_manager#type ComputeRegionInstanceGroupManager#type}

        Specified by:
        getType in interface ComputeRegionInstanceGroupManagerUpdatePolicy
      • getInstanceRedistributionType

        public final String getInstanceRedistributionType()
        Description copied from interface: ComputeRegionInstanceGroupManagerUpdatePolicy
        The instance redistribution policy for regional managed instance groups.

        Valid values are: "PROACTIVE", "NONE". If PROACTIVE (default), the group attempts to maintain an even distribution of VM instances across zones in the region. If NONE, proactive redistribution is disabled. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_group_manager#instance_redistribution_type ComputeRegionInstanceGroupManager#instance_redistribution_type}

        Specified by:
        getInstanceRedistributionType in interface ComputeRegionInstanceGroupManagerUpdatePolicy
      • getMaxSurgeFixed

        public final Number getMaxSurgeFixed()
        Description copied from interface: ComputeRegionInstanceGroupManagerUpdatePolicy
        Specifies a fixed number of VM instances.

        This must be a positive integer. Conflicts with max_surge_percent. Both cannot be 0 Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_group_manager#max_surge_fixed ComputeRegionInstanceGroupManager#max_surge_fixed}

        Specified by:
        getMaxSurgeFixed in interface ComputeRegionInstanceGroupManagerUpdatePolicy
      • getMaxSurgePercent

        public final Number getMaxSurgePercent()
        Description copied from interface: ComputeRegionInstanceGroupManagerUpdatePolicy
        Specifies a percentage of instances between 0 to 100%, inclusive. For example, specify 80 for 80%. Conflicts with max_surge_fixed.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_group_manager#max_surge_percent ComputeRegionInstanceGroupManager#max_surge_percent}

        Specified by:
        getMaxSurgePercent in interface ComputeRegionInstanceGroupManagerUpdatePolicy
      • getMostDisruptiveAllowedAction

        public final String getMostDisruptiveAllowedAction()
        Description copied from interface: ComputeRegionInstanceGroupManagerUpdatePolicy
        Most disruptive action that is allowed to be taken on an instance.

        You can specify either NONE to forbid any actions, REFRESH to allow actions that do not need instance restart, RESTART to allow actions that can be applied without instance replacing or REPLACE to allow all possible actions. If the Updater determines that the minimal update action needed is more disruptive than most disruptive allowed action you specify it will not perform the update at all. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_group_manager#most_disruptive_allowed_action ComputeRegionInstanceGroupManager#most_disruptive_allowed_action}

        Specified by:
        getMostDisruptiveAllowedAction in interface ComputeRegionInstanceGroupManagerUpdatePolicy
      • getReplacementMethod

        public final String getReplacementMethod()
        Description copied from interface: ComputeRegionInstanceGroupManagerUpdatePolicy
        The instance replacement method for regional managed instance groups.

        Valid values are: "RECREATE", "SUBSTITUTE". If SUBSTITUTE (default), the group replaces VM instances with new instances that have randomly generated names. If RECREATE, instance names are preserved. You must also set max_unavailable_fixed or max_unavailable_percent to be greater than 0. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_region_instance_group_manager#replacement_method ComputeRegionInstanceGroupManager#replacement_method}

        Specified by:
        getReplacementMethod in interface ComputeRegionInstanceGroupManagerUpdatePolicy
      • $jsii$toJson

        @Internal
        public com.fasterxml.jackson.databind.JsonNode $jsii$toJson()
        Specified by:
        $jsii$toJson in interface software.amazon.jsii.JsiiSerializable
      • hashCode

        public final int hashCode()
        Overrides:
        hashCode in class Object