diff --git a/cloudformation/dynamodb/aws-dynamodb-table.go b/cloudformation/dynamodb/aws-dynamodb-table.go index a144b1c96d..c6b15469eb 100644 --- a/cloudformation/dynamodb/aws-dynamodb-table.go +++ b/cloudformation/dynamodb/aws-dynamodb-table.go @@ -33,6 +33,11 @@ type Table struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-keyschema KeySchema []Table_KeySchema `json:"KeySchema,omitempty"` + // KinesisStreamSpecification AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-kinesisstreamspecification + KinesisStreamSpecification *Table_KinesisStreamSpecification `json:"KinesisStreamSpecification,omitempty"` + // LocalSecondaryIndexes AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-lsi diff --git a/cloudformation/dynamodb/aws-dynamodb-table_kinesisstreamspecification.go b/cloudformation/dynamodb/aws-dynamodb-table_kinesisstreamspecification.go new file mode 100644 index 0000000000..5460dde110 --- /dev/null +++ b/cloudformation/dynamodb/aws-dynamodb-table_kinesisstreamspecification.go @@ -0,0 +1,35 @@ +package dynamodb + +import ( + "github.com/awslabs/goformation/v4/cloudformation/policies" +) + +// Table_KinesisStreamSpecification AWS CloudFormation Resource (AWS::DynamoDB::Table.KinesisStreamSpecification) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-kinesisstreamspecification.html +type Table_KinesisStreamSpecification struct { + + // StreamArn AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-kinesisstreamspecification.html#cfn-dynamodb-kinesisstreamspecification-streamarn + StreamArn string `json:"StreamArn,omitempty"` + + // AWSCloudFormationDeletionPolicy represents a CloudFormation DeletionPolicy + AWSCloudFormationDeletionPolicy policies.DeletionPolicy `json:"-"` + + // AWSCloudFormationUpdateReplacePolicy represents a CloudFormation UpdateReplacePolicy + AWSCloudFormationUpdateReplacePolicy policies.UpdateReplacePolicy `json:"-"` + + // AWSCloudFormationDependsOn stores the logical ID of the resources to be created before this resource + AWSCloudFormationDependsOn []string `json:"-"` + + // AWSCloudFormationMetadata stores structured data associated with this resource + AWSCloudFormationMetadata map[string]interface{} `json:"-"` + + // AWSCloudFormationCondition stores the logical ID of the condition that must be satisfied for this resource to be created + AWSCloudFormationCondition string `json:"-"` +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *Table_KinesisStreamSpecification) AWSCloudFormationType() string { + return "AWS::DynamoDB::Table.KinesisStreamSpecification" +} diff --git a/cloudformation/ec2/aws-ec2-transitgatewaymulticastdomain.go b/cloudformation/ec2/aws-ec2-transitgatewaymulticastdomain.go index 042f965b49..869d846604 100644 --- a/cloudformation/ec2/aws-ec2-transitgatewaymulticastdomain.go +++ b/cloudformation/ec2/aws-ec2-transitgatewaymulticastdomain.go @@ -24,7 +24,7 @@ type TransitGatewayMulticastDomain struct { Tags []tags.Tag `json:"Tags,omitempty"` // TransitGatewayId AWS CloudFormation Property - // Required: false + // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaymulticastdomain.html#cfn-ec2-transitgatewaymulticastdomain-transitgatewayid TransitGatewayId string `json:"TransitGatewayId,omitempty"` diff --git a/cloudformation/ec2/aws-ec2-transitgatewaymulticastdomainassociation.go b/cloudformation/ec2/aws-ec2-transitgatewaymulticastdomainassociation.go index 2bb5f071f1..1bfd4c108a 100644 --- a/cloudformation/ec2/aws-ec2-transitgatewaymulticastdomainassociation.go +++ b/cloudformation/ec2/aws-ec2-transitgatewaymulticastdomainassociation.go @@ -12,23 +12,18 @@ import ( // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaymulticastdomainassociation.html type TransitGatewayMulticastDomainAssociation struct { - // State AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaymulticastdomainassociation.html#cfn-ec2-transitgatewaymulticastdomainassociation-state - State string `json:"State,omitempty"` - // SubnetId AWS CloudFormation Property - // Required: false + // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaymulticastdomainassociation.html#cfn-ec2-transitgatewaymulticastdomainassociation-subnetid SubnetId string `json:"SubnetId,omitempty"` // TransitGatewayAttachmentId AWS CloudFormation Property - // Required: false + // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaymulticastdomainassociation.html#cfn-ec2-transitgatewaymulticastdomainassociation-transitgatewayattachmentid TransitGatewayAttachmentId string `json:"TransitGatewayAttachmentId,omitempty"` // TransitGatewayMulticastDomainId AWS CloudFormation Property - // Required: false + // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaymulticastdomainassociation.html#cfn-ec2-transitgatewaymulticastdomainassociation-transitgatewaymulticastdomainid TransitGatewayMulticastDomainId string `json:"TransitGatewayMulticastDomainId,omitempty"` diff --git a/cloudformation/ec2/aws-ec2-transitgatewaymulticastgroupmember.go b/cloudformation/ec2/aws-ec2-transitgatewaymulticastgroupmember.go index 13f4e3c787..e163b17c45 100644 --- a/cloudformation/ec2/aws-ec2-transitgatewaymulticastgroupmember.go +++ b/cloudformation/ec2/aws-ec2-transitgatewaymulticastgroupmember.go @@ -13,22 +13,17 @@ import ( type TransitGatewayMulticastGroupMember struct { // GroupIpAddress AWS CloudFormation Property - // Required: false + // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaymulticastgroupmember.html#cfn-ec2-transitgatewaymulticastgroupmember-groupipaddress GroupIpAddress string `json:"GroupIpAddress,omitempty"` // NetworkInterfaceId AWS CloudFormation Property - // Required: false + // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaymulticastgroupmember.html#cfn-ec2-transitgatewaymulticastgroupmember-networkinterfaceid NetworkInterfaceId string `json:"NetworkInterfaceId,omitempty"` - // TransitGatewayAttachmentId AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaymulticastgroupmember.html#cfn-ec2-transitgatewaymulticastgroupmember-transitgatewayattachmentid - TransitGatewayAttachmentId string `json:"TransitGatewayAttachmentId,omitempty"` - // TransitGatewayMulticastDomainId AWS CloudFormation Property - // Required: false + // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaymulticastgroupmember.html#cfn-ec2-transitgatewaymulticastgroupmember-transitgatewaymulticastdomainid TransitGatewayMulticastDomainId string `json:"TransitGatewayMulticastDomainId,omitempty"` diff --git a/cloudformation/ec2/aws-ec2-transitgatewaymulticastgroupsource.go b/cloudformation/ec2/aws-ec2-transitgatewaymulticastgroupsource.go index 9d0d041da0..ea31081389 100644 --- a/cloudformation/ec2/aws-ec2-transitgatewaymulticastgroupsource.go +++ b/cloudformation/ec2/aws-ec2-transitgatewaymulticastgroupsource.go @@ -13,22 +13,17 @@ import ( type TransitGatewayMulticastGroupSource struct { // GroupIpAddress AWS CloudFormation Property - // Required: false + // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaymulticastgroupsource.html#cfn-ec2-transitgatewaymulticastgroupsource-groupipaddress GroupIpAddress string `json:"GroupIpAddress,omitempty"` // NetworkInterfaceId AWS CloudFormation Property - // Required: false + // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaymulticastgroupsource.html#cfn-ec2-transitgatewaymulticastgroupsource-networkinterfaceid NetworkInterfaceId string `json:"NetworkInterfaceId,omitempty"` - // TransitGatewayAttachmentId AWS CloudFormation Property - // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaymulticastgroupsource.html#cfn-ec2-transitgatewaymulticastgroupsource-transitgatewayattachmentid - TransitGatewayAttachmentId string `json:"TransitGatewayAttachmentId,omitempty"` - // TransitGatewayMulticastDomainId AWS CloudFormation Property - // Required: false + // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaymulticastgroupsource.html#cfn-ec2-transitgatewaymulticastgroupsource-transitgatewaymulticastdomainid TransitGatewayMulticastDomainId string `json:"TransitGatewayMulticastDomainId,omitempty"` diff --git a/cloudformation/elasticache/aws-elasticache-globalreplicationgroup.go b/cloudformation/elasticache/aws-elasticache-globalreplicationgroup.go index 81f5b6b9b7..a5c8ea685c 100644 --- a/cloudformation/elasticache/aws-elasticache-globalreplicationgroup.go +++ b/cloudformation/elasticache/aws-elasticache-globalreplicationgroup.go @@ -22,6 +22,11 @@ type GlobalReplicationGroup struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-globalreplicationgroup.html#cfn-elasticache-globalreplicationgroup-cachenodetype CacheNodeType string `json:"CacheNodeType,omitempty"` + // CacheParameterGroupName AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-globalreplicationgroup.html#cfn-elasticache-globalreplicationgroup-cacheparametergroupname + CacheParameterGroupName string `json:"CacheParameterGroupName,omitempty"` + // EngineVersion AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-globalreplicationgroup.html#cfn-elasticache-globalreplicationgroup-engineversion diff --git a/cloudformation/pinpoint/aws-pinpoint-campaign_campaignsmsmessage.go b/cloudformation/pinpoint/aws-pinpoint-campaign_campaignsmsmessage.go index e92d98be57..84cc4944ad 100644 --- a/cloudformation/pinpoint/aws-pinpoint-campaign_campaignsmsmessage.go +++ b/cloudformation/pinpoint/aws-pinpoint-campaign_campaignsmsmessage.go @@ -18,6 +18,11 @@ type Campaign_CampaignSmsMessage struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaignsmsmessage.html#cfn-pinpoint-campaign-campaignsmsmessage-messagetype MessageType string `json:"MessageType,omitempty"` + // OriginationNumber AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaignsmsmessage.html#cfn-pinpoint-campaign-campaignsmsmessage-originationnumber + OriginationNumber string `json:"OriginationNumber,omitempty"` + // SenderId AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaignsmsmessage.html#cfn-pinpoint-campaign-campaignsmsmessage-senderid diff --git a/cloudformation/stepfunctions/aws-stepfunctions-statemachine.go b/cloudformation/stepfunctions/aws-stepfunctions-statemachine.go index 0f7c19dea6..590ee5a372 100644 --- a/cloudformation/stepfunctions/aws-stepfunctions-statemachine.go +++ b/cloudformation/stepfunctions/aws-stepfunctions-statemachine.go @@ -12,6 +12,11 @@ import ( // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html type StateMachine struct { + // Definition AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-definition + Definition *StateMachine_Definition `json:"Definition,omitempty"` + // DefinitionS3Location AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-definitions3location diff --git a/cloudformation/stepfunctions/aws-stepfunctions-statemachine_definition.go b/cloudformation/stepfunctions/aws-stepfunctions-statemachine_definition.go new file mode 100644 index 0000000000..73dc3fd6b9 --- /dev/null +++ b/cloudformation/stepfunctions/aws-stepfunctions-statemachine_definition.go @@ -0,0 +1,30 @@ +package stepfunctions + +import ( + "github.com/awslabs/goformation/v4/cloudformation/policies" +) + +// StateMachine_Definition AWS CloudFormation Resource (AWS::StepFunctions::StateMachine.Definition) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stepfunctions-statemachine-definition.html +type StateMachine_Definition struct { + + // AWSCloudFormationDeletionPolicy represents a CloudFormation DeletionPolicy + AWSCloudFormationDeletionPolicy policies.DeletionPolicy `json:"-"` + + // AWSCloudFormationUpdateReplacePolicy represents a CloudFormation UpdateReplacePolicy + AWSCloudFormationUpdateReplacePolicy policies.UpdateReplacePolicy `json:"-"` + + // AWSCloudFormationDependsOn stores the logical ID of the resources to be created before this resource + AWSCloudFormationDependsOn []string `json:"-"` + + // AWSCloudFormationMetadata stores structured data associated with this resource + AWSCloudFormationMetadata map[string]interface{} `json:"-"` + + // AWSCloudFormationCondition stores the logical ID of the condition that must be satisfied for this resource to be created + AWSCloudFormationCondition string `json:"-"` +} + +// AWSCloudFormationType returns the AWS CloudFormation resource type +func (r *StateMachine_Definition) AWSCloudFormationType() string { + return "AWS::StepFunctions::StateMachine.Definition" +} diff --git a/schema/cloudformation.go b/schema/cloudformation.go index 2997113d12..21b7f3747f 100644 --- a/schema/cloudformation.go +++ b/schema/cloudformation.go @@ -28229,6 +28229,9 @@ var CloudformationSchema = `{ }, "type": "array" }, + "KinesisStreamSpecification": { + "$ref": "#/definitions/AWS::DynamoDB::Table.KinesisStreamSpecification" + }, "LocalSecondaryIndexes": { "items": { "$ref": "#/definitions/AWS::DynamoDB::Table.LocalSecondaryIndex" @@ -28344,6 +28347,18 @@ var CloudformationSchema = `{ ], "type": "object" }, + "AWS::DynamoDB::Table.KinesisStreamSpecification": { + "additionalProperties": false, + "properties": { + "StreamArn": { + "type": "string" + } + }, + "required": [ + "StreamArn" + ], + "type": "object" + }, "AWS::DynamoDB::Table.LocalSecondaryIndex": { "additionalProperties": false, "properties": { @@ -34250,6 +34265,9 @@ var CloudformationSchema = `{ "type": "string" } }, + "required": [ + "TransitGatewayId" + ], "type": "object" }, "Type": { @@ -34268,7 +34286,8 @@ var CloudformationSchema = `{ } }, "required": [ - "Type" + "Type", + "Properties" ], "type": "object" }, @@ -34304,9 +34323,6 @@ var CloudformationSchema = `{ "Properties": { "additionalProperties": false, "properties": { - "State": { - "type": "string" - }, "SubnetId": { "type": "string" }, @@ -34317,6 +34333,11 @@ var CloudformationSchema = `{ "type": "string" } }, + "required": [ + "SubnetId", + "TransitGatewayAttachmentId", + "TransitGatewayMulticastDomainId" + ], "type": "object" }, "Type": { @@ -34335,7 +34356,8 @@ var CloudformationSchema = `{ } }, "required": [ - "Type" + "Type", + "Properties" ], "type": "object" }, @@ -34377,13 +34399,15 @@ var CloudformationSchema = `{ "NetworkInterfaceId": { "type": "string" }, - "TransitGatewayAttachmentId": { - "type": "string" - }, "TransitGatewayMulticastDomainId": { "type": "string" } }, + "required": [ + "GroupIpAddress", + "NetworkInterfaceId", + "TransitGatewayMulticastDomainId" + ], "type": "object" }, "Type": { @@ -34402,7 +34426,8 @@ var CloudformationSchema = `{ } }, "required": [ - "Type" + "Type", + "Properties" ], "type": "object" }, @@ -34444,13 +34469,15 @@ var CloudformationSchema = `{ "NetworkInterfaceId": { "type": "string" }, - "TransitGatewayAttachmentId": { - "type": "string" - }, "TransitGatewayMulticastDomainId": { "type": "string" } }, + "required": [ + "GroupIpAddress", + "NetworkInterfaceId", + "TransitGatewayMulticastDomainId" + ], "type": "object" }, "Type": { @@ -34469,7 +34496,8 @@ var CloudformationSchema = `{ } }, "required": [ - "Type" + "Type", + "Properties" ], "type": "object" }, @@ -40288,6 +40316,9 @@ var CloudformationSchema = `{ "CacheNodeType": { "type": "string" }, + "CacheParameterGroupName": { + "type": "string" + }, "EngineVersion": { "type": "string" }, @@ -74178,6 +74209,9 @@ var CloudformationSchema = `{ "MessageType": { "type": "string" }, + "OriginationNumber": { + "type": "string" + }, "SenderId": { "type": "string" } @@ -91618,6 +91652,9 @@ var CloudformationSchema = `{ "Properties": { "additionalProperties": false, "properties": { + "Definition": { + "$ref": "#/definitions/AWS::StepFunctions::StateMachine.Definition" + }, "DefinitionS3Location": { "$ref": "#/definitions/AWS::StepFunctions::StateMachine.S3Location" }, @@ -91690,6 +91727,11 @@ var CloudformationSchema = `{ }, "type": "object" }, + "AWS::StepFunctions::StateMachine.Definition": { + "additionalProperties": false, + "properties": {}, + "type": "object" + }, "AWS::StepFunctions::StateMachine.LogDestination": { "additionalProperties": false, "properties": { diff --git a/schema/cloudformation.schema.json b/schema/cloudformation.schema.json index eb073168cd..d1a08321e9 100644 --- a/schema/cloudformation.schema.json +++ b/schema/cloudformation.schema.json @@ -28226,6 +28226,9 @@ }, "type": "array" }, + "KinesisStreamSpecification": { + "$ref": "#/definitions/AWS::DynamoDB::Table.KinesisStreamSpecification" + }, "LocalSecondaryIndexes": { "items": { "$ref": "#/definitions/AWS::DynamoDB::Table.LocalSecondaryIndex" @@ -28341,6 +28344,18 @@ ], "type": "object" }, + "AWS::DynamoDB::Table.KinesisStreamSpecification": { + "additionalProperties": false, + "properties": { + "StreamArn": { + "type": "string" + } + }, + "required": [ + "StreamArn" + ], + "type": "object" + }, "AWS::DynamoDB::Table.LocalSecondaryIndex": { "additionalProperties": false, "properties": { @@ -34247,6 +34262,9 @@ "type": "string" } }, + "required": [ + "TransitGatewayId" + ], "type": "object" }, "Type": { @@ -34265,7 +34283,8 @@ } }, "required": [ - "Type" + "Type", + "Properties" ], "type": "object" }, @@ -34301,9 +34320,6 @@ "Properties": { "additionalProperties": false, "properties": { - "State": { - "type": "string" - }, "SubnetId": { "type": "string" }, @@ -34314,6 +34330,11 @@ "type": "string" } }, + "required": [ + "SubnetId", + "TransitGatewayAttachmentId", + "TransitGatewayMulticastDomainId" + ], "type": "object" }, "Type": { @@ -34332,7 +34353,8 @@ } }, "required": [ - "Type" + "Type", + "Properties" ], "type": "object" }, @@ -34374,13 +34396,15 @@ "NetworkInterfaceId": { "type": "string" }, - "TransitGatewayAttachmentId": { - "type": "string" - }, "TransitGatewayMulticastDomainId": { "type": "string" } }, + "required": [ + "GroupIpAddress", + "NetworkInterfaceId", + "TransitGatewayMulticastDomainId" + ], "type": "object" }, "Type": { @@ -34399,7 +34423,8 @@ } }, "required": [ - "Type" + "Type", + "Properties" ], "type": "object" }, @@ -34441,13 +34466,15 @@ "NetworkInterfaceId": { "type": "string" }, - "TransitGatewayAttachmentId": { - "type": "string" - }, "TransitGatewayMulticastDomainId": { "type": "string" } }, + "required": [ + "GroupIpAddress", + "NetworkInterfaceId", + "TransitGatewayMulticastDomainId" + ], "type": "object" }, "Type": { @@ -34466,7 +34493,8 @@ } }, "required": [ - "Type" + "Type", + "Properties" ], "type": "object" }, @@ -40285,6 +40313,9 @@ "CacheNodeType": { "type": "string" }, + "CacheParameterGroupName": { + "type": "string" + }, "EngineVersion": { "type": "string" }, @@ -74175,6 +74206,9 @@ "MessageType": { "type": "string" }, + "OriginationNumber": { + "type": "string" + }, "SenderId": { "type": "string" } @@ -91615,6 +91649,9 @@ "Properties": { "additionalProperties": false, "properties": { + "Definition": { + "$ref": "#/definitions/AWS::StepFunctions::StateMachine.Definition" + }, "DefinitionS3Location": { "$ref": "#/definitions/AWS::StepFunctions::StateMachine.S3Location" }, @@ -91687,6 +91724,11 @@ }, "type": "object" }, + "AWS::StepFunctions::StateMachine.Definition": { + "additionalProperties": false, + "properties": {}, + "type": "object" + }, "AWS::StepFunctions::StateMachine.LogDestination": { "additionalProperties": false, "properties": { diff --git a/schema/sam.go b/schema/sam.go index ec2d93317d..a70e2e6a85 100644 --- a/schema/sam.go +++ b/schema/sam.go @@ -28229,6 +28229,9 @@ var SamSchema = `{ }, "type": "array" }, + "KinesisStreamSpecification": { + "$ref": "#/definitions/AWS::DynamoDB::Table.KinesisStreamSpecification" + }, "LocalSecondaryIndexes": { "items": { "$ref": "#/definitions/AWS::DynamoDB::Table.LocalSecondaryIndex" @@ -28344,6 +28347,18 @@ var SamSchema = `{ ], "type": "object" }, + "AWS::DynamoDB::Table.KinesisStreamSpecification": { + "additionalProperties": false, + "properties": { + "StreamArn": { + "type": "string" + } + }, + "required": [ + "StreamArn" + ], + "type": "object" + }, "AWS::DynamoDB::Table.LocalSecondaryIndex": { "additionalProperties": false, "properties": { @@ -34250,6 +34265,9 @@ var SamSchema = `{ "type": "string" } }, + "required": [ + "TransitGatewayId" + ], "type": "object" }, "Type": { @@ -34268,7 +34286,8 @@ var SamSchema = `{ } }, "required": [ - "Type" + "Type", + "Properties" ], "type": "object" }, @@ -34304,9 +34323,6 @@ var SamSchema = `{ "Properties": { "additionalProperties": false, "properties": { - "State": { - "type": "string" - }, "SubnetId": { "type": "string" }, @@ -34317,6 +34333,11 @@ var SamSchema = `{ "type": "string" } }, + "required": [ + "SubnetId", + "TransitGatewayAttachmentId", + "TransitGatewayMulticastDomainId" + ], "type": "object" }, "Type": { @@ -34335,7 +34356,8 @@ var SamSchema = `{ } }, "required": [ - "Type" + "Type", + "Properties" ], "type": "object" }, @@ -34377,13 +34399,15 @@ var SamSchema = `{ "NetworkInterfaceId": { "type": "string" }, - "TransitGatewayAttachmentId": { - "type": "string" - }, "TransitGatewayMulticastDomainId": { "type": "string" } }, + "required": [ + "GroupIpAddress", + "NetworkInterfaceId", + "TransitGatewayMulticastDomainId" + ], "type": "object" }, "Type": { @@ -34402,7 +34426,8 @@ var SamSchema = `{ } }, "required": [ - "Type" + "Type", + "Properties" ], "type": "object" }, @@ -34444,13 +34469,15 @@ var SamSchema = `{ "NetworkInterfaceId": { "type": "string" }, - "TransitGatewayAttachmentId": { - "type": "string" - }, "TransitGatewayMulticastDomainId": { "type": "string" } }, + "required": [ + "GroupIpAddress", + "NetworkInterfaceId", + "TransitGatewayMulticastDomainId" + ], "type": "object" }, "Type": { @@ -34469,7 +34496,8 @@ var SamSchema = `{ } }, "required": [ - "Type" + "Type", + "Properties" ], "type": "object" }, @@ -40288,6 +40316,9 @@ var SamSchema = `{ "CacheNodeType": { "type": "string" }, + "CacheParameterGroupName": { + "type": "string" + }, "EngineVersion": { "type": "string" }, @@ -74178,6 +74209,9 @@ var SamSchema = `{ "MessageType": { "type": "string" }, + "OriginationNumber": { + "type": "string" + }, "SenderId": { "type": "string" } @@ -93462,6 +93496,9 @@ var SamSchema = `{ "Properties": { "additionalProperties": false, "properties": { + "Definition": { + "$ref": "#/definitions/AWS::StepFunctions::StateMachine.Definition" + }, "DefinitionS3Location": { "$ref": "#/definitions/AWS::StepFunctions::StateMachine.S3Location" }, @@ -93534,6 +93571,11 @@ var SamSchema = `{ }, "type": "object" }, + "AWS::StepFunctions::StateMachine.Definition": { + "additionalProperties": false, + "properties": {}, + "type": "object" + }, "AWS::StepFunctions::StateMachine.LogDestination": { "additionalProperties": false, "properties": { diff --git a/schema/sam.schema.json b/schema/sam.schema.json index ee37761b58..82770256ee 100644 --- a/schema/sam.schema.json +++ b/schema/sam.schema.json @@ -28226,6 +28226,9 @@ }, "type": "array" }, + "KinesisStreamSpecification": { + "$ref": "#/definitions/AWS::DynamoDB::Table.KinesisStreamSpecification" + }, "LocalSecondaryIndexes": { "items": { "$ref": "#/definitions/AWS::DynamoDB::Table.LocalSecondaryIndex" @@ -28341,6 +28344,18 @@ ], "type": "object" }, + "AWS::DynamoDB::Table.KinesisStreamSpecification": { + "additionalProperties": false, + "properties": { + "StreamArn": { + "type": "string" + } + }, + "required": [ + "StreamArn" + ], + "type": "object" + }, "AWS::DynamoDB::Table.LocalSecondaryIndex": { "additionalProperties": false, "properties": { @@ -34247,6 +34262,9 @@ "type": "string" } }, + "required": [ + "TransitGatewayId" + ], "type": "object" }, "Type": { @@ -34265,7 +34283,8 @@ } }, "required": [ - "Type" + "Type", + "Properties" ], "type": "object" }, @@ -34301,9 +34320,6 @@ "Properties": { "additionalProperties": false, "properties": { - "State": { - "type": "string" - }, "SubnetId": { "type": "string" }, @@ -34314,6 +34330,11 @@ "type": "string" } }, + "required": [ + "SubnetId", + "TransitGatewayAttachmentId", + "TransitGatewayMulticastDomainId" + ], "type": "object" }, "Type": { @@ -34332,7 +34353,8 @@ } }, "required": [ - "Type" + "Type", + "Properties" ], "type": "object" }, @@ -34374,13 +34396,15 @@ "NetworkInterfaceId": { "type": "string" }, - "TransitGatewayAttachmentId": { - "type": "string" - }, "TransitGatewayMulticastDomainId": { "type": "string" } }, + "required": [ + "GroupIpAddress", + "NetworkInterfaceId", + "TransitGatewayMulticastDomainId" + ], "type": "object" }, "Type": { @@ -34399,7 +34423,8 @@ } }, "required": [ - "Type" + "Type", + "Properties" ], "type": "object" }, @@ -34441,13 +34466,15 @@ "NetworkInterfaceId": { "type": "string" }, - "TransitGatewayAttachmentId": { - "type": "string" - }, "TransitGatewayMulticastDomainId": { "type": "string" } }, + "required": [ + "GroupIpAddress", + "NetworkInterfaceId", + "TransitGatewayMulticastDomainId" + ], "type": "object" }, "Type": { @@ -34466,7 +34493,8 @@ } }, "required": [ - "Type" + "Type", + "Properties" ], "type": "object" }, @@ -40285,6 +40313,9 @@ "CacheNodeType": { "type": "string" }, + "CacheParameterGroupName": { + "type": "string" + }, "EngineVersion": { "type": "string" }, @@ -74175,6 +74206,9 @@ "MessageType": { "type": "string" }, + "OriginationNumber": { + "type": "string" + }, "SenderId": { "type": "string" } @@ -93459,6 +93493,9 @@ "Properties": { "additionalProperties": false, "properties": { + "Definition": { + "$ref": "#/definitions/AWS::StepFunctions::StateMachine.Definition" + }, "DefinitionS3Location": { "$ref": "#/definitions/AWS::StepFunctions::StateMachine.S3Location" }, @@ -93531,6 +93568,11 @@ }, "type": "object" }, + "AWS::StepFunctions::StateMachine.Definition": { + "additionalProperties": false, + "properties": {}, + "type": "object" + }, "AWS::StepFunctions::StateMachine.LogDestination": { "additionalProperties": false, "properties": {