Package com.pulumi.gcp.compute
Class SnapshotArgs.Builder
- java.lang.Object
-
- com.pulumi.gcp.compute.SnapshotArgs.Builder
-
- Enclosing class:
- SnapshotArgs
public static final class SnapshotArgs.Builder extends java.lang.Object
-
-
Constructor Summary
Constructors Constructor Description Builder()
Builder(SnapshotArgs defaults)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description SnapshotArgs
build()
SnapshotArgs.Builder
chainName(com.pulumi.core.Output<java.lang.String> chainName)
SnapshotArgs.Builder
chainName(java.lang.String chainName)
SnapshotArgs.Builder
description(com.pulumi.core.Output<java.lang.String> description)
SnapshotArgs.Builder
description(java.lang.String description)
SnapshotArgs.Builder
labels(com.pulumi.core.Output<java.util.Map<java.lang.String,java.lang.String>> labels)
SnapshotArgs.Builder
labels(java.util.Map<java.lang.String,java.lang.String> labels)
SnapshotArgs.Builder
name(com.pulumi.core.Output<java.lang.String> name)
SnapshotArgs.Builder
name(java.lang.String name)
SnapshotArgs.Builder
project(com.pulumi.core.Output<java.lang.String> project)
SnapshotArgs.Builder
project(java.lang.String project)
SnapshotArgs.Builder
snapshotEncryptionKey(com.pulumi.core.Output<SnapshotSnapshotEncryptionKeyArgs> snapshotEncryptionKey)
SnapshotArgs.Builder
snapshotEncryptionKey(SnapshotSnapshotEncryptionKeyArgs snapshotEncryptionKey)
SnapshotArgs.Builder
sourceDisk(com.pulumi.core.Output<java.lang.String> sourceDisk)
SnapshotArgs.Builder
sourceDisk(java.lang.String sourceDisk)
SnapshotArgs.Builder
sourceDiskEncryptionKey(com.pulumi.core.Output<SnapshotSourceDiskEncryptionKeyArgs> sourceDiskEncryptionKey)
SnapshotArgs.Builder
sourceDiskEncryptionKey(SnapshotSourceDiskEncryptionKeyArgs sourceDiskEncryptionKey)
SnapshotArgs.Builder
storageLocations(com.pulumi.core.Output<java.util.List<java.lang.String>> storageLocations)
SnapshotArgs.Builder
storageLocations(java.lang.String... storageLocations)
SnapshotArgs.Builder
storageLocations(java.util.List<java.lang.String> storageLocations)
SnapshotArgs.Builder
zone(com.pulumi.core.Output<java.lang.String> zone)
SnapshotArgs.Builder
zone(java.lang.String zone)
-
-
-
Constructor Detail
-
Builder
public Builder()
-
Builder
public Builder(SnapshotArgs defaults)
-
-
Method Detail
-
chainName
public SnapshotArgs.Builder chainName(@Nullable com.pulumi.core.Output<java.lang.String> chainName)
- Parameters:
chainName
- 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.- Returns:
- builder
-
chainName
public SnapshotArgs.Builder chainName(java.lang.String chainName)
- Parameters:
chainName
- 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.- Returns:
- builder
-
description
public SnapshotArgs.Builder description(@Nullable com.pulumi.core.Output<java.lang.String> description)
- Parameters:
description
- An optional description of this resource.- Returns:
- builder
-
description
public SnapshotArgs.Builder description(java.lang.String description)
- Parameters:
description
- An optional description of this resource.- Returns:
- builder
-
labels
public SnapshotArgs.Builder labels(@Nullable com.pulumi.core.Output<java.util.Map<java.lang.String,java.lang.String>> labels)
- Parameters:
labels
- 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.- Returns:
- builder
-
labels
public SnapshotArgs.Builder labels(java.util.Map<java.lang.String,java.lang.String> labels)
- Parameters:
labels
- 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.- Returns:
- builder
-
name
public SnapshotArgs.Builder name(@Nullable com.pulumi.core.Output<java.lang.String> name)
- Parameters:
name
- 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?` 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.- Returns:
- builder
-
name
public SnapshotArgs.Builder name(java.lang.String name)
- Parameters:
name
- 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?` 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.- Returns:
- builder
-
project
public SnapshotArgs.Builder project(@Nullable com.pulumi.core.Output<java.lang.String> project)
- Parameters:
project
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.- Returns:
- builder
-
project
public SnapshotArgs.Builder project(java.lang.String project)
- Parameters:
project
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.- Returns:
- builder
-
snapshotEncryptionKey
public SnapshotArgs.Builder snapshotEncryptionKey(@Nullable com.pulumi.core.Output<SnapshotSnapshotEncryptionKeyArgs> snapshotEncryptionKey)
- Parameters:
snapshotEncryptionKey
- Encrypts the snapshot using a customer-supplied encryption key. After you encrypt a snapshot using a customer-supplied key, you must provide the same key if you use the snapshot later. For example, you must provide the encryption key when you create a disk from the encrypted snapshot in a future request. Customer-supplied encryption keys do not protect access to metadata of the snapshot. If you do not provide an encryption key when creating the snapshot, then the snapshot will be encrypted using an automatically generated key and you do not need to provide a key to use the snapshot later. Structure is documented below.- Returns:
- builder
-
snapshotEncryptionKey
public SnapshotArgs.Builder snapshotEncryptionKey(SnapshotSnapshotEncryptionKeyArgs snapshotEncryptionKey)
- Parameters:
snapshotEncryptionKey
- Encrypts the snapshot using a customer-supplied encryption key. After you encrypt a snapshot using a customer-supplied key, you must provide the same key if you use the snapshot later. For example, you must provide the encryption key when you create a disk from the encrypted snapshot in a future request. Customer-supplied encryption keys do not protect access to metadata of the snapshot. If you do not provide an encryption key when creating the snapshot, then the snapshot will be encrypted using an automatically generated key and you do not need to provide a key to use the snapshot later. Structure is documented below.- Returns:
- builder
-
sourceDisk
public SnapshotArgs.Builder sourceDisk(com.pulumi.core.Output<java.lang.String> sourceDisk)
- Parameters:
sourceDisk
- A reference to the disk used to create this snapshot. ***- Returns:
- builder
-
sourceDisk
public SnapshotArgs.Builder sourceDisk(java.lang.String sourceDisk)
- Parameters:
sourceDisk
- A reference to the disk used to create this snapshot. ***- Returns:
- builder
-
sourceDiskEncryptionKey
public SnapshotArgs.Builder sourceDiskEncryptionKey(@Nullable com.pulumi.core.Output<SnapshotSourceDiskEncryptionKeyArgs> sourceDiskEncryptionKey)
- Parameters:
sourceDiskEncryptionKey
- The customer-supplied encryption key of the source snapshot. Required if the source snapshot is protected by a customer-supplied encryption key. Structure is documented below.- Returns:
- builder
-
sourceDiskEncryptionKey
public SnapshotArgs.Builder sourceDiskEncryptionKey(SnapshotSourceDiskEncryptionKeyArgs sourceDiskEncryptionKey)
- Parameters:
sourceDiskEncryptionKey
- The customer-supplied encryption key of the source snapshot. Required if the source snapshot is protected by a customer-supplied encryption key. Structure is documented below.- Returns:
- builder
-
storageLocations
public SnapshotArgs.Builder storageLocations(@Nullable com.pulumi.core.Output<java.util.List<java.lang.String>> storageLocations)
- Parameters:
storageLocations
- Cloud Storage bucket storage location of the snapshot (regional or multi-regional).- Returns:
- builder
-
storageLocations
public SnapshotArgs.Builder storageLocations(java.util.List<java.lang.String> storageLocations)
- Parameters:
storageLocations
- Cloud Storage bucket storage location of the snapshot (regional or multi-regional).- Returns:
- builder
-
storageLocations
public SnapshotArgs.Builder storageLocations(java.lang.String... storageLocations)
- Parameters:
storageLocations
- Cloud Storage bucket storage location of the snapshot (regional or multi-regional).- Returns:
- builder
-
zone
public SnapshotArgs.Builder zone(@Nullable com.pulumi.core.Output<java.lang.String> zone)
- Parameters:
zone
- A reference to the zone where the disk is hosted.- Returns:
- builder
-
zone
public SnapshotArgs.Builder zone(java.lang.String zone)
- Parameters:
zone
- A reference to the zone where the disk is hosted.- Returns:
- builder
-
build
public SnapshotArgs build()
-
-