Class AlloydbInstanceConfig.Builder

    • Constructor Detail

      • Builder

        public Builder()
    • Method Detail

      • cluster

        @Stability(Stable)
        public AlloydbInstanceConfig.Builder cluster​(String cluster)
        Parameters:
        cluster - Identifies the alloydb cluster. Must be in the format 'projects/{project}/locations/{location}/clusters/{cluster_id}'. This parameter is required. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/alloydb_instance#cluster AlloydbInstance#cluster}
        Returns:
        this
      • instanceId

        @Stability(Stable)
        public AlloydbInstanceConfig.Builder instanceId​(String instanceId)
        Parameters:
        instanceId - The ID of the alloydb instance. This parameter is required. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/alloydb_instance#instance_id AlloydbInstance#instance_id}
        Returns:
        this
      • instanceType

        @Stability(Stable)
        public AlloydbInstanceConfig.Builder instanceType​(String instanceType)
        Parameters:
        instanceType - The type of the instance. This parameter is required. If the instance type is READ_POOL, provide the associated PRIMARY/SECONDARY instance in the 'depends_on' meta-data attribute. If the instance type is SECONDARY, point to the cluster_type of the associated secondary cluster instead of mentioning SECONDARY. Example: {instance_type = google_alloydb_cluster..cluster_type} instead of {instance_type = SECONDARY} If the instance type is SECONDARY, the terraform delete instance operation does not delete the secondary instance but abandons it instead. Use deletion_policy = "FORCE" in the associated secondary cluster and delete the cluster forcefully to delete the secondary cluster as well its associated secondary instance. Users can undo the delete secondary instance action by importing the deleted secondary instance by calling terraform import. Possible values: ["PRIMARY", "READ_POOL", "SECONDARY"] Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/alloydb_instance#instance_type AlloydbInstance#instance_type}
        Returns:
        this
      • annotations

        @Stability(Stable)
        public AlloydbInstanceConfig.Builder annotations​(Map<String,​String> annotations)
        Parameters:
        annotations - Annotations to allow client tools to store small amount of arbitrary data. This is distinct from labels. **Note**: This field is non-authoritative, and will only manage the annotations present in your configuration. Please refer to the field 'effective_annotations' for all of the annotations present on the resource. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/alloydb_instance#annotations AlloydbInstance#annotations}
        Returns:
        this
      • availabilityType

        @Stability(Stable)
        public AlloydbInstanceConfig.Builder availabilityType​(String availabilityType)
        Parameters:
        availabilityType - 'Availability type of an Instance. Defaults to REGIONAL for both primary and read instances. Note that primary and read instances can have different availability types. Only READ_POOL instance supports ZONAL type. Users can't specify the zone for READ_POOL instance. Zone is automatically chosen from the list of zones in the region specified. Read pool of size 1 can only have zonal availability. Read pools with node count of 2 or more can have regional availability (nodes are present in 2 or more zones in a region).' Possible values: ["AVAILABILITY_TYPE_UNSPECIFIED", "ZONAL", "REGIONAL"] Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/alloydb_instance#availability_type AlloydbInstance#availability_type}
        Returns:
        this
      • databaseFlags

        @Stability(Stable)
        public AlloydbInstanceConfig.Builder databaseFlags​(Map<String,​String> databaseFlags)
        Parameters:
        databaseFlags - Database flags. Set at instance level. * They are copied from primary instance on read instance creation. * Read instances can set new or override existing flags that are relevant for reads, e.g. for enabling columnar cache on a read instance. Flags set on read instance may or may not be present on primary. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/alloydb_instance#database_flags AlloydbInstance#database_flags}
        Returns:
        this
      • displayName

        @Stability(Stable)
        public AlloydbInstanceConfig.Builder displayName​(String displayName)
        Parameters:
        displayName - User-settable and human-readable display name for the Instance. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/alloydb_instance#display_name AlloydbInstance#display_name}
        Returns:
        this
      • gceZone

        @Stability(Stable)
        public AlloydbInstanceConfig.Builder gceZone​(String gceZone)
        Parameters:
        gceZone - The Compute Engine zone that the instance should serve from, per https://cloud.google.com/compute/docs/regions-zones This can ONLY be specified for ZONAL instances. If present for a REGIONAL instance, an error will be thrown. If this is absent for a ZONAL instance, instance is created in a random zone with available capacity. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/alloydb_instance#gce_zone AlloydbInstance#gce_zone}
        Returns:
        this
      • id

        @Stability(Stable)
        public AlloydbInstanceConfig.Builder id​(String id)
        Parameters:
        id - Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/alloydb_instance#id AlloydbInstance#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.
        Returns:
        this
      • labels

        @Stability(Stable)
        public AlloydbInstanceConfig.Builder labels​(Map<String,​String> labels)
        Parameters:
        labels - User-defined labels for the alloydb instance. **Note**: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/alloydb_instance#labels AlloydbInstance#labels}
        Returns:
        this
      • connection

        @Stability(Experimental)
        public AlloydbInstanceConfig.Builder connection​(com.hashicorp.cdktf.SSHProvisionerConnection connection)
        Sets the value of TerraformMetaArguments.getConnection()
        Parameters:
        connection - the value to be set.
        Returns:
        this
      • connection

        @Stability(Experimental)
        public AlloydbInstanceConfig.Builder connection​(com.hashicorp.cdktf.WinrmProvisionerConnection connection)
        Sets the value of TerraformMetaArguments.getConnection()
        Parameters:
        connection - the value to be set.
        Returns:
        this
      • count

        @Stability(Experimental)
        public AlloydbInstanceConfig.Builder count​(Number count)
        Sets the value of TerraformMetaArguments.getCount()
        Parameters:
        count - the value to be set.
        Returns:
        this
      • count

        @Stability(Experimental)
        public AlloydbInstanceConfig.Builder count​(com.hashicorp.cdktf.TerraformCount count)
        Sets the value of TerraformMetaArguments.getCount()
        Parameters:
        count - the value to be set.
        Returns:
        this
      • dependsOn

        @Stability(Experimental)
        public AlloydbInstanceConfig.Builder dependsOn​(List<? extends com.hashicorp.cdktf.ITerraformDependable> dependsOn)
        Sets the value of TerraformMetaArguments.getDependsOn()
        Parameters:
        dependsOn - the value to be set.
        Returns:
        this
      • forEach

        @Stability(Experimental)
        public AlloydbInstanceConfig.Builder forEach​(com.hashicorp.cdktf.ITerraformIterator forEach)
        Sets the value of TerraformMetaArguments.getForEach()
        Parameters:
        forEach - the value to be set.
        Returns:
        this
      • lifecycle

        @Stability(Experimental)
        public AlloydbInstanceConfig.Builder lifecycle​(com.hashicorp.cdktf.TerraformResourceLifecycle lifecycle)
        Sets the value of TerraformMetaArguments.getLifecycle()
        Parameters:
        lifecycle - the value to be set.
        Returns:
        this
      • provider

        @Stability(Experimental)
        public AlloydbInstanceConfig.Builder provider​(com.hashicorp.cdktf.TerraformProvider provider)
        Sets the value of TerraformMetaArguments.getProvider()
        Parameters:
        provider - the value to be set.
        Returns:
        this
      • provisioners

        @Stability(Experimental)
        public AlloydbInstanceConfig.Builder provisioners​(List<? extends Object> provisioners)
        Sets the value of TerraformMetaArguments.getProvisioners()
        Parameters:
        provisioners - the value to be set.
        Returns:
        this