Skip to content

Commit df4d439

Browse files
Updates from spec version 186.0.0 (#2273)
1 parent ca9d47e commit df4d439

11 files changed

Lines changed: 348 additions & 8 deletions

File tree

troposphere/b2bi.py

Lines changed: 157 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77

88

99
from . import AWSObject, AWSProperty, PropsDictType, Tags
10+
from .validators import boolean
1011

1112

1213
class X12Details(AWSProperty):
@@ -22,7 +23,7 @@ class X12Details(AWSProperty):
2223

2324
class EdiType(AWSProperty):
2425
"""
25-
`EdiType <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-editype.html>`__
26+
`EdiType <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-capability-editype.html>`__
2627
"""
2728

2829
props: PropsDictType = {
@@ -47,6 +48,7 @@ class EdiConfiguration(AWSProperty):
4748
"""
4849

4950
props: PropsDictType = {
51+
"CapabilityDirection": (str, False),
5052
"InputLocation": (S3Location, True),
5153
"OutputLocation": (S3Location, True),
5254
"TransformerId": (str, True),
@@ -80,6 +82,89 @@ class Capability(AWSObject):
8082
}
8183

8284

85+
class X12Delimiters(AWSProperty):
86+
"""
87+
`X12Delimiters <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-partnership-x12delimiters.html>`__
88+
"""
89+
90+
props: PropsDictType = {
91+
"ComponentSeparator": (str, False),
92+
"DataElementSeparator": (str, False),
93+
"SegmentTerminator": (str, False),
94+
}
95+
96+
97+
class X12FunctionalGroupHeaders(AWSProperty):
98+
"""
99+
`X12FunctionalGroupHeaders <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-partnership-x12functionalgroupheaders.html>`__
100+
"""
101+
102+
props: PropsDictType = {
103+
"ApplicationReceiverCode": (str, False),
104+
"ApplicationSenderCode": (str, False),
105+
"ResponsibleAgencyCode": (str, False),
106+
}
107+
108+
109+
class X12InterchangeControlHeaders(AWSProperty):
110+
"""
111+
`X12InterchangeControlHeaders <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-partnership-x12interchangecontrolheaders.html>`__
112+
"""
113+
114+
props: PropsDictType = {
115+
"AcknowledgmentRequestedCode": (str, False),
116+
"ReceiverId": (str, False),
117+
"ReceiverIdQualifier": (str, False),
118+
"RepetitionSeparator": (str, False),
119+
"SenderId": (str, False),
120+
"SenderIdQualifier": (str, False),
121+
"UsageIndicatorCode": (str, False),
122+
}
123+
124+
125+
class X12OutboundEdiHeaders(AWSProperty):
126+
"""
127+
`X12OutboundEdiHeaders <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-partnership-x12outboundediheaders.html>`__
128+
"""
129+
130+
props: PropsDictType = {
131+
"Delimiters": (X12Delimiters, False),
132+
"FunctionalGroupHeaders": (X12FunctionalGroupHeaders, False),
133+
"InterchangeControlHeaders": (X12InterchangeControlHeaders, False),
134+
"ValidateEdi": (boolean, False),
135+
}
136+
137+
138+
class X12Envelope(AWSProperty):
139+
"""
140+
`X12Envelope <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-partnership-x12envelope.html>`__
141+
"""
142+
143+
props: PropsDictType = {
144+
"Common": (X12OutboundEdiHeaders, False),
145+
}
146+
147+
148+
class OutboundEdiOptions(AWSProperty):
149+
"""
150+
`OutboundEdiOptions <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-partnership-outboundedioptions.html>`__
151+
"""
152+
153+
props: PropsDictType = {
154+
"X12": (X12Envelope, True),
155+
}
156+
157+
158+
class CapabilityOptions(AWSProperty):
159+
"""
160+
`CapabilityOptions <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-partnership-capabilityoptions.html>`__
161+
"""
162+
163+
props: PropsDictType = {
164+
"OutboundEdi": (OutboundEdiOptions, False),
165+
}
166+
167+
83168
class Partnership(AWSObject):
84169
"""
85170
`Partnership <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-b2bi-partnership.html>`__
@@ -88,7 +173,8 @@ class Partnership(AWSObject):
88173
resource_type = "AWS::B2BI::Partnership"
89174

90175
props: PropsDictType = {
91-
"Capabilities": ([str], False),
176+
"Capabilities": ([str], True),
177+
"CapabilityOptions": (CapabilityOptions, False),
92178
"Email": (str, True),
93179
"Name": (str, True),
94180
"Phone": (str, False),
@@ -114,6 +200,71 @@ class Profile(AWSObject):
114200
}
115201

116202

203+
class FormatOptions(AWSProperty):
204+
"""
205+
`FormatOptions <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-formatoptions.html>`__
206+
"""
207+
208+
props: PropsDictType = {
209+
"X12": (X12Details, True),
210+
}
211+
212+
213+
class InputConversion(AWSProperty):
214+
"""
215+
`InputConversion <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-inputconversion.html>`__
216+
"""
217+
218+
props: PropsDictType = {
219+
"FormatOptions": (FormatOptions, False),
220+
"FromFormat": (str, True),
221+
}
222+
223+
224+
class Mapping(AWSProperty):
225+
"""
226+
`Mapping <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-mapping.html>`__
227+
"""
228+
229+
props: PropsDictType = {
230+
"Template": (str, False),
231+
"TemplateLanguage": (str, True),
232+
}
233+
234+
235+
class OutputConversion(AWSProperty):
236+
"""
237+
`OutputConversion <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-outputconversion.html>`__
238+
"""
239+
240+
props: PropsDictType = {
241+
"FormatOptions": (FormatOptions, False),
242+
"ToFormat": (str, True),
243+
}
244+
245+
246+
class SampleDocumentKeys(AWSProperty):
247+
"""
248+
`SampleDocumentKeys <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-sampledocumentkeys.html>`__
249+
"""
250+
251+
props: PropsDictType = {
252+
"Input": (str, False),
253+
"Output": (str, False),
254+
}
255+
256+
257+
class SampleDocuments(AWSProperty):
258+
"""
259+
`SampleDocuments <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-b2bi-transformer-sampledocuments.html>`__
260+
"""
261+
262+
props: PropsDictType = {
263+
"BucketName": (str, True),
264+
"Keys": ([SampleDocumentKeys], True),
265+
}
266+
267+
117268
class Transformer(AWSObject):
118269
"""
119270
`Transformer <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-b2bi-transformer.html>`__
@@ -122,11 +273,11 @@ class Transformer(AWSObject):
122273
resource_type = "AWS::B2BI::Transformer"
123274

124275
props: PropsDictType = {
125-
"EdiType": (EdiType, True),
126-
"FileFormat": (str, True),
127-
"MappingTemplate": (str, True),
276+
"InputConversion": (InputConversion, False),
277+
"Mapping": (Mapping, False),
128278
"Name": (str, True),
129-
"SampleDocument": (str, False),
279+
"OutputConversion": (OutputConversion, False),
280+
"SampleDocuments": (SampleDocuments, False),
130281
"Status": (str, True),
131282
"Tags": (Tags, False),
132283
}

troposphere/cloudformation.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ class CustomResource(AWSObject):
3131
resource_type = "AWS::CloudFormation::CustomResource"
3232

3333
props: PropsDictType = {
34+
"ServiceTimeout": (integer, False),
3435
"ServiceToken": (str, True),
3536
}
3637

troposphere/dms.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -630,6 +630,7 @@ class ReplicationInstance(AWSObject):
630630
"EngineVersion": (str, False),
631631
"KmsKeyId": (str, False),
632632
"MultiAZ": (boolean, False),
633+
"NetworkType": (str, False),
633634
"PreferredMaintenanceWindow": (str, False),
634635
"PubliclyAccessible": (boolean, False),
635636
"ReplicationInstanceClass": (str, True),

troposphere/emr.py

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -84,13 +84,26 @@ class Configuration(AWSProperty):
8484
}
8585

8686

87+
class OnDemandCapacityReservationOptions(AWSProperty):
88+
"""
89+
`OnDemandCapacityReservationOptions <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-ondemandcapacityreservationoptions.html>`__
90+
"""
91+
92+
props: PropsDictType = {
93+
"CapacityReservationPreference": (str, False),
94+
"CapacityReservationResourceGroupArn": (str, False),
95+
"UsageStrategy": (str, False),
96+
}
97+
98+
8799
class OnDemandProvisioningSpecification(AWSProperty):
88100
"""
89101
`OnDemandProvisioningSpecification <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-ondemandprovisioningspecification.html>`__
90102
"""
91103

92104
props: PropsDictType = {
93105
"AllocationStrategy": (str, True),
106+
"CapacityReservationOptions": (OnDemandCapacityReservationOptions, False),
94107
}
95108

96109
def validate(self):
@@ -124,6 +137,40 @@ class InstanceFleetProvisioningSpecifications(AWSProperty):
124137
}
125138

126139

140+
class OnDemandResizingSpecification(AWSProperty):
141+
"""
142+
`OnDemandResizingSpecification <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-ondemandresizingspecification.html>`__
143+
"""
144+
145+
props: PropsDictType = {
146+
"AllocationStrategy": (str, False),
147+
"CapacityReservationOptions": (OnDemandCapacityReservationOptions, False),
148+
"TimeoutDurationMinutes": (integer, False),
149+
}
150+
151+
152+
class SpotResizingSpecification(AWSProperty):
153+
"""
154+
`SpotResizingSpecification <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-spotresizingspecification.html>`__
155+
"""
156+
157+
props: PropsDictType = {
158+
"AllocationStrategy": (str, False),
159+
"TimeoutDurationMinutes": (integer, False),
160+
}
161+
162+
163+
class InstanceFleetResizingSpecifications(AWSProperty):
164+
"""
165+
`InstanceFleetResizingSpecifications <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancefleetconfig-instancefleetresizingspecifications.html>`__
166+
"""
167+
168+
props: PropsDictType = {
169+
"OnDemandResizeSpecification": (OnDemandResizingSpecification, False),
170+
"SpotResizeSpecification": (SpotResizingSpecification, False),
171+
}
172+
173+
127174
class VolumeSpecification(AWSProperty):
128175
"""
129176
`VolumeSpecification <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration-ebsblockdeviceconfig-volumespecification.html>`__
@@ -171,6 +218,7 @@ class InstanceTypeConfig(AWSProperty):
171218
"CustomAmiId": (str, False),
172219
"EbsConfiguration": (EbsConfiguration, False),
173220
"InstanceType": (str, True),
221+
"Priority": (double, False),
174222
"WeightedCapacity": (integer, False),
175223
}
176224

@@ -184,6 +232,7 @@ class InstanceFleetConfigProperty(AWSProperty):
184232
"InstanceTypeConfigs": ([InstanceTypeConfig], False),
185233
"LaunchSpecifications": (InstanceFleetProvisioningSpecifications, False),
186234
"Name": (str, False),
235+
"ResizeSpecifications": (InstanceFleetResizingSpecifications, False),
187236
"TargetOnDemandCapacity": (integer, False),
188237
"TargetSpotCapacity": (integer, False),
189238
}
@@ -460,6 +509,7 @@ class InstanceFleetConfig(AWSObject):
460509
"InstanceTypeConfigs": ([InstanceTypeConfig], False),
461510
"LaunchSpecifications": (InstanceFleetProvisioningSpecifications, False),
462511
"Name": (str, False),
512+
"ResizeSpecifications": (InstanceFleetResizingSpecifications, False),
463513
"TargetOnDemandCapacity": (integer, False),
464514
"TargetSpotCapacity": (integer, False),
465515
}

troposphere/glue.py

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -549,6 +549,7 @@ class Job(AWSObject):
549549
"ExecutionProperty": (ExecutionProperty, False),
550550
"GlueVersion": (str, False),
551551
"JobMode": (str, False),
552+
"JobRunQueuingEnabled": (boolean, False),
552553
"LogUri": (str, False),
553554
"MaintenanceWindow": (str, False),
554555
"MaxCapacity": (double, False),
@@ -1098,6 +1099,45 @@ class Trigger(AWSObject):
10981099
}
10991100

11001101

1102+
class ConfigurationObject(AWSProperty):
1103+
"""
1104+
`ConfigurationObject <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-usageprofile-configurationobject.html>`__
1105+
"""
1106+
1107+
props: PropsDictType = {
1108+
"AllowedValues": ([str], False),
1109+
"DefaultValue": (str, False),
1110+
"MaxValue": (str, False),
1111+
"MinValue": (str, False),
1112+
}
1113+
1114+
1115+
class ProfileConfiguration(AWSProperty):
1116+
"""
1117+
`ProfileConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-usageprofile-profileconfiguration.html>`__
1118+
"""
1119+
1120+
props: PropsDictType = {
1121+
"JobConfiguration": (dict, False),
1122+
"SessionConfiguration": (dict, False),
1123+
}
1124+
1125+
1126+
class UsageProfile(AWSObject):
1127+
"""
1128+
`UsageProfile <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-usageprofile.html>`__
1129+
"""
1130+
1131+
resource_type = "AWS::Glue::UsageProfile"
1132+
1133+
props: PropsDictType = {
1134+
"Configuration": (ProfileConfiguration, False),
1135+
"Description": (str, False),
1136+
"Name": (str, True),
1137+
"Tags": (Tags, False),
1138+
}
1139+
1140+
11011141
class Workflow(AWSObject):
11021142
"""
11031143
`Workflow <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-workflow.html>`__

0 commit comments

Comments
 (0)