From 19e77b60758bb122c5bd2f1fc8020444508f098c Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 11 Jun 2024 06:42:46 -0700 Subject: [PATCH] Updates from spec version 177.0.0 (#2250) --- troposphere/autoscaling.py | 33 ++++++++++++++++-- troposphere/batch.py | 1 + troposphere/connect.py | 11 ++++++ troposphere/ec2.py | 2 +- troposphere/ecs.py | 12 +++++++ troposphere/fsx.py | 12 +++++++ troposphere/glue.py | 1 + troposphere/pipes.py | 65 ++++++++++++++++++++++++++++++++++++ troposphere/rolesanywhere.py | 22 ++++++++++++ 9 files changed, 155 insertions(+), 4 deletions(-) diff --git a/troposphere/autoscaling.py b/troposphere/autoscaling.py index 17b4c172c..693e9c71a 100644 --- a/troposphere/autoscaling.py +++ b/troposphere/autoscaling.py @@ -582,6 +582,32 @@ class StepAdjustments(AWSProperty): } +class TargetTrackingMetricStat(AWSProperty): + """ + `TargetTrackingMetricStat `__ + """ + + props: PropsDictType = { + "Metric": (Metric, True), + "Stat": (str, True), + "Unit": (str, False), + } + + +class TargetTrackingMetricDataQuery(AWSProperty): + """ + `TargetTrackingMetricDataQuery `__ + """ + + props: PropsDictType = { + "Expression": (str, False), + "Id": (str, True), + "Label": (str, False), + "MetricStat": (TargetTrackingMetricStat, False), + "ReturnData": (boolean, False), + } + + class CustomizedMetricSpecification(AWSProperty): """ `CustomizedMetricSpecification `__ @@ -589,9 +615,10 @@ class CustomizedMetricSpecification(AWSProperty): props: PropsDictType = { "Dimensions": ([MetricDimension], False), - "MetricName": (str, True), - "Namespace": (str, True), - "Statistic": (str, True), + "MetricName": (str, False), + "Metrics": ([TargetTrackingMetricDataQuery], False), + "Namespace": (str, False), + "Statistic": (str, False), "Unit": (str, False), } diff --git a/troposphere/batch.py b/troposphere/batch.py index 5d38f0cf9..7e1fc6568 100644 --- a/troposphere/batch.py +++ b/troposphere/batch.py @@ -584,6 +584,7 @@ class NodeRangeProperty(AWSProperty): props: PropsDictType = { "Container": (ContainerProperties, False), "EcsProperties": (EcsProperties, False), + "EksProperties": (EksProperties, False), "InstanceTypes": ([str], False), "TargetNodes": (str, True), } diff --git a/troposphere/connect.py b/troposphere/connect.py index d25993666..34c6a9606 100644 --- a/troposphere/connect.py +++ b/troposphere/connect.py @@ -501,6 +501,16 @@ class SendNotificationAction(AWSProperty): } +class SubmitAutoEvaluationAction(AWSProperty): + """ + `SubmitAutoEvaluationAction `__ + """ + + props: PropsDictType = { + "EvaluationFormArn": (str, True), + } + + class Reference(AWSProperty): """ `Reference `__ @@ -546,6 +556,7 @@ class Actions(AWSProperty): "EndAssociatedTasksActions": (Tags, False), "EventBridgeActions": ([EventBridgeAction], False), "SendNotificationActions": ([SendNotificationAction], False), + "SubmitAutoEvaluationActions": ([SubmitAutoEvaluationAction], False), "TaskActions": ([TaskAction], False), "UpdateCaseActions": ([UpdateCaseAction], False), } diff --git a/troposphere/ec2.py b/troposphere/ec2.py index b2c1aaf91..563cda485 100644 --- a/troposphere/ec2.py +++ b/troposphere/ec2.py @@ -2661,7 +2661,7 @@ class TransitGatewayRoute(AWSObject): props: PropsDictType = { "Blackhole": (boolean, False), - "DestinationCidrBlock": (str, False), + "DestinationCidrBlock": (str, True), "TransitGatewayAttachmentId": (str, False), "TransitGatewayRouteTableId": (str, True), } diff --git a/troposphere/ecs.py b/troposphere/ecs.py index 7c8a3f2be..c7cfd33b7 100644 --- a/troposphere/ecs.py +++ b/troposphere/ecs.py @@ -109,6 +109,17 @@ class ExecuteCommandConfiguration(AWSProperty): } +class ManagedStorageConfiguration(AWSProperty): + """ + `ManagedStorageConfiguration `__ + """ + + props: PropsDictType = { + "FargateEphemeralStorageKmsKeyId": (str, False), + "KmsKeyId": (str, False), + } + + class ClusterConfiguration(AWSProperty): """ `ClusterConfiguration `__ @@ -116,6 +127,7 @@ class ClusterConfiguration(AWSProperty): props: PropsDictType = { "ExecuteCommandConfiguration": (ExecuteCommandConfiguration, False), + "ManagedStorageConfiguration": (ManagedStorageConfiguration, False), } diff --git a/troposphere/fsx.py b/troposphere/fsx.py index 52dc618b4..c4c28b51a 100644 --- a/troposphere/fsx.py +++ b/troposphere/fsx.py @@ -65,6 +65,17 @@ class DataRepositoryAssociation(AWSObject): } +class MetadataConfiguration(AWSProperty): + """ + `MetadataConfiguration `__ + """ + + props: PropsDictType = { + "Iops": (integer, False), + "Mode": (str, False), + } + + class LustreConfiguration(AWSProperty): """ `LustreConfiguration `__ @@ -81,6 +92,7 @@ class LustreConfiguration(AWSProperty): "ExportPath": (str, False), "ImportPath": (str, False), "ImportedFileChunkSize": (integer, False), + "MetadataConfiguration": (MetadataConfiguration, False), "PerUnitStorageThroughput": ( validate_lustreconfiguration_perunitstoragethroughput, False, diff --git a/troposphere/glue.py b/troposphere/glue.py index 65b9612af..90f4b3108 100644 --- a/troposphere/glue.py +++ b/troposphere/glue.py @@ -226,6 +226,7 @@ class JdbcTarget(AWSProperty): props: PropsDictType = { "ConnectionName": (str, False), + "EnableAdditionalMetadata": ([str], False), "Exclusions": ([str], False), "Path": (str, False), } diff --git a/troposphere/pipes.py b/troposphere/pipes.py index 7c27ee367..89f0a08f4 100644 --- a/troposphere/pipes.py +++ b/troposphere/pipes.py @@ -644,6 +644,70 @@ class PipeTargetStateMachineParameters(AWSProperty): } +class DimensionMapping(AWSProperty): + """ + `DimensionMapping `__ + """ + + props: PropsDictType = { + "DimensionName": (str, True), + "DimensionValue": (str, True), + "DimensionValueType": (str, True), + } + + +class MultiMeasureAttributeMapping(AWSProperty): + """ + `MultiMeasureAttributeMapping `__ + """ + + props: PropsDictType = { + "MeasureValue": (str, True), + "MeasureValueType": (str, True), + "MultiMeasureAttributeName": (str, True), + } + + +class MultiMeasureMapping(AWSProperty): + """ + `MultiMeasureMapping `__ + """ + + props: PropsDictType = { + "MultiMeasureAttributeMappings": ([MultiMeasureAttributeMapping], True), + "MultiMeasureName": (str, True), + } + + +class SingleMeasureMapping(AWSProperty): + """ + `SingleMeasureMapping `__ + """ + + props: PropsDictType = { + "MeasureName": (str, True), + "MeasureValue": (str, True), + "MeasureValueType": (str, True), + } + + +class PipeTargetTimestreamParameters(AWSProperty): + """ + `PipeTargetTimestreamParameters `__ + """ + + props: PropsDictType = { + "DimensionMappings": ([DimensionMapping], True), + "EpochTimeUnit": (str, False), + "MultiMeasureMappings": ([MultiMeasureMapping], False), + "SingleMeasureMappings": ([SingleMeasureMapping], False), + "TimeFieldType": (str, False), + "TimeValue": (str, True), + "TimestampFormat": (str, False), + "VersionValue": (str, True), + } + + class PipeTargetParameters(AWSProperty): """ `PipeTargetParameters `__ @@ -665,6 +729,7 @@ class PipeTargetParameters(AWSProperty): "SageMakerPipelineParameters": (PipeTargetSageMakerPipelineParameters, False), "SqsQueueParameters": (PipeTargetSqsQueueParameters, False), "StepFunctionStateMachineParameters": (PipeTargetStateMachineParameters, False), + "TimestreamParameters": (PipeTargetTimestreamParameters, False), } diff --git a/troposphere/rolesanywhere.py b/troposphere/rolesanywhere.py index 0816471d8..acee0af39 100644 --- a/troposphere/rolesanywhere.py +++ b/troposphere/rolesanywhere.py @@ -26,6 +26,27 @@ class CRL(AWSObject): } +class MappingRule(AWSProperty): + """ + `MappingRule `__ + """ + + props: PropsDictType = { + "Specifier": (str, True), + } + + +class AttributeMapping(AWSProperty): + """ + `AttributeMapping `__ + """ + + props: PropsDictType = { + "CertificateField": (str, True), + "MappingRules": ([MappingRule], True), + } + + class Profile(AWSObject): """ `Profile `__ @@ -34,6 +55,7 @@ class Profile(AWSObject): resource_type = "AWS::RolesAnywhere::Profile" props: PropsDictType = { + "AttributeMappings": ([AttributeMapping], False), "DurationSeconds": (double, False), "Enabled": (boolean, False), "ManagedPolicyArns": ([str], False),