Class VolumeState.Builder

  • Enclosing class:
    VolumeState

    public static final class VolumeState.Builder
    extends java.lang.Object
    • Constructor Detail

      • Builder

        public Builder()
    • Method Detail

      • arn

        public VolumeState.Builder arn​(@Nullable
                                       com.pulumi.core.Output<java.lang.String> arn)
        Parameters:
        arn - Volume ARN (e.g., arn:aws:ec2:us-east-1:123456789012:volume/vol-59fcb34e).
        Returns:
        builder
      • arn

        public VolumeState.Builder arn​(java.lang.String arn)
        Parameters:
        arn - Volume ARN (e.g., arn:aws:ec2:us-east-1:123456789012:volume/vol-59fcb34e).
        Returns:
        builder
      • availabilityZone

        public VolumeState.Builder availabilityZone​(@Nullable
                                                    com.pulumi.core.Output<java.lang.String> availabilityZone)
        Parameters:
        availabilityZone - Availability zone where the EBS volume will exist.
        Returns:
        builder
      • availabilityZone

        public VolumeState.Builder availabilityZone​(java.lang.String availabilityZone)
        Parameters:
        availabilityZone - Availability zone where the EBS volume will exist.
        Returns:
        builder
      • createTime

        public VolumeState.Builder createTime​(@Nullable
                                              com.pulumi.core.Output<java.lang.String> createTime)
        Parameters:
        createTime - Timestamp when volume creation was initiated.
        Returns:
        builder
      • createTime

        public VolumeState.Builder createTime​(java.lang.String createTime)
        Parameters:
        createTime - Timestamp when volume creation was initiated.
        Returns:
        builder
      • encrypted

        public VolumeState.Builder encrypted​(@Nullable
                                             com.pulumi.core.Output<java.lang.Boolean> encrypted)
        Parameters:
        encrypted - If true, the disk will be encrypted.
        Returns:
        builder
      • encrypted

        public VolumeState.Builder encrypted​(java.lang.Boolean encrypted)
        Parameters:
        encrypted - If true, the disk will be encrypted.
        Returns:
        builder
      • finalSnapshot

        public VolumeState.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 VolumeState.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 VolumeState.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 VolumeState.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 VolumeState.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 VolumeState.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 VolumeState.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 VolumeState.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 VolumeState.Builder outpostArn​(@Nullable
                                              com.pulumi.core.Output<java.lang.String> outpostArn)
        Parameters:
        outpostArn - ARN of the Outpost.
        Returns:
        builder
      • outpostArn

        public VolumeState.Builder outpostArn​(java.lang.String outpostArn)
        Parameters:
        outpostArn - ARN of the Outpost.
        Returns:
        builder
      • region

        public VolumeState.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 VolumeState.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 VolumeState.Builder size​(@Nullable
                                        com.pulumi.core.Output<java.lang.Integer> size)
        Parameters:
        size - Size of the drive in GiBs.
        Returns:
        builder
      • size

        public VolumeState.Builder size​(java.lang.Integer size)
        Parameters:
        size - Size of the drive in GiBs.
        Returns:
        builder
      • snapshotId

        public VolumeState.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 VolumeState.Builder snapshotId​(java.lang.String snapshotId)
        Parameters:
        snapshotId - A snapshot to base the EBS volume off of.
        Returns:
        builder
      • tags

        public VolumeState.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 VolumeState.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
      • tagsAll

        public VolumeState.Builder tagsAll​(@Nullable
                                           com.pulumi.core.Output<java.util.Map<java.lang.String,​java.lang.String>> tagsAll)
        Parameters:
        tagsAll - A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
        Returns:
        builder
      • tagsAll

        public VolumeState.Builder tagsAll​(java.util.Map<java.lang.String,​java.lang.String> tagsAll)
        Parameters:
        tagsAll - A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
        Returns:
        builder
      • throughput

        public VolumeState.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 VolumeState.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 VolumeState.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 VolumeState.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 VolumeState.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 VolumeState.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