Interface ComputeSnapshotConfig

  • All Superinterfaces:
    software.amazon.jsii.JsiiSerializable, com.hashicorp.cdktf.TerraformMetaArguments
    All Known Implementing Classes:
    ComputeSnapshotConfig.Jsii$Proxy

    @Generated(value="jsii-pacmak/1.102.0 (build e354887)",
               date="2024-08-31T03:59:18.990Z")
    @Stability(Stable)
    public interface ComputeSnapshotConfig
    extends software.amazon.jsii.JsiiSerializable, com.hashicorp.cdktf.TerraformMetaArguments
    • Method Detail

      • getName

        @Stability(Stable)
        @NotNull
        String getName()
        Name of the resource;

        provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression '[a-z](%5B-a-z0-9%5D*%5Ba-z0-9%5D)?' which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_snapshot#name ComputeSnapshot#name}

      • getSourceDisk

        @Stability(Stable)
        @NotNull
        String getSourceDisk()
        A reference to the disk used to create this snapshot.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_snapshot#source_disk ComputeSnapshot#source_disk}

      • getChainName

        @Stability(Stable)
        @Nullable
        default String getChainName()
        Creates the new snapshot in the snapshot chain labeled with the specified name.

        The chain name must be 1-63 characters long and comply with RFC1035. This is an uncommon option only for advanced service owners who needs to create separate snapshot chains, for example, for chargeback tracking. When you describe your snapshot resource, this field is visible only if it has a non-empty value. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_snapshot#chain_name ComputeSnapshot#chain_name}

      • getDescription

        @Stability(Stable)
        @Nullable
        default String getDescription()
        An optional description of this resource.

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

      • getId

        @Stability(Stable)
        @Nullable
        default String getId()
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_snapshot#id ComputeSnapshot#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.

      • getLabels

        @Stability(Stable)
        @Nullable
        default Map<String,​String> getLabels()
        Labels to apply to this Snapshot.

        **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/compute_snapshot#labels ComputeSnapshot#labels}

      • getProject

        @Stability(Stable)
        @Nullable
        default String getProject()
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_snapshot#project ComputeSnapshot#project}.
      • getSnapshotEncryptionKey

        @Stability(Stable)
        @Nullable
        default ComputeSnapshotSnapshotEncryptionKey getSnapshotEncryptionKey()
        snapshot_encryption_key block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_snapshot#snapshot_encryption_key ComputeSnapshot#snapshot_encryption_key}

      • getSourceDiskEncryptionKey

        @Stability(Stable)
        @Nullable
        default ComputeSnapshotSourceDiskEncryptionKey getSourceDiskEncryptionKey()
        source_disk_encryption_key block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_snapshot#source_disk_encryption_key ComputeSnapshot#source_disk_encryption_key}

      • getStorageLocations

        @Stability(Stable)
        @Nullable
        default List<String> getStorageLocations()
        Cloud Storage bucket storage location of the snapshot (regional or multi-regional).

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_snapshot#storage_locations ComputeSnapshot#storage_locations}

      • getTimeouts

        @Stability(Stable)
        @Nullable
        default ComputeSnapshotTimeouts getTimeouts()
        timeouts block.

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

      • getZone

        @Stability(Stable)
        @Nullable
        default String getZone()
        A reference to the zone where the disk is hosted.

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