Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions troposphere/amazonmq.py
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ class LdapServerMetadata(AWSProperty):
"RoleName": (str, False),
"RoleSearchMatching": (str, True),
"RoleSearchSubtree": (boolean, False),
"ServiceAccountPassword": (str, True),
"ServiceAccountPassword": (str, False),
"ServiceAccountUsername": (str, True),
"UserBase": (str, True),
"UserRoleName": (str, False),
Expand Down Expand Up @@ -117,7 +117,7 @@ class Broker(AWSObject):
"StorageType": (str, False),
"SubnetIds": ([str], False),
"Tags": (validate_tags_or_list, False),
"Users": ([User], True),
"Users": ([User], False),
}


Expand Down
24 changes: 24 additions & 0 deletions troposphere/applicationsignals.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,30 @@ class Discovery(AWSObject):
props: PropsDictType = {}


class GroupingAttributeDefinition(AWSProperty):
"""
`GroupingAttributeDefinition <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationsignals-groupingconfiguration-groupingattributedefinition.html>`__
"""

props: PropsDictType = {
"DefaultGroupingValue": (str, False),
"GroupingName": (str, True),
"GroupingSourceKeys": ([str], True),
}


class GroupingConfiguration(AWSObject):
"""
`GroupingConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationsignals-groupingconfiguration.html>`__
"""

resource_type = "AWS::ApplicationSignals::GroupingConfiguration"

props: PropsDictType = {
"GroupingAttributeDefinitions": ([GroupingAttributeDefinition], True),
}


class BurnRateConfiguration(AWSProperty):
"""
`BurnRateConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationsignals-servicelevelobjective-burnrateconfiguration.html>`__
Expand Down
42 changes: 42 additions & 0 deletions troposphere/bedrock.py
Original file line number Diff line number Diff line change
Expand Up @@ -523,13 +523,55 @@ class OverrideConfiguration(AWSProperty):
}


class ChannelLabelingConfiguration(AWSProperty):
"""
`ChannelLabelingConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-dataautomationproject-channellabelingconfiguration.html>`__
"""

props: PropsDictType = {
"State": (str, True),
}


class SpeakerLabelingConfiguration(AWSProperty):
"""
`SpeakerLabelingConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-dataautomationproject-speakerlabelingconfiguration.html>`__
"""

props: PropsDictType = {
"State": (str, True),
}


class TranscriptConfiguration(AWSProperty):
"""
`TranscriptConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-dataautomationproject-transcriptconfiguration.html>`__
"""

props: PropsDictType = {
"ChannelLabeling": (ChannelLabelingConfiguration, False),
"SpeakerLabeling": (SpeakerLabelingConfiguration, False),
}


class AudioExtractionCategoryTypeConfiguration(AWSProperty):
"""
`AudioExtractionCategoryTypeConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-dataautomationproject-audioextractioncategorytypeconfiguration.html>`__
"""

props: PropsDictType = {
"Transcript": (TranscriptConfiguration, False),
}


class AudioExtractionCategory(AWSProperty):
"""
`AudioExtractionCategory <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-dataautomationproject-audioextractioncategory.html>`__
"""

props: PropsDictType = {
"State": (str, True),
"TypeConfiguration": (AudioExtractionCategoryTypeConfiguration, False),
"Types": ([str], False),
}

Expand Down
34 changes: 34 additions & 0 deletions troposphere/ec2.py
Original file line number Diff line number Diff line change
Expand Up @@ -1744,6 +1744,40 @@ class LocalGatewayRouteTableVirtualInterfaceGroupAssociation(AWSObject):
}


class LocalGatewayVirtualInterface(AWSObject):
"""
`LocalGatewayVirtualInterface <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-localgatewayvirtualinterface.html>`__
"""

resource_type = "AWS::EC2::LocalGatewayVirtualInterface"

props: PropsDictType = {
"LocalAddress": (str, True),
"LocalGatewayVirtualInterfaceGroupId": (str, True),
"OutpostLagId": (str, True),
"PeerAddress": (str, True),
"PeerBgpAsn": (integer, False),
"PeerBgpAsnExtended": (integer, False),
"Tags": (Tags, False),
"Vlan": (integer, True),
}


class LocalGatewayVirtualInterfaceGroup(AWSObject):
"""
`LocalGatewayVirtualInterfaceGroup <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-localgatewayvirtualinterfacegroup.html>`__
"""

resource_type = "AWS::EC2::LocalGatewayVirtualInterfaceGroup"

props: PropsDictType = {
"LocalBgpAsn": (integer, False),
"LocalBgpAsnExtended": (integer, False),
"LocalGatewayId": (str, True),
"Tags": (Tags, False),
}


class NatGateway(AWSObject):
"""
`NatGateway <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-natgateway.html>`__
Expand Down
181 changes: 181 additions & 0 deletions troposphere/ecs.py
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,185 @@ class AutoScalingGroupProvider(AWSProperty):
}


class AcceleratorCountRequest(AWSProperty):
"""
`AcceleratorCountRequest <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-acceleratorcountrequest.html>`__
"""

props: PropsDictType = {
"Max": (integer, False),
"Min": (integer, False),
}


class AcceleratorTotalMemoryMiBRequest(AWSProperty):
"""
`AcceleratorTotalMemoryMiBRequest <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-acceleratortotalmemorymibrequest.html>`__
"""

props: PropsDictType = {
"Max": (integer, False),
"Min": (integer, False),
}


class BaselineEbsBandwidthMbpsRequest(AWSProperty):
"""
`BaselineEbsBandwidthMbpsRequest <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-baselineebsbandwidthmbpsrequest.html>`__
"""

props: PropsDictType = {
"Max": (integer, False),
"Min": (integer, False),
}


class MemoryGiBPerVCpuRequest(AWSProperty):
"""
`MemoryGiBPerVCpuRequest <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-memorygibpervcpurequest.html>`__
"""

props: PropsDictType = {
"Max": (double, False),
"Min": (double, False),
}


class MemoryMiBRequest(AWSProperty):
"""
`MemoryMiBRequest <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-memorymibrequest.html>`__
"""

props: PropsDictType = {
"Max": (integer, False),
"Min": (integer, True),
}


class NetworkBandwidthGbpsRequest(AWSProperty):
"""
`NetworkBandwidthGbpsRequest <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-networkbandwidthgbpsrequest.html>`__
"""

props: PropsDictType = {
"Max": (double, False),
"Min": (double, False),
}


class NetworkInterfaceCountRequest(AWSProperty):
"""
`NetworkInterfaceCountRequest <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-networkinterfacecountrequest.html>`__
"""

props: PropsDictType = {
"Max": (integer, False),
"Min": (integer, False),
}


class TotalLocalStorageGBRequest(AWSProperty):
"""
`TotalLocalStorageGBRequest <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-totallocalstoragegbrequest.html>`__
"""

props: PropsDictType = {
"Max": (double, False),
"Min": (double, False),
}


class VCpuCountRangeRequest(AWSProperty):
"""
`VCpuCountRangeRequest <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-vcpucountrangerequest.html>`__
"""

props: PropsDictType = {
"Max": (integer, False),
"Min": (integer, True),
}


class InstanceRequirementsRequest(AWSProperty):
"""
`InstanceRequirementsRequest <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-instancerequirementsrequest.html>`__
"""

props: PropsDictType = {
"AcceleratorCount": (AcceleratorCountRequest, False),
"AcceleratorManufacturers": ([str], False),
"AcceleratorNames": ([str], False),
"AcceleratorTotalMemoryMiB": (AcceleratorTotalMemoryMiBRequest, False),
"AcceleratorTypes": ([str], False),
"AllowedInstanceTypes": ([str], False),
"BareMetal": (str, False),
"BaselineEbsBandwidthMbps": (BaselineEbsBandwidthMbpsRequest, False),
"BurstablePerformance": (str, False),
"CpuManufacturers": ([str], False),
"ExcludedInstanceTypes": ([str], False),
"InstanceGenerations": ([str], False),
"LocalStorage": (str, False),
"LocalStorageTypes": ([str], False),
"MaxSpotPriceAsPercentageOfOptimalOnDemandPrice": (integer, False),
"MemoryGiBPerVCpu": (MemoryGiBPerVCpuRequest, False),
"MemoryMiB": (MemoryMiBRequest, True),
"NetworkBandwidthGbps": (NetworkBandwidthGbpsRequest, False),
"NetworkInterfaceCount": (NetworkInterfaceCountRequest, False),
"OnDemandMaxPricePercentageOverLowestPrice": (integer, False),
"RequireHibernateSupport": (boolean, False),
"SpotMaxPricePercentageOverLowestPrice": (integer, False),
"TotalLocalStorageGB": (TotalLocalStorageGBRequest, False),
"VCpuCount": (VCpuCountRangeRequest, True),
}


class ManagedInstancesNetworkConfiguration(AWSProperty):
"""
`ManagedInstancesNetworkConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-managedinstancesnetworkconfiguration.html>`__
"""

props: PropsDictType = {
"SecurityGroups": ([str], False),
"Subnets": ([str], True),
}


class ManagedInstancesStorageConfiguration(AWSProperty):
"""
`ManagedInstancesStorageConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-managedinstancesstorageconfiguration.html>`__
"""

props: PropsDictType = {
"StorageSizeGiB": (integer, True),
}


class InstanceLaunchTemplate(AWSProperty):
"""
`InstanceLaunchTemplate <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-instancelaunchtemplate.html>`__
"""

props: PropsDictType = {
"Ec2InstanceProfileArn": (str, True),
"InstanceRequirements": (InstanceRequirementsRequest, False),
"Monitoring": (str, False),
"NetworkConfiguration": (ManagedInstancesNetworkConfiguration, True),
"StorageConfiguration": (ManagedInstancesStorageConfiguration, False),
}


class ManagedInstancesProvider(AWSProperty):
"""
`ManagedInstancesProvider <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-managedinstancesprovider.html>`__
"""

props: PropsDictType = {
"InfrastructureRoleArn": (str, True),
"InstanceLaunchTemplate": (InstanceLaunchTemplate, True),
"PropagateTags": (str, False),
}


class CapacityProvider(AWSObject):
"""
`CapacityProvider <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-capacityprovider.html>`__
Expand All @@ -66,6 +245,8 @@ class CapacityProvider(AWSObject):

props: PropsDictType = {
"AutoScalingGroupProvider": (AutoScalingGroupProvider, False),
"ClusterName": (str, False),
"ManagedInstancesProvider": (ManagedInstancesProvider, False),
"Name": (str, False),
"Tags": (Tags, False),
}
Expand Down
Loading