Skip to content

Commit

Permalink
Updates from spec version 164.0.0
Browse files Browse the repository at this point in the history
  • Loading branch information
zipkid authored Mar 8, 2024
1 parent c57400a commit 4e34fe9
Show file tree
Hide file tree
Showing 89 changed files with 3,713 additions and 405 deletions.
23 changes: 22 additions & 1 deletion troposphere/accessanalyzer.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,27 @@


from . import AWSObject, AWSProperty, PropsDictType, Tags
from .validators import boolean
from .validators import boolean, integer


class UnusedAccessConfiguration(AWSProperty):
"""
`UnusedAccessConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-accessanalyzer-analyzer-unusedaccessconfiguration.html>`__
"""

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


class AnalyzerConfiguration(AWSProperty):
"""
`AnalyzerConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-accessanalyzer-analyzer-analyzerconfiguration.html>`__
"""

props: PropsDictType = {
"UnusedAccessConfiguration": (UnusedAccessConfiguration, False),
}


class Filter(AWSProperty):
Expand Down Expand Up @@ -43,6 +63,7 @@ class Analyzer(AWSObject):
resource_type = "AWS::AccessAnalyzer::Analyzer"

props: PropsDictType = {
"AnalyzerConfiguration": (AnalyzerConfiguration, False),
"AnalyzerName": (str, False),
"ArchiveRules": ([ArchiveRule], False),
"Tags": (Tags, False),
Expand Down
14 changes: 14 additions & 0 deletions troposphere/acmpca.py
Original file line number Diff line number Diff line change
Expand Up @@ -250,12 +250,26 @@ class CsrExtensions(AWSProperty):
}


class CrlDistributionPointExtensionConfiguration(AWSProperty):
"""
`CrlDistributionPointExtensionConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-crldistributionpointextensionconfiguration.html>`__
"""

props: PropsDictType = {
"OmitExtension": (boolean, True),
}


class CrlConfiguration(AWSProperty):
"""
`CrlConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-crlconfiguration.html>`__
"""

props: PropsDictType = {
"CrlDistributionPointExtensionConfiguration": (
CrlDistributionPointExtensionConfiguration,
False,
),
"CustomCname": (str, False),
"Enabled": (boolean, False),
"ExpirationInDays": (integer, False),
Expand Down
1 change: 1 addition & 0 deletions troposphere/amazonmq.py
Original file line number Diff line number Diff line change
Expand Up @@ -85,6 +85,7 @@ class User(AWSProperty):
"ConsoleAccess": (boolean, False),
"Groups": ([str], False),
"Password": (str, True),
"ReplicationUser": (boolean, False),
"Username": (str, True),
}

Expand Down
26 changes: 26 additions & 0 deletions troposphere/amplify.py
Original file line number Diff line number Diff line change
Expand Up @@ -127,6 +127,29 @@ class Branch(AWSObject):
}


class Certificate(AWSProperty):
"""
`Certificate <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-domain-certificate.html>`__
"""

props: PropsDictType = {
"CertificateArn": (str, False),
"CertificateType": (str, False),
"CertificateVerificationDNSRecord": (str, False),
}


class CertificateSettings(AWSProperty):
"""
`CertificateSettings <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-domain-certificatesettings.html>`__
"""

props: PropsDictType = {
"CertificateType": (str, False),
"CustomCertificateArn": (str, False),
}


class SubDomainSetting(AWSProperty):
"""
`SubDomainSetting <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-amplify-domain-subdomainsetting.html>`__
Expand All @@ -149,7 +172,10 @@ class Domain(AWSObject):
"AppId": (str, True),
"AutoSubDomainCreationPatterns": ([str], False),
"AutoSubDomainIAMRole": (str, False),
"Certificate": (Certificate, False),
"CertificateSettings": (CertificateSettings, False),
"DomainName": (str, True),
"EnableAutoSubDomain": (boolean, False),
"SubDomainSettings": ([SubDomainSetting], True),
"UpdateStatus": (str, False),
}
8 changes: 4 additions & 4 deletions troposphere/apigateway.py
Original file line number Diff line number Diff line change
Expand Up @@ -297,7 +297,7 @@ class GatewayResponse(AWSObject):

class IntegrationResponse(AWSProperty):
"""
`IntegrationResponse <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration-integrationresponse.html>`__
`IntegrationResponse <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-method-integrationresponse.html>`__
"""

props: PropsDictType = {
Expand All @@ -311,7 +311,7 @@ class IntegrationResponse(AWSProperty):

class Integration(AWSProperty):
"""
`Integration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html>`__
`Integration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-method-integration.html>`__
"""

props: PropsDictType = {
Expand All @@ -327,14 +327,14 @@ class Integration(AWSProperty):
"RequestParameters": (dict, False),
"RequestTemplates": (dict, False),
"TimeoutInMillis": (validate_timeout_in_millis, False),
"Type": (str, False),
"Type": (str, True),
"Uri": (str, False),
}


class MethodResponse(AWSProperty):
"""
`MethodResponse <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-methodresponse.html>`__
`MethodResponse <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-method-methodresponse.html>`__
"""

props: PropsDictType = {
Expand Down
10 changes: 5 additions & 5 deletions troposphere/appconfig.py
Original file line number Diff line number Diff line change
Expand Up @@ -98,13 +98,13 @@ class DeploymentStrategy(AWSObject):
}


class Monitors(AWSProperty):
class Monitor(AWSProperty):
"""
`Monitors <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appconfig-environment-monitors.html>`__
`Monitor <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appconfig-environment-monitor.html>`__
"""

props: PropsDictType = {
"AlarmArn": (str, False),
"AlarmArn": (str, True),
"AlarmRoleArn": (str, False),
}

Expand All @@ -119,7 +119,7 @@ class Environment(AWSObject):
props: PropsDictType = {
"ApplicationId": (str, True),
"Description": (str, False),
"Monitors": ([Monitors], False),
"Monitors": ([Monitor], False),
"Name": (str, True),
"Tags": (Tags, False),
}
Expand Down Expand Up @@ -182,6 +182,6 @@ class HostedConfigurationVersion(AWSObject):
"Content": (str, True),
"ContentType": (str, True),
"Description": (str, False),
"LatestVersionNumber": (double, False),
"LatestVersionNumber": (integer, False),
"VersionLabel": (str, False),
}
58 changes: 54 additions & 4 deletions troposphere/applicationautoscaling.py
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ class ScalableTarget(AWSObject):

class StepAdjustment(AWSProperty):
"""
`StepAdjustment <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-stepadjustment.html>`__
`StepAdjustment <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepadjustment.html>`__
"""

props: PropsDictType = {
Expand Down Expand Up @@ -104,16 +104,66 @@ class MetricDimension(AWSProperty):
}


class TargetTrackingMetricDimension(AWSProperty):
"""
`TargetTrackingMetricDimension <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-targettrackingmetricdimension.html>`__
"""

props: PropsDictType = {
"Name": (str, False),
"Value": (str, False),
}


class TargetTrackingMetric(AWSProperty):
"""
`TargetTrackingMetric <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-targettrackingmetric.html>`__
"""

props: PropsDictType = {
"Dimensions": ([TargetTrackingMetricDimension], False),
"MetricName": (str, False),
"Namespace": (str, False),
}


class TargetTrackingMetricStat(AWSProperty):
"""
`TargetTrackingMetricStat <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-targettrackingmetricstat.html>`__
"""

props: PropsDictType = {
"Metric": (TargetTrackingMetric, False),
"Stat": (str, False),
"Unit": (str, False),
}


class TargetTrackingMetricDataQuery(AWSProperty):
"""
`TargetTrackingMetricDataQuery <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-targettrackingmetricdataquery.html>`__
"""

props: PropsDictType = {
"Expression": (str, False),
"Id": (str, False),
"Label": (str, False),
"MetricStat": (TargetTrackingMetricStat, False),
"ReturnData": (boolean, False),
}


class CustomizedMetricSpecification(AWSProperty):
"""
`CustomizedMetricSpecification <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-customizedmetricspecification.html>`__
"""

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),
}

Expand Down
1 change: 1 addition & 0 deletions troposphere/apprunner.py
Original file line number Diff line number Diff line change
Expand Up @@ -116,6 +116,7 @@ class NetworkConfiguration(AWSProperty):
props: PropsDictType = {
"EgressConfiguration": (EgressConfiguration, False),
"IngressConfiguration": (IngressConfiguration, False),
"IpAddressType": (str, False),
}


Expand Down
1 change: 1 addition & 0 deletions troposphere/appstream.py
Original file line number Diff line number Diff line change
Expand Up @@ -331,6 +331,7 @@ class UserSetting(AWSProperty):

props: PropsDictType = {
"Action": (str, True),
"MaximumLength": (integer, False),
"Permission": (str, True),
}

Expand Down
20 changes: 20 additions & 0 deletions troposphere/appsync.py
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ class ApiCache(AWSObject):
"ApiCachingBehavior": (str, True),
"ApiId": (str, True),
"AtRestEncryptionEnabled": (boolean, False),
"HealthMetricsConfig": (str, False),
"TransitEncryptionEnabled": (boolean, False),
"Ttl": (double, True),
"Type": (str, True),
Expand Down Expand Up @@ -184,6 +185,7 @@ class DataSource(AWSObject):
"EventBridgeConfig": (EventBridgeConfig, False),
"HttpConfig": (HttpConfig, False),
"LambdaConfig": (LambdaConfig, False),
"MetricsConfig": (str, False),
"Name": (str, True),
"OpenSearchServiceConfig": (OpenSearchServiceConfig, False),
"RelationalDatabaseConfig": (RelationalDatabaseConfig, False),
Expand Down Expand Up @@ -327,6 +329,18 @@ class AdditionalAuthenticationProvider(AWSProperty):
}


class EnhancedMetricsConfig(AWSProperty):
"""
`EnhancedMetricsConfig <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-enhancedmetricsconfig.html>`__
"""

props: PropsDictType = {
"DataSourceLevelMetricsBehavior": (str, True),
"OperationLevelMetricsConfig": (str, True),
"ResolverLevelMetricsBehavior": (str, True),
}


class LogConfig(AWSProperty):
"""
`LogConfig <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appsync-graphqlapi-logconfig.html>`__
Expand Down Expand Up @@ -366,12 +380,17 @@ class GraphQLApi(AWSObject):
),
"ApiType": (str, False),
"AuthenticationType": (str, True),
"EnhancedMetricsConfig": (EnhancedMetricsConfig, False),
"EnvironmentVariables": (dict, False),
"IntrospectionConfig": (str, False),
"LambdaAuthorizerConfig": (LambdaAuthorizerConfig, False),
"LogConfig": (LogConfig, False),
"MergedApiExecutionRoleArn": (str, False),
"Name": (str, True),
"OpenIDConnectConfig": (OpenIDConnectConfig, False),
"OwnerContact": (str, False),
"QueryDepthLimit": (integer, False),
"ResolverCountLimit": (integer, False),
"Tags": (Tags, False),
"UserPoolConfig": (UserPoolConfig, False),
"Visibility": (str, False),
Expand Down Expand Up @@ -430,6 +449,7 @@ class Resolver(AWSObject):
"FieldName": (str, True),
"Kind": (resolver_kind_validator, False),
"MaxBatchSize": (integer, False),
"MetricsConfig": (str, False),
"PipelineConfig": (PipelineConfig, False),
"RequestMappingTemplate": (str, False),
"RequestMappingTemplateS3Location": (str, False),
Expand Down
1 change: 1 addition & 0 deletions troposphere/aps.py
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,7 @@ class Workspace(AWSObject):
props: PropsDictType = {
"AlertManagerDefinition": (str, False),
"Alias": (str, False),
"KmsKeyArn": (str, False),
"LoggingConfiguration": (LoggingConfiguration, False),
"Tags": (Tags, False),
}
17 changes: 15 additions & 2 deletions troposphere/autoscaling.py
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,17 @@
)


class InstanceMaintenancePolicy(AWSProperty):
"""
`InstanceMaintenancePolicy <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-instancemaintenancepolicy.html>`__
"""

props: PropsDictType = {
"MaxHealthyPercentage": (integer, False),
"MinHealthyPercentage": (integer, False),
}


class LaunchTemplateSpecification(AWSProperty):
"""
`LaunchTemplateSpecification <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplatespecification.html>`__
Expand Down Expand Up @@ -207,15 +218,16 @@ class InstanceRequirements(AWSProperty):
"InstanceGenerations": ([str], False),
"LocalStorage": (str, False),
"LocalStorageTypes": ([str], False),
"MaxSpotPriceAsPercentageOfOptimalOnDemandPrice": (integer, False),
"MemoryGiBPerVCpu": (MemoryGiBPerVCpuRequest, False),
"MemoryMiB": (MemoryMiBRequest, False),
"MemoryMiB": (MemoryMiBRequest, True),
"NetworkBandwidthGbps": (NetworkBandwidthGbpsRequest, False),
"NetworkInterfaceCount": (NetworkInterfaceCountRequest, False),
"OnDemandMaxPricePercentageOverLowestPrice": (integer, False),
"RequireHibernateSupport": (boolean, False),
"SpotMaxPricePercentageOverLowestPrice": (integer, False),
"TotalLocalStorageGB": (TotalLocalStorageGBRequest, False),
"VCpuCount": (VCpuCountRequest, False),
"VCpuCount": (VCpuCountRequest, True),
}


Expand Down Expand Up @@ -284,6 +296,7 @@ class AutoScalingGroup(AWSObject):
"HealthCheckGracePeriod": (integer, False),
"HealthCheckType": (str, False),
"InstanceId": (str, False),
"InstanceMaintenancePolicy": (InstanceMaintenancePolicy, False),
"LaunchConfigurationName": (str, False),
"LaunchTemplate": (LaunchTemplateSpecification, False),
"LifecycleHookSpecificationList": ([LifecycleHookSpecification], False),
Expand Down
Loading

0 comments on commit 4e34fe9

Please sign in to comment.