Class ComputePerInstanceConfig.Builder

    • Method Detail

      • connection

        @Stability(Experimental)
        public ComputePerInstanceConfig.Builder connection​(com.hashicorp.cdktf.SSHProvisionerConnection connection)
        Parameters:
        connection - This parameter is required.
        Returns:
        this
      • connection

        @Stability(Experimental)
        public ComputePerInstanceConfig.Builder connection​(com.hashicorp.cdktf.WinrmProvisionerConnection connection)
        Parameters:
        connection - This parameter is required.
        Returns:
        this
      • count

        @Stability(Experimental)
        public ComputePerInstanceConfig.Builder count​(com.hashicorp.cdktf.TerraformCount count)
        Parameters:
        count - This parameter is required.
        Returns:
        this
      • dependsOn

        @Stability(Experimental)
        public ComputePerInstanceConfig.Builder dependsOn​(List<? extends com.hashicorp.cdktf.ITerraformDependable> dependsOn)
        Parameters:
        dependsOn - This parameter is required.
        Returns:
        this
      • forEach

        @Stability(Experimental)
        public ComputePerInstanceConfig.Builder forEach​(com.hashicorp.cdktf.ITerraformIterator forEach)
        Parameters:
        forEach - This parameter is required.
        Returns:
        this
      • lifecycle

        @Stability(Experimental)
        public ComputePerInstanceConfig.Builder lifecycle​(com.hashicorp.cdktf.TerraformResourceLifecycle lifecycle)
        Parameters:
        lifecycle - This parameter is required.
        Returns:
        this
      • provider

        @Stability(Experimental)
        public ComputePerInstanceConfig.Builder provider​(com.hashicorp.cdktf.TerraformProvider provider)
        Parameters:
        provider - This parameter is required.
        Returns:
        this
      • instanceGroupManager

        @Stability(Stable)
        public ComputePerInstanceConfig.Builder instanceGroupManager​(String instanceGroupManager)
        The instance group manager this instance config is part of.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_per_instance_config#instance_group_manager ComputePerInstanceConfig#instance_group_manager}

        Parameters:
        instanceGroupManager - The instance group manager this instance config is part of. This parameter is required.
        Returns:
        this
      • name

        @Stability(Stable)
        public ComputePerInstanceConfig.Builder name​(String name)
        The name for this per-instance config and its corresponding instance.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_per_instance_config#name ComputePerInstanceConfig#name}

        Parameters:
        name - The name for this per-instance config and its corresponding instance. This parameter is required.
        Returns:
        this
      • id

        @Stability(Stable)
        public ComputePerInstanceConfig.Builder id​(String id)
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_per_instance_config#id ComputePerInstanceConfig#id}.

        Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2. If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable.

        Parameters:
        id - Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_per_instance_config#id ComputePerInstanceConfig#id}. This parameter is required.
        Returns:
        this
      • minimalAction

        @Stability(Stable)
        public ComputePerInstanceConfig.Builder minimalAction​(String minimalAction)
        The minimal action to perform on the instance during an update.

        Default is 'NONE'. Possible values are: * REPLACE * RESTART * REFRESH * NONE Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_per_instance_config#minimal_action ComputePerInstanceConfig#minimal_action}

        Parameters:
        minimalAction - The minimal action to perform on the instance during an update. This parameter is required.
        Returns:
        this
      • mostDisruptiveAllowedAction

        @Stability(Stable)
        public ComputePerInstanceConfig.Builder mostDisruptiveAllowedAction​(String mostDisruptiveAllowedAction)
        The most disruptive action to perform on the instance during an update.

        Default is 'REPLACE'. Possible values are: * REPLACE * RESTART * REFRESH * NONE Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_per_instance_config#most_disruptive_allowed_action ComputePerInstanceConfig#most_disruptive_allowed_action}

        Parameters:
        mostDisruptiveAllowedAction - The most disruptive action to perform on the instance during an update. This parameter is required.
        Returns:
        this
      • preservedState

        @Stability(Stable)
        public ComputePerInstanceConfig.Builder preservedState​(ComputePerInstanceConfigPreservedState preservedState)
        preserved_state block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_per_instance_config#preserved_state ComputePerInstanceConfig#preserved_state}

        Parameters:
        preservedState - preserved_state block. This parameter is required.
        Returns:
        this
      • project

        @Stability(Stable)
        public ComputePerInstanceConfig.Builder project​(String project)
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_per_instance_config#project ComputePerInstanceConfig#project}.

        Parameters:
        project - Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_per_instance_config#project ComputePerInstanceConfig#project}. This parameter is required.
        Returns:
        this
      • removeInstanceOnDestroy

        @Stability(Stable)
        public ComputePerInstanceConfig.Builder removeInstanceOnDestroy​(Boolean removeInstanceOnDestroy)
        When true, deleting this config will immediately remove the underlying instance.

        When false, deleting this config will use the behavior as determined by remove_instance_on_destroy. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_per_instance_config#remove_instance_on_destroy ComputePerInstanceConfig#remove_instance_on_destroy}

        Parameters:
        removeInstanceOnDestroy - When true, deleting this config will immediately remove the underlying instance. This parameter is required.
        Returns:
        this
      • removeInstanceOnDestroy

        @Stability(Stable)
        public ComputePerInstanceConfig.Builder removeInstanceOnDestroy​(com.hashicorp.cdktf.IResolvable removeInstanceOnDestroy)
        When true, deleting this config will immediately remove the underlying instance.

        When false, deleting this config will use the behavior as determined by remove_instance_on_destroy. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_per_instance_config#remove_instance_on_destroy ComputePerInstanceConfig#remove_instance_on_destroy}

        Parameters:
        removeInstanceOnDestroy - When true, deleting this config will immediately remove the underlying instance. This parameter is required.
        Returns:
        this
      • removeInstanceStateOnDestroy

        @Stability(Stable)
        public ComputePerInstanceConfig.Builder removeInstanceStateOnDestroy​(Boolean removeInstanceStateOnDestroy)
        When true, deleting this config will immediately remove any specified state from the underlying instance.

        When false, deleting this config will *not* immediately remove any state from the underlying instance. State will be removed on the next instance recreation or update. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_per_instance_config#remove_instance_state_on_destroy ComputePerInstanceConfig#remove_instance_state_on_destroy}

        Parameters:
        removeInstanceStateOnDestroy - When true, deleting this config will immediately remove any specified state from the underlying instance. This parameter is required.
        Returns:
        this
      • removeInstanceStateOnDestroy

        @Stability(Stable)
        public ComputePerInstanceConfig.Builder removeInstanceStateOnDestroy​(com.hashicorp.cdktf.IResolvable removeInstanceStateOnDestroy)
        When true, deleting this config will immediately remove any specified state from the underlying instance.

        When false, deleting this config will *not* immediately remove any state from the underlying instance. State will be removed on the next instance recreation or update. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_per_instance_config#remove_instance_state_on_destroy ComputePerInstanceConfig#remove_instance_state_on_destroy}

        Parameters:
        removeInstanceStateOnDestroy - When true, deleting this config will immediately remove any specified state from the underlying instance. This parameter is required.
        Returns:
        this
      • timeouts

        @Stability(Stable)
        public ComputePerInstanceConfig.Builder timeouts​(ComputePerInstanceConfigTimeouts timeouts)
        timeouts block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_per_instance_config#timeouts ComputePerInstanceConfig#timeouts}

        Parameters:
        timeouts - timeouts block. This parameter is required.
        Returns:
        this
      • zone

        @Stability(Stable)
        public ComputePerInstanceConfig.Builder zone​(String zone)
        Zone where the containing instance group manager is located.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_per_instance_config#zone ComputePerInstanceConfig#zone}

        Parameters:
        zone - Zone where the containing instance group manager is located. This parameter is required.
        Returns:
        this