Skip to content

Stack formation fails when 'Throughput' is specified for the EBSBlockDevice class parameters, though the parameter is listed as valid #2148

@austin-e-cox

Description

@austin-e-cox

When specifying an Ebs in the BlockDeviceMappings, if Throughput is specified, the stack fails formation, stating "Encountered unsupported property Throughput".
Throughput is a stated valid parameter in the EBSBlockDevice class.
We were trying to attach a gp3 volume to a GUI instance at creation and specify a given data throughput. Without this working properly we manually have to adjust the throughput for every user after creation or have to determine a convoluted workaround.

One thing to note is there appear to be 2 classes with very similar names but different accepted parameters: EBSBlockDevice and EbsBlockDevice. The parameter map states 'Ebs': EBSBlockDevice, but then seems to only accept the parameters of the EbsBlockDevice class instead of the EBSBlockDevice class

Example that fails stack formation
instance.BlockDeviceMappings = [
{
'DeviceName': "...",
'Ebs': {
'DeleteOnTermination': True,
'Throughput': 500,
'Iops': 8000,
'VolumeSize': 30,
'VolumeType': 'gp3',
'Encrypted': True
}

Documentation chain:
class Instance
props: {…,"BlockDeviceMappings": ([BlockDeviceMapping], False)}

class BlockDeviceMapping
props: {…, "Ebs": (EBSBlockDevice, False)}

class EBSBlockDevice - props: {…, "Throughput": (integer, False)}

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions