From a2a093db5de335128f8a949342476b1d7dfbcd81 Mon Sep 17 00:00:00 2001 From: Satyaki Ghosh Date: Mon, 13 Jul 2026 16:52:37 -0400 Subject: [PATCH 1/2] Sync resource schemas --- .gitattributes | 68 ++ .../generated/data/getatt_additions.json | 1 - .../generated/data/getatt_attributes.json | 64 +- .../data/iam_action_resource_patterns.json | 106 ++- .../generated/data/known_resource_types.json | 4 + .../generated/data/primary_identifiers.json | 9 + .../generated/data/region_resource_types.json | 157 +++-- .../generated/data/schema_metadata.json | 363 ++++++++++- .../schema-validator/compiled_schemas.json | 604 ++++++++++++++++-- .../schema-validator/extensions.json | 26 +- .../generated/schema-validator/ref_types.json | 37 ++ src/resources/expected/all_templates.json | 19 +- 12 files changed, 1341 insertions(+), 117 deletions(-) create mode 100644 .gitattributes diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..6bfec77 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,68 @@ +* text=auto eol=lf + +################################################################################ +# The following files are binary and should be left untouched. +# Git should not attempt to normalize line endings or generate text diffs. +################################################################################ + +# Archives +*.zip binary +*.gz binary +*.tar binary +*.rar binary +*.7z binary +*.vsix binary + +# Compiled Code / Packages +*.jar binary +*.war binary +*.ear binary +*.class binary +*.dll binary +*.exe binary +*.so binary +*.a binary +*.node binary +*.wasm binary + +# Documents +*.pdf binary +*.doc binary +*.docx binary +*.xls binary +*.xlsx binary +*.ppt binary +*.pptx binary +*.odt binary + +# Images +*.png binary +*.jpg binary +*.jpeg binary +*.gif binary +*.bmp binary +*.ico binary +*.tif binary +*.tiff binary +*.webp binary + +# Audio & Video +*.mp3 binary +*.mp4 binary +*.mkv binary +*.wav binary +*.ogg binary +*.mov binary + +# Other +*.keystore binary +*.jks binary +*.db binary +*.sqlite binary + +# Windows batch files must always use CRLF, or they may fail to execute. +*.bat text eol=crlf +*.cmd text eol=crlf + +# PowerShell can handle LF, but CRLF is safer for Windows-specific scripts +*.ps1 text eol=crlf diff --git a/src/data-source/generated/data/getatt_additions.json b/src/data-source/generated/data/getatt_additions.json index ad68c78..4bf331c 100644 --- a/src/data-source/generated/data/getatt_additions.json +++ b/src/data-source/generated/data/getatt_additions.json @@ -621,7 +621,6 @@ "AWS::ImageBuilder::ImageRecipe": [ "AdditionalInstanceConfiguration.SystemsManagerAgent.UninstallAfterBuild", "AdditionalInstanceConfiguration.UserDataOverride", - "AmiWatermarks", "BlockDeviceMappings", "Components", "Description", diff --git a/src/data-source/generated/data/getatt_attributes.json b/src/data-source/generated/data/getatt_attributes.json index f8c4879..a6c53b9 100644 --- a/src/data-source/generated/data/getatt_attributes.json +++ b/src/data-source/generated/data/getatt_attributes.json @@ -1766,6 +1766,9 @@ "AWS::Config::ConfigurationRecorder": [ "Id" ], + "AWS::Config::ConformancePack": [ + "ConformancePackArn" + ], "AWS::Config::Connector": [ "Arn", "CreatedTime", @@ -1807,6 +1810,10 @@ "FlowContentSha256", "Version" ], + "AWS::Connect::DataLakeAssociation": [ + "ResourceShareArn", + "ResourceShareId" + ], "AWS::Connect::DataTable": [ "Arn", "CreatedTime", @@ -2992,6 +2999,14 @@ "Status", "TransitGatewayAttachmentId" ], + "AWS::EC2::TransitGatewayPolicyTable": [ + "CreationTime", + "State", + "TransitGatewayPolicyTableId" + ], + "AWS::EC2::TransitGatewayPolicyTableAssociation": [ + "State" + ], "AWS::EC2::TransitGatewayRouteTable": [ "TransitGatewayRouteTableId" ], @@ -4308,7 +4323,6 @@ "AWS::ImageBuilder::ImageRecipe": [ "AdditionalInstanceConfiguration.SystemsManagerAgent.UninstallAfterBuild", "AdditionalInstanceConfiguration.UserDataOverride", - "AmiWatermarks", "Arn", "BlockDeviceMappings", "Components", @@ -7943,11 +7957,26 @@ "ServiceEnabled", "UpdatedAt" ], + "AWS::SecurityHub::Connector": [ + "ConnectorArn", + "ConnectorId", + "ConnectorStatus", + "CreatedAt", + "CreatedBy", + "EnablementStatus", + "Issues", + "LastCheckedAt", + "LastUpdatedAt", + "Message" + ], "AWS::SecurityHub::ConnectorV2": [ "ConnectorArn", "ConnectorId", "ConnectorStatus", "CreatedAt", + "EnablementStatus", + "EnablementStatusReason", + "Issues", "LastCheckedAt", "LastUpdatedAt", "Message" @@ -11815,10 +11844,12 @@ "RoleARN": "string" }, "AWS::Config::ConformancePack": { + "ConformancePackArn": "string", "ConformancePackInputParameters": "array", "ConformancePackName": "string", "DeliveryS3Bucket": "string", "DeliveryS3KeyPrefix": "string", + "Tags": "array", "TemplateBody": "string", "TemplateS3Uri": "string", "TemplateSSMDocumentDetails": "object" @@ -11926,6 +11957,13 @@ "FlowContentSha256": "string", "Version": "integer" }, + "AWS::Connect::DataLakeAssociation": { + "DataSetId": "string", + "InstanceId": "string", + "ResourceShareArn": "string", + "ResourceShareId": "string", + "TargetAccountId": "string" + }, "AWS::Connect::DataTable": { "Arn": "string", "InstanceArn": "string", @@ -14315,6 +14353,18 @@ "TransitGatewayAttachmentId": "string", "TransitGatewayId": "string" }, + "AWS::EC2::TransitGatewayPolicyTable": { + "CreationTime": "string", + "State": "string", + "Tags": "array", + "TransitGatewayId": "string", + "TransitGatewayPolicyTableId": "string" + }, + "AWS::EC2::TransitGatewayPolicyTableAssociation": { + "State": "string", + "TransitGatewayAttachmentId": "string", + "TransitGatewayPolicyTableId": "string" + }, "AWS::EC2::TransitGatewayRoute": { "Blackhole": "boolean", "DestinationCidrBlock": "string", @@ -22659,11 +22709,23 @@ "ServiceEnabled": "boolean", "UpdatedAt": "string" }, + "AWS::SecurityHub::Connector": { + "ConnectorArn": "string", + "ConnectorId": "string", + "CreatedBy": "string", + "Description": "string", + "Issues": "array", + "Message": "string", + "Name": "string" + }, "AWS::SecurityHub::ConnectorV2": { "ConnectorArn": "string", "ConnectorId": "string", "ConnectorStatus": "string", "Description": "string", + "EnablementStatus": "string", + "EnablementStatusReason": "string", + "Issues": "array", "KmsKeyArn": "string", "Message": "string", "Name": "string" diff --git a/src/data-source/generated/data/iam_action_resource_patterns.json b/src/data-source/generated/data/iam_action_resource_patterns.json index 7c4f51f..6ada651 100644 --- a/src/data-source/generated/data/iam_action_resource_patterns.json +++ b/src/data-source/generated/data/iam_action_resource_patterns.json @@ -45498,15 +45498,30 @@ "signin:authorizeoauth2access": [ "arn:${Partition}:signin:::console/.*", "arn:${Partition}:signin:${Region}:${Account}:oauth2/public-client/localhost", - "arn:${Partition}:signin:${Region}:${Account}:oauth2/public-client/remote" + "arn:${Partition}:signin:${Region}:${Account}:oauth2/public-client/remote", + "arn:${Partition}:signin:${Region}:${Account}:service-principal/.*" ], "signin:createaccount": [ "arn:${Partition}:signin:::console/.*" ], + "signin:createoauth2publicclient": [ + "arn:${Partition}:signin:${Region}::external-client/dcr/*" + ], "signin:createoauth2token": [ "arn:${Partition}:signin:::console/.*", "arn:${Partition}:signin:${Region}:${Account}:oauth2/public-client/localhost", - "arn:${Partition}:signin:${Region}:${Account}:oauth2/public-client/remote" + "arn:${Partition}:signin:${Region}:${Account}:oauth2/public-client/remote", + "arn:${Partition}:signin:${Region}:${Account}:service-principal/.*" + ], + "signin:introspectoauth2token": [ + "arn:${Partition}:signin:${Region}:${Account}:oauth2/public-client/localhost", + "arn:${Partition}:signin:${Region}:${Account}:oauth2/public-client/remote", + "arn:${Partition}:signin:${Region}:${Account}:service-principal/.*" + ], + "signin:revokeoauth2token": [ + "arn:${Partition}:signin:${Region}:${Account}:oauth2/public-client/localhost", + "arn:${Partition}:signin:${Region}:${Account}:oauth2/public-client/remote", + "arn:${Partition}:signin:${Region}:${Account}:service-principal/.*" ], "simspaceweaver:createsnapshot": [ "arn:${Partition}:simspaceweaver:${Region}:${Account}:simulation/.*" @@ -47508,6 +47523,24 @@ "sts:tagsession": [ "arn:${Partition}:iam::${Account}:role/.*" ], + "supportauthz:deletesupportpermit": [ + "arn:${Partition}:supportauthz:${Region}:${Account}:supportpermit/.*" + ], + "supportauthz:getsupportpermit": [ + "arn:${Partition}:supportauthz:${Region}:${Account}:supportpermit/.*" + ], + "supportauthz:listtagsforresource": [ + "arn:${Partition}:supportauthz:${Region}:${Account}:supportpermit/.*" + ], + "supportauthz:rejectsupportpermitrequest": [ + "arn:${Partition}:supportauthz:${Region}:${Account}:supportpermitrequest/.*" + ], + "supportauthz:tagresource": [ + "arn:${Partition}:supportauthz:${Region}:${Account}:supportpermit/.*" + ], + "supportauthz:untagresource": [ + "arn:${Partition}:supportauthz:${Region}:${Account}:supportpermit/.*" + ], "swf:canceltimer": [ "arn:${Partition}:swf::${Account}:/domain/.*" ], @@ -49535,6 +49568,12 @@ "wellarchitected:associateprofiles": [ "arn:${Partition}:wellarchitected:${Region}:${Account}:workload/.*" ], + "wellarchitected:createagentcontext": [ + "arn:${Partition}:wellarchitected:${Region}:${Account}:agent-profile/.*" + ], + "wellarchitected:createagentgoal": [ + "arn:${Partition}:wellarchitected:${Region}:${Account}:agent-profile/.*" + ], "wellarchitected:createlensshare": [ "arn:${Partition}:wellarchitected:${Region}:${Account}:lens/.*" ], @@ -49553,6 +49592,15 @@ "wellarchitected:createworkloadshare": [ "arn:${Partition}:wellarchitected:${Region}:${Account}:workload/.*" ], + "wellarchitected:deleteagentcontext": [ + "arn:${Partition}:wellarchitected:${Region}:${Account}:agent-profile/.*" + ], + "wellarchitected:deleteagentgoal": [ + "arn:${Partition}:wellarchitected:${Region}:${Account}:agent-profile/.*" + ], + "wellarchitected:deleteagentprofile": [ + "arn:${Partition}:wellarchitected:${Region}:${Account}:agent-profile/.*" + ], "wellarchitected:deletelens": [ "arn:${Partition}:wellarchitected:${Region}:${Account}:lens/.*" ], @@ -49586,6 +49634,21 @@ "wellarchitected:exportlens": [ "arn:${Partition}:wellarchitected:${Region}:${Account}:lens/.*" ], + "wellarchitected:getagentcontext": [ + "arn:${Partition}:wellarchitected:${Region}:${Account}:agent-profile/.*" + ], + "wellarchitected:getagentgoal": [ + "arn:${Partition}:wellarchitected:${Region}:${Account}:agent-profile/.*" + ], + "wellarchitected:getagentprofile": [ + "arn:${Partition}:wellarchitected:${Region}:${Account}:agent-profile/.*" + ], + "wellarchitected:getagentrecommendation": [ + "arn:${Partition}:wellarchitected:${Region}:${Account}:agent-recommendation/.*" + ], + "wellarchitected:getagentrecommendationgeneration": [ + "arn:${Partition}:wellarchitected:${Region}:${Account}:agent-profile/.*" + ], "wellarchitected:getanswer": [ "arn:${Partition}:wellarchitected:${Region}:${Account}:workload/.*" ], @@ -49619,6 +49682,21 @@ "wellarchitected:getworkload": [ "arn:${Partition}:wellarchitected:${Region}:${Account}:workload/.*" ], + "wellarchitected:listagentcontexts": [ + "arn:${Partition}:wellarchitected:${Region}:${Account}:agent-profile/.*" + ], + "wellarchitected:listagentgoals": [ + "arn:${Partition}:wellarchitected:${Region}:${Account}:agent-profile/.*" + ], + "wellarchitected:listagentrecommendationgenerations": [ + "arn:${Partition}:wellarchitected:${Region}:${Account}:agent-profile/.*" + ], + "wellarchitected:listagentrecommendationitems": [ + "arn:${Partition}:wellarchitected:${Region}:${Account}:agent-recommendation/.*" + ], + "wellarchitected:listagentrecommendations": [ + "arn:${Partition}:wellarchitected:${Region}:${Account}:agent-profile/.*" + ], "wellarchitected:listanswers": [ "arn:${Partition}:wellarchitected:${Region}:${Account}:workload/.*" ], @@ -49647,6 +49725,8 @@ "arn:${Partition}:wellarchitected:${Region}:${Account}:review-template/.*" ], "wellarchitected:listtagsforresource": [ + "arn:${Partition}:wellarchitected:${Region}:${Account}:agent-profile/.*", + "arn:${Partition}:wellarchitected:${Region}:${Account}:agent-recommendation/.*", "arn:${Partition}:wellarchitected:${Region}:${Account}:lens/.*", "arn:${Partition}:wellarchitected:${Region}:${Account}:profile/.*", "arn:${Partition}:wellarchitected:${Region}:${Account}:review-template/.*", @@ -49658,18 +49738,40 @@ "wellarchitected:listworkloadshares": [ "arn:${Partition}:wellarchitected:${Region}:${Account}:workload/.*" ], + "wellarchitected:putagentrecommendationfeedback": [ + "arn:${Partition}:wellarchitected:${Region}:${Account}:agent-recommendation/.*" + ], + "wellarchitected:startagentrecommendationgeneration": [ + "arn:${Partition}:wellarchitected:${Region}:${Account}:agent-profile/.*" + ], "wellarchitected:tagresource": [ + "arn:${Partition}:wellarchitected:${Region}:${Account}:agent-profile/.*", + "arn:${Partition}:wellarchitected:${Region}:${Account}:agent-recommendation/.*", "arn:${Partition}:wellarchitected:${Region}:${Account}:lens/.*", "arn:${Partition}:wellarchitected:${Region}:${Account}:profile/.*", "arn:${Partition}:wellarchitected:${Region}:${Account}:review-template/.*", "arn:${Partition}:wellarchitected:${Region}:${Account}:workload/.*" ], "wellarchitected:untagresource": [ + "arn:${Partition}:wellarchitected:${Region}:${Account}:agent-profile/.*", + "arn:${Partition}:wellarchitected:${Region}:${Account}:agent-recommendation/.*", "arn:${Partition}:wellarchitected:${Region}:${Account}:lens/.*", "arn:${Partition}:wellarchitected:${Region}:${Account}:profile/.*", "arn:${Partition}:wellarchitected:${Region}:${Account}:review-template/.*", "arn:${Partition}:wellarchitected:${Region}:${Account}:workload/.*" ], + "wellarchitected:updateagentcontext": [ + "arn:${Partition}:wellarchitected:${Region}:${Account}:agent-profile/.*" + ], + "wellarchitected:updateagentgoal": [ + "arn:${Partition}:wellarchitected:${Region}:${Account}:agent-profile/.*" + ], + "wellarchitected:updateagentprofile": [ + "arn:${Partition}:wellarchitected:${Region}:${Account}:agent-profile/.*" + ], + "wellarchitected:updateagentrecommendationstatus": [ + "arn:${Partition}:wellarchitected:${Region}:${Account}:agent-recommendation/.*" + ], "wellarchitected:updateanswer": [ "arn:${Partition}:wellarchitected:${Region}:${Account}:workload/.*" ], diff --git a/src/data-source/generated/data/known_resource_types.json b/src/data-source/generated/data/known_resource_types.json index 249a2bd..f3a16ec 100644 --- a/src/data-source/generated/data/known_resource_types.json +++ b/src/data-source/generated/data/known_resource_types.json @@ -362,6 +362,7 @@ "AWS::Connect::ContactFlowModuleAlias", "AWS::Connect::ContactFlowModuleVersion", "AWS::Connect::ContactFlowVersion", + "AWS::Connect::DataLakeAssociation", "AWS::Connect::DataTable", "AWS::Connect::DataTableAttribute", "AWS::Connect::DataTableRecord", @@ -591,6 +592,8 @@ "AWS::EC2::TransitGatewayMulticastGroupMember", "AWS::EC2::TransitGatewayMulticastGroupSource", "AWS::EC2::TransitGatewayPeeringAttachment", + "AWS::EC2::TransitGatewayPolicyTable", + "AWS::EC2::TransitGatewayPolicyTableAssociation", "AWS::EC2::TransitGatewayRoute", "AWS::EC2::TransitGatewayRouteTable", "AWS::EC2::TransitGatewayRouteTableAssociation", @@ -1507,6 +1510,7 @@ "AWS::SecurityHub::AutomationRule", "AWS::SecurityHub::AutomationRuleV2", "AWS::SecurityHub::ConfigurationPolicy", + "AWS::SecurityHub::Connector", "AWS::SecurityHub::ConnectorV2", "AWS::SecurityHub::DelegatedAdmin", "AWS::SecurityHub::FindingAggregator", diff --git a/src/data-source/generated/data/primary_identifiers.json b/src/data-source/generated/data/primary_identifiers.json index 295218d..de008a8 100644 --- a/src/data-source/generated/data/primary_identifiers.json +++ b/src/data-source/generated/data/primary_identifiers.json @@ -295,6 +295,11 @@ "InstanceId", "Origin" ], + "AWS::Connect::DataLakeAssociation": [ + "InstanceId", + "DataSetId", + "TargetAccountId" + ], "AWS::Connect::IntegrationAssociation": [ "InstanceId", "IntegrationType", @@ -448,6 +453,10 @@ "GroupIpAddress", "NetworkInterfaceId" ], + "AWS::EC2::TransitGatewayPolicyTableAssociation": [ + "TransitGatewayPolicyTableId", + "TransitGatewayAttachmentId" + ], "AWS::EC2::TransitGatewayRoute": [ "TransitGatewayRouteTableId", "DestinationCidrBlock" diff --git a/src/data-source/generated/data/region_resource_types.json b/src/data-source/generated/data/region_resource_types.json index 2b49997..d276a42 100644 --- a/src/data-source/generated/data/region_resource_types.json +++ b/src/data-source/generated/data/region_resource_types.json @@ -409,6 +409,8 @@ "AWS::EC2::TransitGatewayMulticastGroupMember": true, "AWS::EC2::TransitGatewayMulticastGroupSource": true, "AWS::EC2::TransitGatewayPeeringAttachment": true, + "AWS::EC2::TransitGatewayPolicyTable": true, + "AWS::EC2::TransitGatewayPolicyTableAssociation": true, "AWS::EC2::TransitGatewayRoute": true, "AWS::EC2::TransitGatewayRouteTable": true, "AWS::EC2::TransitGatewayRouteTableAssociation": true, @@ -933,6 +935,7 @@ "AWS::SecretsManager::SecretTargetAttachment": true, "AWS::SecurityHub::AutomationRule": true, "AWS::SecurityHub::AutomationRuleV2": true, + "AWS::SecurityHub::Connector": true, "AWS::SecurityHub::ConnectorV2": true, "AWS::SecurityHub::DelegatedAdmin": true, "AWS::SecurityHub::Hub": true, @@ -1421,6 +1424,7 @@ "AWS::EC2::TransitGatewayMulticastGroupMember": true, "AWS::EC2::TransitGatewayMulticastGroupSource": true, "AWS::EC2::TransitGatewayPeeringAttachment": true, + "AWS::EC2::TransitGatewayPolicyTable": true, "AWS::EC2::TransitGatewayRoute": true, "AWS::EC2::TransitGatewayRouteTable": true, "AWS::EC2::TransitGatewayRouteTableAssociation": true, @@ -1936,6 +1940,7 @@ "AWS::SecretsManager::SecretTargetAttachment": true, "AWS::SecurityHub::AutomationRule": true, "AWS::SecurityHub::AutomationRuleV2": true, + "AWS::SecurityHub::Connector": true, "AWS::SecurityHub::ConnectorV2": true, "AWS::SecurityHub::DelegatedAdmin": true, "AWS::SecurityHub::Hub": true, @@ -2712,6 +2717,7 @@ "AWS::SecretsManager::Secret": true, "AWS::SecretsManager::SecretTargetAttachment": true, "AWS::SecurityHub::AutomationRule": true, + "AWS::SecurityHub::Connector": true, "AWS::SecurityHub::DelegatedAdmin": true, "AWS::SecurityHub::Hub": true, "AWS::SecurityHub::Insight": true, @@ -3312,6 +3318,7 @@ "AWS::EC2::TransitGatewayMulticastGroupMember": true, "AWS::EC2::TransitGatewayMulticastGroupSource": true, "AWS::EC2::TransitGatewayPeeringAttachment": true, + "AWS::EC2::TransitGatewayPolicyTable": true, "AWS::EC2::TransitGatewayRoute": true, "AWS::EC2::TransitGatewayRouteTable": true, "AWS::EC2::TransitGatewayRouteTableAssociation": true, @@ -4137,6 +4144,7 @@ "AWS::SecurityHub::AutomationRule": true, "AWS::SecurityHub::AutomationRuleV2": true, "AWS::SecurityHub::ConfigurationPolicy": true, + "AWS::SecurityHub::Connector": true, "AWS::SecurityHub::ConnectorV2": true, "AWS::SecurityHub::DelegatedAdmin": true, "AWS::SecurityHub::FindingAggregator": true, @@ -4602,6 +4610,7 @@ "AWS::Connect::ContactFlowModule": true, "AWS::Connect::ContactFlowModuleAlias": true, "AWS::Connect::ContactFlowModuleVersion": true, + "AWS::Connect::DataLakeAssociation": true, "AWS::Connect::DataTable": true, "AWS::Connect::DataTableAttribute": true, "AWS::Connect::DataTableRecord": true, @@ -4812,6 +4821,7 @@ "AWS::EC2::TransitGatewayMulticastGroupMember": true, "AWS::EC2::TransitGatewayMulticastGroupSource": true, "AWS::EC2::TransitGatewayPeeringAttachment": true, + "AWS::EC2::TransitGatewayPolicyTable": true, "AWS::EC2::TransitGatewayRoute": true, "AWS::EC2::TransitGatewayRouteTable": true, "AWS::EC2::TransitGatewayRouteTableAssociation": true, @@ -5303,13 +5313,6 @@ "AWS::OpenSearchServerless::VpcEndpoint": true, "AWS::OpenSearchService::Application": true, "AWS::OpenSearchService::Domain": true, - "AWS::OpsWorks::App": true, - "AWS::OpsWorks::ElasticLoadBalancerAttachment": true, - "AWS::OpsWorks::Instance": true, - "AWS::OpsWorks::Layer": true, - "AWS::OpsWorks::Stack": true, - "AWS::OpsWorks::UserProfile": true, - "AWS::OpsWorks::Volume": true, "AWS::Organizations::Account": true, "AWS::Organizations::Organization": true, "AWS::Organizations::OrganizationalUnit": true, @@ -5576,6 +5579,7 @@ "AWS::SecurityHub::AutomationRule": true, "AWS::SecurityHub::AutomationRuleV2": true, "AWS::SecurityHub::ConfigurationPolicy": true, + "AWS::SecurityHub::Connector": true, "AWS::SecurityHub::ConnectorV2": true, "AWS::SecurityHub::DelegatedAdmin": true, "AWS::SecurityHub::FindingAggregator": true, @@ -6668,6 +6672,7 @@ "AWS::SecurityHub::AutomationRule": true, "AWS::SecurityHub::AutomationRuleV2": true, "AWS::SecurityHub::ConfigurationPolicy": true, + "AWS::SecurityHub::Connector": true, "AWS::SecurityHub::ConnectorV2": true, "AWS::SecurityHub::DelegatedAdmin": true, "AWS::SecurityHub::FindingAggregator": true, @@ -7296,6 +7301,7 @@ "AWS::EC2::TransitGatewayMulticastGroupMember": true, "AWS::EC2::TransitGatewayMulticastGroupSource": true, "AWS::EC2::TransitGatewayPeeringAttachment": true, + "AWS::EC2::TransitGatewayPolicyTable": true, "AWS::EC2::TransitGatewayRoute": true, "AWS::EC2::TransitGatewayRouteTable": true, "AWS::EC2::TransitGatewayRouteTableAssociation": true, @@ -8079,6 +8085,7 @@ "AWS::SecurityHub::AutomationRule": true, "AWS::SecurityHub::AutomationRuleV2": true, "AWS::SecurityHub::ConfigurationPolicy": true, + "AWS::SecurityHub::Connector": true, "AWS::SecurityHub::ConnectorV2": true, "AWS::SecurityHub::DelegatedAdmin": true, "AWS::SecurityHub::FindingAggregator": true, @@ -8746,6 +8753,7 @@ "AWS::Logs::MetricFilter": true, "AWS::Logs::QueryDefinition": true, "AWS::Logs::ResourcePolicy": true, + "AWS::Logs::ScheduledQuery": true, "AWS::Logs::SubscriptionFilter": true, "AWS::Logs::Transformer": true, "AWS::MSK::BatchScramSecret": true, @@ -9016,6 +9024,7 @@ "AWS::SecretsManager::SecretTargetAttachment": true, "AWS::SecurityHub::AutomationRule": true, "AWS::SecurityHub::AutomationRuleV2": true, + "AWS::SecurityHub::Connector": true, "AWS::SecurityHub::ConnectorV2": true, "AWS::SecurityHub::DelegatedAdmin": true, "AWS::SecurityHub::Hub": true, @@ -9438,6 +9447,7 @@ "AWS::Connect::ContactFlowModule": true, "AWS::Connect::ContactFlowModuleAlias": true, "AWS::Connect::ContactFlowModuleVersion": true, + "AWS::Connect::DataLakeAssociation": true, "AWS::Connect::DataTable": true, "AWS::Connect::DataTableAttribute": true, "AWS::Connect::DataTableRecord": true, @@ -9654,6 +9664,7 @@ "AWS::EC2::TransitGatewayMulticastGroupMember": true, "AWS::EC2::TransitGatewayMulticastGroupSource": true, "AWS::EC2::TransitGatewayPeeringAttachment": true, + "AWS::EC2::TransitGatewayPolicyTable": true, "AWS::EC2::TransitGatewayRoute": true, "AWS::EC2::TransitGatewayRouteTable": true, "AWS::EC2::TransitGatewayRouteTableAssociation": true, @@ -10160,13 +10171,6 @@ "AWS::OpenSearchServerless::VpcEndpoint": true, "AWS::OpenSearchService::Application": true, "AWS::OpenSearchService::Domain": true, - "AWS::OpsWorks::App": true, - "AWS::OpsWorks::ElasticLoadBalancerAttachment": true, - "AWS::OpsWorks::Instance": true, - "AWS::OpsWorks::Layer": true, - "AWS::OpsWorks::Stack": true, - "AWS::OpsWorks::UserProfile": true, - "AWS::OpsWorks::Volume": true, "AWS::Organizations::Account": true, "AWS::Organizations::Organization": true, "AWS::Organizations::OrganizationalUnit": true, @@ -10457,6 +10461,7 @@ "AWS::SecurityHub::AutomationRule": true, "AWS::SecurityHub::AutomationRuleV2": true, "AWS::SecurityHub::ConfigurationPolicy": true, + "AWS::SecurityHub::Connector": true, "AWS::SecurityHub::ConnectorV2": true, "AWS::SecurityHub::DelegatedAdmin": true, "AWS::SecurityHub::FindingAggregator": true, @@ -11253,6 +11258,7 @@ "AWS::ElasticLoadBalancingV2::TrustStoreRevocation": true, "AWS::Elasticsearch::Domain": true, "AWS::ElementalInference::Dictionary": true, + "AWS::ElementalInference::Feed": true, "AWS::EntityResolution::IdMappingWorkflow": true, "AWS::EntityResolution::IdNamespace": true, "AWS::EntityResolution::MatchingWorkflow": true, @@ -11975,6 +11981,7 @@ "AWS::SecurityHub::AutomationRule": true, "AWS::SecurityHub::AutomationRuleV2": true, "AWS::SecurityHub::ConfigurationPolicy": true, + "AWS::SecurityHub::Connector": true, "AWS::SecurityHub::ConnectorV2": true, "AWS::SecurityHub::DelegatedAdmin": true, "AWS::SecurityHub::FindingAggregator": true, @@ -12459,6 +12466,7 @@ "AWS::EC2::TransitGatewayMulticastGroupMember": true, "AWS::EC2::TransitGatewayMulticastGroupSource": true, "AWS::EC2::TransitGatewayPeeringAttachment": true, + "AWS::EC2::TransitGatewayPolicyTable": true, "AWS::EC2::TransitGatewayRoute": true, "AWS::EC2::TransitGatewayRouteTable": true, "AWS::EC2::TransitGatewayRouteTableAssociation": true, @@ -12960,6 +12968,7 @@ "AWS::SecretsManager::SecretTargetAttachment": true, "AWS::SecurityHub::AutomationRule": true, "AWS::SecurityHub::AutomationRuleV2": true, + "AWS::SecurityHub::Connector": true, "AWS::SecurityHub::ConnectorV2": true, "AWS::SecurityHub::DelegatedAdmin": true, "AWS::SecurityHub::Hub": true, @@ -13374,6 +13383,7 @@ "AWS::EC2::TransitGatewayMulticastGroupMember": true, "AWS::EC2::TransitGatewayMulticastGroupSource": true, "AWS::EC2::TransitGatewayPeeringAttachment": true, + "AWS::EC2::TransitGatewayPolicyTable": true, "AWS::EC2::TransitGatewayRoute": true, "AWS::EC2::TransitGatewayRouteTable": true, "AWS::EC2::TransitGatewayRouteTableAssociation": true, @@ -13582,6 +13592,7 @@ "AWS::Logs::MetricFilter": true, "AWS::Logs::QueryDefinition": true, "AWS::Logs::ResourcePolicy": true, + "AWS::Logs::ScheduledQuery": true, "AWS::Logs::SubscriptionFilter": true, "AWS::Logs::Transformer": true, "AWS::MSK::BatchScramSecret": true, @@ -13825,6 +13836,7 @@ "AWS::SecretsManager::SecretTargetAttachment": true, "AWS::SecurityHub::AutomationRule": true, "AWS::SecurityHub::AutomationRuleV2": true, + "AWS::SecurityHub::Connector": true, "AWS::SecurityHub::ConnectorV2": true, "AWS::SecurityHub::DelegatedAdmin": true, "AWS::SecurityHub::Hub": true, @@ -14255,6 +14267,7 @@ "AWS::EC2::TransitGatewayMulticastGroupMember": true, "AWS::EC2::TransitGatewayMulticastGroupSource": true, "AWS::EC2::TransitGatewayPeeringAttachment": true, + "AWS::EC2::TransitGatewayPolicyTable": true, "AWS::EC2::TransitGatewayRoute": true, "AWS::EC2::TransitGatewayRouteTable": true, "AWS::EC2::TransitGatewayRouteTableAssociation": true, @@ -14526,6 +14539,11 @@ "AWS::MediaConnect::FlowVpcInterface": true, "AWS::MediaLive::Multiplex": true, "AWS::MediaLive::Multiplexprogram": true, + "AWS::MediaPackageV2::Channel": true, + "AWS::MediaPackageV2::ChannelGroup": true, + "AWS::MediaPackageV2::ChannelPolicy": true, + "AWS::MediaPackageV2::OriginEndpoint": true, + "AWS::MediaPackageV2::OriginEndpointPolicy": true, "AWS::MediaTailor::Channel": true, "AWS::MediaTailor::ChannelPolicy": true, "AWS::MediaTailor::LiveSource": true, @@ -14754,6 +14772,7 @@ "AWS::SecretsManager::SecretTargetAttachment": true, "AWS::SecurityHub::AutomationRule": true, "AWS::SecurityHub::AutomationRuleV2": true, + "AWS::SecurityHub::Connector": true, "AWS::SecurityHub::ConnectorV2": true, "AWS::SecurityHub::DelegatedAdmin": true, "AWS::SecurityHub::Hub": true, @@ -14817,6 +14836,10 @@ "AWS::ACMPCA::CertificateAuthority": true, "AWS::ACMPCA::CertificateAuthorityActivation": true, "AWS::ACMPCA::Permission": true, + "AWS::APS::AnomalyDetector": true, + "AWS::APS::ResourcePolicy": true, + "AWS::APS::RuleGroupsNamespace": true, + "AWS::APS::Workspace": true, "AWS::ARCRegionSwitch::Plan": true, "AWS::ARCZonalShift::AutoshiftObserverNotificationStatus": true, "AWS::ARCZonalShift::ZonalAutoshiftConfiguration": true, @@ -15079,6 +15102,7 @@ "AWS::EC2::TransitGatewayMulticastGroupMember": true, "AWS::EC2::TransitGatewayMulticastGroupSource": true, "AWS::EC2::TransitGatewayPeeringAttachment": true, + "AWS::EC2::TransitGatewayPolicyTable": true, "AWS::EC2::TransitGatewayRoute": true, "AWS::EC2::TransitGatewayRouteTable": true, "AWS::EC2::TransitGatewayRouteTableAssociation": true, @@ -15458,6 +15482,7 @@ "AWS::SecretsManager::Secret": true, "AWS::SecretsManager::SecretTargetAttachment": true, "AWS::SecurityHub::AutomationRule": true, + "AWS::SecurityHub::Connector": true, "AWS::SecurityHub::DelegatedAdmin": true, "AWS::SecurityHub::Hub": true, "AWS::SecurityHub::Insight": true, @@ -15850,6 +15875,7 @@ "AWS::EC2::TransitGatewayMulticastGroupMember": true, "AWS::EC2::TransitGatewayMulticastGroupSource": true, "AWS::EC2::TransitGatewayPeeringAttachment": true, + "AWS::EC2::TransitGatewayPolicyTable": true, "AWS::EC2::TransitGatewayRoute": true, "AWS::EC2::TransitGatewayRouteTable": true, "AWS::EC2::TransitGatewayRouteTableAssociation": true, @@ -16250,6 +16276,7 @@ "AWS::SecretsManager::SecretTargetAttachment": true, "AWS::SecurityHub::AutomationRule": true, "AWS::SecurityHub::AutomationRuleV2": true, + "AWS::SecurityHub::Connector": true, "AWS::SecurityHub::ConnectorV2": true, "AWS::SecurityHub::DelegatedAdmin": true, "AWS::SecurityHub::Hub": true, @@ -17545,6 +17572,7 @@ "AWS::SecurityHub::AutomationRule": true, "AWS::SecurityHub::AutomationRuleV2": true, "AWS::SecurityHub::ConfigurationPolicy": true, + "AWS::SecurityHub::Connector": true, "AWS::SecurityHub::ConnectorV2": true, "AWS::SecurityHub::DelegatedAdmin": true, "AWS::SecurityHub::FindingAggregator": true, @@ -18011,6 +18039,7 @@ "AWS::EC2::TransitGatewayMulticastGroupMember": true, "AWS::EC2::TransitGatewayMulticastGroupSource": true, "AWS::EC2::TransitGatewayPeeringAttachment": true, + "AWS::EC2::TransitGatewayPolicyTable": true, "AWS::EC2::TransitGatewayRoute": true, "AWS::EC2::TransitGatewayRouteTable": true, "AWS::EC2::TransitGatewayRouteTableAssociation": true, @@ -18449,6 +18478,7 @@ "AWS::SecretsManager::SecretTargetAttachment": true, "AWS::SecurityHub::AutomationRule": true, "AWS::SecurityHub::AutomationRuleV2": true, + "AWS::SecurityHub::Connector": true, "AWS::SecurityHub::ConnectorV2": true, "AWS::SecurityHub::DelegatedAdmin": true, "AWS::SecurityHub::Hub": true, @@ -19107,13 +19137,6 @@ "AWS::Oam::Link": true, "AWS::Oam::Sink": true, "AWS::OpenSearchService::Domain": true, - "AWS::OpsWorks::App": true, - "AWS::OpsWorks::ElasticLoadBalancerAttachment": true, - "AWS::OpsWorks::Instance": true, - "AWS::OpsWorks::Layer": true, - "AWS::OpsWorks::Stack": true, - "AWS::OpsWorks::UserProfile": true, - "AWS::OpsWorks::Volume": true, "AWS::Organizations::Account": true, "AWS::Organizations::Organization": true, "AWS::Organizations::OrganizationalUnit": true, @@ -20288,7 +20311,6 @@ "AWS::BedrockAgentCore::ResourcePolicy": true, "AWS::BedrockAgentCore::Runtime": true, "AWS::BedrockAgentCore::RuntimeEndpoint": true, - "AWS::BedrockAgentCore::TokenVault": true, "AWS::BedrockAgentCore::WorkloadIdentity": true, "AWS::Budgets::Budget": true, "AWS::Budgets::BudgetsAction": true, @@ -20382,8 +20404,6 @@ "AWS::CodeArtifact::Domain": true, "AWS::CodeArtifact::PackageGroup": true, "AWS::CodeArtifact::Repository": true, - "AWS::CodeBuild::Build": true, - "AWS::CodeBuild::BuildBatch": true, "AWS::CodeBuild::Fleet": true, "AWS::CodeBuild::Project": true, "AWS::CodeBuild::ReportGroup": true, @@ -20442,6 +20462,7 @@ "AWS::Connect::ContactFlowModuleAlias": true, "AWS::Connect::ContactFlowModuleVersion": true, "AWS::Connect::ContactFlowVersion": true, + "AWS::Connect::DataLakeAssociation": true, "AWS::Connect::DataTable": true, "AWS::Connect::DataTableAttribute": true, "AWS::Connect::DataTableRecord": true, @@ -20472,8 +20493,6 @@ "AWS::Connect::Workspace": true, "AWS::ConnectCampaigns::Campaign": true, "AWS::ConnectCampaignsV2::Campaign": true, - "AWS::ControlCatalog::CommonControl": true, - "AWS::ControlCatalog::Control": true, "AWS::ControlTower::EnabledBaseline": true, "AWS::ControlTower::EnabledControl": true, "AWS::ControlTower::LandingZone": true, @@ -20508,7 +20527,6 @@ "AWS::DataBrew::Recipe": true, "AWS::DataBrew::Ruleset": true, "AWS::DataBrew::Schedule": true, - "AWS::DataExchange::EntitledDataSets": true, "AWS::DataPipeline::Pipeline": true, "AWS::DataSync::Agent": true, "AWS::DataSync::LocationAzureBlob": true, @@ -20578,7 +20596,6 @@ "AWS::DocDB::GlobalCluster": true, "AWS::DocDBElastic::Cluster": true, "AWS::DynamoDB::GlobalTable": true, - "AWS::DynamoDB::Stream": true, "AWS::DynamoDB::Table": true, "AWS::EC2::CapacityManagerDataExport": true, "AWS::EC2::CapacityReservation": true, @@ -20665,6 +20682,8 @@ "AWS::EC2::TransitGatewayMulticastGroupMember": true, "AWS::EC2::TransitGatewayMulticastGroupSource": true, "AWS::EC2::TransitGatewayPeeringAttachment": true, + "AWS::EC2::TransitGatewayPolicyTable": true, + "AWS::EC2::TransitGatewayPolicyTableAssociation": true, "AWS::EC2::TransitGatewayRoute": true, "AWS::EC2::TransitGatewayRouteTable": true, "AWS::EC2::TransitGatewayRouteTableAssociation": true, @@ -20829,7 +20848,6 @@ "AWS::Glue::SchemaVersion": true, "AWS::Glue::SchemaVersionMetadata": true, "AWS::Glue::SecurityConfiguration": true, - "AWS::Glue::Session": true, "AWS::Glue::Table": true, "AWS::Glue::TableOptimizer": true, "AWS::Glue::Trigger": true, @@ -20929,7 +20947,6 @@ "AWS::IoT::DomainConfiguration": true, "AWS::IoT::EncryptionConfiguration": true, "AWS::IoT::FleetMetric": true, - "AWS::IoT::Index": true, "AWS::IoT::JobTemplate": true, "AWS::IoT::Logging": true, "AWS::IoT::MitigationAction": true, @@ -21201,13 +21218,6 @@ "AWS::OpenSearchServerless::VpcEndpoint": true, "AWS::OpenSearchService::Application": true, "AWS::OpenSearchService::Domain": true, - "AWS::OpsWorks::App": true, - "AWS::OpsWorks::ElasticLoadBalancerAttachment": true, - "AWS::OpsWorks::Instance": true, - "AWS::OpsWorks::Layer": true, - "AWS::OpsWorks::Stack": true, - "AWS::OpsWorks::UserProfile": true, - "AWS::OpsWorks::Volume": true, "AWS::Organizations::Account": true, "AWS::Organizations::Organization": true, "AWS::Organizations::OrganizationalUnit": true, @@ -21226,7 +21236,6 @@ "AWS::PCS::Queue": true, "AWS::PaymentCryptography::Alias": true, "AWS::PaymentCryptography::Key": true, - "AWS::Personalize::DataDeletionJob": true, "AWS::Personalize::Dataset": true, "AWS::Personalize::DatasetGroup": true, "AWS::Personalize::Schema": true, @@ -21261,8 +21270,6 @@ "AWS::QLDB::Ledger": true, "AWS::QLDB::Stream": true, "AWS::QuickSight::Analysis": true, - "AWS::QuickSight::AssetBundleExportJob": true, - "AWS::QuickSight::AssetBundleImportJob": true, "AWS::QuickSight::CustomPermissions": true, "AWS::QuickSight::Dashboard": true, "AWS::QuickSight::DataSet": true, @@ -21293,7 +21300,6 @@ "AWS::RDS::GlobalCluster": true, "AWS::RDS::Integration": true, "AWS::RDS::OptionGroup": true, - "AWS::RDS::ReservedDBInstance": true, "AWS::RTBFabric::InboundExternalLink": true, "AWS::RTBFabric::Link": true, "AWS::RTBFabric::LinkRoutingRule": true, @@ -21360,7 +21366,6 @@ "AWS::Route53Profiles::Profile": true, "AWS::Route53Profiles::ProfileAssociation": true, "AWS::Route53Profiles::ProfileResourceAssociation": true, - "AWS::Route53Resolver::FirewallConfig": true, "AWS::Route53Resolver::FirewallDomainList": true, "AWS::Route53Resolver::FirewallRuleGroup": true, "AWS::Route53Resolver::FirewallRuleGroupAssociation": true, @@ -21516,6 +21521,7 @@ "AWS::SecurityHub::AutomationRule": true, "AWS::SecurityHub::AutomationRuleV2": true, "AWS::SecurityHub::ConfigurationPolicy": true, + "AWS::SecurityHub::Connector": true, "AWS::SecurityHub::ConnectorV2": true, "AWS::SecurityHub::DelegatedAdmin": true, "AWS::SecurityHub::FindingAggregator": true, @@ -22508,6 +22514,7 @@ "AWS::SecretsManager::SecretTargetAttachment": true, "AWS::SecurityHub::AutomationRule": true, "AWS::SecurityHub::AutomationRuleV2": true, + "AWS::SecurityHub::Connector": true, "AWS::SecurityHub::ConnectorV2": true, "AWS::SecurityHub::DelegatedAdmin": true, "AWS::SecurityHub::Hub": true, @@ -23174,6 +23181,7 @@ "AWS::EC2::TransitGatewayMulticastGroupMember": true, "AWS::EC2::TransitGatewayMulticastGroupSource": true, "AWS::EC2::TransitGatewayPeeringAttachment": true, + "AWS::EC2::TransitGatewayPolicyTable": true, "AWS::EC2::TransitGatewayRoute": true, "AWS::EC2::TransitGatewayRouteTable": true, "AWS::EC2::TransitGatewayRouteTableAssociation": true, @@ -24075,6 +24083,7 @@ "AWS::SecurityHub::AutomationRule": true, "AWS::SecurityHub::AutomationRuleV2": true, "AWS::SecurityHub::ConfigurationPolicy": true, + "AWS::SecurityHub::Connector": true, "AWS::SecurityHub::ConnectorV2": true, "AWS::SecurityHub::DelegatedAdmin": true, "AWS::SecurityHub::FindingAggregator": true, @@ -24674,6 +24683,7 @@ "AWS::EC2::TransitGatewayMulticastGroupMember": true, "AWS::EC2::TransitGatewayMulticastGroupSource": true, "AWS::EC2::TransitGatewayPeeringAttachment": true, + "AWS::EC2::TransitGatewayPolicyTable": true, "AWS::EC2::TransitGatewayRoute": true, "AWS::EC2::TransitGatewayRouteTable": true, "AWS::EC2::TransitGatewayRouteTableAssociation": true, @@ -24976,6 +24986,7 @@ "AWS::Logs::MetricFilter": true, "AWS::Logs::QueryDefinition": true, "AWS::Logs::ResourcePolicy": true, + "AWS::Logs::ScheduledQuery": true, "AWS::Logs::SubscriptionFilter": true, "AWS::Logs::Transformer": true, "AWS::M2::Application": true, @@ -25351,6 +25362,7 @@ "AWS::SecurityHub::AutomationRule": true, "AWS::SecurityHub::AutomationRuleV2": true, "AWS::SecurityHub::ConfigurationPolicy": true, + "AWS::SecurityHub::Connector": true, "AWS::SecurityHub::ConnectorV2": true, "AWS::SecurityHub::DelegatedAdmin": true, "AWS::SecurityHub::FindingAggregator": true, @@ -25614,6 +25626,12 @@ "AWS::Bedrock::PromptVersion": true, "AWS::Bedrock::ResourcePolicy": true, "AWS::BedrockAgentCore::Browser": true, + "AWS::BedrockAgentCore::BrowserCustom": true, + "AWS::BedrockAgentCore::BrowserProfile": true, + "AWS::BedrockAgentCore::CodeInterpreterCustom": true, + "AWS::BedrockAgentCore::Memory": true, + "AWS::BedrockAgentCore::Runtime": true, + "AWS::BedrockAgentCore::RuntimeEndpoint": true, "AWS::BedrockAgentCore::WorkloadIdentity": true, "AWS::CDK::Metadata": true, "AWS::CE::AnomalyMonitor": true, @@ -26393,6 +26411,7 @@ "AWS::SecretsManager::SecretTargetAttachment": true, "AWS::SecurityHub::AutomationRule": true, "AWS::SecurityHub::AutomationRuleV2": true, + "AWS::SecurityHub::Connector": true, "AWS::SecurityHub::ConnectorV2": true, "AWS::SecurityHub::DelegatedAdmin": true, "AWS::SecurityHub::Hub": true, @@ -26642,6 +26661,11 @@ "AWS::Bedrock::PromptVersion": true, "AWS::Bedrock::ResourcePolicy": true, "AWS::BedrockAgentCore::Browser": true, + "AWS::BedrockAgentCore::BrowserCustom": true, + "AWS::BedrockAgentCore::BrowserProfile": true, + "AWS::BedrockAgentCore::CodeInterpreterCustom": true, + "AWS::BedrockAgentCore::Runtime": true, + "AWS::BedrockAgentCore::RuntimeEndpoint": true, "AWS::BedrockAgentCore::WorkloadIdentity": true, "AWS::CDK::Metadata": true, "AWS::CE::AnomalyMonitor": true, @@ -26858,6 +26882,7 @@ "AWS::EC2::TransitGatewayMulticastGroupMember": true, "AWS::EC2::TransitGatewayMulticastGroupSource": true, "AWS::EC2::TransitGatewayPeeringAttachment": true, + "AWS::EC2::TransitGatewayPolicyTable": true, "AWS::EC2::TransitGatewayRoute": true, "AWS::EC2::TransitGatewayRouteTable": true, "AWS::EC2::TransitGatewayRouteTableAssociation": true, @@ -27114,6 +27139,7 @@ "AWS::Logs::MetricFilter": true, "AWS::Logs::QueryDefinition": true, "AWS::Logs::ResourcePolicy": true, + "AWS::Logs::ScheduledQuery": true, "AWS::Logs::SubscriptionFilter": true, "AWS::Logs::Transformer": true, "AWS::M2::Application": true, @@ -27374,6 +27400,7 @@ "AWS::SecretsManager::SecretTargetAttachment": true, "AWS::SecurityHub::AutomationRule": true, "AWS::SecurityHub::AutomationRuleV2": true, + "AWS::SecurityHub::Connector": true, "AWS::SecurityHub::ConnectorV2": true, "AWS::SecurityHub::DelegatedAdmin": true, "AWS::SecurityHub::Hub": true, @@ -27977,6 +28004,7 @@ "AWS::EC2::TransitGatewayMulticastGroupMember": true, "AWS::EC2::TransitGatewayMulticastGroupSource": true, "AWS::EC2::TransitGatewayPeeringAttachment": true, + "AWS::EC2::TransitGatewayPolicyTable": true, "AWS::EC2::TransitGatewayRoute": true, "AWS::EC2::TransitGatewayRouteTable": true, "AWS::EC2::TransitGatewayRouteTableAssociation": true, @@ -28848,6 +28876,7 @@ "AWS::SecurityHub::AutomationRule": true, "AWS::SecurityHub::AutomationRuleV2": true, "AWS::SecurityHub::ConfigurationPolicy": true, + "AWS::SecurityHub::Connector": true, "AWS::SecurityHub::ConnectorV2": true, "AWS::SecurityHub::DelegatedAdmin": true, "AWS::SecurityHub::FindingAggregator": true, @@ -29537,6 +29566,7 @@ "AWS::EC2::TransitGatewayMulticastGroupMember": true, "AWS::EC2::TransitGatewayMulticastGroupSource": true, "AWS::EC2::TransitGatewayPeeringAttachment": true, + "AWS::EC2::TransitGatewayPolicyTable": true, "AWS::EC2::TransitGatewayRoute": true, "AWS::EC2::TransitGatewayRouteTable": true, "AWS::EC2::TransitGatewayRouteTableAssociation": true, @@ -30290,6 +30320,7 @@ "AWS::SecurityHub::AutomationRule": true, "AWS::SecurityHub::AutomationRuleV2": true, "AWS::SecurityHub::ConfigurationPolicy": true, + "AWS::SecurityHub::Connector": true, "AWS::SecurityHub::ConnectorV2": true, "AWS::SecurityHub::DelegatedAdmin": true, "AWS::SecurityHub::FindingAggregator": true, @@ -30905,6 +30936,7 @@ "AWS::EC2::TransitGatewayMulticastGroupMember": true, "AWS::EC2::TransitGatewayMulticastGroupSource": true, "AWS::EC2::TransitGatewayPeeringAttachment": true, + "AWS::EC2::TransitGatewayPolicyTable": true, "AWS::EC2::TransitGatewayRoute": true, "AWS::EC2::TransitGatewayRouteTable": true, "AWS::EC2::TransitGatewayRouteTableAssociation": true, @@ -31551,6 +31583,7 @@ "AWS::SecurityHub::AutomationRule": true, "AWS::SecurityHub::AutomationRuleV2": true, "AWS::SecurityHub::ConfigurationPolicy": true, + "AWS::SecurityHub::Connector": true, "AWS::SecurityHub::ConnectorV2": true, "AWS::SecurityHub::DelegatedAdmin": true, "AWS::SecurityHub::FindingAggregator": true, @@ -32244,6 +32277,7 @@ "AWS::EC2::TransitGatewayMulticastGroupMember": true, "AWS::EC2::TransitGatewayMulticastGroupSource": true, "AWS::EC2::TransitGatewayPeeringAttachment": true, + "AWS::EC2::TransitGatewayPolicyTable": true, "AWS::EC2::TransitGatewayRoute": true, "AWS::EC2::TransitGatewayRouteTable": true, "AWS::EC2::TransitGatewayRouteTableAssociation": true, @@ -33145,6 +33179,7 @@ "AWS::SecurityHub::AutomationRule": true, "AWS::SecurityHub::AutomationRuleV2": true, "AWS::SecurityHub::ConfigurationPolicy": true, + "AWS::SecurityHub::Connector": true, "AWS::SecurityHub::ConnectorV2": true, "AWS::SecurityHub::DelegatedAdmin": true, "AWS::SecurityHub::FindingAggregator": true, @@ -34128,6 +34163,7 @@ "AWS::SecretsManager::SecretTargetAttachment": true, "AWS::SecurityHub::AutomationRule": true, "AWS::SecurityHub::AutomationRuleV2": true, + "AWS::SecurityHub::Connector": true, "AWS::SecurityHub::ConnectorV2": true, "AWS::SecurityHub::DelegatedAdmin": true, "AWS::SecurityHub::Hub": true, @@ -35388,6 +35424,7 @@ "AWS::EC2::TransitGatewayMulticastGroupMember": true, "AWS::EC2::TransitGatewayMulticastGroupSource": true, "AWS::EC2::TransitGatewayPeeringAttachment": true, + "AWS::EC2::TransitGatewayPolicyTable": true, "AWS::EC2::TransitGatewayRoute": true, "AWS::EC2::TransitGatewayRouteTable": true, "AWS::EC2::TransitGatewayRouteTableAssociation": true, @@ -35777,6 +35814,7 @@ "AWS::SecretsManager::SecretTargetAttachment": true, "AWS::SecurityHub::AutomationRule": true, "AWS::SecurityHub::AutomationRuleV2": true, + "AWS::SecurityHub::Connector": true, "AWS::SecurityHub::ConnectorV2": true, "AWS::SecurityHub::DelegatedAdmin": true, "AWS::SecurityHub::Hub": true, @@ -36305,6 +36343,7 @@ "AWS::EC2::TransitGatewayMulticastGroupMember": true, "AWS::EC2::TransitGatewayMulticastGroupSource": true, "AWS::EC2::TransitGatewayPeeringAttachment": true, + "AWS::EC2::TransitGatewayPolicyTable": true, "AWS::EC2::TransitGatewayRoute": true, "AWS::EC2::TransitGatewayRouteTable": true, "AWS::EC2::TransitGatewayRouteTableAssociation": true, @@ -36973,6 +37012,7 @@ "AWS::SecurityHub::AutomationRule": true, "AWS::SecurityHub::AutomationRuleV2": true, "AWS::SecurityHub::ConfigurationPolicy": true, + "AWS::SecurityHub::Connector": true, "AWS::SecurityHub::ConnectorV2": true, "AWS::SecurityHub::DelegatedAdmin": true, "AWS::SecurityHub::FindingAggregator": true, @@ -37665,6 +37705,7 @@ "AWS::EC2::TransitGatewayMulticastGroupMember": true, "AWS::EC2::TransitGatewayMulticastGroupSource": true, "AWS::EC2::TransitGatewayPeeringAttachment": true, + "AWS::EC2::TransitGatewayPolicyTable": true, "AWS::EC2::TransitGatewayRoute": true, "AWS::EC2::TransitGatewayRouteTable": true, "AWS::EC2::TransitGatewayRouteTableAssociation": true, @@ -38566,6 +38607,7 @@ "AWS::SecurityHub::AutomationRule": true, "AWS::SecurityHub::AutomationRuleV2": true, "AWS::SecurityHub::ConfigurationPolicy": true, + "AWS::SecurityHub::Connector": true, "AWS::SecurityHub::ConnectorV2": true, "AWS::SecurityHub::DelegatedAdmin": true, "AWS::SecurityHub::FindingAggregator": true, @@ -39218,6 +39260,7 @@ "AWS::EC2::TransitGatewayMulticastGroupMember": true, "AWS::EC2::TransitGatewayMulticastGroupSource": true, "AWS::EC2::TransitGatewayPeeringAttachment": true, + "AWS::EC2::TransitGatewayPolicyTable": true, "AWS::EC2::TransitGatewayRoute": true, "AWS::EC2::TransitGatewayRouteTable": true, "AWS::EC2::TransitGatewayRouteTableAssociation": true, @@ -39989,6 +40032,7 @@ "AWS::SecurityHub::AutomationRule": true, "AWS::SecurityHub::AutomationRuleV2": true, "AWS::SecurityHub::ConfigurationPolicy": true, + "AWS::SecurityHub::Connector": true, "AWS::SecurityHub::ConnectorV2": true, "AWS::SecurityHub::DelegatedAdmin": true, "AWS::SecurityHub::FindingAggregator": true, @@ -42537,6 +42581,7 @@ "AWS::EC2::TransitGatewayMulticastGroupMember": true, "AWS::EC2::TransitGatewayMulticastGroupSource": true, "AWS::EC2::TransitGatewayPeeringAttachment": true, + "AWS::EC2::TransitGatewayPolicyTable": true, "AWS::EC2::TransitGatewayRoute": true, "AWS::EC2::TransitGatewayRouteTable": true, "AWS::EC2::TransitGatewayRouteTableAssociation": true, @@ -43438,6 +43483,7 @@ "AWS::SecurityHub::AutomationRule": true, "AWS::SecurityHub::AutomationRuleV2": true, "AWS::SecurityHub::ConfigurationPolicy": true, + "AWS::SecurityHub::Connector": true, "AWS::SecurityHub::ConnectorV2": true, "AWS::SecurityHub::DelegatedAdmin": true, "AWS::SecurityHub::FindingAggregator": true, @@ -44164,6 +44210,7 @@ "AWS::EC2::TransitGatewayMulticastGroupMember": true, "AWS::EC2::TransitGatewayMulticastGroupSource": true, "AWS::EC2::TransitGatewayPeeringAttachment": true, + "AWS::EC2::TransitGatewayPolicyTable": true, "AWS::EC2::TransitGatewayRoute": true, "AWS::EC2::TransitGatewayRouteTable": true, "AWS::EC2::TransitGatewayRouteTableAssociation": true, @@ -45065,6 +45112,7 @@ "AWS::SecurityHub::AutomationRule": true, "AWS::SecurityHub::AutomationRuleV2": true, "AWS::SecurityHub::ConfigurationPolicy": true, + "AWS::SecurityHub::Connector": true, "AWS::SecurityHub::ConnectorV2": true, "AWS::SecurityHub::DelegatedAdmin": true, "AWS::SecurityHub::FindingAggregator": true, @@ -45791,6 +45839,7 @@ "AWS::EC2::TransitGatewayMulticastGroupMember": true, "AWS::EC2::TransitGatewayMulticastGroupSource": true, "AWS::EC2::TransitGatewayPeeringAttachment": true, + "AWS::EC2::TransitGatewayPolicyTable": true, "AWS::EC2::TransitGatewayRoute": true, "AWS::EC2::TransitGatewayRouteTable": true, "AWS::EC2::TransitGatewayRouteTableAssociation": true, @@ -46692,6 +46741,7 @@ "AWS::SecurityHub::AutomationRule": true, "AWS::SecurityHub::AutomationRuleV2": true, "AWS::SecurityHub::ConfigurationPolicy": true, + "AWS::SecurityHub::Connector": true, "AWS::SecurityHub::ConnectorV2": true, "AWS::SecurityHub::DelegatedAdmin": true, "AWS::SecurityHub::FindingAggregator": true, @@ -47418,6 +47468,7 @@ "AWS::EC2::TransitGatewayMulticastGroupMember": true, "AWS::EC2::TransitGatewayMulticastGroupSource": true, "AWS::EC2::TransitGatewayPeeringAttachment": true, + "AWS::EC2::TransitGatewayPolicyTable": true, "AWS::EC2::TransitGatewayRoute": true, "AWS::EC2::TransitGatewayRouteTable": true, "AWS::EC2::TransitGatewayRouteTableAssociation": true, @@ -48319,6 +48370,7 @@ "AWS::SecurityHub::AutomationRule": true, "AWS::SecurityHub::AutomationRuleV2": true, "AWS::SecurityHub::ConfigurationPolicy": true, + "AWS::SecurityHub::Connector": true, "AWS::SecurityHub::ConnectorV2": true, "AWS::SecurityHub::DelegatedAdmin": true, "AWS::SecurityHub::FindingAggregator": true, @@ -49045,6 +49097,7 @@ "AWS::EC2::TransitGatewayMulticastGroupMember": true, "AWS::EC2::TransitGatewayMulticastGroupSource": true, "AWS::EC2::TransitGatewayPeeringAttachment": true, + "AWS::EC2::TransitGatewayPolicyTable": true, "AWS::EC2::TransitGatewayRoute": true, "AWS::EC2::TransitGatewayRouteTable": true, "AWS::EC2::TransitGatewayRouteTableAssociation": true, @@ -49946,6 +49999,7 @@ "AWS::SecurityHub::AutomationRule": true, "AWS::SecurityHub::AutomationRuleV2": true, "AWS::SecurityHub::ConfigurationPolicy": true, + "AWS::SecurityHub::Connector": true, "AWS::SecurityHub::ConnectorV2": true, "AWS::SecurityHub::DelegatedAdmin": true, "AWS::SecurityHub::FindingAggregator": true, @@ -50672,6 +50726,7 @@ "AWS::EC2::TransitGatewayMulticastGroupMember": true, "AWS::EC2::TransitGatewayMulticastGroupSource": true, "AWS::EC2::TransitGatewayPeeringAttachment": true, + "AWS::EC2::TransitGatewayPolicyTable": true, "AWS::EC2::TransitGatewayRoute": true, "AWS::EC2::TransitGatewayRouteTable": true, "AWS::EC2::TransitGatewayRouteTableAssociation": true, @@ -51573,6 +51628,7 @@ "AWS::SecurityHub::AutomationRule": true, "AWS::SecurityHub::AutomationRuleV2": true, "AWS::SecurityHub::ConfigurationPolicy": true, + "AWS::SecurityHub::Connector": true, "AWS::SecurityHub::ConnectorV2": true, "AWS::SecurityHub::DelegatedAdmin": true, "AWS::SecurityHub::FindingAggregator": true, @@ -52117,6 +52173,7 @@ "AWS::EC2::TransitGatewayMulticastGroupMember": true, "AWS::EC2::TransitGatewayMulticastGroupSource": true, "AWS::EC2::TransitGatewayPeeringAttachment": true, + "AWS::EC2::TransitGatewayPolicyTable": true, "AWS::EC2::TransitGatewayRoute": true, "AWS::EC2::TransitGatewayRouteTable": true, "AWS::EC2::TransitGatewayRouteTableAssociation": true, @@ -52515,13 +52572,6 @@ "AWS::OpenSearchServerless::VpcEndpoint": true, "AWS::OpenSearchService::Application": true, "AWS::OpenSearchService::Domain": true, - "AWS::OpsWorks::App": true, - "AWS::OpsWorks::ElasticLoadBalancerAttachment": true, - "AWS::OpsWorks::Instance": true, - "AWS::OpsWorks::Layer": true, - "AWS::OpsWorks::Stack": true, - "AWS::OpsWorks::UserProfile": true, - "AWS::OpsWorks::Volume": true, "AWS::Organizations::Account": true, "AWS::Organizations::Organization": true, "AWS::Organizations::OrganizationalUnit": true, @@ -52742,6 +52792,7 @@ "AWS::SecurityHub::AutomationRule": true, "AWS::SecurityHub::AutomationRuleV2": true, "AWS::SecurityHub::ConfigurationPolicy": true, + "AWS::SecurityHub::Connector": true, "AWS::SecurityHub::ConnectorV2": true, "AWS::SecurityHub::DelegatedAdmin": true, "AWS::SecurityHub::FindingAggregator": true, @@ -53979,13 +54030,6 @@ "AWS::OpenSearchServerless::VpcEndpoint": true, "AWS::OpenSearchService::Application": true, "AWS::OpenSearchService::Domain": true, - "AWS::OpsWorks::App": true, - "AWS::OpsWorks::ElasticLoadBalancerAttachment": true, - "AWS::OpsWorks::Instance": true, - "AWS::OpsWorks::Layer": true, - "AWS::OpsWorks::Stack": true, - "AWS::OpsWorks::UserProfile": true, - "AWS::OpsWorks::Volume": true, "AWS::Organizations::Account": true, "AWS::Organizations::Organization": true, "AWS::Organizations::OrganizationalUnit": true, @@ -54314,6 +54358,7 @@ "AWS::SecurityHub::AutomationRule": true, "AWS::SecurityHub::AutomationRuleV2": true, "AWS::SecurityHub::ConfigurationPolicy": true, + "AWS::SecurityHub::Connector": true, "AWS::SecurityHub::ConnectorV2": true, "AWS::SecurityHub::DelegatedAdmin": true, "AWS::SecurityHub::FindingAggregator": true, diff --git a/src/data-source/generated/data/schema_metadata.json b/src/data-source/generated/data/schema_metadata.json index a1db755..b30a132 100644 --- a/src/data-source/generated/data/schema_metadata.json +++ b/src/data-source/generated/data/schema_metadata.json @@ -74722,10 +74722,12 @@ }, "AWS::Config::ConformancePack": { "properties": [ + "ConformancePackArn", "ConformancePackInputParameters", "ConformancePackName", "DeliveryS3Bucket", "DeliveryS3KeyPrefix", + "Tags", "TemplateBody", "TemplateS3Uri", "TemplateSSMDocumentDetails" @@ -74734,10 +74736,12 @@ "ConformancePackName" ], "property_types": { + "ConformancePackArn": "string", "ConformancePackInputParameters": "array", "ConformancePackName": "string", "DeliveryS3Bucket": "string", "DeliveryS3KeyPrefix": "string", + "Tags": "array", "TemplateBody": "string", "TemplateS3Uri": "string", "TemplateSSMDocumentDetails": "object" @@ -74789,6 +74793,39 @@ "minLength": 0, "maxLength": 1024 }, + "Tags": { + "minItems": 0, + "maxItems": 50, + "uniqueItems": true, + "items": { + "type": "object", + "schema": { + "properties": [ + "Key", + "Value" + ], + "required": [ + "Value", + "Key" + ], + "property_types": { + "Key": "string", + "Value": "string" + }, + "property_enums": {}, + "property_constraints": { + "Key": { + "minLength": 1, + "maxLength": 128 + }, + "Value": { + "minLength": 0, + "maxLength": 256 + } + } + } + } + }, "TemplateBody": { "minLength": 1, "maxLength": 51200 @@ -75835,6 +75872,46 @@ } } }, + "AWS::Connect::DataLakeAssociation": { + "properties": [ + "DataSetId", + "InstanceId", + "ResourceShareArn", + "ResourceShareId", + "TargetAccountId" + ], + "required": [ + "InstanceId", + "DataSetId" + ], + "property_types": { + "DataSetId": "string", + "InstanceId": "string", + "ResourceShareArn": "string", + "ResourceShareId": "string", + "TargetAccountId": "string" + }, + "property_enums": {}, + "property_constraints": { + "DataSetId": { + "minLength": 1, + "maxLength": 255 + }, + "InstanceId": { + "pattern": "^[-a-zA-Z0-9]*$", + "minLength": 1, + "maxLength": 100 + }, + "ResourceShareArn": { + "maxLength": 2048 + }, + "TargetAccountId": { + "pattern": "^\\d+$", + "minLength": 12, + "maxLength": 12 + } + } + }, "AWS::Connect::DataTable": { "properties": [ "Arn", @@ -81126,13 +81203,21 @@ "AfterContactWorkConfig": { "sub_properties": { "properties": [ + "AfterContactWorkMode", "AfterContactWorkTimeLimit" ], "required": [], "property_types": { + "AfterContactWorkMode": "string", "AfterContactWorkTimeLimit": "integer" }, - "property_enums": {}, + "property_enums": { + "AfterContactWorkMode": [ + "ON", + "OFF", + "ON_DEMAND" + ] + }, "property_constraints": { "AfterContactWorkTimeLimit": { "minimum": 0 @@ -81143,13 +81228,21 @@ "AgentFirstCallbackAfterContactWorkConfig": { "sub_properties": { "properties": [ + "AfterContactWorkMode", "AfterContactWorkTimeLimit" ], "required": [], "property_types": { + "AfterContactWorkMode": "string", "AfterContactWorkTimeLimit": "integer" }, - "property_enums": {}, + "property_enums": { + "AfterContactWorkMode": [ + "ON", + "OFF", + "ON_DEMAND" + ] + }, "property_constraints": { "AfterContactWorkTimeLimit": { "minimum": 0 @@ -116921,6 +117014,65 @@ } } }, + "AWS::EC2::TransitGatewayPolicyTable": { + "properties": [ + "CreationTime", + "State", + "Tags", + "TransitGatewayId", + "TransitGatewayPolicyTableId" + ], + "required": [ + "TransitGatewayId" + ], + "property_types": { + "CreationTime": "string", + "State": "string", + "Tags": "array", + "TransitGatewayId": "string", + "TransitGatewayPolicyTableId": "string" + }, + "property_enums": {}, + "property_constraints": { + "Tags": { + "items": { + "type": "object", + "schema": { + "properties": [ + "Key", + "Value" + ], + "required": [ + "Value", + "Key" + ], + "property_types": { + "Key": "string", + "Value": "string" + }, + "property_enums": {} + } + } + } + } + }, + "AWS::EC2::TransitGatewayPolicyTableAssociation": { + "properties": [ + "State", + "TransitGatewayAttachmentId", + "TransitGatewayPolicyTableId" + ], + "required": [ + "TransitGatewayPolicyTableId", + "TransitGatewayAttachmentId" + ], + "property_types": { + "State": "string", + "TransitGatewayAttachmentId": "string", + "TransitGatewayPolicyTableId": "string" + }, + "property_enums": {} + }, "AWS::EC2::TransitGatewayRoute": { "properties": [ "Blackhole", @@ -145701,7 +145853,9 @@ } }, "BuildId": { - "pattern": "^build-\\S+|^arn:.*:build/build-\\S+" + "pattern": "^build-\\S+|^arn:.*:build/build-\\S+", + "minLength": 1, + "maxLength": 512 }, "CertificateConfiguration": { "sub_properties": { @@ -146132,7 +146286,9 @@ } }, "ScriptId": { - "pattern": "^script-\\S+|^arn:.*:script/script-\\S+" + "pattern": "^script-\\S+|^arn:.*:script/script-\\S+", + "minLength": 1, + "maxLength": 512 }, "ServerLaunchParameters": { "pattern": "^[A-Za-z0-9_:.+\\/\\\\\\- =@;{},?'\\[\\]\"]+$", @@ -158246,6 +158402,8 @@ }, "property_enums": { "Name": [ + "AI_ANALYST", + "AI_PROTECTION", "EBS_MALWARE_PROTECTION", "EKS_AUDIT_LOGS", "EKS_RUNTIME_MONITORING", @@ -197529,11 +197687,14 @@ "dotnetcore3.1", "go1.x", "java11", + "java11.al2023", "java17", + "java17.al2023", "java21", "java25", "java8", "java8.al2", + "java8.al2023", "nodejs", "nodejs10.x", "nodejs12.x", @@ -1094666,6 +1094827,165 @@ } } }, + "AWS::SecurityHub::Connector": { + "properties": [ + "ConnectorArn", + "ConnectorId", + "ConnectorStatus", + "CreatedAt", + "CreatedBy", + "Description", + "EnablementStatus", + "Issues", + "LastCheckedAt", + "LastUpdatedAt", + "Message", + "Name", + "Provider", + "Tags" + ], + "required": [ + "Name", + "Provider" + ], + "property_types": { + "ConnectorArn": "string", + "ConnectorId": "string", + "ConnectorStatus": "string", + "CreatedAt": "string", + "CreatedBy": "string", + "Description": "string", + "EnablementStatus": "string", + "Issues": "array", + "LastCheckedAt": "string", + "LastUpdatedAt": "string", + "Message": "string", + "Name": "string", + "Provider": "object", + "Tags": "object" + }, + "property_enums": {}, + "property_constraints": { + "ConnectorArn": { + "pattern": "^arn:aws\\S*:securityhub:[a-z0-9-]+:[0-9]{12}:connector/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$" + }, + "ConnectorId": { + "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$" + }, + "CreatedAt": { + "pattern": "^(\\d\\d\\d\\d)-([0][1-9]|[1][0-2])-([0][1-9]|[1-2](\\d)|[3][0-1])[T](?:([0-1](\\d)|[2][0-3]):[0-5](\\d):[0-5](\\d)|23:59:60)(?:\\.(\\d)+)?([Z]|[+-](\\d\\d)(:?(\\d\\d))?)$" + }, + "Description": { + "pattern": "\\S" + }, + "Issues": { + "items": { + "type": "object", + "schema": { + "properties": [ + "Code", + "Message" + ], + "required": [ + "Code", + "Message" + ], + "property_types": { + "Code": "string", + "Message": "string" + }, + "property_enums": {} + } + } + }, + "LastCheckedAt": { + "pattern": "^(\\d\\d\\d\\d)-([0][1-9]|[1][0-2])-([0][1-9]|[1-2](\\d)|[3][0-1])[T](?:([0-1](\\d)|[2][0-3]):[0-5](\\d):[0-5](\\d)|23:59:60)(?:\\.(\\d)+)?([Z]|[+-](\\d\\d)(:?(\\d\\d))?)$" + }, + "LastUpdatedAt": { + "pattern": "^(\\d\\d\\d\\d)-([0][1-9]|[1][0-2])-([0][1-9]|[1-2](\\d)|[3][0-1])[T](?:([0-1](\\d)|[2][0-3]):[0-5](\\d):[0-5](\\d)|23:59:60)(?:\\.(\\d)+)?([Z]|[+-](\\d\\d)(:?(\\d\\d))?)$" + }, + "Name": { + "pattern": "\\S" + }, + "Provider": { + "sub_properties": { + "properties": [ + "Azure" + ], + "required": [ + "Azure" + ], + "property_types": { + "Azure": "object" + }, + "property_enums": {}, + "property_constraints": { + "Azure": { + "sub_properties": { + "properties": [ + "AWSConfigConnectorArn", + "AzureRegions", + "ScopeConfiguration" + ], + "required": [ + "AWSConfigConnectorArn", + "ScopeConfiguration", + "AzureRegions" + ], + "property_types": { + "AWSConfigConnectorArn": "string", + "AzureRegions": "array", + "ScopeConfiguration": "object" + }, + "property_enums": {}, + "property_constraints": { + "AzureRegions": { + "minItems": 1, + "maxItems": 100, + "uniqueItems": true, + "items": { + "type": "string" + } + }, + "ScopeConfiguration": { + "sub_properties": { + "properties": [ + "ScopeType", + "ScopeValues" + ], + "required": [ + "ScopeType" + ], + "property_types": { + "ScopeType": "string", + "ScopeValues": "array" + }, + "property_enums": { + "ScopeType": [ + "TENANT", + "SUBSCRIPTION" + ] + }, + "property_constraints": { + "ScopeValues": { + "minItems": 0, + "maxItems": 100, + "uniqueItems": true, + "items": { + "type": "string" + } + } + } + } + } + } + } + } + } + } + } + } + }, "AWS::SecurityHub::ConnectorV2": { "properties": [ "ConnectorArn", @@ -1094673,6 +1094993,9 @@ "ConnectorStatus", "CreatedAt", "Description", + "EnablementStatus", + "EnablementStatusReason", + "Issues", "KmsKeyArn", "LastCheckedAt", "LastUpdatedAt", @@ -1094691,6 +1095014,9 @@ "ConnectorStatus": "string", "CreatedAt": "string", "Description": "string", + "EnablementStatus": "string", + "EnablementStatusReason": "string", + "Issues": "array", "KmsKeyArn": "string", "LastCheckedAt": "string", "LastUpdatedAt": "string", @@ -1094699,14 +1095025,7 @@ "Provider": "object", "Tags": "object" }, - "property_enums": { - "ConnectorStatus": [ - "CONNECTED", - "FAILED_TO_CONNECT", - "PENDING_AUTHORIZATION", - "PENDING_CONFIGURATION" - ] - }, + "property_enums": {}, "property_constraints": { "ConnectorArn": { "pattern": "^arn:aws\\S*:securityhub:[a-z0-9-]+:[0-9]{12}:connectorv2/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$" @@ -1094722,6 +1095041,26 @@ "minLength": 0, "maxLength": 256 }, + "Issues": { + "items": { + "type": "object", + "schema": { + "properties": [ + "Code", + "Message" + ], + "required": [ + "Code", + "Message" + ], + "property_types": { + "Code": "string", + "Message": "string" + }, + "property_enums": {} + } + } + }, "KmsKeyArn": { "pattern": ".*\\S.*", "minLength": 20, diff --git a/src/data-source/generated/schema-validator/compiled_schemas.json b/src/data-source/generated/schema-validator/compiled_schemas.json index 616d519..efeec2e 100644 --- a/src/data-source/generated/schema-validator/compiled_schemas.json +++ b/src/data-source/generated/schema-validator/compiled_schemas.json @@ -79901,6 +79901,10 @@ "AWS::Config::ConformancePack": { "type_name": "AWS::Config::ConformancePack", "properties": { + "ConformancePackArn": { + "type": "string", + "description": "Amazon Resource Name (ARN) of the conformance pack." + }, "ConformancePackInputParameters": { "type": "array", "min_items": 0, @@ -79929,6 +79933,16 @@ "max_length": 1024, "description": "The prefix for delivery S3 bucket." }, + "Tags": { + "type": "array", + "min_items": 0, + "max_items": 50, + "unique_items": true, + "description": "The tags for the conformance pack.", + "items": { + "ref_name": "Tag" + } + }, "TemplateBody": { "type": "string", "min_length": 1, @@ -79991,13 +80005,38 @@ "min_length": 0, "max_length": 4096, "description": "Value part of key-value pair with key being parameter Name" + }, + "Tag": { + "type": "object", + "description": "A key-value pair to associate with a resource.", + "properties": { + "Key": { + "type": "string", + "min_length": 1, + "max_length": 128, + "description": "The key name of the tag. You can specify a value that is 1 to 127 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. " + }, + "Value": { + "type": "string", + "min_length": 0, + "max_length": 256, + "description": "The value for the tag. You can specify a value that is 1 to 255 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. " + } + }, + "required": [ + "Value", + "Key" + ], + "additional_properties": false } }, "required": [ "ConformancePackName" ], "additional_properties": false, - "read_only_properties": [], + "read_only_properties": [ + "ConformancePackArn" + ], "write_only_properties": [ "TemplateBody", "TemplateS3Uri", @@ -81169,6 +81208,62 @@ "source_url": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-connect", "description": "Resource Type Definition for ContactFlowVersion" }, + "AWS::Connect::DataLakeAssociation": { + "type_name": "AWS::Connect::DataLakeAssociation", + "properties": { + "DataSetId": { + "type": "string", + "min_length": 1, + "max_length": 255, + "description": "The identifier of the analytics data set." + }, + "InstanceId": { + "type": "string", + "pattern": "^[-a-zA-Z0-9]*$", + "min_length": 1, + "max_length": 100, + "description": "The identifier of the Amazon Connect instance" + }, + "ResourceShareArn": { + "type": "string", + "max_length": 2048, + "description": "The Amazon Resource Name (ARN) of the AWS Resource Access Manager share" + }, + "ResourceShareId": { + "type": "string", + "description": "The AWS Resource Access Manager share ID" + }, + "TargetAccountId": { + "type": "string", + "pattern": "^\\d+$", + "min_length": 12, + "max_length": 12, + "description": "The identifier of the target account" + } + }, + "definitions": {}, + "required": [ + "InstanceId", + "DataSetId" + ], + "additional_properties": false, + "read_only_properties": [ + "ResourceShareId", + "ResourceShareArn" + ], + "create_only_properties": [ + "InstanceId", + "DataSetId", + "TargetAccountId" + ], + "primary_identifier": [ + "InstanceId", + "DataSetId", + "TargetAccountId" + ], + "source_url": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "description": "Resource schema for AWS::Connect::DataLakeAssociation" + }, "AWS::Connect::DataTable": { "type_name": "AWS::Connect::DataTable", "properties": { @@ -81960,7 +82055,8 @@ "description": "An option for a multi-select question in an evaluation form.", "properties": { "AutomaticFail": { - "type": "boolean" + "type": "boolean", + "description": "The flag to mark the option as automatic fail. If an automatic fail answer is provided, the overall evaluation gets a score of 0." }, "AutomaticFailConfiguration": { "ref_name": "AutomaticFailConfiguration" @@ -82166,17 +82262,18 @@ }, "EvaluationFormQuestionScoringConfiguration": { "type": "object", + "description": "Scoring configuration for a question in an evaluation form.", "properties": { "IsExcludedFromScoring": { "type": "boolean", - "description": "Whether the question is excluded from scoring." + "description": "The flag to exclude the question from scoring." }, "PointsConfiguration": { "ref_name": "QuestionPointsConfiguration" }, "ScoreThresholds": { "type": "array", - "description": "The score thresholds for the question.", + "description": "The score thresholds for performance categories.", "items": { "ref_name": "EvaluationFormScoreThreshold" } @@ -82205,18 +82302,19 @@ }, "EvaluationFormScoreThreshold": { "type": "object", + "description": "Information about a score threshold for a performance category.", "properties": { "MaxScorePercentage": { "type": "number", "minimum": 0.0, "maximum": 100.0, - "description": "The maximum score percentage for this threshold." + "description": "The maximum score percentage for the performance category." }, "MinScorePercentage": { "type": "number", "minimum": 0.0, "maximum": 100.0, - "description": "The minimum score percentage for this threshold." + "description": "The minimum score percentage for the performance category." }, "PerformanceCategory": { "type": "string", @@ -82242,7 +82340,8 @@ "description": "The instructions of the section." }, "IsExcludedFromScoring": { - "type": "boolean" + "type": "boolean", + "description": "The flag to exclude the section from scoring." }, "Items": { "type": "array", @@ -82258,6 +82357,7 @@ }, "ScoreThresholds": { "type": "array", + "description": "The score thresholds for performance categories.", "items": { "ref_name": "EvaluationFormScoreThreshold" } @@ -82539,10 +82639,11 @@ }, "QuestionOptionPointsConfiguration": { "type": "object", + "description": "Information about the points configuration for an answer option.", "properties": { "IsBonus": { "type": "boolean", - "description": "Whether this option is a bonus. Note: Bonus options are not supported for multi-select questions. This property should only be set to true for single-select and numeric question options." + "description": "The flag to mark the option as a bonus option." }, "PointValue": { "ref_name": "PointValue" @@ -82555,10 +82656,11 @@ }, "QuestionPointsConfiguration": { "type": "object", + "description": "Information about the points configuration for a question.", "properties": { "IsBonus": { "type": "boolean", - "description": "Whether the question is a bonus question." + "description": "The flag to mark the question as a bonus question." }, "MaxPointValue": { "ref_name": "PointValue" @@ -86338,6 +86440,9 @@ "type": "object", "description": "After Contact Work configuration.", "properties": { + "AfterContactWorkMode": { + "ref_name": "AfterContactWorkMode" + }, "AfterContactWorkTimeLimit": { "ref_name": "AfterContactWorkTimeLimit" } @@ -86364,6 +86469,15 @@ ], "additional_properties": false }, + "AfterContactWorkMode": { + "type": "string", + "enum": [ + "ON", + "OFF", + "ON_DEMAND" + ], + "description": "The after contact work (ACW) mode for the channel." + }, "AfterContactWorkTimeLimit": { "type": "integer", "minimum": 0.0, @@ -108692,7 +108806,10 @@ } }, "McpRoleArn": { - "format": "AWS::IAM::Role.Arn" + "type": "string", + "pattern": "^arn:aws:iam::\\d{12}:role/[a-zA-Z0-9+=,.@_/-]+$", + "format": "AWS::IAM::Role.Arn", + "description": "IAM role ARN to assume for SigV4 signing. Optional - when omitted, credentials are resolved at runtime via a monitor account association." }, "Region": { "type": "string", @@ -108703,7 +108820,7 @@ "type": "string", "pattern": "^arn:aws:iam::\\d{12}:role/[a-zA-Z0-9+=,.@_/-]+$", "format": "AWS::IAM::Role.Arn", - "description": "IAM role ARN to assume for SigV4 signing" + "description": "Deprecated - use McpRoleArn instead. IAM role ARN to assume for SigV4 signing" }, "Service": { "type": "string", @@ -108714,8 +108831,7 @@ }, "required": [ "Region", - "Service", - "RoleArn" + "Service" ], "additional_properties": false }, @@ -109101,7 +109217,9 @@ "description": "The MCP server endpoint URL" }, "McpRoleArn": { - "format": "AWS::IAM::Role.Arn" + "type": "string", + "format": "AWS::IAM::Role.Arn", + "description": "IAM role ARN for SigV4 signing. Absent when no dedicated role is configured." }, "Name": { "type": "string", @@ -109114,7 +109232,7 @@ "RoleArn": { "type": "string", "format": "AWS::IAM::Role.Arn", - "description": "IAM role ARN for SigV4 signing" + "description": "Deprecated - use McpRoleArn instead. IAM role ARN for SigV4 signing" }, "Service": { "type": "string", @@ -126648,6 +126766,102 @@ "source_url": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-myservice", "description": "The AWS::EC2::TransitGatewayPeeringAttachment type" }, + "AWS::EC2::TransitGatewayPolicyTable": { + "type_name": "AWS::EC2::TransitGatewayPolicyTable", + "properties": { + "CreationTime": { + "type": "string", + "description": "Creation time of the transit gateway policy table" + }, + "State": { + "type": "string", + "description": "State of the transit gateway policy table" + }, + "Tags": { + "type": "array", + "items": { + "ref_name": "Tag" + } + }, + "TransitGatewayId": { + "type": "string", + "description": "The Id of transit gateway" + }, + "TransitGatewayPolicyTableId": { + "type": "string", + "description": "The Id of transit gateway policy table." + } + }, + "definitions": { + "Tag": { + "type": "object", + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "additional_properties": false + } + }, + "required": [ + "TransitGatewayId" + ], + "additional_properties": false, + "read_only_properties": [ + "TransitGatewayPolicyTableId", + "State", + "CreationTime" + ], + "create_only_properties": [ + "TransitGatewayId" + ], + "primary_identifier": [ + "TransitGatewayPolicyTableId" + ], + "description": "AWS::EC2::TransitGatewayPolicyTable Resource Definition" + }, + "AWS::EC2::TransitGatewayPolicyTableAssociation": { + "type_name": "AWS::EC2::TransitGatewayPolicyTableAssociation", + "properties": { + "State": { + "type": "string", + "description": "The state of the transit gateway policy table association." + }, + "TransitGatewayAttachmentId": { + "type": "string", + "description": "The ID of transit gateway attachment." + }, + "TransitGatewayPolicyTableId": { + "type": "string", + "description": "The ID of transit gateway policy table." + } + }, + "definitions": {}, + "required": [ + "TransitGatewayPolicyTableId", + "TransitGatewayAttachmentId" + ], + "additional_properties": false, + "read_only_properties": [ + "State" + ], + "create_only_properties": [ + "TransitGatewayAttachmentId", + "TransitGatewayPolicyTableId" + ], + "primary_identifier": [ + "TransitGatewayPolicyTableId", + "TransitGatewayAttachmentId" + ], + "description": "AWS::EC2::TransitGatewayPolicyTableAssociation Resource Definition" + }, "AWS::EC2::TransitGatewayRoute": { "type_name": "AWS::EC2::TransitGatewayRoute", "properties": { @@ -156755,6 +156969,8 @@ "BuildId": { "type": "string", "pattern": "^build-\\S+|^arn:.*:build/build-\\S+", + "min_length": 1, + "max_length": 512, "description": "A unique identifier for a build to be deployed on the new fleet. If you are deploying the fleet with a custom game build, you must specify this property. The build must have been successfully uploaded to Amazon GameLift and be in a READY status. This fleet setting cannot be changed once the fleet is created." }, "CertificateConfiguration": { @@ -156922,6 +157138,8 @@ "ScriptId": { "type": "string", "pattern": "^script-\\S+|^arn:.*:script/script-\\S+", + "min_length": 1, + "max_length": 512, "description": "A unique identifier for a Realtime script to be deployed on a new Realtime Servers fleet. The script must have been successfully uploaded to Amazon GameLift. This fleet setting cannot be changed once the fleet is created.\n\nNote: It is not currently possible to use the !Ref command to reference a script created with a CloudFormation template for the fleet property ScriptId. Instead, use Fn::GetAtt Script.Arn or Fn::GetAtt Script.Id to retrieve either of these properties as input for ScriptId. Alternatively, enter a ScriptId string manually." }, "ServerLaunchParameters": { @@ -168132,6 +168350,8 @@ "Name": { "type": "string", "enum": [ + "AI_ANALYST", + "AI_PROTECTION", "EBS_MALWARE_PROTECTION", "EKS_AUDIT_LOGS", "EKS_RUNTIME_MONITORING", @@ -201840,11 +202060,14 @@ "dotnetcore3.1", "go1.x", "java11", + "java11.al2023", "java17", + "java17.al2023", "java21", "java25", "java8", "java8.al2", + "java8.al2023", "nodejs", "nodejs10.x", "nodejs12.x", @@ -202541,11 +202764,14 @@ "dotnetcore3.1", "go1.x", "java11", + "java11.al2023", "java17", + "java17.al2023", "java21", "java25", "java8", "java8.al2", + "java8.al2023", "nodejs", "nodejs10.x", "nodejs12.x", @@ -330900,7 +331126,7 @@ }, "DeduplicationScope": { "type": "string", - "description": "For high throughput for FIFO queues, specifies whether message deduplication occurs at the message group or queue level. Valid values are ``messageGroup`` and ``queue``.\n To enable high throughput for a FIFO queue, set this attribute to ``messageGroup`` *and* set the ``FifoThroughputLimit`` attribute to ``perMessageGroupId``. If you set these attributes to anything other than these values, normal throughput is in effect and deduplication occurs as specified. For more information, see [High throughput for FIFO queues](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/high-throughput-fifo.html) and [Quotas related to messages](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/quotas-messages.html) in the *Developer Guide*." + "description": "For high throughput for FIFO queues, specifies whether message deduplication occurs at the message group or queue level. Valid values are ``messageGroup`` and ``queue``.\n To enable high throughput for a FIFO queue, set this attribute to ``messageGroup``*and* set the ``FifoThroughputLimit`` attribute to ``perMessageGroupId``. If you set these attributes to anything other than these values, normal throughput is in effect and deduplication occurs as specified. For more information, see [High throughput for FIFO queues](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/high-throughput-fifo.html) and [Quotas related to messages](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/quotas-messages.html) in the *Developer Guide*." }, "DelaySeconds": { "type": "integer", @@ -330910,11 +331136,11 @@ }, "FifoQueue": { "type": "boolean", - "description": "If set to true, creates a FIFO queue. If you don't specify this property, SQS creates a standard queue. For more information, see [FIFO queues](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html) in the *Developer Guide*." + "description": "If set to true, creates a FIFO queue. If you don't specify this property, SQS creates a standard queue. For more information, see [Amazon SQS FIFO queues](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-fifo-queues.html) in the *Developer Guide*." }, "FifoThroughputLimit": { "type": "string", - "description": "For high throughput for FIFO queues, specifies whether the FIFO queue throughput quota applies to the entire queue or per message group. Valid values are ``perQueue`` and ``perMessageGroupId``.\n To enable high throughput for a FIFO queue, set this attribute to ``perMessageGroupId`` *and* set the ``DeduplicationScope`` attribute to ``messageGroup``. If you set these attributes to anything other than these values, normal throughput is in effect and deduplication occurs as specified. For more information, see [High throughput for FIFO queues](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/high-throughput-fifo.html) and [Quotas related to messages](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/quotas-messages.html) in the *Developer Guide*." + "description": "For high throughput for FIFO queues, specifies whether the FIFO queue throughput quota applies to the entire queue or per message group. Valid values are ``perQueue`` and ``perMessageGroupId``.\n To enable high throughput for a FIFO queue, set this attribute to ``perMessageGroupId``*and* set the ``DeduplicationScope`` attribute to ``messageGroup``. If you set these attributes to anything other than these values, normal throughput is in effect and deduplication occurs as specified. For more information, see [High throughput for FIFO queues](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/high-throughput-fifo.html) and [Quotas related to messages](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/quotas-messages.html) in the *Developer Guide*." }, "KmsDataKeyReusePeriodSeconds": { "type": "integer", @@ -330924,7 +331150,7 @@ }, "KmsMasterKeyId": { "type": "string", - "description": "The ID of an AWS Key Management Service (KMS) for SQS, or a custom KMS. To use the AWS managed KMS for SQS, specify a (default) alias ARN, alias name (e.g. ``alias/aws/sqs``), key ARN, or key ID. For more information, see the following:\n + [Encryption at rest](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html) in the *Developer Guide* \n + [CreateQueue](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_CreateQueue.html) in the *API Reference* \n + [Request Parameters](https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestParameters) in the *Key Management Service API Reference* \n + The Key Management Service (KMS) section of the [Best Practices](https://docs.aws.amazon.com/https://d0.awsstatic.com/whitepapers/aws-kms-best-practices.pdf) whitepaper", + "description": "The ID of an AWS Key Management Service (KMS) for SQS, or a custom KMS. To use the AWS managed KMS for SQS, specify a (default) alias ARN, alias name (for example ``alias/aws/sqs``), key ARN, or key ID. For more information, see the following:\n + [Encryption at rest](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html) in the *Developer Guide*\n + [CreateQueue](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_CreateQueue.html) in the *API Reference*\n + [Request Parameters](https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestParameters) in the *Key Management Service API Reference*\n + The Key Management Service (KMS) section of the [Security best practices for Key Management Service](https://docs.aws.amazon.com/kms/latest/developerguide/best-practices.html) in the *Key Management Service Developer Guide*", "any_of": [ {}, {}, @@ -330935,7 +331161,7 @@ "type": "integer", "minimum": 1024.0, "maximum": 1048576.0, - "description": "The limit of how many bytes that a message can contain before SQS rejects it. You can specify an integer value from ``1,024`` bytes (1 KiB) to ``262,144`` bytes (256 KiB). The default value is ``262,144`` (256 KiB)." + "description": "The limit of how many bytes that a message can contain before SQS rejects it. You can specify an integer from 1,024 bytes (1 KiB) to 1,048,576 bytes (1 MiB). Default: 1,048,576 bytes (1 MiB)." }, "MessageRetentionPeriod": { "type": "integer", @@ -330945,7 +331171,7 @@ }, "QueueName": { "type": "string", - "description": "A name for the queue. To create a FIFO queue, the name of your FIFO queue must end with the ``.fifo`` suffix. For more information, see [FIFO queues](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html) in the *Developer Guide*.\n If you don't specify a name, CFN generates a unique physical ID and uses that ID for the queue name. For more information, see [Name type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html) in the *User Guide*. \n If you specify a name, you can't perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name." + "description": "A name for the queue. To create a FIFO queue, the name of your FIFO queue must end with the ``.fifo`` suffix. For more information, see [Amazon SQS FIFO queues](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-fifo-queues.html) in the *Developer Guide*.\n If you don't specify a name, CFN generates a unique physical ID and uses that ID for the queue name. For more information, see [Name type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html) in the *User Guide*. \n If you specify a name, you can't perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name." }, "QueueUrl": { "type": "string" @@ -330968,7 +331194,7 @@ "object", "string" ], - "description": "The string that includes the parameters for the dead-letter queue functionality of the source queue as a JSON object. The parameters are as follows:\n + ``deadLetterTargetArn``: The Amazon Resource Name (ARN) of the dead-letter queue to which SQS moves messages after the value of ``maxReceiveCount`` is exceeded.\n + ``maxReceiveCount``: The number of times a message is delivered to the source queue before being moved to the dead-letter queue. When the ``ReceiveCount`` for a message exceeds the ``maxReceiveCount`` for a queue, SQS moves the message to the dead-letter-queue.\n \n The dead-letter queue of a FIFO queue must also be a FIFO queue. Similarly, the dead-letter queue of a standard queue must also be a standard queue.\n *JSON* \n ``{ \"deadLetterTargetArn\" : String, \"maxReceiveCount\" : Integer }`` \n *YAML* \n ``deadLetterTargetArn : String`` \n ``maxReceiveCount : Integer``", + "description": "The string that includes the parameters for the dead-letter queue functionality of the source queue as a JSON object. The parameters are as follows:\n + ``deadLetterTargetArn``: The Amazon Resource Name (ARN) of the dead-letter queue to which SQS moves messages after the value of ``maxReceiveCount`` is exceeded.\n + ``maxReceiveCount``: The number of times a message is received by a consumer of the source queue before being moved to the dead-letter queue. When the ``ReceiveCount`` for a message exceeds the ``maxReceiveCount`` for a queue, SQS moves the message to the dead-letter-queue.\n \n The dead-letter queue of a FIFO queue must also be a FIFO queue. Similarly, the dead-letter queue of a standard queue must also be a standard queue.\n *JSON* \n ``{ \"deadLetterTargetArn\" : String, \"maxReceiveCount\" : Integer }`` \n *YAML* \n ``deadLetterTargetArn : String`` \n ``maxReceiveCount : Integer``", "properties": { "deadLetterTargetArn": { "type": "string" @@ -331002,12 +331228,10 @@ "type": "object", "properties": { "Key": { - "type": "string", - "description": "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -." + "type": "string" }, "Value": { - "type": "string", - "description": "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -." + "type": "string" } }, "required": [ @@ -331031,7 +331255,7 @@ "QueueUrl" ], "source_url": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sqs.git", - "description": "The ``AWS::SQS::Queue`` resource creates an SQS standard or FIFO queue.\n Keep the following caveats in mind:\n + If you don't specify the ``FifoQueue`` property, SQS creates a standard queue.\n You can't change the queue type after you create it and you can't convert an existing standard queue into a FIFO queue. You must either create a new FIFO queue for your application or delete your existing standard queue and recreate it as a FIFO queue. For more information, see [Moving from a standard queue to a FIFO queue](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-moving.html) in the *Developer Guide*. \n + If you don't provide a value for a property, the queue is created with the default value for the property.\n + If you delete a queue, you must wait at least 60 seconds before creating a queue with the same name.\n + To successfully create a new queue, you must provide a queue name that adheres to the [limits related to queues](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/limits-queues.html) and is unique within the scope of your queues.\n \n For more information about creating FIFO (first-in-first-out) queues, see [Creating an queue ()](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/screate-queue-cloudformation.html) in the *Developer Guide*.", + "description": "The ``AWS::SQS::Queue`` resource creates an SQS standard or FIFO queue.\n Keep the following caveats in mind:\n + If you don't specify the ``FifoQueue`` property, SQS creates a standard queue.\n You can't change the queue type after you create it and you can't convert an existing standard queue into a FIFO queue. You must either create a new FIFO queue for your application or delete your existing standard queue and recreate it as a FIFO queue. For more information, see [Moving from a standard queue to a FIFO queue](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-moving.html) in the *Developer Guide*. \n + If you don't provide a value for a property, the queue is created with the default value for the property.\n + If you delete a queue, you must wait at least 60 seconds before creating a queue with the same name.\n + To successfully create a new queue, you must provide a queue name that adheres to the [limits related to queues](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/limits-queues.html) and is unique within the scope of your queues.\n \n For more information about creating FIFO (first-in-first-out) queues, see [Creating an queue ()](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/create-queue-cloudformation.html) in the *Developer Guide*.", "all_of": [ {}, {} @@ -354541,6 +354765,213 @@ "source_url": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-securityhub", "description": "The AWS::SecurityHub::ConfigurationPolicy resource represents the Central Configuration Policy in your account." }, + "AWS::SecurityHub::Connector": { + "type_name": "AWS::SecurityHub::Connector", + "properties": { + "ConnectorArn": { + "type": "string", + "pattern": "^arn:aws\\S*:securityhub:[a-z0-9-]+:[0-9]{12}:connector/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$", + "description": "The ARN of the connector" + }, + "ConnectorId": { + "type": "string", + "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$", + "description": "The ID of the connector" + }, + "ConnectorStatus": { + "ref_name": "ConnectorStatus" + }, + "CreatedAt": { + "ref_name": "ISO8601DateString" + }, + "CreatedBy": { + "type": "string", + "description": "The principal that created the connector" + }, + "Description": { + "type": "string", + "pattern": "\\S", + "description": "A description of the connector" + }, + "EnablementStatus": { + "ref_name": "EnablementStatus" + }, + "Issues": { + "type": "array", + "description": "The list of health issues associated with the connector", + "items": { + "ref_name": "HealthIssue" + } + }, + "LastCheckedAt": { + "ref_name": "ISO8601DateString" + }, + "LastUpdatedAt": { + "ref_name": "ISO8601DateString" + }, + "Message": { + "type": "string", + "description": "The message associated with the connector status change" + }, + "Name": { + "type": "string", + "pattern": "\\S", + "description": "The name of the connector" + }, + "Provider": { + "ref_name": "Provider" + }, + "Tags": { + "ref_name": "Tags" + } + }, + "definitions": { + "AzureProviderConfiguration": { + "type": "object", + "description": "The configuration settings for an Azure CSPM provider", + "properties": { + "AWSConfigConnectorArn": { + "type": "string", + "description": "The ARN of the AWS Config connector used for the Azure integration" + }, + "AzureRegions": { + "type": "array", + "min_items": 1, + "max_items": 100, + "unique_items": true, + "description": "The list of Azure regions to include in the connector scope", + "items": { + "type": "string" + } + }, + "ScopeConfiguration": { + "ref_name": "AzureScopeConfiguration" + } + }, + "required": [ + "AWSConfigConnectorArn", + "ScopeConfiguration", + "AzureRegions" + ], + "additional_properties": false + }, + "AzureScopeConfiguration": { + "type": "object", + "description": "The scope configuration for an Azure connector", + "properties": { + "ScopeType": { + "type": "string", + "enum": [ + "TENANT", + "SUBSCRIPTION" + ], + "description": "The scope type for the Azure connector" + }, + "ScopeValues": { + "type": "array", + "min_items": 0, + "max_items": 100, + "unique_items": true, + "description": "The list of scope values for the Azure connector", + "items": { + "type": "string" + } + } + }, + "required": [ + "ScopeType" + ], + "additional_properties": false + }, + "ConnectorStatus": { + "type": "string", + "description": "The status of the connector" + }, + "EnablementStatus": { + "type": "string", + "description": "The enablement status of the connector" + }, + "HealthIssue": { + "type": "object", + "description": "A health issue associated with the connector", + "properties": { + "Code": { + "ref_name": "HealthIssueCode" + }, + "Message": { + "type": "string", + "description": "The message describing the health issue" + } + }, + "required": [ + "Code", + "Message" + ], + "additional_properties": false + }, + "HealthIssueCode": { + "type": "string", + "description": "The code identifying the type of health issue" + }, + "ISO8601DateString": { + "type": "string", + "pattern": "^(\\d\\d\\d\\d)-([0][1-9]|[1][0-2])-([0][1-9]|[1-2](\\d)|[3][0-1])[T](?:([0-1](\\d)|[2][0-3]):[0-5](\\d):[0-5](\\d)|23:59:60)(?:\\.(\\d)+)?([Z]|[+-](\\d\\d)(:?(\\d\\d))?)$", + "description": "The timestamp formatted in ISO8601" + }, + "Provider": { + "type": "object", + "description": "The CSPM provider configuration for the connector", + "properties": { + "Azure": { + "ref_name": "AzureProviderConfiguration" + } + }, + "required": [ + "Azure" + ], + "additional_properties": false + }, + "Tags": { + "type": "object", + "description": "A key-value pair to associate with a resource.", + "additional_properties": false, + "pattern_properties": { + "^(?!aws:)[a-zA-Z+-=._:/]{1,128}$": { + "type": "string", + "min_length": 0, + "max_length": 256, + "description": "The value for the tag." + } + } + } + }, + "required": [ + "Name", + "Provider" + ], + "additional_properties": false, + "read_only_properties": [ + "ConnectorArn", + "ConnectorId", + "ConnectorStatus", + "Message", + "LastCheckedAt", + "CreatedAt", + "LastUpdatedAt", + "CreatedBy", + "EnablementStatus", + "Issues" + ], + "create_only_properties": [ + "Name", + "Provider.Azure.AWSConfigConnectorArn" + ], + "primary_identifier": [ + "ConnectorArn" + ], + "source_url": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-securityhub", + "description": "Resource schema for AWS::SecurityHub::Connector" + }, "AWS::SecurityHub::ConnectorV2": { "type_name": "AWS::SecurityHub::ConnectorV2", "properties": { @@ -354556,12 +354987,6 @@ }, "ConnectorStatus": { "type": "string", - "enum": [ - "CONNECTED", - "FAILED_TO_CONNECT", - "PENDING_AUTHORIZATION", - "PENDING_CONFIGURATION" - ], "description": "The status of the connector" }, "CreatedAt": { @@ -354574,6 +354999,21 @@ "max_length": 256, "description": "A description of the connector" }, + "EnablementStatus": { + "type": "string", + "description": "The enablement status of the connector" + }, + "EnablementStatusReason": { + "type": "string", + "description": "The reason for the enablement status of the connector" + }, + "Issues": { + "type": "array", + "description": "The list of health issues associated with the connector", + "items": { + "ref_name": "HealthIssue" + } + }, "KmsKeyArn": { "type": "string", "pattern": ".*\\S.*", @@ -354615,6 +355055,82 @@ ], "description": "The authorization status of the connector" }, + "AzureProviderConfiguration": { + "type": "object", + "description": "The configuration settings required to establish an integration between AWS Security Hub and Azure", + "properties": { + "AWSConfigConnectorArn": { + "type": "string", + "description": "The ARN of the AWS Config connector used for the Azure integration" + }, + "AzureRegions": { + "type": "array", + "min_items": 1, + "max_items": 100, + "unique_items": true, + "description": "The list of Azure regions to include in the connector scope", + "items": { + "type": "string" + } + }, + "ScopeConfiguration": { + "ref_name": "AzureScopeConfiguration" + } + }, + "required": [ + "AWSConfigConnectorArn", + "ScopeConfiguration", + "AzureRegions" + ], + "additional_properties": false + }, + "AzureScopeConfiguration": { + "type": "object", + "description": "The scope configuration for an Azure connector", + "properties": { + "ScopeType": { + "type": "string", + "enum": [ + "TENANT", + "SUBSCRIPTION" + ], + "description": "The scope type for the Azure connector" + }, + "ScopeValues": { + "type": "array", + "min_items": 0, + "max_items": 100, + "unique_items": true, + "description": "The list of scope values for the Azure connector", + "items": { + "type": "string" + } + } + }, + "required": [ + "ScopeType" + ], + "additional_properties": false + }, + "HealthIssue": { + "type": "object", + "description": "A health issue associated with the connector", + "properties": { + "Code": { + "type": "string", + "description": "The code identifying the type of health issue" + }, + "Message": { + "type": "string", + "description": "The message describing the health issue" + } + }, + "required": [ + "Code", + "Message" + ], + "additional_properties": false + }, "ISO8601DateString": { "type": "string", "pattern": "^(\\d\\d\\d\\d)-([0][1-9]|[1][0-2])-([0][1-9]|[1-2](\\d)|[3][0-1])[T](?:([0-1](\\d)|[2][0-3]):[0-5](\\d):[0-5](\\d)|23:59:60)(?:\\.(\\d)+)?([Z]|[+-](\\d\\d)(:?(\\d\\d))?)$", @@ -354661,6 +355177,17 @@ } }, "additional_properties": false + }, + { + "required": [ + "Azure" + ], + "properties": { + "Azure": { + "ref_name": "AzureProviderConfiguration" + } + }, + "additional_properties": false } ] }, @@ -354714,12 +355241,16 @@ "ConnectorStatus", "LastUpdatedAt", "LastCheckedAt", - "CreatedAt" + "CreatedAt", + "EnablementStatus", + "EnablementStatusReason", + "Issues" ], "create_only_properties": [ "Name", "KmsKeyArn", - "Provider.ServiceNow.InstanceName" + "Provider.ServiceNow.InstanceName", + "Provider.Azure.AWSConfigConnectorArn" ], "primary_identifier": [ "ConnectorArn" @@ -370847,7 +371378,8 @@ "value": { "type": "string" } - } + }, + "additional_properties": false } }, "definitions": { diff --git a/src/data-source/generated/schema-validator/extensions.json b/src/data-source/generated/schema-validator/extensions.json index d242d9e..d2de77f 100644 --- a/src/data-source/generated/schema-validator/extensions.json +++ b/src/data-source/generated/schema-validator/extensions.json @@ -2899,6 +2899,7 @@ "8.0.44", "8.0.45", "8.0.46", + "8.4.10", "8.4.3", "8.4.4", "8.4.5", @@ -4717,6 +4718,7 @@ "8.0.44", "8.0.45", "8.0.46", + "8.4.10", "8.4.3", "8.4.4", "8.4.5", @@ -5074,6 +5076,7 @@ "13.00.6475.1.v1", "13.00.6480.4.v1", "13.00.6485.1.v1", + "13.00.6490.1.v1", "14.00.1000.169.v1", "14.00.3015.40.v1", "14.00.3035.2.v1", @@ -5099,6 +5102,7 @@ "14.00.3515.1.v1", "14.00.3520.4.v1", "14.00.3525.1.v1", + "14.00.3530.2.v1", "15.00.4043.16.v1", "15.00.4073.23.v1", "15.00.4153.1.v1", @@ -5126,6 +5130,7 @@ "15.00.4455.2.v1", "15.00.4460.4.v1", "15.00.4465.1.v1", + "15.00.4470.1.v1", "16.00.4085.2.v1", "16.00.4095.4.v1", "16.00.4105.2.v1", @@ -5147,7 +5152,8 @@ "16.00.4230.2.v1", "16.00.4236.2.v1", "16.00.4245.2.v1", - "16.00.4250.1.v1" + "16.00.4250.1.v1", + "16.00.4255.1.v1" ] } } @@ -5218,6 +5224,7 @@ "13.00.6475.1.v1", "13.00.6480.4.v1", "13.00.6485.1.v1", + "13.00.6490.1.v1", "14.00.1000.169.v1", "14.00.3015.40.v1", "14.00.3035.2.v1", @@ -5243,6 +5250,7 @@ "14.00.3515.1.v1", "14.00.3520.4.v1", "14.00.3525.1.v1", + "14.00.3530.2.v1", "15.00.4043.16.v1", "15.00.4073.23.v1", "15.00.4153.1.v1", @@ -5270,6 +5278,7 @@ "15.00.4455.2.v1", "15.00.4460.4.v1", "15.00.4465.1.v1", + "15.00.4470.1.v1", "16.00.4085.2.v1", "16.00.4095.4.v1", "16.00.4105.2.v1", @@ -5291,7 +5300,8 @@ "16.00.4230.2.v1", "16.00.4236.2.v1", "16.00.4245.2.v1", - "16.00.4250.1.v1" + "16.00.4250.1.v1", + "16.00.4255.1.v1" ] } } @@ -5362,6 +5372,7 @@ "13.00.6475.1.v1", "13.00.6480.4.v1", "13.00.6485.1.v1", + "13.00.6490.1.v1", "14.00.1000.169.v1", "14.00.3015.40.v1", "14.00.3035.2.v1", @@ -5387,6 +5398,7 @@ "14.00.3515.1.v1", "14.00.3520.4.v1", "14.00.3525.1.v1", + "14.00.3530.2.v1", "15.00.4043.16.v1", "15.00.4073.23.v1", "15.00.4153.1.v1", @@ -5414,6 +5426,7 @@ "15.00.4455.2.v1", "15.00.4460.4.v1", "15.00.4465.1.v1", + "15.00.4470.1.v1", "16.00.4085.2.v1", "16.00.4095.4.v1", "16.00.4105.2.v1", @@ -5435,7 +5448,8 @@ "16.00.4230.2.v1", "16.00.4236.2.v1", "16.00.4245.2.v1", - "16.00.4250.1.v1" + "16.00.4250.1.v1", + "16.00.4255.1.v1" ] } } @@ -5506,6 +5520,7 @@ "13.00.6475.1.v1", "13.00.6480.4.v1", "13.00.6485.1.v1", + "13.00.6490.1.v1", "14.00.1000.169.v1", "14.00.3015.40.v1", "14.00.3035.2.v1", @@ -5531,6 +5546,7 @@ "14.00.3515.1.v1", "14.00.3520.4.v1", "14.00.3525.1.v1", + "14.00.3530.2.v1", "15.00.4043.16.v1", "15.00.4073.23.v1", "15.00.4153.1.v1", @@ -5558,6 +5574,7 @@ "15.00.4455.2.v1", "15.00.4460.4.v1", "15.00.4465.1.v1", + "15.00.4470.1.v1", "16.00.4085.2.v1", "16.00.4095.4.v1", "16.00.4105.2.v1", @@ -5579,7 +5596,8 @@ "16.00.4230.2.v1", "16.00.4236.2.v1", "16.00.4245.2.v1", - "16.00.4250.1.v1" + "16.00.4250.1.v1", + "16.00.4255.1.v1" ] } } diff --git a/src/data-source/generated/schema-validator/ref_types.json b/src/data-source/generated/schema-validator/ref_types.json index 84e0ba8..4bceff5 100644 --- a/src/data-source/generated/schema-validator/ref_types.json +++ b/src/data-source/generated/schema-validator/ref_types.json @@ -362,6 +362,7 @@ "AWS::Connect::ContactFlowModuleAlias": "string", "AWS::Connect::ContactFlowModuleVersion": "string", "AWS::Connect::ContactFlowVersion": "string", + "AWS::Connect::DataLakeAssociation": "string", "AWS::Connect::DataTable": "string", "AWS::Connect::DataTableAttribute": "string", "AWS::Connect::DataTableRecord": "string", @@ -591,6 +592,8 @@ "AWS::EC2::TransitGatewayMulticastGroupMember": "string", "AWS::EC2::TransitGatewayMulticastGroupSource": "string", "AWS::EC2::TransitGatewayPeeringAttachment": "string", + "AWS::EC2::TransitGatewayPolicyTable": "string", + "AWS::EC2::TransitGatewayPolicyTableAssociation": "string", "AWS::EC2::TransitGatewayRoute": "string", "AWS::EC2::TransitGatewayRouteTable": "string", "AWS::EC2::TransitGatewayRouteTableAssociation": "string", @@ -1507,6 +1510,7 @@ "AWS::SecurityHub::AutomationRule": "string", "AWS::SecurityHub::AutomationRuleV2": "string", "AWS::SecurityHub::ConfigurationPolicy": "string", + "AWS::SecurityHub::Connector": "string", "AWS::SecurityHub::ConnectorV2": "string", "AWS::SecurityHub::DelegatedAdmin": "string", "AWS::SecurityHub::FindingAggregator": "string", @@ -4906,10 +4910,12 @@ "RoleARN": "string" }, "AWS::Config::ConformancePack": { + "ConformancePackArn": "string", "ConformancePackInputParameters": "array", "ConformancePackName": "string", "DeliveryS3Bucket": "string", "DeliveryS3KeyPrefix": "string", + "Tags": "array", "TemplateBody": "string", "TemplateS3Uri": "string", "TemplateSSMDocumentDetails": "object" @@ -5017,6 +5023,13 @@ "FlowContentSha256": "string", "Version": "integer" }, + "AWS::Connect::DataLakeAssociation": { + "DataSetId": "string", + "InstanceId": "string", + "ResourceShareArn": "string", + "ResourceShareId": "string", + "TargetAccountId": "string" + }, "AWS::Connect::DataTable": { "Arn": "string", "InstanceArn": "string", @@ -7406,6 +7419,18 @@ "TransitGatewayAttachmentId": "string", "TransitGatewayId": "string" }, + "AWS::EC2::TransitGatewayPolicyTable": { + "CreationTime": "string", + "State": "string", + "Tags": "array", + "TransitGatewayId": "string", + "TransitGatewayPolicyTableId": "string" + }, + "AWS::EC2::TransitGatewayPolicyTableAssociation": { + "State": "string", + "TransitGatewayAttachmentId": "string", + "TransitGatewayPolicyTableId": "string" + }, "AWS::EC2::TransitGatewayRoute": { "Blackhole": "boolean", "DestinationCidrBlock": "string", @@ -15750,11 +15775,23 @@ "ServiceEnabled": "boolean", "UpdatedAt": "string" }, + "AWS::SecurityHub::Connector": { + "ConnectorArn": "string", + "ConnectorId": "string", + "CreatedBy": "string", + "Description": "string", + "Issues": "array", + "Message": "string", + "Name": "string" + }, "AWS::SecurityHub::ConnectorV2": { "ConnectorArn": "string", "ConnectorId": "string", "ConnectorStatus": "string", "Description": "string", + "EnablementStatus": "string", + "EnablementStatusReason": "string", + "Issues": "array", "KmsKeyArn": "string", "Message": "string", "Name": "string" diff --git a/src/resources/expected/all_templates.json b/src/resources/expected/all_templates.json index 5a7b804..f9490b7 100644 --- a/src/resources/expected/all_templates.json +++ b/src/resources/expected/all_templates.json @@ -107368,7 +107368,7 @@ { "ruleId": "W3030", "severity": "WARN", - "message": "'node99.x' is not one of ['dotnet10', 'dotnet6', 'dotnet8', 'dotnetcore1.0', 'dotnetcore2.0', 'dotnetcore2.1', 'dotnetcore3.1', 'go1.x', 'java11', 'java17', 'java21', 'java25', 'java8', 'java8.al2', 'nodejs', 'nodejs10.x', 'nodejs12.x', 'nodejs14.x', 'nodejs16.x', 'nodejs18.x', 'nodejs20.x', 'nodejs22.x', 'nodejs24.x', 'nodejs4.3', 'nodejs4.3-edge', 'nodejs6.10', 'nodejs8.10', 'provided', 'provided.al2', 'provided.al2023', 'python2.7', 'python3.10', 'python3.11', 'python3.12', 'python3.13', 'python3.14', 'python3.6', 'python3.7', 'python3.8', 'python3.9', 'ruby2.5', 'ruby2.7', 'ruby3.2', 'ruby3.3', 'ruby3.4', 'ruby4.0']", + "message": "'node99.x' is not one of ['dotnet10', 'dotnet6', 'dotnet8', 'dotnetcore1.0', 'dotnetcore2.0', 'dotnetcore2.1', 'dotnetcore3.1', 'go1.x', 'java11', 'java11.al2023', 'java17', 'java17.al2023', 'java21', 'java25', 'java8', 'java8.al2', 'java8.al2023', 'nodejs', 'nodejs10.x', 'nodejs12.x', 'nodejs14.x', 'nodejs16.x', 'nodejs18.x', 'nodejs20.x', 'nodejs22.x', 'nodejs24.x', 'nodejs4.3', 'nodejs4.3-edge', 'nodejs6.10', 'nodejs8.10', 'provided', 'provided.al2', 'provided.al2023', 'python2.7', 'python3.10', 'python3.11', 'python3.12', 'python3.13', 'python3.14', 'python3.6', 'python3.7', 'python3.8', 'python3.9', 'ruby2.5', 'ruby2.7', 'ruby3.2', 'ruby3.3', 'ruby3.4', 'ruby4.0']", "source": "SCHEMA", "resourceId": "MyFunction", "resourceType": "AWS::Lambda::Function", @@ -107394,11 +107394,14 @@ "dotnetcore3.1", "go1.x", "java11", + "java11.al2023", "java17", + "java17.al2023", "java21", "java25", "java8", "java8.al2", + "java8.al2023", "nodejs", "nodejs10.x", "nodejs12.x", @@ -110278,7 +110281,7 @@ { "ruleId": "W3030", "severity": "WARN", - "message": "'nodejs99.x' is not one of ['dotnet10', 'dotnet6', 'dotnet8', 'dotnetcore1.0', 'dotnetcore2.0', 'dotnetcore2.1', 'dotnetcore3.1', 'go1.x', 'java11', 'java17', 'java21', 'java25', 'java8', 'java8.al2', 'nodejs', 'nodejs10.x', 'nodejs12.x', 'nodejs14.x', 'nodejs16.x', 'nodejs18.x', 'nodejs20.x', 'nodejs22.x', 'nodejs24.x', 'nodejs4.3', 'nodejs4.3-edge', 'nodejs6.10', 'nodejs8.10', 'provided', 'provided.al2', 'provided.al2023', 'python2.7', 'python3.10', 'python3.11', 'python3.12', 'python3.13', 'python3.14', 'python3.6', 'python3.7', 'python3.8', 'python3.9', 'ruby2.5', 'ruby2.7', 'ruby3.2', 'ruby3.3', 'ruby3.4', 'ruby4.0']", + "message": "'nodejs99.x' is not one of ['dotnet10', 'dotnet6', 'dotnet8', 'dotnetcore1.0', 'dotnetcore2.0', 'dotnetcore2.1', 'dotnetcore3.1', 'go1.x', 'java11', 'java11.al2023', 'java17', 'java17.al2023', 'java21', 'java25', 'java8', 'java8.al2', 'java8.al2023', 'nodejs', 'nodejs10.x', 'nodejs12.x', 'nodejs14.x', 'nodejs16.x', 'nodejs18.x', 'nodejs20.x', 'nodejs22.x', 'nodejs24.x', 'nodejs4.3', 'nodejs4.3-edge', 'nodejs6.10', 'nodejs8.10', 'provided', 'provided.al2', 'provided.al2023', 'python2.7', 'python3.10', 'python3.11', 'python3.12', 'python3.13', 'python3.14', 'python3.6', 'python3.7', 'python3.8', 'python3.9', 'ruby2.5', 'ruby2.7', 'ruby3.2', 'ruby3.3', 'ruby3.4', 'ruby4.0']", "source": "SCHEMA", "resourceId": "MyFunc", "resourceType": "AWS::Lambda::Function", @@ -110304,11 +110307,14 @@ "dotnetcore3.1", "go1.x", "java11", + "java11.al2023", "java17", + "java17.al2023", "java21", "java25", "java8", "java8.al2", + "java8.al2023", "nodejs", "nodejs10.x", "nodejs12.x", @@ -110348,7 +110354,7 @@ { "ruleId": "W3030", "severity": "WARN", - "message": "'node99.x' is not one of ['dotnet10', 'dotnet6', 'dotnet8', 'dotnetcore1.0', 'dotnetcore2.0', 'dotnetcore2.1', 'dotnetcore3.1', 'go1.x', 'java11', 'java17', 'java21', 'java25', 'java8', 'java8.al2', 'nodejs', 'nodejs10.x', 'nodejs12.x', 'nodejs14.x', 'nodejs16.x', 'nodejs18.x', 'nodejs20.x', 'nodejs22.x', 'nodejs24.x', 'nodejs4.3', 'nodejs4.3-edge', 'nodejs6.10', 'nodejs8.10', 'provided', 'provided.al2', 'provided.al2023', 'python2.7', 'python3.10', 'python3.11', 'python3.12', 'python3.13', 'python3.14', 'python3.6', 'python3.7', 'python3.8', 'python3.9', 'ruby2.5', 'ruby2.7', 'ruby3.2', 'ruby3.3', 'ruby3.4', 'ruby4.0']", + "message": "'node99.x' is not one of ['dotnet10', 'dotnet6', 'dotnet8', 'dotnetcore1.0', 'dotnetcore2.0', 'dotnetcore2.1', 'dotnetcore3.1', 'go1.x', 'java11', 'java11.al2023', 'java17', 'java17.al2023', 'java21', 'java25', 'java8', 'java8.al2', 'java8.al2023', 'nodejs', 'nodejs10.x', 'nodejs12.x', 'nodejs14.x', 'nodejs16.x', 'nodejs18.x', 'nodejs20.x', 'nodejs22.x', 'nodejs24.x', 'nodejs4.3', 'nodejs4.3-edge', 'nodejs6.10', 'nodejs8.10', 'provided', 'provided.al2', 'provided.al2023', 'python2.7', 'python3.10', 'python3.11', 'python3.12', 'python3.13', 'python3.14', 'python3.6', 'python3.7', 'python3.8', 'python3.9', 'ruby2.5', 'ruby2.7', 'ruby3.2', 'ruby3.3', 'ruby3.4', 'ruby4.0']", "source": "SCHEMA", "resourceId": "FutureNodeFunc", "resourceType": "AWS::Lambda::Function", @@ -110374,11 +110380,14 @@ "dotnetcore3.1", "go1.x", "java11", + "java11.al2023", "java17", + "java17.al2023", "java21", "java25", "java8", "java8.al2", + "java8.al2023", "nodejs", "nodejs10.x", "nodejs12.x", @@ -134899,7 +134908,7 @@ { "ruleId": "E9006", "severity": "ERROR", - "message": "'8.0' is not one of ['5.5.62', '5.6.51', '5.7.33', '5.7.34', '5.7.36', '5.7.37', '5.7.38', '5.7.39', '5.7.40', '5.7.41', '5.7.42', '5.7.43', '5.7.44', '5.7.44-rds.20240408', '5.7.44-rds.20240529', '5.7.44-rds.20240808', '5.7.44-rds.20250103', '5.7.44-rds.20250213', '5.7.44-rds.20250508', '5.7.44-rds.20250818', '5.7.44-rds.20251212', '5.7.44-rds.20260212', '5.7.44-rds.20260521', '8.0.11', '8.0.13', '8.0.15', '8.0.16', '8.0.17', '8.0.19', '8.0.20', '8.0.21', '8.0.23', '8.0.25', '8.0.26', '8.0.27', '8.0.28', '8.0.29', '8.0.30', '8.0.31', '8.0.32', '8.0.33', '8.0.34', '8.0.35', '8.0.36', '8.0.37', '8.0.39', '8.0.40', '8.0.41', '8.0.42', '8.0.43', '8.0.44', '8.0.45', '8.0.46', '8.4.3', '8.4.4', '8.4.5', '8.4.6', '8.4.7', '8.4.8', '8.4.9']", + "message": "'8.0' is not one of ['5.5.62', '5.6.51', '5.7.33', '5.7.34', '5.7.36', '5.7.37', '5.7.38', '5.7.39', '5.7.40', '5.7.41', '5.7.42', '5.7.43', '5.7.44', '5.7.44-rds.20240408', '5.7.44-rds.20240529', '5.7.44-rds.20240808', '5.7.44-rds.20250103', '5.7.44-rds.20250213', '5.7.44-rds.20250508', '5.7.44-rds.20250818', '5.7.44-rds.20251212', '5.7.44-rds.20260212', '5.7.44-rds.20260521', '8.0.11', '8.0.13', '8.0.15', '8.0.16', '8.0.17', '8.0.19', '8.0.20', '8.0.21', '8.0.23', '8.0.25', '8.0.26', '8.0.27', '8.0.28', '8.0.29', '8.0.30', '8.0.31', '8.0.32', '8.0.33', '8.0.34', '8.0.35', '8.0.36', '8.0.37', '8.0.39', '8.0.40', '8.0.41', '8.0.42', '8.0.43', '8.0.44', '8.0.45', '8.0.46', '8.4.10', '8.4.3', '8.4.4', '8.4.5', '8.4.6', '8.4.7', '8.4.8', '8.4.9']", "source": "CFN_LINT", "resourceId": "Database", "resourceType": "AWS::RDS::DBInstance", @@ -135605,7 +135614,7 @@ { "ruleId": "E9006", "severity": "ERROR", - "message": "'8.0' is not one of ['5.5.62', '5.6.51', '5.7.33', '5.7.34', '5.7.36', '5.7.37', '5.7.38', '5.7.39', '5.7.40', '5.7.41', '5.7.42', '5.7.43', '5.7.44', '5.7.44-rds.20240408', '5.7.44-rds.20240529', '5.7.44-rds.20240808', '5.7.44-rds.20250103', '5.7.44-rds.20250213', '5.7.44-rds.20250508', '5.7.44-rds.20250818', '5.7.44-rds.20251212', '5.7.44-rds.20260212', '5.7.44-rds.20260521', '8.0.11', '8.0.13', '8.0.15', '8.0.16', '8.0.17', '8.0.19', '8.0.20', '8.0.21', '8.0.23', '8.0.25', '8.0.26', '8.0.27', '8.0.28', '8.0.29', '8.0.30', '8.0.31', '8.0.32', '8.0.33', '8.0.34', '8.0.35', '8.0.36', '8.0.37', '8.0.39', '8.0.40', '8.0.41', '8.0.42', '8.0.43', '8.0.44', '8.0.45', '8.0.46', '8.4.3', '8.4.4', '8.4.5', '8.4.6', '8.4.7', '8.4.8', '8.4.9']", + "message": "'8.0' is not one of ['5.5.62', '5.6.51', '5.7.33', '5.7.34', '5.7.36', '5.7.37', '5.7.38', '5.7.39', '5.7.40', '5.7.41', '5.7.42', '5.7.43', '5.7.44', '5.7.44-rds.20240408', '5.7.44-rds.20240529', '5.7.44-rds.20240808', '5.7.44-rds.20250103', '5.7.44-rds.20250213', '5.7.44-rds.20250508', '5.7.44-rds.20250818', '5.7.44-rds.20251212', '5.7.44-rds.20260212', '5.7.44-rds.20260521', '8.0.11', '8.0.13', '8.0.15', '8.0.16', '8.0.17', '8.0.19', '8.0.20', '8.0.21', '8.0.23', '8.0.25', '8.0.26', '8.0.27', '8.0.28', '8.0.29', '8.0.30', '8.0.31', '8.0.32', '8.0.33', '8.0.34', '8.0.35', '8.0.36', '8.0.37', '8.0.39', '8.0.40', '8.0.41', '8.0.42', '8.0.43', '8.0.44', '8.0.45', '8.0.46', '8.4.10', '8.4.3', '8.4.4', '8.4.5', '8.4.6', '8.4.7', '8.4.8', '8.4.9']", "source": "CFN_LINT", "resourceId": "Database", "resourceType": "AWS::RDS::DBInstance", From aca0a61c744bf9de0ecb96384e308d78e5f8bce6 Mon Sep 17 00:00:00 2001 From: Satyaki Ghosh Date: Mon, 13 Jul 2026 17:01:26 -0400 Subject: [PATCH 2/2] Test on all platforms --- .github/workflows/validate.yml | 27 ++- gradlew.bat | 188 +++++++++--------- .../tests/kotlin/src/test/kotlin/SmokeTest.kt | 2 +- src/bindings-wasm/tests/smoke.test.ts | 2 +- src/cfn-validate/tests/common/mod.rs | 2 +- 5 files changed, 121 insertions(+), 100 deletions(-) diff --git a/.github/workflows/validate.yml b/.github/workflows/validate.yml index be8d215..f0f1ad3 100644 --- a/.github/workflows/validate.yml +++ b/.github/workflows/validate.yml @@ -95,7 +95,14 @@ jobs: test: needs: [ format, lint, audit, get-configs ] - runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + os: [ ubuntu-latest, macos-latest, windows-latest ] + runs-on: ${{ matrix.os }} + defaults: + run: + shell: bash env: WORKING_DIR: ${{ needs.get-configs.outputs.working-dir }} steps: @@ -128,7 +135,14 @@ jobs: test-jvm: needs: [ format, lint, audit, get-configs ] - runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + os: [ ubuntu-latest, macos-latest, windows-latest ] + runs-on: ${{ matrix.os }} + defaults: + run: + shell: bash env: WORKING_DIR: ${{ needs.get-configs.outputs.working-dir }} steps: @@ -166,7 +180,14 @@ jobs: test-wasm: needs: [ format, lint, audit, get-configs ] - runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + os: [ ubuntu-latest, macos-latest, windows-latest ] + runs-on: ${{ matrix.os }} + defaults: + run: + shell: bash env: WORKING_DIR: ${{ needs.get-configs.outputs.working-dir }} steps: diff --git a/gradlew.bat b/gradlew.bat index 5eed7ee..db3a6ac 100644 --- a/gradlew.bat +++ b/gradlew.bat @@ -1,94 +1,94 @@ -@rem -@rem Copyright 2015 the original author or authors. -@rem -@rem Licensed under the Apache License, Version 2.0 (the "License"); -@rem you may not use this file except in compliance with the License. -@rem You may obtain a copy of the License at -@rem -@rem https://www.apache.org/licenses/LICENSE-2.0 -@rem -@rem Unless required by applicable law or agreed to in writing, software -@rem distributed under the License is distributed on an "AS IS" BASIS, -@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -@rem See the License for the specific language governing permissions and -@rem limitations under the License. -@rem -@rem SPDX-License-Identifier: Apache-2.0 -@rem - -@if "%DEBUG%"=="" @echo off -@rem ########################################################################## -@rem -@rem Gradle startup script for Windows -@rem -@rem ########################################################################## - -@rem Set local scope for the variables with windows NT shell -if "%OS%"=="Windows_NT" setlocal - -set DIRNAME=%~dp0 -if "%DIRNAME%"=="" set DIRNAME=. -@rem This is normally unused -set APP_BASE_NAME=%~n0 -set APP_HOME=%DIRNAME% - -@rem Resolve any "." and ".." in APP_HOME to make it shorter. -for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi - -@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" - -@rem Find java.exe -if defined JAVA_HOME goto findJavaFromJavaHome - -set JAVA_EXE=java.exe -%JAVA_EXE% -version >NUL 2>&1 -if %ERRORLEVEL% equ 0 goto execute - -echo. 1>&2 -echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2 -echo. 1>&2 -echo Please set the JAVA_HOME variable in your environment to match the 1>&2 -echo location of your Java installation. 1>&2 - -goto fail - -:findJavaFromJavaHome -set JAVA_HOME=%JAVA_HOME:"=% -set JAVA_EXE=%JAVA_HOME%/bin/java.exe - -if exist "%JAVA_EXE%" goto execute - -echo. 1>&2 -echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2 -echo. 1>&2 -echo Please set the JAVA_HOME variable in your environment to match the 1>&2 -echo location of your Java installation. 1>&2 - -goto fail - -:execute -@rem Setup the command line - -set CLASSPATH= - - -@rem Execute Gradle -"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* - -:end -@rem End local scope for the variables with windows NT shell -if %ERRORLEVEL% equ 0 goto mainEnd - -:fail -rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of -rem the _cmd.exe /c_ return code! -set EXIT_CODE=%ERRORLEVEL% -if %EXIT_CODE% equ 0 set EXIT_CODE=1 -if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% -exit /b %EXIT_CODE% - -:mainEnd -if "%OS%"=="Windows_NT" endlocal - -:omega +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem +@rem SPDX-License-Identifier: Apache-2.0 +@rem + +@if "%DEBUG%"=="" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%"=="" set DIRNAME=. +@rem This is normally unused +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if %ERRORLEVEL% equ 0 goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:execute +@rem Setup the command line + +set CLASSPATH= + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* + +:end +@rem End local scope for the variables with windows NT shell +if %ERRORLEVEL% equ 0 goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +set EXIT_CODE=%ERRORLEVEL% +if %EXIT_CODE% equ 0 set EXIT_CODE=1 +if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% +exit /b %EXIT_CODE% + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/src/bindings-jvm/tests/kotlin/src/test/kotlin/SmokeTest.kt b/src/bindings-jvm/tests/kotlin/src/test/kotlin/SmokeTest.kt index c4db510..80ddb93 100644 --- a/src/bindings-jvm/tests/kotlin/src/test/kotlin/SmokeTest.kt +++ b/src/bindings-jvm/tests/kotlin/src/test/kotlin/SmokeTest.kt @@ -40,7 +40,7 @@ class SmokeTest { val dir = File(templatesRoot, sub) if (dir.isDirectory) { dir.walkTopDown().filter { it.isFile && it.extension in listOf("yaml", "yml", "json") }.forEach { - templates.add(it.relativeTo(templatesRoot).path) + templates.add(it.relativeTo(templatesRoot).path.replace('\\', '/')) } } } diff --git a/src/bindings-wasm/tests/smoke.test.ts b/src/bindings-wasm/tests/smoke.test.ts index 91fed42..d28b95b 100644 --- a/src/bindings-wasm/tests/smoke.test.ts +++ b/src/bindings-wasm/tests/smoke.test.ts @@ -36,7 +36,7 @@ function discoverAllTemplates(): string[] { const full = path.join(dir, entry.name); if (entry.isDirectory()) walk(full); else if (/\.(yaml|yml|json)$/.test(entry.name)) { - templates.push(path.relative(TEMPLATES_ROOT, full)); + templates.push(path.relative(TEMPLATES_ROOT, full).replace(/\\/g, '/')); } } } diff --git a/src/cfn-validate/tests/common/mod.rs b/src/cfn-validate/tests/common/mod.rs index 54322be..75e2ec2 100644 --- a/src/cfn-validate/tests/common/mod.rs +++ b/src/cfn-validate/tests/common/mod.rs @@ -67,7 +67,7 @@ fn walk_collect(dir: &std::path::Path, root: &std::path::Path, out: &mut Vec