Class ComputeNodeGroup.Builder

    • Method Detail

      • create

        @Stability(Stable)
        public static ComputeNodeGroup.Builder create​(software.constructs.Construct scope,
                                                      String id)
        Parameters:
        scope - The scope in which to define this construct. This parameter is required.
        id - The scoped construct ID. This parameter is required.
        Returns:
        a new instance of ComputeNodeGroup.Builder.
      • connection

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

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

        @Stability(Experimental)
        public ComputeNodeGroup.Builder count​(Number count)
        Parameters:
        count - This parameter is required.
        Returns:
        this
      • count

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

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

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

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

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

        @Stability(Experimental)
        public ComputeNodeGroup.Builder provisioners​(List<? extends Object> provisioners)
        Parameters:
        provisioners - This parameter is required.
        Returns:
        this
      • nodeTemplate

        @Stability(Stable)
        public ComputeNodeGroup.Builder nodeTemplate​(String nodeTemplate)
        The URL of the node template to which this node group belongs.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_node_group#node_template ComputeNodeGroup#node_template}

        Parameters:
        nodeTemplate - The URL of the node template to which this node group belongs. This parameter is required.
        Returns:
        this
      • autoscalingPolicy

        @Stability(Stable)
        public ComputeNodeGroup.Builder autoscalingPolicy​(ComputeNodeGroupAutoscalingPolicy autoscalingPolicy)
        autoscaling_policy block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_node_group#autoscaling_policy ComputeNodeGroup#autoscaling_policy}

        Parameters:
        autoscalingPolicy - autoscaling_policy block. This parameter is required.
        Returns:
        this
      • description

        @Stability(Stable)
        public ComputeNodeGroup.Builder description​(String description)
        An optional textual description of the resource.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_node_group#description ComputeNodeGroup#description}

        Parameters:
        description - An optional textual description of the resource. This parameter is required.
        Returns:
        this
      • id

        @Stability(Stable)
        public ComputeNodeGroup.Builder id​(String id)
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_node_group#id ComputeNodeGroup#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_node_group#id ComputeNodeGroup#id}. This parameter is required.
        Returns:
        this
      • initialSize

        @Stability(Stable)
        public ComputeNodeGroup.Builder initialSize​(Number initialSize)
        The initial number of nodes in the node group.

        One of 'initial_size' or 'autoscaling_policy' must be configured on resource creation. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_node_group#initial_size ComputeNodeGroup#initial_size}

        Parameters:
        initialSize - The initial number of nodes in the node group. This parameter is required.
        Returns:
        this
      • maintenancePolicy

        @Stability(Stable)
        public ComputeNodeGroup.Builder maintenancePolicy​(String maintenancePolicy)
        Specifies how to handle instances when a node in the group undergoes maintenance.

        Set to one of: DEFAULT, RESTART_IN_PLACE, or MIGRATE_WITHIN_NODE_GROUP. The default value is DEFAULT. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_node_group#maintenance_policy ComputeNodeGroup#maintenance_policy}

        Parameters:
        maintenancePolicy - Specifies how to handle instances when a node in the group undergoes maintenance. This parameter is required.
        Returns:
        this
      • maintenanceWindow

        @Stability(Stable)
        public ComputeNodeGroup.Builder maintenanceWindow​(ComputeNodeGroupMaintenanceWindow maintenanceWindow)
        maintenance_window block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_node_group#maintenance_window ComputeNodeGroup#maintenance_window}

        Parameters:
        maintenanceWindow - maintenance_window block. This parameter is required.
        Returns:
        this
      • name

        @Stability(Stable)
        public ComputeNodeGroup.Builder name​(String name)
        Name of the resource.

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

        Parameters:
        name - Name of the resource. This parameter is required.
        Returns:
        this
      • project

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

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

        @Stability(Stable)
        public ComputeNodeGroup.Builder shareSettings​(ComputeNodeGroupShareSettings shareSettings)
        share_settings block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_node_group#share_settings ComputeNodeGroup#share_settings}

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

        @Stability(Stable)
        public ComputeNodeGroup.Builder timeouts​(ComputeNodeGroupTimeouts timeouts)
        timeouts block.

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

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

        @Stability(Stable)
        public ComputeNodeGroup.Builder zone​(String zone)
        Zone where this node group is located.

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

        Parameters:
        zone - Zone where this node group is located. This parameter is required.
        Returns:
        this