Package com.pulumi.aws.ebs
Class VolumeArgs.Builder
- java.lang.Object
-
- com.pulumi.aws.ebs.VolumeArgs.Builder
-
- Enclosing class:
- VolumeArgs
public static final class VolumeArgs.Builder extends java.lang.Object
-
-
Constructor Summary
Constructors Constructor Description Builder()Builder(VolumeArgs defaults)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description VolumeArgs.BuilderavailabilityZone(com.pulumi.core.Output<java.lang.String> availabilityZone)VolumeArgs.BuilderavailabilityZone(java.lang.String availabilityZone)VolumeArgsbuild()VolumeArgs.Builderencrypted(com.pulumi.core.Output<java.lang.Boolean> encrypted)VolumeArgs.Builderencrypted(java.lang.Boolean encrypted)VolumeArgs.BuilderfinalSnapshot(com.pulumi.core.Output<java.lang.Boolean> finalSnapshot)VolumeArgs.BuilderfinalSnapshot(java.lang.Boolean finalSnapshot)VolumeArgs.Builderiops(com.pulumi.core.Output<java.lang.Integer> iops)VolumeArgs.Builderiops(java.lang.Integer iops)VolumeArgs.BuilderkmsKeyId(com.pulumi.core.Output<java.lang.String> kmsKeyId)VolumeArgs.BuilderkmsKeyId(java.lang.String kmsKeyId)VolumeArgs.BuildermultiAttachEnabled(com.pulumi.core.Output<java.lang.Boolean> multiAttachEnabled)VolumeArgs.BuildermultiAttachEnabled(java.lang.Boolean multiAttachEnabled)VolumeArgs.BuilderoutpostArn(com.pulumi.core.Output<java.lang.String> outpostArn)VolumeArgs.BuilderoutpostArn(java.lang.String outpostArn)VolumeArgs.Builderregion(com.pulumi.core.Output<java.lang.String> region)VolumeArgs.Builderregion(java.lang.String region)VolumeArgs.Buildersize(com.pulumi.core.Output<java.lang.Integer> size)VolumeArgs.Buildersize(java.lang.Integer size)VolumeArgs.BuildersnapshotId(com.pulumi.core.Output<java.lang.String> snapshotId)VolumeArgs.BuildersnapshotId(java.lang.String snapshotId)VolumeArgs.Buildertags(com.pulumi.core.Output<java.util.Map<java.lang.String,java.lang.String>> tags)VolumeArgs.Buildertags(java.util.Map<java.lang.String,java.lang.String> tags)VolumeArgs.Builderthroughput(com.pulumi.core.Output<java.lang.Integer> throughput)VolumeArgs.Builderthroughput(java.lang.Integer throughput)VolumeArgs.Buildertype(com.pulumi.core.Output<java.lang.String> type)VolumeArgs.Buildertype(java.lang.String type)VolumeArgs.BuildervolumeInitializationRate(com.pulumi.core.Output<java.lang.Integer> volumeInitializationRate)VolumeArgs.BuildervolumeInitializationRate(java.lang.Integer volumeInitializationRate)
-
-
-
Constructor Detail
-
Builder
public Builder()
-
Builder
public Builder(VolumeArgs defaults)
-
-
Method Detail
-
availabilityZone
public VolumeArgs.Builder availabilityZone(com.pulumi.core.Output<java.lang.String> availabilityZone)
- Parameters:
availabilityZone- Availability zone where the EBS volume will exist.- Returns:
- builder
-
availabilityZone
public VolumeArgs.Builder availabilityZone(java.lang.String availabilityZone)
- Parameters:
availabilityZone- Availability zone where the EBS volume will exist.- Returns:
- builder
-
encrypted
public VolumeArgs.Builder encrypted(@Nullable com.pulumi.core.Output<java.lang.Boolean> encrypted)
- Parameters:
encrypted- If true, the disk will be encrypted.- Returns:
- builder
-
encrypted
public VolumeArgs.Builder encrypted(java.lang.Boolean encrypted)
- Parameters:
encrypted- If true, the disk will be encrypted.- Returns:
- builder
-
finalSnapshot
public VolumeArgs.Builder finalSnapshot(@Nullable com.pulumi.core.Output<java.lang.Boolean> finalSnapshot)
- Parameters:
finalSnapshot- If true, snapshot will be created before volume deletion. Any tags on the volume will be migrated to the snapshot. By default set to false- Returns:
- builder
-
finalSnapshot
public VolumeArgs.Builder finalSnapshot(java.lang.Boolean finalSnapshot)
- Parameters:
finalSnapshot- If true, snapshot will be created before volume deletion. Any tags on the volume will be migrated to the snapshot. By default set to false- Returns:
- builder
-
iops
public VolumeArgs.Builder iops(@Nullable com.pulumi.core.Output<java.lang.Integer> iops)
- Parameters:
iops- Amount of IOPS to provision for the disk. Only valid for `type` of `io1`, `io2` or `gp3`.- Returns:
- builder
-
iops
public VolumeArgs.Builder iops(java.lang.Integer iops)
- Parameters:
iops- Amount of IOPS to provision for the disk. Only valid for `type` of `io1`, `io2` or `gp3`.- Returns:
- builder
-
kmsKeyId
public VolumeArgs.Builder kmsKeyId(@Nullable com.pulumi.core.Output<java.lang.String> kmsKeyId)
- Parameters:
kmsKeyId- ARN for the KMS encryption key. When specifying `kmsKeyId`, `encrypted` needs to be set to true. Note: The provider must be running with credentials which have the `GenerateDataKeyWithoutPlaintext` permission on the specified KMS key as required by the [EBS KMS CMK volume provisioning process](https://docs.aws.amazon.com/kms/latest/developerguide/services-ebs.html#ebs-cmk) to prevent a volume from being created and almost immediately deleted.- Returns:
- builder
-
kmsKeyId
public VolumeArgs.Builder kmsKeyId(java.lang.String kmsKeyId)
- Parameters:
kmsKeyId- ARN for the KMS encryption key. When specifying `kmsKeyId`, `encrypted` needs to be set to true. Note: The provider must be running with credentials which have the `GenerateDataKeyWithoutPlaintext` permission on the specified KMS key as required by the [EBS KMS CMK volume provisioning process](https://docs.aws.amazon.com/kms/latest/developerguide/services-ebs.html#ebs-cmk) to prevent a volume from being created and almost immediately deleted.- Returns:
- builder
-
multiAttachEnabled
public VolumeArgs.Builder multiAttachEnabled(@Nullable com.pulumi.core.Output<java.lang.Boolean> multiAttachEnabled)
- Parameters:
multiAttachEnabled- Specifies whether to enable Amazon EBS Multi-Attach. Multi-Attach is supported on `io1` and `io2` volumes.- Returns:
- builder
-
multiAttachEnabled
public VolumeArgs.Builder multiAttachEnabled(java.lang.Boolean multiAttachEnabled)
- Parameters:
multiAttachEnabled- Specifies whether to enable Amazon EBS Multi-Attach. Multi-Attach is supported on `io1` and `io2` volumes.- Returns:
- builder
-
outpostArn
public VolumeArgs.Builder outpostArn(@Nullable com.pulumi.core.Output<java.lang.String> outpostArn)
- Parameters:
outpostArn- ARN of the Outpost.- Returns:
- builder
-
outpostArn
public VolumeArgs.Builder outpostArn(java.lang.String outpostArn)
- Parameters:
outpostArn- ARN of the Outpost.- Returns:
- builder
-
region
public VolumeArgs.Builder region(@Nullable com.pulumi.core.Output<java.lang.String> region)
- Parameters:
region- Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration.- Returns:
- builder
-
region
public VolumeArgs.Builder region(java.lang.String region)
- Parameters:
region- Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration.- Returns:
- builder
-
size
public VolumeArgs.Builder size(@Nullable com.pulumi.core.Output<java.lang.Integer> size)
- Parameters:
size- Size of the drive in GiBs.- Returns:
- builder
-
size
public VolumeArgs.Builder size(java.lang.Integer size)
- Parameters:
size- Size of the drive in GiBs.- Returns:
- builder
-
snapshotId
public VolumeArgs.Builder snapshotId(@Nullable com.pulumi.core.Output<java.lang.String> snapshotId)
- Parameters:
snapshotId- A snapshot to base the EBS volume off of.- Returns:
- builder
-
snapshotId
public VolumeArgs.Builder snapshotId(java.lang.String snapshotId)
- Parameters:
snapshotId- A snapshot to base the EBS volume off of.- Returns:
- builder
-
tags
public VolumeArgs.Builder tags(@Nullable com.pulumi.core.Output<java.util.Map<java.lang.String,java.lang.String>> tags)
- Parameters:
tags- A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.- Returns:
- builder
-
tags
public VolumeArgs.Builder tags(java.util.Map<java.lang.String,java.lang.String> tags)
- Parameters:
tags- A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.- Returns:
- builder
-
throughput
public VolumeArgs.Builder throughput(@Nullable com.pulumi.core.Output<java.lang.Integer> throughput)
- Parameters:
throughput- Throughput that the volume supports, in MiB/s. Only valid for `type` of `gp3`.- Returns:
- builder
-
throughput
public VolumeArgs.Builder throughput(java.lang.Integer throughput)
- Parameters:
throughput- Throughput that the volume supports, in MiB/s. Only valid for `type` of `gp3`.- Returns:
- builder
-
type
public VolumeArgs.Builder type(@Nullable com.pulumi.core.Output<java.lang.String> type)
- Parameters:
type- Type of EBS volume. Can be `standard`, `gp2`, `gp3`, `io1`, `io2`, `sc1` or `st1` (Default: `gp2`).- Returns:
- builder
-
type
public VolumeArgs.Builder type(java.lang.String type)
- Parameters:
type- Type of EBS volume. Can be `standard`, `gp2`, `gp3`, `io1`, `io2`, `sc1` or `st1` (Default: `gp2`).- Returns:
- builder
-
volumeInitializationRate
public VolumeArgs.Builder volumeInitializationRate(@Nullable com.pulumi.core.Output<java.lang.Integer> volumeInitializationRate)
- Parameters:
volumeInitializationRate- EBS provisioned rate for volume initialization, in MiB/s, at which to download the snapshot blocks from Amazon S3 to the volume. This argument can only be set if `snapshotId` is specified. > **NOTE:** At least one of `size` or `snapshotId` is required. > **NOTE:** When changing the `size`, `iops` or `type` of an instance, there are [considerations](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/considerations.html) to be aware of.- Returns:
- builder
-
volumeInitializationRate
public VolumeArgs.Builder volumeInitializationRate(java.lang.Integer volumeInitializationRate)
- Parameters:
volumeInitializationRate- EBS provisioned rate for volume initialization, in MiB/s, at which to download the snapshot blocks from Amazon S3 to the volume. This argument can only be set if `snapshotId` is specified. > **NOTE:** At least one of `size` or `snapshotId` is required. > **NOTE:** When changing the `size`, `iops` or `type` of an instance, there are [considerations](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/considerations.html) to be aware of.- Returns:
- builder
-
build
public VolumeArgs build()
-
-