From 4bd6a73324760a9344347892d23643f6d2d88a08 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 8 Mar 2024 11:48:01 +0100 Subject: [PATCH] fix(schema): CloudFormation Updates MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: RĂºben Fonseca --- .../batch/aws-batch-jobdefinition.go | 5 + .../aws-batch-jobdefinition_ecsproperties.go | 37 +++ ...s-batch-jobdefinition_ecstaskproperties.go | 82 +++++ ...ws-batch-jobdefinition_ephemeralstorage.go | 4 +- ...aws-batch-jobdefinition_linuxparameters.go | 14 +- ...ws-batch-jobdefinition_logconfiguration.go | 8 +- ...atch-jobdefinition_networkconfiguration.go | 4 +- ...s-batch-jobdefinition_noderangeproperty.go | 10 + .../aws-batch-jobdefinition_podproperties.go | 10 + ...tch-jobdefinition_repositorycredentials.go | 4 +- ...aws-batch-jobdefinition_runtimeplatform.go | 6 +- ...h-jobdefinition_taskcontainerdependency.go | 42 +++ ...h-jobdefinition_taskcontainerproperties.go | 112 +++++++ .../iotsitewise/aws-iotsitewise-asset.go | 5 + .../aws-iotsitewise-asset_assethierarchy.go | 14 +- .../aws-iotsitewise-asset_assetproperty.go | 14 +- .../iotsitewise/aws-iotsitewise-assetmodel.go | 10 + ...ise-assetmodel_assetmodelcompositemodel.go | 25 ++ ...sitewise-assetmodel_assetmodelhierarchy.go | 14 +- ...tsitewise-assetmodel_assetmodelproperty.go | 14 +- ...ewise-assetmodel_propertypathdefinition.go | 37 +++ ...ws-iotsitewise-assetmodel_variablevalue.go | 29 +- .../wafv2/aws-wafv2-rulegroup_fieldtomatch.go | 5 + .../aws-wafv2-rulegroup_ja3fingerprint.go | 37 +++ .../aws-wafv2-rulegroup_ratebasedstatement.go | 5 + .../wafv2/aws-wafv2-webacl_fieldtomatch.go | 5 + .../wafv2/aws-wafv2-webacl_ja3fingerprint.go | 37 +++ .../aws-wafv2-webacl_ratebasedstatement.go | 5 + schema/cdk.go | 300 +++++++++++++++++- schema/cdk.schema.json | 300 +++++++++++++++++- schema/cloudformation.go | 300 +++++++++++++++++- schema/cloudformation.schema.json | 300 +++++++++++++++++- schema/sam.go | 300 +++++++++++++++++- schema/sam.schema.json | 300 +++++++++++++++++- 34 files changed, 2304 insertions(+), 90 deletions(-) create mode 100644 cloudformation/batch/aws-batch-jobdefinition_ecsproperties.go create mode 100644 cloudformation/batch/aws-batch-jobdefinition_ecstaskproperties.go create mode 100644 cloudformation/batch/aws-batch-jobdefinition_taskcontainerdependency.go create mode 100644 cloudformation/batch/aws-batch-jobdefinition_taskcontainerproperties.go create mode 100644 cloudformation/iotsitewise/aws-iotsitewise-assetmodel_propertypathdefinition.go create mode 100644 cloudformation/wafv2/aws-wafv2-rulegroup_ja3fingerprint.go create mode 100644 cloudformation/wafv2/aws-wafv2-webacl_ja3fingerprint.go diff --git a/cloudformation/batch/aws-batch-jobdefinition.go b/cloudformation/batch/aws-batch-jobdefinition.go index df58cee05e..e8dd004c35 100644 --- a/cloudformation/batch/aws-batch-jobdefinition.go +++ b/cloudformation/batch/aws-batch-jobdefinition.go @@ -18,6 +18,11 @@ type JobDefinition struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobdefinition.html#cfn-batch-jobdefinition-containerproperties ContainerProperties *JobDefinition_ContainerProperties `json:"ContainerProperties,omitempty"` + // EcsProperties AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobdefinition.html#cfn-batch-jobdefinition-ecsproperties + EcsProperties *JobDefinition_EcsProperties `json:"EcsProperties,omitempty"` + // EksProperties AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobdefinition.html#cfn-batch-jobdefinition-eksproperties diff --git a/cloudformation/batch/aws-batch-jobdefinition_ecsproperties.go b/cloudformation/batch/aws-batch-jobdefinition_ecsproperties.go new file mode 100644 index 0000000000..d97bd167bc --- /dev/null +++ b/cloudformation/batch/aws-batch-jobdefinition_ecsproperties.go @@ -0,0 +1,37 @@ +// Code generated by "go generate". Please don't change this file directly. + +package batch + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// JobDefinition_EcsProperties AWS CloudFormation Resource (AWS::Batch::JobDefinition.EcsProperties) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-ecsproperties.html +type JobDefinition_EcsProperties struct { + + // TaskProperties AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-ecsproperties.html#cfn-batch-jobdefinition-ecsproperties-taskproperties + TaskProperties []JobDefinition_EcsTaskProperties `json:"TaskProperties"` + + // 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 *JobDefinition_EcsProperties) AWSCloudFormationType() string { + return "AWS::Batch::JobDefinition.EcsProperties" +} diff --git a/cloudformation/batch/aws-batch-jobdefinition_ecstaskproperties.go b/cloudformation/batch/aws-batch-jobdefinition_ecstaskproperties.go new file mode 100644 index 0000000000..c5299d2191 --- /dev/null +++ b/cloudformation/batch/aws-batch-jobdefinition_ecstaskproperties.go @@ -0,0 +1,82 @@ +// Code generated by "go generate". Please don't change this file directly. + +package batch + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// JobDefinition_EcsTaskProperties AWS CloudFormation Resource (AWS::Batch::JobDefinition.EcsTaskProperties) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-ecstaskproperties.html +type JobDefinition_EcsTaskProperties struct { + + // Containers AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-ecstaskproperties.html#cfn-batch-jobdefinition-ecstaskproperties-containers + Containers []JobDefinition_TaskContainerProperties `json:"Containers,omitempty"` + + // EphemeralStorage AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-ecstaskproperties.html#cfn-batch-jobdefinition-ecstaskproperties-ephemeralstorage + EphemeralStorage *JobDefinition_EphemeralStorage `json:"EphemeralStorage,omitempty"` + + // ExecutionRoleArn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-ecstaskproperties.html#cfn-batch-jobdefinition-ecstaskproperties-executionrolearn + ExecutionRoleArn *string `json:"ExecutionRoleArn,omitempty"` + + // IpcMode AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-ecstaskproperties.html#cfn-batch-jobdefinition-ecstaskproperties-ipcmode + IpcMode *string `json:"IpcMode,omitempty"` + + // NetworkConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-ecstaskproperties.html#cfn-batch-jobdefinition-ecstaskproperties-networkconfiguration + NetworkConfiguration *JobDefinition_NetworkConfiguration `json:"NetworkConfiguration,omitempty"` + + // PidMode AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-ecstaskproperties.html#cfn-batch-jobdefinition-ecstaskproperties-pidmode + PidMode *string `json:"PidMode,omitempty"` + + // PlatformVersion AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-ecstaskproperties.html#cfn-batch-jobdefinition-ecstaskproperties-platformversion + PlatformVersion *string `json:"PlatformVersion,omitempty"` + + // RuntimePlatform AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-ecstaskproperties.html#cfn-batch-jobdefinition-ecstaskproperties-runtimeplatform + RuntimePlatform *JobDefinition_RuntimePlatform `json:"RuntimePlatform,omitempty"` + + // TaskRoleArn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-ecstaskproperties.html#cfn-batch-jobdefinition-ecstaskproperties-taskrolearn + TaskRoleArn *string `json:"TaskRoleArn,omitempty"` + + // Volumes AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-ecstaskproperties.html#cfn-batch-jobdefinition-ecstaskproperties-volumes + Volumes []JobDefinition_Volumes `json:"Volumes,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 *JobDefinition_EcsTaskProperties) AWSCloudFormationType() string { + return "AWS::Batch::JobDefinition.EcsTaskProperties" +} diff --git a/cloudformation/batch/aws-batch-jobdefinition_ephemeralstorage.go b/cloudformation/batch/aws-batch-jobdefinition_ephemeralstorage.go index 1a5807ed98..6f77ba7749 100644 --- a/cloudformation/batch/aws-batch-jobdefinition_ephemeralstorage.go +++ b/cloudformation/batch/aws-batch-jobdefinition_ephemeralstorage.go @@ -7,12 +7,12 @@ import ( ) // JobDefinition_EphemeralStorage AWS CloudFormation Resource (AWS::Batch::JobDefinition.EphemeralStorage) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties-ephemeralstorage.html +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-ecstaskproperties-ephemeralstorage.html type JobDefinition_EphemeralStorage struct { // SizeInGiB AWS CloudFormation Property // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties-ephemeralstorage.html#cfn-batch-jobdefinition-containerproperties-ephemeralstorage-sizeingib + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-ecstaskproperties-ephemeralstorage.html#cfn-batch-jobdefinition-ecstaskproperties-ephemeralstorage-sizeingib SizeInGiB int `json:"SizeInGiB"` // AWSCloudFormationDeletionPolicy represents a CloudFormation DeletionPolicy diff --git a/cloudformation/batch/aws-batch-jobdefinition_linuxparameters.go b/cloudformation/batch/aws-batch-jobdefinition_linuxparameters.go index 9dd11df72d..e756028a9c 100644 --- a/cloudformation/batch/aws-batch-jobdefinition_linuxparameters.go +++ b/cloudformation/batch/aws-batch-jobdefinition_linuxparameters.go @@ -7,37 +7,37 @@ import ( ) // JobDefinition_LinuxParameters AWS CloudFormation Resource (AWS::Batch::JobDefinition.LinuxParameters) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties-linuxparameters.html +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-taskcontainerproperties-linuxparameters.html type JobDefinition_LinuxParameters struct { // Devices AWS CloudFormation Property // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties-linuxparameters.html#cfn-batch-jobdefinition-containerproperties-linuxparameters-devices + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-taskcontainerproperties-linuxparameters.html#cfn-batch-jobdefinition-taskcontainerproperties-linuxparameters-devices Devices []JobDefinition_Device `json:"Devices,omitempty"` // InitProcessEnabled AWS CloudFormation Property // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties-linuxparameters.html#cfn-batch-jobdefinition-containerproperties-linuxparameters-initprocessenabled + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-taskcontainerproperties-linuxparameters.html#cfn-batch-jobdefinition-taskcontainerproperties-linuxparameters-initprocessenabled InitProcessEnabled *bool `json:"InitProcessEnabled,omitempty"` // MaxSwap AWS CloudFormation Property // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties-linuxparameters.html#cfn-batch-jobdefinition-containerproperties-linuxparameters-maxswap + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-taskcontainerproperties-linuxparameters.html#cfn-batch-jobdefinition-taskcontainerproperties-linuxparameters-maxswap MaxSwap *int `json:"MaxSwap,omitempty"` // SharedMemorySize AWS CloudFormation Property // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties-linuxparameters.html#cfn-batch-jobdefinition-containerproperties-linuxparameters-sharedmemorysize + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-taskcontainerproperties-linuxparameters.html#cfn-batch-jobdefinition-taskcontainerproperties-linuxparameters-sharedmemorysize SharedMemorySize *int `json:"SharedMemorySize,omitempty"` // Swappiness AWS CloudFormation Property // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties-linuxparameters.html#cfn-batch-jobdefinition-containerproperties-linuxparameters-swappiness + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-taskcontainerproperties-linuxparameters.html#cfn-batch-jobdefinition-taskcontainerproperties-linuxparameters-swappiness Swappiness *int `json:"Swappiness,omitempty"` // Tmpfs AWS CloudFormation Property // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties-linuxparameters.html#cfn-batch-jobdefinition-containerproperties-linuxparameters-tmpfs + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-taskcontainerproperties-linuxparameters.html#cfn-batch-jobdefinition-taskcontainerproperties-linuxparameters-tmpfs Tmpfs []JobDefinition_Tmpfs `json:"Tmpfs,omitempty"` // AWSCloudFormationDeletionPolicy represents a CloudFormation DeletionPolicy diff --git a/cloudformation/batch/aws-batch-jobdefinition_logconfiguration.go b/cloudformation/batch/aws-batch-jobdefinition_logconfiguration.go index 5caca94ef9..ed5654d8d8 100644 --- a/cloudformation/batch/aws-batch-jobdefinition_logconfiguration.go +++ b/cloudformation/batch/aws-batch-jobdefinition_logconfiguration.go @@ -7,22 +7,22 @@ import ( ) // JobDefinition_LogConfiguration AWS CloudFormation Resource (AWS::Batch::JobDefinition.LogConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties-logconfiguration.html +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-taskcontainerproperties-logconfiguration.html type JobDefinition_LogConfiguration struct { // LogDriver AWS CloudFormation Property // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties-logconfiguration.html#cfn-batch-jobdefinition-containerproperties-logconfiguration-logdriver + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-taskcontainerproperties-logconfiguration.html#cfn-batch-jobdefinition-taskcontainerproperties-logconfiguration-logdriver LogDriver string `json:"LogDriver"` // Options AWS CloudFormation Property // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties-logconfiguration.html#cfn-batch-jobdefinition-containerproperties-logconfiguration-options + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-taskcontainerproperties-logconfiguration.html#cfn-batch-jobdefinition-taskcontainerproperties-logconfiguration-options Options interface{} `json:"Options,omitempty"` // SecretOptions AWS CloudFormation Property // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties-logconfiguration.html#cfn-batch-jobdefinition-containerproperties-logconfiguration-secretoptions + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-taskcontainerproperties-logconfiguration.html#cfn-batch-jobdefinition-taskcontainerproperties-logconfiguration-secretoptions SecretOptions []JobDefinition_Secret `json:"SecretOptions,omitempty"` // AWSCloudFormationDeletionPolicy represents a CloudFormation DeletionPolicy diff --git a/cloudformation/batch/aws-batch-jobdefinition_networkconfiguration.go b/cloudformation/batch/aws-batch-jobdefinition_networkconfiguration.go index c39674727f..62f5e95437 100644 --- a/cloudformation/batch/aws-batch-jobdefinition_networkconfiguration.go +++ b/cloudformation/batch/aws-batch-jobdefinition_networkconfiguration.go @@ -7,12 +7,12 @@ import ( ) // JobDefinition_NetworkConfiguration AWS CloudFormation Resource (AWS::Batch::JobDefinition.NetworkConfiguration) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties-networkconfiguration.html +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-ecstaskproperties-networkconfiguration.html type JobDefinition_NetworkConfiguration struct { // AssignPublicIp AWS CloudFormation Property // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties-networkconfiguration.html#cfn-batch-jobdefinition-containerproperties-networkconfiguration-assignpublicip + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-ecstaskproperties-networkconfiguration.html#cfn-batch-jobdefinition-ecstaskproperties-networkconfiguration-assignpublicip AssignPublicIp *string `json:"AssignPublicIp,omitempty"` // AWSCloudFormationDeletionPolicy represents a CloudFormation DeletionPolicy diff --git a/cloudformation/batch/aws-batch-jobdefinition_noderangeproperty.go b/cloudformation/batch/aws-batch-jobdefinition_noderangeproperty.go index 7d54e46a18..050993449c 100644 --- a/cloudformation/batch/aws-batch-jobdefinition_noderangeproperty.go +++ b/cloudformation/batch/aws-batch-jobdefinition_noderangeproperty.go @@ -15,6 +15,16 @@ type JobDefinition_NodeRangeProperty struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-noderangeproperty.html#cfn-batch-jobdefinition-noderangeproperty-container Container *JobDefinition_ContainerProperties `json:"Container,omitempty"` + // EcsProperties AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-noderangeproperty.html#cfn-batch-jobdefinition-noderangeproperty-ecsproperties + EcsProperties *JobDefinition_EcsProperties `json:"EcsProperties,omitempty"` + + // InstanceTypes AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-noderangeproperty.html#cfn-batch-jobdefinition-noderangeproperty-instancetypes + InstanceTypes []string `json:"InstanceTypes,omitempty"` + // TargetNodes AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-noderangeproperty.html#cfn-batch-jobdefinition-noderangeproperty-targetnodes diff --git a/cloudformation/batch/aws-batch-jobdefinition_podproperties.go b/cloudformation/batch/aws-batch-jobdefinition_podproperties.go index 10e77b8d15..b738788038 100644 --- a/cloudformation/batch/aws-batch-jobdefinition_podproperties.go +++ b/cloudformation/batch/aws-batch-jobdefinition_podproperties.go @@ -25,6 +25,11 @@ type JobDefinition_PodProperties struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-podproperties.html#cfn-batch-jobdefinition-podproperties-hostnetwork HostNetwork *bool `json:"HostNetwork,omitempty"` + // InitContainers AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-podproperties.html#cfn-batch-jobdefinition-podproperties-initcontainers + InitContainers []JobDefinition_EksContainer `json:"InitContainers,omitempty"` + // Metadata AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-podproperties.html#cfn-batch-jobdefinition-podproperties-metadata @@ -35,6 +40,11 @@ type JobDefinition_PodProperties struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-podproperties.html#cfn-batch-jobdefinition-podproperties-serviceaccountname ServiceAccountName *string `json:"ServiceAccountName,omitempty"` + // ShareProcessNamespace AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-podproperties.html#cfn-batch-jobdefinition-podproperties-shareprocessnamespace + ShareProcessNamespace *bool `json:"ShareProcessNamespace,omitempty"` + // Volumes AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-podproperties.html#cfn-batch-jobdefinition-podproperties-volumes diff --git a/cloudformation/batch/aws-batch-jobdefinition_repositorycredentials.go b/cloudformation/batch/aws-batch-jobdefinition_repositorycredentials.go index 3bb2832c3a..34bd85d417 100644 --- a/cloudformation/batch/aws-batch-jobdefinition_repositorycredentials.go +++ b/cloudformation/batch/aws-batch-jobdefinition_repositorycredentials.go @@ -7,12 +7,12 @@ import ( ) // JobDefinition_RepositoryCredentials AWS CloudFormation Resource (AWS::Batch::JobDefinition.RepositoryCredentials) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties-repositorycredentials.html +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-taskcontainerproperties-repositorycredentials.html type JobDefinition_RepositoryCredentials struct { // CredentialsParameter AWS CloudFormation Property // Required: true - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties-repositorycredentials.html#cfn-batch-jobdefinition-containerproperties-repositorycredentials-credentialsparameter + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-taskcontainerproperties-repositorycredentials.html#cfn-batch-jobdefinition-taskcontainerproperties-repositorycredentials-credentialsparameter CredentialsParameter string `json:"CredentialsParameter"` // AWSCloudFormationDeletionPolicy represents a CloudFormation DeletionPolicy diff --git a/cloudformation/batch/aws-batch-jobdefinition_runtimeplatform.go b/cloudformation/batch/aws-batch-jobdefinition_runtimeplatform.go index 8a1644b782..a5e64a750a 100644 --- a/cloudformation/batch/aws-batch-jobdefinition_runtimeplatform.go +++ b/cloudformation/batch/aws-batch-jobdefinition_runtimeplatform.go @@ -7,17 +7,17 @@ import ( ) // JobDefinition_RuntimePlatform AWS CloudFormation Resource (AWS::Batch::JobDefinition.RuntimePlatform) -// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties-runtimeplatform.html +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-ecstaskproperties-runtimeplatform.html type JobDefinition_RuntimePlatform struct { // CpuArchitecture AWS CloudFormation Property // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties-runtimeplatform.html#cfn-batch-jobdefinition-containerproperties-runtimeplatform-cpuarchitecture + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-ecstaskproperties-runtimeplatform.html#cfn-batch-jobdefinition-ecstaskproperties-runtimeplatform-cpuarchitecture CpuArchitecture *string `json:"CpuArchitecture,omitempty"` // OperatingSystemFamily AWS CloudFormation Property // Required: false - // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties-runtimeplatform.html#cfn-batch-jobdefinition-containerproperties-runtimeplatform-operatingsystemfamily + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-ecstaskproperties-runtimeplatform.html#cfn-batch-jobdefinition-ecstaskproperties-runtimeplatform-operatingsystemfamily OperatingSystemFamily *string `json:"OperatingSystemFamily,omitempty"` // AWSCloudFormationDeletionPolicy represents a CloudFormation DeletionPolicy diff --git a/cloudformation/batch/aws-batch-jobdefinition_taskcontainerdependency.go b/cloudformation/batch/aws-batch-jobdefinition_taskcontainerdependency.go new file mode 100644 index 0000000000..d0f59ec01d --- /dev/null +++ b/cloudformation/batch/aws-batch-jobdefinition_taskcontainerdependency.go @@ -0,0 +1,42 @@ +// Code generated by "go generate". Please don't change this file directly. + +package batch + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// JobDefinition_TaskContainerDependency AWS CloudFormation Resource (AWS::Batch::JobDefinition.TaskContainerDependency) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-taskcontainerdependency.html +type JobDefinition_TaskContainerDependency struct { + + // Condition AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-taskcontainerdependency.html#cfn-batch-jobdefinition-taskcontainerdependency-condition + Condition string `json:"Condition"` + + // ContainerName AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-taskcontainerdependency.html#cfn-batch-jobdefinition-taskcontainerdependency-containername + ContainerName string `json:"ContainerName"` + + // 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 *JobDefinition_TaskContainerDependency) AWSCloudFormationType() string { + return "AWS::Batch::JobDefinition.TaskContainerDependency" +} diff --git a/cloudformation/batch/aws-batch-jobdefinition_taskcontainerproperties.go b/cloudformation/batch/aws-batch-jobdefinition_taskcontainerproperties.go new file mode 100644 index 0000000000..cc2be542d4 --- /dev/null +++ b/cloudformation/batch/aws-batch-jobdefinition_taskcontainerproperties.go @@ -0,0 +1,112 @@ +// Code generated by "go generate". Please don't change this file directly. + +package batch + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// JobDefinition_TaskContainerProperties AWS CloudFormation Resource (AWS::Batch::JobDefinition.TaskContainerProperties) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-taskcontainerproperties.html +type JobDefinition_TaskContainerProperties struct { + + // Command AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-taskcontainerproperties.html#cfn-batch-jobdefinition-taskcontainerproperties-command + Command []string `json:"Command,omitempty"` + + // DependsOn AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-taskcontainerproperties.html#cfn-batch-jobdefinition-taskcontainerproperties-dependson + DependsOnProp []JobDefinition_TaskContainerDependency `json:"DependsOn,omitempty"` + + // Environment AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-taskcontainerproperties.html#cfn-batch-jobdefinition-taskcontainerproperties-environment + Environment []JobDefinition_Environment `json:"Environment,omitempty"` + + // Essential AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-taskcontainerproperties.html#cfn-batch-jobdefinition-taskcontainerproperties-essential + Essential *bool `json:"Essential,omitempty"` + + // Image AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-taskcontainerproperties.html#cfn-batch-jobdefinition-taskcontainerproperties-image + Image string `json:"Image"` + + // LinuxParameters AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-taskcontainerproperties.html#cfn-batch-jobdefinition-taskcontainerproperties-linuxparameters + LinuxParameters *JobDefinition_LinuxParameters `json:"LinuxParameters,omitempty"` + + // LogConfiguration AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-taskcontainerproperties.html#cfn-batch-jobdefinition-taskcontainerproperties-logconfiguration + LogConfiguration *JobDefinition_LogConfiguration `json:"LogConfiguration,omitempty"` + + // MountPoints AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-taskcontainerproperties.html#cfn-batch-jobdefinition-taskcontainerproperties-mountpoints + MountPoints []JobDefinition_MountPoints `json:"MountPoints,omitempty"` + + // Name AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-taskcontainerproperties.html#cfn-batch-jobdefinition-taskcontainerproperties-name + Name *string `json:"Name,omitempty"` + + // Privileged AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-taskcontainerproperties.html#cfn-batch-jobdefinition-taskcontainerproperties-privileged + Privileged *bool `json:"Privileged,omitempty"` + + // ReadonlyRootFilesystem AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-taskcontainerproperties.html#cfn-batch-jobdefinition-taskcontainerproperties-readonlyrootfilesystem + ReadonlyRootFilesystem *bool `json:"ReadonlyRootFilesystem,omitempty"` + + // RepositoryCredentials AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-taskcontainerproperties.html#cfn-batch-jobdefinition-taskcontainerproperties-repositorycredentials + RepositoryCredentials *JobDefinition_RepositoryCredentials `json:"RepositoryCredentials,omitempty"` + + // ResourceRequirements AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-taskcontainerproperties.html#cfn-batch-jobdefinition-taskcontainerproperties-resourcerequirements + ResourceRequirements []JobDefinition_ResourceRequirement `json:"ResourceRequirements,omitempty"` + + // Secrets AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-taskcontainerproperties.html#cfn-batch-jobdefinition-taskcontainerproperties-secrets + Secrets []JobDefinition_Secret `json:"Secrets,omitempty"` + + // Ulimits AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-taskcontainerproperties.html#cfn-batch-jobdefinition-taskcontainerproperties-ulimits + Ulimits []JobDefinition_Ulimit `json:"Ulimits,omitempty"` + + // User AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-taskcontainerproperties.html#cfn-batch-jobdefinition-taskcontainerproperties-user + User *string `json:"User,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 *JobDefinition_TaskContainerProperties) AWSCloudFormationType() string { + return "AWS::Batch::JobDefinition.TaskContainerProperties" +} diff --git a/cloudformation/iotsitewise/aws-iotsitewise-asset.go b/cloudformation/iotsitewise/aws-iotsitewise-asset.go index 2fbb99719f..dfd3595442 100644 --- a/cloudformation/iotsitewise/aws-iotsitewise-asset.go +++ b/cloudformation/iotsitewise/aws-iotsitewise-asset.go @@ -19,6 +19,11 @@ type Asset struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-asset.html#cfn-iotsitewise-asset-assetdescription AssetDescription *string `json:"AssetDescription,omitempty"` + // AssetExternalId AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-asset.html#cfn-iotsitewise-asset-assetexternalid + AssetExternalId *string `json:"AssetExternalId,omitempty"` + // AssetHierarchies AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-asset.html#cfn-iotsitewise-asset-assethierarchies diff --git a/cloudformation/iotsitewise/aws-iotsitewise-asset_assethierarchy.go b/cloudformation/iotsitewise/aws-iotsitewise-asset_assethierarchy.go index b64bf635ec..29620921d9 100644 --- a/cloudformation/iotsitewise/aws-iotsitewise-asset_assethierarchy.go +++ b/cloudformation/iotsitewise/aws-iotsitewise-asset_assethierarchy.go @@ -15,10 +15,20 @@ type Asset_AssetHierarchy struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-asset-assethierarchy.html#cfn-iotsitewise-asset-assethierarchy-childassetid ChildAssetId string `json:"ChildAssetId"` + // ExternalId AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-asset-assethierarchy.html#cfn-iotsitewise-asset-assethierarchy-externalid + ExternalId *string `json:"ExternalId,omitempty"` + + // Id AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-asset-assethierarchy.html#cfn-iotsitewise-asset-assethierarchy-id + Id *string `json:"Id,omitempty"` + // LogicalId AWS CloudFormation Property - // Required: true + // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-asset-assethierarchy.html#cfn-iotsitewise-asset-assethierarchy-logicalid - LogicalId string `json:"LogicalId"` + LogicalId *string `json:"LogicalId,omitempty"` // AWSCloudFormationDeletionPolicy represents a CloudFormation DeletionPolicy AWSCloudFormationDeletionPolicy policies.DeletionPolicy `json:"-"` diff --git a/cloudformation/iotsitewise/aws-iotsitewise-asset_assetproperty.go b/cloudformation/iotsitewise/aws-iotsitewise-asset_assetproperty.go index 1490b9844a..040b0ef003 100644 --- a/cloudformation/iotsitewise/aws-iotsitewise-asset_assetproperty.go +++ b/cloudformation/iotsitewise/aws-iotsitewise-asset_assetproperty.go @@ -15,10 +15,20 @@ type Asset_AssetProperty struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-asset-assetproperty.html#cfn-iotsitewise-asset-assetproperty-alias Alias *string `json:"Alias,omitempty"` + // ExternalId AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-asset-assetproperty.html#cfn-iotsitewise-asset-assetproperty-externalid + ExternalId *string `json:"ExternalId,omitempty"` + + // Id AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-asset-assetproperty.html#cfn-iotsitewise-asset-assetproperty-id + Id *string `json:"Id,omitempty"` + // LogicalId AWS CloudFormation Property - // Required: true + // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-asset-assetproperty.html#cfn-iotsitewise-asset-assetproperty-logicalid - LogicalId string `json:"LogicalId"` + LogicalId *string `json:"LogicalId,omitempty"` // NotificationState AWS CloudFormation Property // Required: false diff --git a/cloudformation/iotsitewise/aws-iotsitewise-assetmodel.go b/cloudformation/iotsitewise/aws-iotsitewise-assetmodel.go index a60dbb1772..bc46c60902 100644 --- a/cloudformation/iotsitewise/aws-iotsitewise-assetmodel.go +++ b/cloudformation/iotsitewise/aws-iotsitewise-assetmodel.go @@ -24,6 +24,11 @@ type AssetModel struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-assetmodel.html#cfn-iotsitewise-assetmodel-assetmodeldescription AssetModelDescription *string `json:"AssetModelDescription,omitempty"` + // AssetModelExternalId AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-assetmodel.html#cfn-iotsitewise-assetmodel-assetmodelexternalid + AssetModelExternalId *string `json:"AssetModelExternalId,omitempty"` + // AssetModelHierarchies AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-assetmodel.html#cfn-iotsitewise-assetmodel-assetmodelhierarchies @@ -39,6 +44,11 @@ type AssetModel struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-assetmodel.html#cfn-iotsitewise-assetmodel-assetmodelproperties AssetModelProperties []AssetModel_AssetModelProperty `json:"AssetModelProperties,omitempty"` + // AssetModelType AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-assetmodel.html#cfn-iotsitewise-assetmodel-assetmodeltype + AssetModelType *string `json:"AssetModelType,omitempty"` + // Tags AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-assetmodel.html#cfn-iotsitewise-assetmodel-tags diff --git a/cloudformation/iotsitewise/aws-iotsitewise-assetmodel_assetmodelcompositemodel.go b/cloudformation/iotsitewise/aws-iotsitewise-assetmodel_assetmodelcompositemodel.go index c5990bf8f1..b1a4316db2 100644 --- a/cloudformation/iotsitewise/aws-iotsitewise-assetmodel_assetmodelcompositemodel.go +++ b/cloudformation/iotsitewise/aws-iotsitewise-assetmodel_assetmodelcompositemodel.go @@ -10,6 +10,11 @@ import ( // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-assetmodelcompositemodel.html type AssetModel_AssetModelCompositeModel struct { + // ComposedAssetModelId AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-assetmodelcompositemodel.html#cfn-iotsitewise-assetmodel-assetmodelcompositemodel-composedassetmodelid + ComposedAssetModelId *string `json:"ComposedAssetModelId,omitempty"` + // CompositeModelProperties AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-assetmodelcompositemodel.html#cfn-iotsitewise-assetmodel-assetmodelcompositemodel-compositemodelproperties @@ -20,11 +25,31 @@ type AssetModel_AssetModelCompositeModel struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-assetmodelcompositemodel.html#cfn-iotsitewise-assetmodel-assetmodelcompositemodel-description Description *string `json:"Description,omitempty"` + // ExternalId AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-assetmodelcompositemodel.html#cfn-iotsitewise-assetmodel-assetmodelcompositemodel-externalid + ExternalId *string `json:"ExternalId,omitempty"` + + // Id AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-assetmodelcompositemodel.html#cfn-iotsitewise-assetmodel-assetmodelcompositemodel-id + Id *string `json:"Id,omitempty"` + // Name AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-assetmodelcompositemodel.html#cfn-iotsitewise-assetmodel-assetmodelcompositemodel-name Name string `json:"Name"` + // ParentAssetModelCompositeModelExternalId AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-assetmodelcompositemodel.html#cfn-iotsitewise-assetmodel-assetmodelcompositemodel-parentassetmodelcompositemodelexternalid + ParentAssetModelCompositeModelExternalId *string `json:"ParentAssetModelCompositeModelExternalId,omitempty"` + + // Path AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-assetmodelcompositemodel.html#cfn-iotsitewise-assetmodel-assetmodelcompositemodel-path + Path []string `json:"Path,omitempty"` + // Type AWS CloudFormation Property // Required: true // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-assetmodelcompositemodel.html#cfn-iotsitewise-assetmodel-assetmodelcompositemodel-type diff --git a/cloudformation/iotsitewise/aws-iotsitewise-assetmodel_assetmodelhierarchy.go b/cloudformation/iotsitewise/aws-iotsitewise-assetmodel_assetmodelhierarchy.go index 96026b567b..c91919607b 100644 --- a/cloudformation/iotsitewise/aws-iotsitewise-assetmodel_assetmodelhierarchy.go +++ b/cloudformation/iotsitewise/aws-iotsitewise-assetmodel_assetmodelhierarchy.go @@ -15,10 +15,20 @@ type AssetModel_AssetModelHierarchy struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-assetmodelhierarchy.html#cfn-iotsitewise-assetmodel-assetmodelhierarchy-childassetmodelid ChildAssetModelId string `json:"ChildAssetModelId"` + // ExternalId AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-assetmodelhierarchy.html#cfn-iotsitewise-assetmodel-assetmodelhierarchy-externalid + ExternalId *string `json:"ExternalId,omitempty"` + + // Id AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-assetmodelhierarchy.html#cfn-iotsitewise-assetmodel-assetmodelhierarchy-id + Id *string `json:"Id,omitempty"` + // LogicalId AWS CloudFormation Property - // Required: true + // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-assetmodelhierarchy.html#cfn-iotsitewise-assetmodel-assetmodelhierarchy-logicalid - LogicalId string `json:"LogicalId"` + LogicalId *string `json:"LogicalId,omitempty"` // Name AWS CloudFormation Property // Required: true diff --git a/cloudformation/iotsitewise/aws-iotsitewise-assetmodel_assetmodelproperty.go b/cloudformation/iotsitewise/aws-iotsitewise-assetmodel_assetmodelproperty.go index 812ead173c..226caece67 100644 --- a/cloudformation/iotsitewise/aws-iotsitewise-assetmodel_assetmodelproperty.go +++ b/cloudformation/iotsitewise/aws-iotsitewise-assetmodel_assetmodelproperty.go @@ -20,10 +20,20 @@ type AssetModel_AssetModelProperty struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-assetmodelproperty.html#cfn-iotsitewise-assetmodel-assetmodelproperty-datatypespec DataTypeSpec *string `json:"DataTypeSpec,omitempty"` + // ExternalId AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-assetmodelproperty.html#cfn-iotsitewise-assetmodel-assetmodelproperty-externalid + ExternalId *string `json:"ExternalId,omitempty"` + + // Id AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-assetmodelproperty.html#cfn-iotsitewise-assetmodel-assetmodelproperty-id + Id *string `json:"Id,omitempty"` + // LogicalId AWS CloudFormation Property - // Required: true + // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-assetmodelproperty.html#cfn-iotsitewise-assetmodel-assetmodelproperty-logicalid - LogicalId string `json:"LogicalId"` + LogicalId *string `json:"LogicalId,omitempty"` // Name AWS CloudFormation Property // Required: true diff --git a/cloudformation/iotsitewise/aws-iotsitewise-assetmodel_propertypathdefinition.go b/cloudformation/iotsitewise/aws-iotsitewise-assetmodel_propertypathdefinition.go new file mode 100644 index 0000000000..1da8438ab6 --- /dev/null +++ b/cloudformation/iotsitewise/aws-iotsitewise-assetmodel_propertypathdefinition.go @@ -0,0 +1,37 @@ +// Code generated by "go generate". Please don't change this file directly. + +package iotsitewise + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// AssetModel_PropertyPathDefinition AWS CloudFormation Resource (AWS::IoTSiteWise::AssetModel.PropertyPathDefinition) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-propertypathdefinition.html +type AssetModel_PropertyPathDefinition struct { + + // Name AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-propertypathdefinition.html#cfn-iotsitewise-assetmodel-propertypathdefinition-name + Name string `json:"Name"` + + // 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 *AssetModel_PropertyPathDefinition) AWSCloudFormationType() string { + return "AWS::IoTSiteWise::AssetModel.PropertyPathDefinition" +} diff --git a/cloudformation/iotsitewise/aws-iotsitewise-assetmodel_variablevalue.go b/cloudformation/iotsitewise/aws-iotsitewise-assetmodel_variablevalue.go index 66bd225294..dfcd77abad 100644 --- a/cloudformation/iotsitewise/aws-iotsitewise-assetmodel_variablevalue.go +++ b/cloudformation/iotsitewise/aws-iotsitewise-assetmodel_variablevalue.go @@ -10,15 +10,40 @@ import ( // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-variablevalue.html type AssetModel_VariableValue struct { + // HierarchyExternalId AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-variablevalue.html#cfn-iotsitewise-assetmodel-variablevalue-hierarchyexternalid + HierarchyExternalId *string `json:"HierarchyExternalId,omitempty"` + + // HierarchyId AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-variablevalue.html#cfn-iotsitewise-assetmodel-variablevalue-hierarchyid + HierarchyId *string `json:"HierarchyId,omitempty"` + // HierarchyLogicalId AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-variablevalue.html#cfn-iotsitewise-assetmodel-variablevalue-hierarchylogicalid HierarchyLogicalId *string `json:"HierarchyLogicalId,omitempty"` + // PropertyExternalId AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-variablevalue.html#cfn-iotsitewise-assetmodel-variablevalue-propertyexternalid + PropertyExternalId *string `json:"PropertyExternalId,omitempty"` + + // PropertyId AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-variablevalue.html#cfn-iotsitewise-assetmodel-variablevalue-propertyid + PropertyId *string `json:"PropertyId,omitempty"` + // PropertyLogicalId AWS CloudFormation Property - // Required: true + // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-variablevalue.html#cfn-iotsitewise-assetmodel-variablevalue-propertylogicalid - PropertyLogicalId string `json:"PropertyLogicalId"` + PropertyLogicalId *string `json:"PropertyLogicalId,omitempty"` + + // PropertyPath AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-variablevalue.html#cfn-iotsitewise-assetmodel-variablevalue-propertypath + PropertyPath []AssetModel_PropertyPathDefinition `json:"PropertyPath,omitempty"` // AWSCloudFormationDeletionPolicy represents a CloudFormation DeletionPolicy AWSCloudFormationDeletionPolicy policies.DeletionPolicy `json:"-"` diff --git a/cloudformation/wafv2/aws-wafv2-rulegroup_fieldtomatch.go b/cloudformation/wafv2/aws-wafv2-rulegroup_fieldtomatch.go index ef6da20f8b..34f83a2d53 100644 --- a/cloudformation/wafv2/aws-wafv2-rulegroup_fieldtomatch.go +++ b/cloudformation/wafv2/aws-wafv2-rulegroup_fieldtomatch.go @@ -30,6 +30,11 @@ type RuleGroup_FieldToMatch struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-fieldtomatch.html#cfn-wafv2-rulegroup-fieldtomatch-headers Headers *RuleGroup_Headers `json:"Headers,omitempty"` + // JA3Fingerprint AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-fieldtomatch.html#cfn-wafv2-rulegroup-fieldtomatch-ja3fingerprint + JA3Fingerprint *RuleGroup_JA3Fingerprint `json:"JA3Fingerprint,omitempty"` + // JsonBody AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-fieldtomatch.html#cfn-wafv2-rulegroup-fieldtomatch-jsonbody diff --git a/cloudformation/wafv2/aws-wafv2-rulegroup_ja3fingerprint.go b/cloudformation/wafv2/aws-wafv2-rulegroup_ja3fingerprint.go new file mode 100644 index 0000000000..45b0c713bc --- /dev/null +++ b/cloudformation/wafv2/aws-wafv2-rulegroup_ja3fingerprint.go @@ -0,0 +1,37 @@ +// Code generated by "go generate". Please don't change this file directly. + +package wafv2 + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// RuleGroup_JA3Fingerprint AWS CloudFormation Resource (AWS::WAFv2::RuleGroup.JA3Fingerprint) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-ja3fingerprint.html +type RuleGroup_JA3Fingerprint struct { + + // FallbackBehavior AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-ja3fingerprint.html#cfn-wafv2-rulegroup-ja3fingerprint-fallbackbehavior + FallbackBehavior string `json:"FallbackBehavior"` + + // 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 *RuleGroup_JA3Fingerprint) AWSCloudFormationType() string { + return "AWS::WAFv2::RuleGroup.JA3Fingerprint" +} diff --git a/cloudformation/wafv2/aws-wafv2-rulegroup_ratebasedstatement.go b/cloudformation/wafv2/aws-wafv2-rulegroup_ratebasedstatement.go index d9fa2e295f..e746e6c5bc 100644 --- a/cloudformation/wafv2/aws-wafv2-rulegroup_ratebasedstatement.go +++ b/cloudformation/wafv2/aws-wafv2-rulegroup_ratebasedstatement.go @@ -20,6 +20,11 @@ type RuleGroup_RateBasedStatement struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-ratebasedstatement.html#cfn-wafv2-rulegroup-ratebasedstatement-customkeys CustomKeys []RuleGroup_RateBasedStatementCustomKey `json:"CustomKeys,omitempty"` + // EvaluationWindowSec AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-ratebasedstatement.html#cfn-wafv2-rulegroup-ratebasedstatement-evaluationwindowsec + EvaluationWindowSec *int `json:"EvaluationWindowSec,omitempty"` + // ForwardedIPConfig AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-ratebasedstatement.html#cfn-wafv2-rulegroup-ratebasedstatement-forwardedipconfig diff --git a/cloudformation/wafv2/aws-wafv2-webacl_fieldtomatch.go b/cloudformation/wafv2/aws-wafv2-webacl_fieldtomatch.go index 6dd39b1155..8388c6ff18 100644 --- a/cloudformation/wafv2/aws-wafv2-webacl_fieldtomatch.go +++ b/cloudformation/wafv2/aws-wafv2-webacl_fieldtomatch.go @@ -30,6 +30,11 @@ type WebACL_FieldToMatch struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-fieldtomatch.html#cfn-wafv2-webacl-fieldtomatch-headers Headers *WebACL_Headers `json:"Headers,omitempty"` + // JA3Fingerprint AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-fieldtomatch.html#cfn-wafv2-webacl-fieldtomatch-ja3fingerprint + JA3Fingerprint *WebACL_JA3Fingerprint `json:"JA3Fingerprint,omitempty"` + // JsonBody AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-fieldtomatch.html#cfn-wafv2-webacl-fieldtomatch-jsonbody diff --git a/cloudformation/wafv2/aws-wafv2-webacl_ja3fingerprint.go b/cloudformation/wafv2/aws-wafv2-webacl_ja3fingerprint.go new file mode 100644 index 0000000000..09e19a0a16 --- /dev/null +++ b/cloudformation/wafv2/aws-wafv2-webacl_ja3fingerprint.go @@ -0,0 +1,37 @@ +// Code generated by "go generate". Please don't change this file directly. + +package wafv2 + +import ( + "github.com/awslabs/goformation/v7/cloudformation/policies" +) + +// WebACL_JA3Fingerprint AWS CloudFormation Resource (AWS::WAFv2::WebACL.JA3Fingerprint) +// See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-ja3fingerprint.html +type WebACL_JA3Fingerprint struct { + + // FallbackBehavior AWS CloudFormation Property + // Required: true + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-ja3fingerprint.html#cfn-wafv2-webacl-ja3fingerprint-fallbackbehavior + FallbackBehavior string `json:"FallbackBehavior"` + + // 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 *WebACL_JA3Fingerprint) AWSCloudFormationType() string { + return "AWS::WAFv2::WebACL.JA3Fingerprint" +} diff --git a/cloudformation/wafv2/aws-wafv2-webacl_ratebasedstatement.go b/cloudformation/wafv2/aws-wafv2-webacl_ratebasedstatement.go index b73adf562a..bd541bc5e0 100644 --- a/cloudformation/wafv2/aws-wafv2-webacl_ratebasedstatement.go +++ b/cloudformation/wafv2/aws-wafv2-webacl_ratebasedstatement.go @@ -20,6 +20,11 @@ type WebACL_RateBasedStatement struct { // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-ratebasedstatement.html#cfn-wafv2-webacl-ratebasedstatement-customkeys CustomKeys []WebACL_RateBasedStatementCustomKey `json:"CustomKeys,omitempty"` + // EvaluationWindowSec AWS CloudFormation Property + // Required: false + // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-ratebasedstatement.html#cfn-wafv2-webacl-ratebasedstatement-evaluationwindowsec + EvaluationWindowSec *int `json:"EvaluationWindowSec,omitempty"` + // ForwardedIPConfig AWS CloudFormation Property // Required: false // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-ratebasedstatement.html#cfn-wafv2-webacl-ratebasedstatement-forwardedipconfig diff --git a/schema/cdk.go b/schema/cdk.go index 7e495e5bfb..f5e378bac3 100644 --- a/schema/cdk.go +++ b/schema/cdk.go @@ -21403,6 +21403,9 @@ var CdkSchema = `{ "ContainerProperties": { "$ref": "#/definitions/AWS::Batch::JobDefinition.ContainerProperties" }, + "EcsProperties": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.EcsProperties" + }, "EksProperties": { "$ref": "#/definitions/AWS::Batch::JobDefinition.EksProperties" }, @@ -21595,6 +21598,63 @@ var CdkSchema = `{ }, "type": "object" }, + "AWS::Batch::JobDefinition.EcsProperties": { + "additionalProperties": false, + "properties": { + "TaskProperties": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.EcsTaskProperties" + }, + "type": "array" + } + }, + "required": [ + "TaskProperties" + ], + "type": "object" + }, + "AWS::Batch::JobDefinition.EcsTaskProperties": { + "additionalProperties": false, + "properties": { + "Containers": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.TaskContainerProperties" + }, + "type": "array" + }, + "EphemeralStorage": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.EphemeralStorage" + }, + "ExecutionRoleArn": { + "type": "string" + }, + "IpcMode": { + "type": "string" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.NetworkConfiguration" + }, + "PidMode": { + "type": "string" + }, + "PlatformVersion": { + "type": "string" + }, + "RuntimePlatform": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.RuntimePlatform" + }, + "TaskRoleArn": { + "type": "string" + }, + "Volumes": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.Volumes" + }, + "type": "array" + } + }, + "type": "object" + }, "AWS::Batch::JobDefinition.EfsVolumeConfiguration": { "additionalProperties": false, "properties": { @@ -21963,6 +22023,15 @@ var CdkSchema = `{ "Container": { "$ref": "#/definitions/AWS::Batch::JobDefinition.ContainerProperties" }, + "EcsProperties": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.EcsProperties" + }, + "InstanceTypes": { + "items": { + "type": "string" + }, + "type": "array" + }, "TargetNodes": { "type": "string" } @@ -21987,12 +22056,21 @@ var CdkSchema = `{ "HostNetwork": { "type": "boolean" }, + "InitContainers": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.EksContainer" + }, + "type": "array" + }, "Metadata": { "$ref": "#/definitions/AWS::Batch::JobDefinition.Metadata" }, "ServiceAccountName": { "type": "string" }, + "ShareProcessNamespace": { + "type": "boolean" + }, "Volumes": { "items": { "$ref": "#/definitions/AWS::Batch::JobDefinition.EksVolume" @@ -22069,6 +22147,100 @@ var CdkSchema = `{ ], "type": "object" }, + "AWS::Batch::JobDefinition.TaskContainerDependency": { + "additionalProperties": false, + "properties": { + "Condition": { + "type": "string" + }, + "ContainerName": { + "type": "string" + } + }, + "required": [ + "Condition", + "ContainerName" + ], + "type": "object" + }, + "AWS::Batch::JobDefinition.TaskContainerProperties": { + "additionalProperties": false, + "properties": { + "Command": { + "items": { + "type": "string" + }, + "type": "array" + }, + "DependsOn": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.TaskContainerDependency" + }, + "type": "array" + }, + "Environment": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.Environment" + }, + "type": "array" + }, + "Essential": { + "type": "boolean" + }, + "Image": { + "type": "string" + }, + "LinuxParameters": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.LinuxParameters" + }, + "LogConfiguration": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.LogConfiguration" + }, + "MountPoints": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.MountPoints" + }, + "type": "array" + }, + "Name": { + "type": "string" + }, + "Privileged": { + "type": "boolean" + }, + "ReadonlyRootFilesystem": { + "type": "boolean" + }, + "RepositoryCredentials": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.RepositoryCredentials" + }, + "ResourceRequirements": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.ResourceRequirement" + }, + "type": "array" + }, + "Secrets": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.Secret" + }, + "type": "array" + }, + "Ulimits": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.Ulimit" + }, + "type": "array" + }, + "User": { + "type": "string" + } + }, + "required": [ + "Image" + ], + "type": "object" + }, "AWS::Batch::JobDefinition.Timeout": { "additionalProperties": false, "properties": { @@ -100502,6 +100674,9 @@ var CdkSchema = `{ "AssetDescription": { "type": "string" }, + "AssetExternalId": { + "type": "string" + }, "AssetHierarchies": { "items": { "$ref": "#/definitions/AWS::IoTSiteWise::Asset.AssetHierarchy" @@ -100560,13 +100735,18 @@ var CdkSchema = `{ "ChildAssetId": { "type": "string" }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, "LogicalId": { "type": "string" } }, "required": [ - "ChildAssetId", - "LogicalId" + "ChildAssetId" ], "type": "object" }, @@ -100576,6 +100756,12 @@ var CdkSchema = `{ "Alias": { "type": "string" }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, "LogicalId": { "type": "string" }, @@ -100586,9 +100772,6 @@ var CdkSchema = `{ "type": "string" } }, - "required": [ - "LogicalId" - ], "type": "object" }, "AWS::IoTSiteWise::AssetModel": { @@ -100635,6 +100818,9 @@ var CdkSchema = `{ "AssetModelDescription": { "type": "string" }, + "AssetModelExternalId": { + "type": "string" + }, "AssetModelHierarchies": { "items": { "$ref": "#/definitions/AWS::IoTSiteWise::AssetModel.AssetModelHierarchy" @@ -100650,6 +100836,9 @@ var CdkSchema = `{ }, "type": "array" }, + "AssetModelType": { + "type": "string" + }, "Tags": { "items": { "$ref": "#/definitions/Tag" @@ -100686,6 +100875,9 @@ var CdkSchema = `{ "AWS::IoTSiteWise::AssetModel.AssetModelCompositeModel": { "additionalProperties": false, "properties": { + "ComposedAssetModelId": { + "type": "string" + }, "CompositeModelProperties": { "items": { "$ref": "#/definitions/AWS::IoTSiteWise::AssetModel.AssetModelProperty" @@ -100695,9 +100887,24 @@ var CdkSchema = `{ "Description": { "type": "string" }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, "Name": { "type": "string" }, + "ParentAssetModelCompositeModelExternalId": { + "type": "string" + }, + "Path": { + "items": { + "type": "string" + }, + "type": "array" + }, "Type": { "type": "string" } @@ -100714,6 +100921,12 @@ var CdkSchema = `{ "ChildAssetModelId": { "type": "string" }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, "LogicalId": { "type": "string" }, @@ -100723,7 +100936,6 @@ var CdkSchema = `{ }, "required": [ "ChildAssetModelId", - "LogicalId", "Name" ], "type": "object" @@ -100737,6 +100949,12 @@ var CdkSchema = `{ "DataTypeSpec": { "type": "string" }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, "LogicalId": { "type": "string" }, @@ -100752,7 +100970,6 @@ var CdkSchema = `{ }, "required": [ "DataType", - "LogicalId", "Name", "Type" ], @@ -100815,6 +101032,18 @@ var CdkSchema = `{ }, "type": "object" }, + "AWS::IoTSiteWise::AssetModel.PropertyPathDefinition": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, "AWS::IoTSiteWise::AssetModel.PropertyType": { "additionalProperties": false, "properties": { @@ -100873,16 +101102,31 @@ var CdkSchema = `{ "AWS::IoTSiteWise::AssetModel.VariableValue": { "additionalProperties": false, "properties": { + "HierarchyExternalId": { + "type": "string" + }, + "HierarchyId": { + "type": "string" + }, "HierarchyLogicalId": { "type": "string" }, + "PropertyExternalId": { + "type": "string" + }, + "PropertyId": { + "type": "string" + }, "PropertyLogicalId": { "type": "string" + }, + "PropertyPath": { + "items": { + "$ref": "#/definitions/AWS::IoTSiteWise::AssetModel.PropertyPathDefinition" + }, + "type": "array" } }, - "required": [ - "PropertyLogicalId" - ], "type": "object" }, "AWS::IoTSiteWise::Dashboard": { @@ -207931,6 +208175,9 @@ var CdkSchema = `{ "Headers": { "$ref": "#/definitions/AWS::WAFv2::RuleGroup.Headers" }, + "JA3Fingerprint": { + "$ref": "#/definitions/AWS::WAFv2::RuleGroup.JA3Fingerprint" + }, "JsonBody": { "$ref": "#/definitions/AWS::WAFv2::RuleGroup.JsonBody" }, @@ -208071,6 +208318,18 @@ var CdkSchema = `{ ], "type": "object" }, + "AWS::WAFv2::RuleGroup.JA3Fingerprint": { + "additionalProperties": false, + "properties": { + "FallbackBehavior": { + "type": "string" + } + }, + "required": [ + "FallbackBehavior" + ], + "type": "object" + }, "AWS::WAFv2::RuleGroup.JsonBody": { "additionalProperties": false, "properties": { @@ -208184,6 +208443,9 @@ var CdkSchema = `{ }, "type": "array" }, + "EvaluationWindowSec": { + "type": "number" + }, "ForwardedIPConfig": { "$ref": "#/definitions/AWS::WAFv2::RuleGroup.ForwardedIPConfiguration" }, @@ -209079,6 +209341,9 @@ var CdkSchema = `{ "Headers": { "$ref": "#/definitions/AWS::WAFv2::WebACL.Headers" }, + "JA3Fingerprint": { + "$ref": "#/definitions/AWS::WAFv2::WebACL.JA3Fingerprint" + }, "JsonBody": { "$ref": "#/definitions/AWS::WAFv2::WebACL.JsonBody" }, @@ -209219,6 +209484,18 @@ var CdkSchema = `{ ], "type": "object" }, + "AWS::WAFv2::WebACL.JA3Fingerprint": { + "additionalProperties": false, + "properties": { + "FallbackBehavior": { + "type": "string" + } + }, + "required": [ + "FallbackBehavior" + ], + "type": "object" + }, "AWS::WAFv2::WebACL.JsonBody": { "additionalProperties": false, "properties": { @@ -209402,6 +209679,9 @@ var CdkSchema = `{ }, "type": "array" }, + "EvaluationWindowSec": { + "type": "number" + }, "ForwardedIPConfig": { "$ref": "#/definitions/AWS::WAFv2::WebACL.ForwardedIPConfiguration" }, diff --git a/schema/cdk.schema.json b/schema/cdk.schema.json index 6b7641f4d1..4d206f82ed 100644 --- a/schema/cdk.schema.json +++ b/schema/cdk.schema.json @@ -21398,6 +21398,9 @@ "ContainerProperties": { "$ref": "#/definitions/AWS::Batch::JobDefinition.ContainerProperties" }, + "EcsProperties": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.EcsProperties" + }, "EksProperties": { "$ref": "#/definitions/AWS::Batch::JobDefinition.EksProperties" }, @@ -21590,6 +21593,63 @@ }, "type": "object" }, + "AWS::Batch::JobDefinition.EcsProperties": { + "additionalProperties": false, + "properties": { + "TaskProperties": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.EcsTaskProperties" + }, + "type": "array" + } + }, + "required": [ + "TaskProperties" + ], + "type": "object" + }, + "AWS::Batch::JobDefinition.EcsTaskProperties": { + "additionalProperties": false, + "properties": { + "Containers": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.TaskContainerProperties" + }, + "type": "array" + }, + "EphemeralStorage": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.EphemeralStorage" + }, + "ExecutionRoleArn": { + "type": "string" + }, + "IpcMode": { + "type": "string" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.NetworkConfiguration" + }, + "PidMode": { + "type": "string" + }, + "PlatformVersion": { + "type": "string" + }, + "RuntimePlatform": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.RuntimePlatform" + }, + "TaskRoleArn": { + "type": "string" + }, + "Volumes": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.Volumes" + }, + "type": "array" + } + }, + "type": "object" + }, "AWS::Batch::JobDefinition.EfsVolumeConfiguration": { "additionalProperties": false, "properties": { @@ -21958,6 +22018,15 @@ "Container": { "$ref": "#/definitions/AWS::Batch::JobDefinition.ContainerProperties" }, + "EcsProperties": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.EcsProperties" + }, + "InstanceTypes": { + "items": { + "type": "string" + }, + "type": "array" + }, "TargetNodes": { "type": "string" } @@ -21982,12 +22051,21 @@ "HostNetwork": { "type": "boolean" }, + "InitContainers": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.EksContainer" + }, + "type": "array" + }, "Metadata": { "$ref": "#/definitions/AWS::Batch::JobDefinition.Metadata" }, "ServiceAccountName": { "type": "string" }, + "ShareProcessNamespace": { + "type": "boolean" + }, "Volumes": { "items": { "$ref": "#/definitions/AWS::Batch::JobDefinition.EksVolume" @@ -22064,6 +22142,100 @@ ], "type": "object" }, + "AWS::Batch::JobDefinition.TaskContainerDependency": { + "additionalProperties": false, + "properties": { + "Condition": { + "type": "string" + }, + "ContainerName": { + "type": "string" + } + }, + "required": [ + "Condition", + "ContainerName" + ], + "type": "object" + }, + "AWS::Batch::JobDefinition.TaskContainerProperties": { + "additionalProperties": false, + "properties": { + "Command": { + "items": { + "type": "string" + }, + "type": "array" + }, + "DependsOn": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.TaskContainerDependency" + }, + "type": "array" + }, + "Environment": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.Environment" + }, + "type": "array" + }, + "Essential": { + "type": "boolean" + }, + "Image": { + "type": "string" + }, + "LinuxParameters": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.LinuxParameters" + }, + "LogConfiguration": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.LogConfiguration" + }, + "MountPoints": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.MountPoints" + }, + "type": "array" + }, + "Name": { + "type": "string" + }, + "Privileged": { + "type": "boolean" + }, + "ReadonlyRootFilesystem": { + "type": "boolean" + }, + "RepositoryCredentials": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.RepositoryCredentials" + }, + "ResourceRequirements": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.ResourceRequirement" + }, + "type": "array" + }, + "Secrets": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.Secret" + }, + "type": "array" + }, + "Ulimits": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.Ulimit" + }, + "type": "array" + }, + "User": { + "type": "string" + } + }, + "required": [ + "Image" + ], + "type": "object" + }, "AWS::Batch::JobDefinition.Timeout": { "additionalProperties": false, "properties": { @@ -100497,6 +100669,9 @@ "AssetDescription": { "type": "string" }, + "AssetExternalId": { + "type": "string" + }, "AssetHierarchies": { "items": { "$ref": "#/definitions/AWS::IoTSiteWise::Asset.AssetHierarchy" @@ -100555,13 +100730,18 @@ "ChildAssetId": { "type": "string" }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, "LogicalId": { "type": "string" } }, "required": [ - "ChildAssetId", - "LogicalId" + "ChildAssetId" ], "type": "object" }, @@ -100571,6 +100751,12 @@ "Alias": { "type": "string" }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, "LogicalId": { "type": "string" }, @@ -100581,9 +100767,6 @@ "type": "string" } }, - "required": [ - "LogicalId" - ], "type": "object" }, "AWS::IoTSiteWise::AssetModel": { @@ -100630,6 +100813,9 @@ "AssetModelDescription": { "type": "string" }, + "AssetModelExternalId": { + "type": "string" + }, "AssetModelHierarchies": { "items": { "$ref": "#/definitions/AWS::IoTSiteWise::AssetModel.AssetModelHierarchy" @@ -100645,6 +100831,9 @@ }, "type": "array" }, + "AssetModelType": { + "type": "string" + }, "Tags": { "items": { "$ref": "#/definitions/Tag" @@ -100681,6 +100870,9 @@ "AWS::IoTSiteWise::AssetModel.AssetModelCompositeModel": { "additionalProperties": false, "properties": { + "ComposedAssetModelId": { + "type": "string" + }, "CompositeModelProperties": { "items": { "$ref": "#/definitions/AWS::IoTSiteWise::AssetModel.AssetModelProperty" @@ -100690,9 +100882,24 @@ "Description": { "type": "string" }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, "Name": { "type": "string" }, + "ParentAssetModelCompositeModelExternalId": { + "type": "string" + }, + "Path": { + "items": { + "type": "string" + }, + "type": "array" + }, "Type": { "type": "string" } @@ -100709,6 +100916,12 @@ "ChildAssetModelId": { "type": "string" }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, "LogicalId": { "type": "string" }, @@ -100718,7 +100931,6 @@ }, "required": [ "ChildAssetModelId", - "LogicalId", "Name" ], "type": "object" @@ -100732,6 +100944,12 @@ "DataTypeSpec": { "type": "string" }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, "LogicalId": { "type": "string" }, @@ -100747,7 +100965,6 @@ }, "required": [ "DataType", - "LogicalId", "Name", "Type" ], @@ -100810,6 +101027,18 @@ }, "type": "object" }, + "AWS::IoTSiteWise::AssetModel.PropertyPathDefinition": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, "AWS::IoTSiteWise::AssetModel.PropertyType": { "additionalProperties": false, "properties": { @@ -100868,16 +101097,31 @@ "AWS::IoTSiteWise::AssetModel.VariableValue": { "additionalProperties": false, "properties": { + "HierarchyExternalId": { + "type": "string" + }, + "HierarchyId": { + "type": "string" + }, "HierarchyLogicalId": { "type": "string" }, + "PropertyExternalId": { + "type": "string" + }, + "PropertyId": { + "type": "string" + }, "PropertyLogicalId": { "type": "string" + }, + "PropertyPath": { + "items": { + "$ref": "#/definitions/AWS::IoTSiteWise::AssetModel.PropertyPathDefinition" + }, + "type": "array" } }, - "required": [ - "PropertyLogicalId" - ], "type": "object" }, "AWS::IoTSiteWise::Dashboard": { @@ -207926,6 +208170,9 @@ "Headers": { "$ref": "#/definitions/AWS::WAFv2::RuleGroup.Headers" }, + "JA3Fingerprint": { + "$ref": "#/definitions/AWS::WAFv2::RuleGroup.JA3Fingerprint" + }, "JsonBody": { "$ref": "#/definitions/AWS::WAFv2::RuleGroup.JsonBody" }, @@ -208066,6 +208313,18 @@ ], "type": "object" }, + "AWS::WAFv2::RuleGroup.JA3Fingerprint": { + "additionalProperties": false, + "properties": { + "FallbackBehavior": { + "type": "string" + } + }, + "required": [ + "FallbackBehavior" + ], + "type": "object" + }, "AWS::WAFv2::RuleGroup.JsonBody": { "additionalProperties": false, "properties": { @@ -208179,6 +208438,9 @@ }, "type": "array" }, + "EvaluationWindowSec": { + "type": "number" + }, "ForwardedIPConfig": { "$ref": "#/definitions/AWS::WAFv2::RuleGroup.ForwardedIPConfiguration" }, @@ -209074,6 +209336,9 @@ "Headers": { "$ref": "#/definitions/AWS::WAFv2::WebACL.Headers" }, + "JA3Fingerprint": { + "$ref": "#/definitions/AWS::WAFv2::WebACL.JA3Fingerprint" + }, "JsonBody": { "$ref": "#/definitions/AWS::WAFv2::WebACL.JsonBody" }, @@ -209214,6 +209479,18 @@ ], "type": "object" }, + "AWS::WAFv2::WebACL.JA3Fingerprint": { + "additionalProperties": false, + "properties": { + "FallbackBehavior": { + "type": "string" + } + }, + "required": [ + "FallbackBehavior" + ], + "type": "object" + }, "AWS::WAFv2::WebACL.JsonBody": { "additionalProperties": false, "properties": { @@ -209397,6 +209674,9 @@ }, "type": "array" }, + "EvaluationWindowSec": { + "type": "number" + }, "ForwardedIPConfig": { "$ref": "#/definitions/AWS::WAFv2::WebACL.ForwardedIPConfiguration" }, diff --git a/schema/cloudformation.go b/schema/cloudformation.go index dd79e578cb..b90cedb939 100644 --- a/schema/cloudformation.go +++ b/schema/cloudformation.go @@ -21403,6 +21403,9 @@ var CloudformationSchema = `{ "ContainerProperties": { "$ref": "#/definitions/AWS::Batch::JobDefinition.ContainerProperties" }, + "EcsProperties": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.EcsProperties" + }, "EksProperties": { "$ref": "#/definitions/AWS::Batch::JobDefinition.EksProperties" }, @@ -21595,6 +21598,63 @@ var CloudformationSchema = `{ }, "type": "object" }, + "AWS::Batch::JobDefinition.EcsProperties": { + "additionalProperties": false, + "properties": { + "TaskProperties": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.EcsTaskProperties" + }, + "type": "array" + } + }, + "required": [ + "TaskProperties" + ], + "type": "object" + }, + "AWS::Batch::JobDefinition.EcsTaskProperties": { + "additionalProperties": false, + "properties": { + "Containers": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.TaskContainerProperties" + }, + "type": "array" + }, + "EphemeralStorage": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.EphemeralStorage" + }, + "ExecutionRoleArn": { + "type": "string" + }, + "IpcMode": { + "type": "string" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.NetworkConfiguration" + }, + "PidMode": { + "type": "string" + }, + "PlatformVersion": { + "type": "string" + }, + "RuntimePlatform": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.RuntimePlatform" + }, + "TaskRoleArn": { + "type": "string" + }, + "Volumes": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.Volumes" + }, + "type": "array" + } + }, + "type": "object" + }, "AWS::Batch::JobDefinition.EfsVolumeConfiguration": { "additionalProperties": false, "properties": { @@ -21963,6 +22023,15 @@ var CloudformationSchema = `{ "Container": { "$ref": "#/definitions/AWS::Batch::JobDefinition.ContainerProperties" }, + "EcsProperties": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.EcsProperties" + }, + "InstanceTypes": { + "items": { + "type": "string" + }, + "type": "array" + }, "TargetNodes": { "type": "string" } @@ -21987,12 +22056,21 @@ var CloudformationSchema = `{ "HostNetwork": { "type": "boolean" }, + "InitContainers": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.EksContainer" + }, + "type": "array" + }, "Metadata": { "$ref": "#/definitions/AWS::Batch::JobDefinition.Metadata" }, "ServiceAccountName": { "type": "string" }, + "ShareProcessNamespace": { + "type": "boolean" + }, "Volumes": { "items": { "$ref": "#/definitions/AWS::Batch::JobDefinition.EksVolume" @@ -22069,6 +22147,100 @@ var CloudformationSchema = `{ ], "type": "object" }, + "AWS::Batch::JobDefinition.TaskContainerDependency": { + "additionalProperties": false, + "properties": { + "Condition": { + "type": "string" + }, + "ContainerName": { + "type": "string" + } + }, + "required": [ + "Condition", + "ContainerName" + ], + "type": "object" + }, + "AWS::Batch::JobDefinition.TaskContainerProperties": { + "additionalProperties": false, + "properties": { + "Command": { + "items": { + "type": "string" + }, + "type": "array" + }, + "DependsOn": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.TaskContainerDependency" + }, + "type": "array" + }, + "Environment": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.Environment" + }, + "type": "array" + }, + "Essential": { + "type": "boolean" + }, + "Image": { + "type": "string" + }, + "LinuxParameters": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.LinuxParameters" + }, + "LogConfiguration": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.LogConfiguration" + }, + "MountPoints": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.MountPoints" + }, + "type": "array" + }, + "Name": { + "type": "string" + }, + "Privileged": { + "type": "boolean" + }, + "ReadonlyRootFilesystem": { + "type": "boolean" + }, + "RepositoryCredentials": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.RepositoryCredentials" + }, + "ResourceRequirements": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.ResourceRequirement" + }, + "type": "array" + }, + "Secrets": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.Secret" + }, + "type": "array" + }, + "Ulimits": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.Ulimit" + }, + "type": "array" + }, + "User": { + "type": "string" + } + }, + "required": [ + "Image" + ], + "type": "object" + }, "AWS::Batch::JobDefinition.Timeout": { "additionalProperties": false, "properties": { @@ -100441,6 +100613,9 @@ var CloudformationSchema = `{ "AssetDescription": { "type": "string" }, + "AssetExternalId": { + "type": "string" + }, "AssetHierarchies": { "items": { "$ref": "#/definitions/AWS::IoTSiteWise::Asset.AssetHierarchy" @@ -100499,13 +100674,18 @@ var CloudformationSchema = `{ "ChildAssetId": { "type": "string" }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, "LogicalId": { "type": "string" } }, "required": [ - "ChildAssetId", - "LogicalId" + "ChildAssetId" ], "type": "object" }, @@ -100515,6 +100695,12 @@ var CloudformationSchema = `{ "Alias": { "type": "string" }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, "LogicalId": { "type": "string" }, @@ -100525,9 +100711,6 @@ var CloudformationSchema = `{ "type": "string" } }, - "required": [ - "LogicalId" - ], "type": "object" }, "AWS::IoTSiteWise::AssetModel": { @@ -100574,6 +100757,9 @@ var CloudformationSchema = `{ "AssetModelDescription": { "type": "string" }, + "AssetModelExternalId": { + "type": "string" + }, "AssetModelHierarchies": { "items": { "$ref": "#/definitions/AWS::IoTSiteWise::AssetModel.AssetModelHierarchy" @@ -100589,6 +100775,9 @@ var CloudformationSchema = `{ }, "type": "array" }, + "AssetModelType": { + "type": "string" + }, "Tags": { "items": { "$ref": "#/definitions/Tag" @@ -100625,6 +100814,9 @@ var CloudformationSchema = `{ "AWS::IoTSiteWise::AssetModel.AssetModelCompositeModel": { "additionalProperties": false, "properties": { + "ComposedAssetModelId": { + "type": "string" + }, "CompositeModelProperties": { "items": { "$ref": "#/definitions/AWS::IoTSiteWise::AssetModel.AssetModelProperty" @@ -100634,9 +100826,24 @@ var CloudformationSchema = `{ "Description": { "type": "string" }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, "Name": { "type": "string" }, + "ParentAssetModelCompositeModelExternalId": { + "type": "string" + }, + "Path": { + "items": { + "type": "string" + }, + "type": "array" + }, "Type": { "type": "string" } @@ -100653,6 +100860,12 @@ var CloudformationSchema = `{ "ChildAssetModelId": { "type": "string" }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, "LogicalId": { "type": "string" }, @@ -100662,7 +100875,6 @@ var CloudformationSchema = `{ }, "required": [ "ChildAssetModelId", - "LogicalId", "Name" ], "type": "object" @@ -100676,6 +100888,12 @@ var CloudformationSchema = `{ "DataTypeSpec": { "type": "string" }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, "LogicalId": { "type": "string" }, @@ -100691,7 +100909,6 @@ var CloudformationSchema = `{ }, "required": [ "DataType", - "LogicalId", "Name", "Type" ], @@ -100754,6 +100971,18 @@ var CloudformationSchema = `{ }, "type": "object" }, + "AWS::IoTSiteWise::AssetModel.PropertyPathDefinition": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, "AWS::IoTSiteWise::AssetModel.PropertyType": { "additionalProperties": false, "properties": { @@ -100812,16 +101041,31 @@ var CloudformationSchema = `{ "AWS::IoTSiteWise::AssetModel.VariableValue": { "additionalProperties": false, "properties": { + "HierarchyExternalId": { + "type": "string" + }, + "HierarchyId": { + "type": "string" + }, "HierarchyLogicalId": { "type": "string" }, + "PropertyExternalId": { + "type": "string" + }, + "PropertyId": { + "type": "string" + }, "PropertyLogicalId": { "type": "string" + }, + "PropertyPath": { + "items": { + "$ref": "#/definitions/AWS::IoTSiteWise::AssetModel.PropertyPathDefinition" + }, + "type": "array" } }, - "required": [ - "PropertyLogicalId" - ], "type": "object" }, "AWS::IoTSiteWise::Dashboard": { @@ -207870,6 +208114,9 @@ var CloudformationSchema = `{ "Headers": { "$ref": "#/definitions/AWS::WAFv2::RuleGroup.Headers" }, + "JA3Fingerprint": { + "$ref": "#/definitions/AWS::WAFv2::RuleGroup.JA3Fingerprint" + }, "JsonBody": { "$ref": "#/definitions/AWS::WAFv2::RuleGroup.JsonBody" }, @@ -208010,6 +208257,18 @@ var CloudformationSchema = `{ ], "type": "object" }, + "AWS::WAFv2::RuleGroup.JA3Fingerprint": { + "additionalProperties": false, + "properties": { + "FallbackBehavior": { + "type": "string" + } + }, + "required": [ + "FallbackBehavior" + ], + "type": "object" + }, "AWS::WAFv2::RuleGroup.JsonBody": { "additionalProperties": false, "properties": { @@ -208123,6 +208382,9 @@ var CloudformationSchema = `{ }, "type": "array" }, + "EvaluationWindowSec": { + "type": "number" + }, "ForwardedIPConfig": { "$ref": "#/definitions/AWS::WAFv2::RuleGroup.ForwardedIPConfiguration" }, @@ -209018,6 +209280,9 @@ var CloudformationSchema = `{ "Headers": { "$ref": "#/definitions/AWS::WAFv2::WebACL.Headers" }, + "JA3Fingerprint": { + "$ref": "#/definitions/AWS::WAFv2::WebACL.JA3Fingerprint" + }, "JsonBody": { "$ref": "#/definitions/AWS::WAFv2::WebACL.JsonBody" }, @@ -209158,6 +209423,18 @@ var CloudformationSchema = `{ ], "type": "object" }, + "AWS::WAFv2::WebACL.JA3Fingerprint": { + "additionalProperties": false, + "properties": { + "FallbackBehavior": { + "type": "string" + } + }, + "required": [ + "FallbackBehavior" + ], + "type": "object" + }, "AWS::WAFv2::WebACL.JsonBody": { "additionalProperties": false, "properties": { @@ -209341,6 +209618,9 @@ var CloudformationSchema = `{ }, "type": "array" }, + "EvaluationWindowSec": { + "type": "number" + }, "ForwardedIPConfig": { "$ref": "#/definitions/AWS::WAFv2::WebACL.ForwardedIPConfiguration" }, diff --git a/schema/cloudformation.schema.json b/schema/cloudformation.schema.json index d254330ce0..1ec969443c 100644 --- a/schema/cloudformation.schema.json +++ b/schema/cloudformation.schema.json @@ -21398,6 +21398,9 @@ "ContainerProperties": { "$ref": "#/definitions/AWS::Batch::JobDefinition.ContainerProperties" }, + "EcsProperties": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.EcsProperties" + }, "EksProperties": { "$ref": "#/definitions/AWS::Batch::JobDefinition.EksProperties" }, @@ -21590,6 +21593,63 @@ }, "type": "object" }, + "AWS::Batch::JobDefinition.EcsProperties": { + "additionalProperties": false, + "properties": { + "TaskProperties": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.EcsTaskProperties" + }, + "type": "array" + } + }, + "required": [ + "TaskProperties" + ], + "type": "object" + }, + "AWS::Batch::JobDefinition.EcsTaskProperties": { + "additionalProperties": false, + "properties": { + "Containers": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.TaskContainerProperties" + }, + "type": "array" + }, + "EphemeralStorage": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.EphemeralStorage" + }, + "ExecutionRoleArn": { + "type": "string" + }, + "IpcMode": { + "type": "string" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.NetworkConfiguration" + }, + "PidMode": { + "type": "string" + }, + "PlatformVersion": { + "type": "string" + }, + "RuntimePlatform": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.RuntimePlatform" + }, + "TaskRoleArn": { + "type": "string" + }, + "Volumes": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.Volumes" + }, + "type": "array" + } + }, + "type": "object" + }, "AWS::Batch::JobDefinition.EfsVolumeConfiguration": { "additionalProperties": false, "properties": { @@ -21958,6 +22018,15 @@ "Container": { "$ref": "#/definitions/AWS::Batch::JobDefinition.ContainerProperties" }, + "EcsProperties": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.EcsProperties" + }, + "InstanceTypes": { + "items": { + "type": "string" + }, + "type": "array" + }, "TargetNodes": { "type": "string" } @@ -21982,12 +22051,21 @@ "HostNetwork": { "type": "boolean" }, + "InitContainers": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.EksContainer" + }, + "type": "array" + }, "Metadata": { "$ref": "#/definitions/AWS::Batch::JobDefinition.Metadata" }, "ServiceAccountName": { "type": "string" }, + "ShareProcessNamespace": { + "type": "boolean" + }, "Volumes": { "items": { "$ref": "#/definitions/AWS::Batch::JobDefinition.EksVolume" @@ -22064,6 +22142,100 @@ ], "type": "object" }, + "AWS::Batch::JobDefinition.TaskContainerDependency": { + "additionalProperties": false, + "properties": { + "Condition": { + "type": "string" + }, + "ContainerName": { + "type": "string" + } + }, + "required": [ + "Condition", + "ContainerName" + ], + "type": "object" + }, + "AWS::Batch::JobDefinition.TaskContainerProperties": { + "additionalProperties": false, + "properties": { + "Command": { + "items": { + "type": "string" + }, + "type": "array" + }, + "DependsOn": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.TaskContainerDependency" + }, + "type": "array" + }, + "Environment": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.Environment" + }, + "type": "array" + }, + "Essential": { + "type": "boolean" + }, + "Image": { + "type": "string" + }, + "LinuxParameters": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.LinuxParameters" + }, + "LogConfiguration": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.LogConfiguration" + }, + "MountPoints": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.MountPoints" + }, + "type": "array" + }, + "Name": { + "type": "string" + }, + "Privileged": { + "type": "boolean" + }, + "ReadonlyRootFilesystem": { + "type": "boolean" + }, + "RepositoryCredentials": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.RepositoryCredentials" + }, + "ResourceRequirements": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.ResourceRequirement" + }, + "type": "array" + }, + "Secrets": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.Secret" + }, + "type": "array" + }, + "Ulimits": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.Ulimit" + }, + "type": "array" + }, + "User": { + "type": "string" + } + }, + "required": [ + "Image" + ], + "type": "object" + }, "AWS::Batch::JobDefinition.Timeout": { "additionalProperties": false, "properties": { @@ -100436,6 +100608,9 @@ "AssetDescription": { "type": "string" }, + "AssetExternalId": { + "type": "string" + }, "AssetHierarchies": { "items": { "$ref": "#/definitions/AWS::IoTSiteWise::Asset.AssetHierarchy" @@ -100494,13 +100669,18 @@ "ChildAssetId": { "type": "string" }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, "LogicalId": { "type": "string" } }, "required": [ - "ChildAssetId", - "LogicalId" + "ChildAssetId" ], "type": "object" }, @@ -100510,6 +100690,12 @@ "Alias": { "type": "string" }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, "LogicalId": { "type": "string" }, @@ -100520,9 +100706,6 @@ "type": "string" } }, - "required": [ - "LogicalId" - ], "type": "object" }, "AWS::IoTSiteWise::AssetModel": { @@ -100569,6 +100752,9 @@ "AssetModelDescription": { "type": "string" }, + "AssetModelExternalId": { + "type": "string" + }, "AssetModelHierarchies": { "items": { "$ref": "#/definitions/AWS::IoTSiteWise::AssetModel.AssetModelHierarchy" @@ -100584,6 +100770,9 @@ }, "type": "array" }, + "AssetModelType": { + "type": "string" + }, "Tags": { "items": { "$ref": "#/definitions/Tag" @@ -100620,6 +100809,9 @@ "AWS::IoTSiteWise::AssetModel.AssetModelCompositeModel": { "additionalProperties": false, "properties": { + "ComposedAssetModelId": { + "type": "string" + }, "CompositeModelProperties": { "items": { "$ref": "#/definitions/AWS::IoTSiteWise::AssetModel.AssetModelProperty" @@ -100629,9 +100821,24 @@ "Description": { "type": "string" }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, "Name": { "type": "string" }, + "ParentAssetModelCompositeModelExternalId": { + "type": "string" + }, + "Path": { + "items": { + "type": "string" + }, + "type": "array" + }, "Type": { "type": "string" } @@ -100648,6 +100855,12 @@ "ChildAssetModelId": { "type": "string" }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, "LogicalId": { "type": "string" }, @@ -100657,7 +100870,6 @@ }, "required": [ "ChildAssetModelId", - "LogicalId", "Name" ], "type": "object" @@ -100671,6 +100883,12 @@ "DataTypeSpec": { "type": "string" }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, "LogicalId": { "type": "string" }, @@ -100686,7 +100904,6 @@ }, "required": [ "DataType", - "LogicalId", "Name", "Type" ], @@ -100749,6 +100966,18 @@ }, "type": "object" }, + "AWS::IoTSiteWise::AssetModel.PropertyPathDefinition": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, "AWS::IoTSiteWise::AssetModel.PropertyType": { "additionalProperties": false, "properties": { @@ -100807,16 +101036,31 @@ "AWS::IoTSiteWise::AssetModel.VariableValue": { "additionalProperties": false, "properties": { + "HierarchyExternalId": { + "type": "string" + }, + "HierarchyId": { + "type": "string" + }, "HierarchyLogicalId": { "type": "string" }, + "PropertyExternalId": { + "type": "string" + }, + "PropertyId": { + "type": "string" + }, "PropertyLogicalId": { "type": "string" + }, + "PropertyPath": { + "items": { + "$ref": "#/definitions/AWS::IoTSiteWise::AssetModel.PropertyPathDefinition" + }, + "type": "array" } }, - "required": [ - "PropertyLogicalId" - ], "type": "object" }, "AWS::IoTSiteWise::Dashboard": { @@ -207865,6 +208109,9 @@ "Headers": { "$ref": "#/definitions/AWS::WAFv2::RuleGroup.Headers" }, + "JA3Fingerprint": { + "$ref": "#/definitions/AWS::WAFv2::RuleGroup.JA3Fingerprint" + }, "JsonBody": { "$ref": "#/definitions/AWS::WAFv2::RuleGroup.JsonBody" }, @@ -208005,6 +208252,18 @@ ], "type": "object" }, + "AWS::WAFv2::RuleGroup.JA3Fingerprint": { + "additionalProperties": false, + "properties": { + "FallbackBehavior": { + "type": "string" + } + }, + "required": [ + "FallbackBehavior" + ], + "type": "object" + }, "AWS::WAFv2::RuleGroup.JsonBody": { "additionalProperties": false, "properties": { @@ -208118,6 +208377,9 @@ }, "type": "array" }, + "EvaluationWindowSec": { + "type": "number" + }, "ForwardedIPConfig": { "$ref": "#/definitions/AWS::WAFv2::RuleGroup.ForwardedIPConfiguration" }, @@ -209013,6 +209275,9 @@ "Headers": { "$ref": "#/definitions/AWS::WAFv2::WebACL.Headers" }, + "JA3Fingerprint": { + "$ref": "#/definitions/AWS::WAFv2::WebACL.JA3Fingerprint" + }, "JsonBody": { "$ref": "#/definitions/AWS::WAFv2::WebACL.JsonBody" }, @@ -209153,6 +209418,18 @@ ], "type": "object" }, + "AWS::WAFv2::WebACL.JA3Fingerprint": { + "additionalProperties": false, + "properties": { + "FallbackBehavior": { + "type": "string" + } + }, + "required": [ + "FallbackBehavior" + ], + "type": "object" + }, "AWS::WAFv2::WebACL.JsonBody": { "additionalProperties": false, "properties": { @@ -209336,6 +209613,9 @@ }, "type": "array" }, + "EvaluationWindowSec": { + "type": "number" + }, "ForwardedIPConfig": { "$ref": "#/definitions/AWS::WAFv2::WebACL.ForwardedIPConfiguration" }, diff --git a/schema/sam.go b/schema/sam.go index 3fe43ffaf8..40749d56b8 100644 --- a/schema/sam.go +++ b/schema/sam.go @@ -21403,6 +21403,9 @@ var SamSchema = `{ "ContainerProperties": { "$ref": "#/definitions/AWS::Batch::JobDefinition.ContainerProperties" }, + "EcsProperties": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.EcsProperties" + }, "EksProperties": { "$ref": "#/definitions/AWS::Batch::JobDefinition.EksProperties" }, @@ -21595,6 +21598,63 @@ var SamSchema = `{ }, "type": "object" }, + "AWS::Batch::JobDefinition.EcsProperties": { + "additionalProperties": false, + "properties": { + "TaskProperties": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.EcsTaskProperties" + }, + "type": "array" + } + }, + "required": [ + "TaskProperties" + ], + "type": "object" + }, + "AWS::Batch::JobDefinition.EcsTaskProperties": { + "additionalProperties": false, + "properties": { + "Containers": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.TaskContainerProperties" + }, + "type": "array" + }, + "EphemeralStorage": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.EphemeralStorage" + }, + "ExecutionRoleArn": { + "type": "string" + }, + "IpcMode": { + "type": "string" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.NetworkConfiguration" + }, + "PidMode": { + "type": "string" + }, + "PlatformVersion": { + "type": "string" + }, + "RuntimePlatform": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.RuntimePlatform" + }, + "TaskRoleArn": { + "type": "string" + }, + "Volumes": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.Volumes" + }, + "type": "array" + } + }, + "type": "object" + }, "AWS::Batch::JobDefinition.EfsVolumeConfiguration": { "additionalProperties": false, "properties": { @@ -21963,6 +22023,15 @@ var SamSchema = `{ "Container": { "$ref": "#/definitions/AWS::Batch::JobDefinition.ContainerProperties" }, + "EcsProperties": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.EcsProperties" + }, + "InstanceTypes": { + "items": { + "type": "string" + }, + "type": "array" + }, "TargetNodes": { "type": "string" } @@ -21987,12 +22056,21 @@ var SamSchema = `{ "HostNetwork": { "type": "boolean" }, + "InitContainers": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.EksContainer" + }, + "type": "array" + }, "Metadata": { "$ref": "#/definitions/AWS::Batch::JobDefinition.Metadata" }, "ServiceAccountName": { "type": "string" }, + "ShareProcessNamespace": { + "type": "boolean" + }, "Volumes": { "items": { "$ref": "#/definitions/AWS::Batch::JobDefinition.EksVolume" @@ -22069,6 +22147,100 @@ var SamSchema = `{ ], "type": "object" }, + "AWS::Batch::JobDefinition.TaskContainerDependency": { + "additionalProperties": false, + "properties": { + "Condition": { + "type": "string" + }, + "ContainerName": { + "type": "string" + } + }, + "required": [ + "Condition", + "ContainerName" + ], + "type": "object" + }, + "AWS::Batch::JobDefinition.TaskContainerProperties": { + "additionalProperties": false, + "properties": { + "Command": { + "items": { + "type": "string" + }, + "type": "array" + }, + "DependsOn": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.TaskContainerDependency" + }, + "type": "array" + }, + "Environment": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.Environment" + }, + "type": "array" + }, + "Essential": { + "type": "boolean" + }, + "Image": { + "type": "string" + }, + "LinuxParameters": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.LinuxParameters" + }, + "LogConfiguration": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.LogConfiguration" + }, + "MountPoints": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.MountPoints" + }, + "type": "array" + }, + "Name": { + "type": "string" + }, + "Privileged": { + "type": "boolean" + }, + "ReadonlyRootFilesystem": { + "type": "boolean" + }, + "RepositoryCredentials": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.RepositoryCredentials" + }, + "ResourceRequirements": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.ResourceRequirement" + }, + "type": "array" + }, + "Secrets": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.Secret" + }, + "type": "array" + }, + "Ulimits": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.Ulimit" + }, + "type": "array" + }, + "User": { + "type": "string" + } + }, + "required": [ + "Image" + ], + "type": "object" + }, "AWS::Batch::JobDefinition.Timeout": { "additionalProperties": false, "properties": { @@ -100441,6 +100613,9 @@ var SamSchema = `{ "AssetDescription": { "type": "string" }, + "AssetExternalId": { + "type": "string" + }, "AssetHierarchies": { "items": { "$ref": "#/definitions/AWS::IoTSiteWise::Asset.AssetHierarchy" @@ -100499,13 +100674,18 @@ var SamSchema = `{ "ChildAssetId": { "type": "string" }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, "LogicalId": { "type": "string" } }, "required": [ - "ChildAssetId", - "LogicalId" + "ChildAssetId" ], "type": "object" }, @@ -100515,6 +100695,12 @@ var SamSchema = `{ "Alias": { "type": "string" }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, "LogicalId": { "type": "string" }, @@ -100525,9 +100711,6 @@ var SamSchema = `{ "type": "string" } }, - "required": [ - "LogicalId" - ], "type": "object" }, "AWS::IoTSiteWise::AssetModel": { @@ -100574,6 +100757,9 @@ var SamSchema = `{ "AssetModelDescription": { "type": "string" }, + "AssetModelExternalId": { + "type": "string" + }, "AssetModelHierarchies": { "items": { "$ref": "#/definitions/AWS::IoTSiteWise::AssetModel.AssetModelHierarchy" @@ -100589,6 +100775,9 @@ var SamSchema = `{ }, "type": "array" }, + "AssetModelType": { + "type": "string" + }, "Tags": { "items": { "$ref": "#/definitions/Tag" @@ -100625,6 +100814,9 @@ var SamSchema = `{ "AWS::IoTSiteWise::AssetModel.AssetModelCompositeModel": { "additionalProperties": false, "properties": { + "ComposedAssetModelId": { + "type": "string" + }, "CompositeModelProperties": { "items": { "$ref": "#/definitions/AWS::IoTSiteWise::AssetModel.AssetModelProperty" @@ -100634,9 +100826,24 @@ var SamSchema = `{ "Description": { "type": "string" }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, "Name": { "type": "string" }, + "ParentAssetModelCompositeModelExternalId": { + "type": "string" + }, + "Path": { + "items": { + "type": "string" + }, + "type": "array" + }, "Type": { "type": "string" } @@ -100653,6 +100860,12 @@ var SamSchema = `{ "ChildAssetModelId": { "type": "string" }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, "LogicalId": { "type": "string" }, @@ -100662,7 +100875,6 @@ var SamSchema = `{ }, "required": [ "ChildAssetModelId", - "LogicalId", "Name" ], "type": "object" @@ -100676,6 +100888,12 @@ var SamSchema = `{ "DataTypeSpec": { "type": "string" }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, "LogicalId": { "type": "string" }, @@ -100691,7 +100909,6 @@ var SamSchema = `{ }, "required": [ "DataType", - "LogicalId", "Name", "Type" ], @@ -100754,6 +100971,18 @@ var SamSchema = `{ }, "type": "object" }, + "AWS::IoTSiteWise::AssetModel.PropertyPathDefinition": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, "AWS::IoTSiteWise::AssetModel.PropertyType": { "additionalProperties": false, "properties": { @@ -100812,16 +101041,31 @@ var SamSchema = `{ "AWS::IoTSiteWise::AssetModel.VariableValue": { "additionalProperties": false, "properties": { + "HierarchyExternalId": { + "type": "string" + }, + "HierarchyId": { + "type": "string" + }, "HierarchyLogicalId": { "type": "string" }, + "PropertyExternalId": { + "type": "string" + }, + "PropertyId": { + "type": "string" + }, "PropertyLogicalId": { "type": "string" + }, + "PropertyPath": { + "items": { + "$ref": "#/definitions/AWS::IoTSiteWise::AssetModel.PropertyPathDefinition" + }, + "type": "array" } }, - "required": [ - "PropertyLogicalId" - ], "type": "object" }, "AWS::IoTSiteWise::Dashboard": { @@ -210651,6 +210895,9 @@ var SamSchema = `{ "Headers": { "$ref": "#/definitions/AWS::WAFv2::RuleGroup.Headers" }, + "JA3Fingerprint": { + "$ref": "#/definitions/AWS::WAFv2::RuleGroup.JA3Fingerprint" + }, "JsonBody": { "$ref": "#/definitions/AWS::WAFv2::RuleGroup.JsonBody" }, @@ -210791,6 +211038,18 @@ var SamSchema = `{ ], "type": "object" }, + "AWS::WAFv2::RuleGroup.JA3Fingerprint": { + "additionalProperties": false, + "properties": { + "FallbackBehavior": { + "type": "string" + } + }, + "required": [ + "FallbackBehavior" + ], + "type": "object" + }, "AWS::WAFv2::RuleGroup.JsonBody": { "additionalProperties": false, "properties": { @@ -210904,6 +211163,9 @@ var SamSchema = `{ }, "type": "array" }, + "EvaluationWindowSec": { + "type": "number" + }, "ForwardedIPConfig": { "$ref": "#/definitions/AWS::WAFv2::RuleGroup.ForwardedIPConfiguration" }, @@ -211799,6 +212061,9 @@ var SamSchema = `{ "Headers": { "$ref": "#/definitions/AWS::WAFv2::WebACL.Headers" }, + "JA3Fingerprint": { + "$ref": "#/definitions/AWS::WAFv2::WebACL.JA3Fingerprint" + }, "JsonBody": { "$ref": "#/definitions/AWS::WAFv2::WebACL.JsonBody" }, @@ -211939,6 +212204,18 @@ var SamSchema = `{ ], "type": "object" }, + "AWS::WAFv2::WebACL.JA3Fingerprint": { + "additionalProperties": false, + "properties": { + "FallbackBehavior": { + "type": "string" + } + }, + "required": [ + "FallbackBehavior" + ], + "type": "object" + }, "AWS::WAFv2::WebACL.JsonBody": { "additionalProperties": false, "properties": { @@ -212122,6 +212399,9 @@ var SamSchema = `{ }, "type": "array" }, + "EvaluationWindowSec": { + "type": "number" + }, "ForwardedIPConfig": { "$ref": "#/definitions/AWS::WAFv2::WebACL.ForwardedIPConfiguration" }, diff --git a/schema/sam.schema.json b/schema/sam.schema.json index a7bba917ec..d79e1b2099 100644 --- a/schema/sam.schema.json +++ b/schema/sam.schema.json @@ -21398,6 +21398,9 @@ "ContainerProperties": { "$ref": "#/definitions/AWS::Batch::JobDefinition.ContainerProperties" }, + "EcsProperties": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.EcsProperties" + }, "EksProperties": { "$ref": "#/definitions/AWS::Batch::JobDefinition.EksProperties" }, @@ -21590,6 +21593,63 @@ }, "type": "object" }, + "AWS::Batch::JobDefinition.EcsProperties": { + "additionalProperties": false, + "properties": { + "TaskProperties": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.EcsTaskProperties" + }, + "type": "array" + } + }, + "required": [ + "TaskProperties" + ], + "type": "object" + }, + "AWS::Batch::JobDefinition.EcsTaskProperties": { + "additionalProperties": false, + "properties": { + "Containers": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.TaskContainerProperties" + }, + "type": "array" + }, + "EphemeralStorage": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.EphemeralStorage" + }, + "ExecutionRoleArn": { + "type": "string" + }, + "IpcMode": { + "type": "string" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.NetworkConfiguration" + }, + "PidMode": { + "type": "string" + }, + "PlatformVersion": { + "type": "string" + }, + "RuntimePlatform": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.RuntimePlatform" + }, + "TaskRoleArn": { + "type": "string" + }, + "Volumes": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.Volumes" + }, + "type": "array" + } + }, + "type": "object" + }, "AWS::Batch::JobDefinition.EfsVolumeConfiguration": { "additionalProperties": false, "properties": { @@ -21958,6 +22018,15 @@ "Container": { "$ref": "#/definitions/AWS::Batch::JobDefinition.ContainerProperties" }, + "EcsProperties": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.EcsProperties" + }, + "InstanceTypes": { + "items": { + "type": "string" + }, + "type": "array" + }, "TargetNodes": { "type": "string" } @@ -21982,12 +22051,21 @@ "HostNetwork": { "type": "boolean" }, + "InitContainers": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.EksContainer" + }, + "type": "array" + }, "Metadata": { "$ref": "#/definitions/AWS::Batch::JobDefinition.Metadata" }, "ServiceAccountName": { "type": "string" }, + "ShareProcessNamespace": { + "type": "boolean" + }, "Volumes": { "items": { "$ref": "#/definitions/AWS::Batch::JobDefinition.EksVolume" @@ -22064,6 +22142,100 @@ ], "type": "object" }, + "AWS::Batch::JobDefinition.TaskContainerDependency": { + "additionalProperties": false, + "properties": { + "Condition": { + "type": "string" + }, + "ContainerName": { + "type": "string" + } + }, + "required": [ + "Condition", + "ContainerName" + ], + "type": "object" + }, + "AWS::Batch::JobDefinition.TaskContainerProperties": { + "additionalProperties": false, + "properties": { + "Command": { + "items": { + "type": "string" + }, + "type": "array" + }, + "DependsOn": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.TaskContainerDependency" + }, + "type": "array" + }, + "Environment": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.Environment" + }, + "type": "array" + }, + "Essential": { + "type": "boolean" + }, + "Image": { + "type": "string" + }, + "LinuxParameters": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.LinuxParameters" + }, + "LogConfiguration": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.LogConfiguration" + }, + "MountPoints": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.MountPoints" + }, + "type": "array" + }, + "Name": { + "type": "string" + }, + "Privileged": { + "type": "boolean" + }, + "ReadonlyRootFilesystem": { + "type": "boolean" + }, + "RepositoryCredentials": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.RepositoryCredentials" + }, + "ResourceRequirements": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.ResourceRequirement" + }, + "type": "array" + }, + "Secrets": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.Secret" + }, + "type": "array" + }, + "Ulimits": { + "items": { + "$ref": "#/definitions/AWS::Batch::JobDefinition.Ulimit" + }, + "type": "array" + }, + "User": { + "type": "string" + } + }, + "required": [ + "Image" + ], + "type": "object" + }, "AWS::Batch::JobDefinition.Timeout": { "additionalProperties": false, "properties": { @@ -100436,6 +100608,9 @@ "AssetDescription": { "type": "string" }, + "AssetExternalId": { + "type": "string" + }, "AssetHierarchies": { "items": { "$ref": "#/definitions/AWS::IoTSiteWise::Asset.AssetHierarchy" @@ -100494,13 +100669,18 @@ "ChildAssetId": { "type": "string" }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, "LogicalId": { "type": "string" } }, "required": [ - "ChildAssetId", - "LogicalId" + "ChildAssetId" ], "type": "object" }, @@ -100510,6 +100690,12 @@ "Alias": { "type": "string" }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, "LogicalId": { "type": "string" }, @@ -100520,9 +100706,6 @@ "type": "string" } }, - "required": [ - "LogicalId" - ], "type": "object" }, "AWS::IoTSiteWise::AssetModel": { @@ -100569,6 +100752,9 @@ "AssetModelDescription": { "type": "string" }, + "AssetModelExternalId": { + "type": "string" + }, "AssetModelHierarchies": { "items": { "$ref": "#/definitions/AWS::IoTSiteWise::AssetModel.AssetModelHierarchy" @@ -100584,6 +100770,9 @@ }, "type": "array" }, + "AssetModelType": { + "type": "string" + }, "Tags": { "items": { "$ref": "#/definitions/Tag" @@ -100620,6 +100809,9 @@ "AWS::IoTSiteWise::AssetModel.AssetModelCompositeModel": { "additionalProperties": false, "properties": { + "ComposedAssetModelId": { + "type": "string" + }, "CompositeModelProperties": { "items": { "$ref": "#/definitions/AWS::IoTSiteWise::AssetModel.AssetModelProperty" @@ -100629,9 +100821,24 @@ "Description": { "type": "string" }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, "Name": { "type": "string" }, + "ParentAssetModelCompositeModelExternalId": { + "type": "string" + }, + "Path": { + "items": { + "type": "string" + }, + "type": "array" + }, "Type": { "type": "string" } @@ -100648,6 +100855,12 @@ "ChildAssetModelId": { "type": "string" }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, "LogicalId": { "type": "string" }, @@ -100657,7 +100870,6 @@ }, "required": [ "ChildAssetModelId", - "LogicalId", "Name" ], "type": "object" @@ -100671,6 +100883,12 @@ "DataTypeSpec": { "type": "string" }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, "LogicalId": { "type": "string" }, @@ -100686,7 +100904,6 @@ }, "required": [ "DataType", - "LogicalId", "Name", "Type" ], @@ -100749,6 +100966,18 @@ }, "type": "object" }, + "AWS::IoTSiteWise::AssetModel.PropertyPathDefinition": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, "AWS::IoTSiteWise::AssetModel.PropertyType": { "additionalProperties": false, "properties": { @@ -100807,16 +101036,31 @@ "AWS::IoTSiteWise::AssetModel.VariableValue": { "additionalProperties": false, "properties": { + "HierarchyExternalId": { + "type": "string" + }, + "HierarchyId": { + "type": "string" + }, "HierarchyLogicalId": { "type": "string" }, + "PropertyExternalId": { + "type": "string" + }, + "PropertyId": { + "type": "string" + }, "PropertyLogicalId": { "type": "string" + }, + "PropertyPath": { + "items": { + "$ref": "#/definitions/AWS::IoTSiteWise::AssetModel.PropertyPathDefinition" + }, + "type": "array" } }, - "required": [ - "PropertyLogicalId" - ], "type": "object" }, "AWS::IoTSiteWise::Dashboard": { @@ -210646,6 +210890,9 @@ "Headers": { "$ref": "#/definitions/AWS::WAFv2::RuleGroup.Headers" }, + "JA3Fingerprint": { + "$ref": "#/definitions/AWS::WAFv2::RuleGroup.JA3Fingerprint" + }, "JsonBody": { "$ref": "#/definitions/AWS::WAFv2::RuleGroup.JsonBody" }, @@ -210786,6 +211033,18 @@ ], "type": "object" }, + "AWS::WAFv2::RuleGroup.JA3Fingerprint": { + "additionalProperties": false, + "properties": { + "FallbackBehavior": { + "type": "string" + } + }, + "required": [ + "FallbackBehavior" + ], + "type": "object" + }, "AWS::WAFv2::RuleGroup.JsonBody": { "additionalProperties": false, "properties": { @@ -210899,6 +211158,9 @@ }, "type": "array" }, + "EvaluationWindowSec": { + "type": "number" + }, "ForwardedIPConfig": { "$ref": "#/definitions/AWS::WAFv2::RuleGroup.ForwardedIPConfiguration" }, @@ -211794,6 +212056,9 @@ "Headers": { "$ref": "#/definitions/AWS::WAFv2::WebACL.Headers" }, + "JA3Fingerprint": { + "$ref": "#/definitions/AWS::WAFv2::WebACL.JA3Fingerprint" + }, "JsonBody": { "$ref": "#/definitions/AWS::WAFv2::WebACL.JsonBody" }, @@ -211934,6 +212199,18 @@ ], "type": "object" }, + "AWS::WAFv2::WebACL.JA3Fingerprint": { + "additionalProperties": false, + "properties": { + "FallbackBehavior": { + "type": "string" + } + }, + "required": [ + "FallbackBehavior" + ], + "type": "object" + }, "AWS::WAFv2::WebACL.JsonBody": { "additionalProperties": false, "properties": { @@ -212117,6 +212394,9 @@ }, "type": "array" }, + "EvaluationWindowSec": { + "type": "number" + }, "ForwardedIPConfig": { "$ref": "#/definitions/AWS::WAFv2::WebACL.ForwardedIPConfiguration" },