diff --git a/src/cfnlint/data/AdditionalSpecs/Policies.json b/src/cfnlint/data/AdditionalSpecs/Policies.json index 12899c81f5..f253337949 100644 --- a/src/cfnlint/data/AdditionalSpecs/Policies.json +++ b/src/cfnlint/data/AdditionalSpecs/Policies.json @@ -4657,6 +4657,32 @@ "HasResource": false, "StringPrefix": "elemental-support-content" }, + "AWS End User Messaging Social": { + "ARNFormat": "arn:aws:social-messaging:${Region}:${Account}:${ResourceType}/${ResourceId}", + "ARNRegex": "^arn:aws:social-messaging:.+", + "Actions": [ + "AssociateWhatsAppBusinessAccount", + "DeleteWhatsAppMessageMedia", + "DisassociateWhatsAppBusinessAccount", + "GetLinkedWhatsAppBusinessAccount", + "GetLinkedWhatsAppBusinessAccountPhoneNumber", + "GetWhatsAppMessageMedia", + "ListLinkedWhatsAppBusinessAccounts", + "ListTagsForResource", + "PostWhatsAppMessageMedia", + "PutWhatsAppBusinessAccountEventDestinations", + "SendWhatsAppMessage", + "TagResource", + "UntagResource" + ], + "HasResource": true, + "StringPrefix": "social-messaging", + "conditionKeys": [ + "aws:RequestTag/${TagKey}", + "aws:ResourceTag/${TagKey}", + "aws:TagKeys" + ] + }, "AWS Entity Resolution": { "ARNFormat": "arn:aws:entityresolution:${Region}:${Account}:${ResourceType}/${ResourceName}", "ARNRegex": "^arn:aws:entityresolution:.+:.+:.+", @@ -7343,7 +7369,6 @@ "DeleteFunctionUrlConfig", "DeleteLayerVersion", "DeleteProvisionedConcurrencyConfig", - "DeleteResourcePolicy", "DisableReplication", "EnableReplication", "GetAccountSettings", @@ -7361,8 +7386,6 @@ "GetLayerVersionPolicy", "GetPolicy", "GetProvisionedConcurrencyConfig", - "GetPublicAccessBlockConfig", - "GetResourcePolicy", "GetRuntimeManagementConfig", "InvokeAsync", "InvokeFunction", @@ -7386,8 +7409,6 @@ "PutFunctionEventInvokeConfig", "PutFunctionRecursionConfig", "PutProvisionedConcurrencyConfig", - "PutPublicAccessBlockConfig", - "PutResourcePolicy", "PutRuntimeManagementConfig", "RemoveLayerVersionPermission", "RemovePermission", @@ -19467,6 +19488,7 @@ "DeleteRetriever", "DeleteUser", "DeleteWebExperience", + "DisableAclOnDataSource", "GetApplication", "GetChatControlsConfiguration", "GetDataSource", diff --git a/src/cfnlint/data/DownloadsMetadata/123ba181485ae293d5bd09722af0c19d5a0d14c62111ff864923fc7b7960dda6.meta.json b/src/cfnlint/data/DownloadsMetadata/123ba181485ae293d5bd09722af0c19d5a0d14c62111ff864923fc7b7960dda6.meta.json index 33a84eaefd..0c0c4a56e9 100644 --- a/src/cfnlint/data/DownloadsMetadata/123ba181485ae293d5bd09722af0c19d5a0d14c62111ff864923fc7b7960dda6.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/123ba181485ae293d5bd09722af0c19d5a0d14c62111ff864923fc7b7960dda6.meta.json @@ -1 +1 @@ -{"etag": "\"b577498f255ee4b66aecffbab2190e21\"", "url": "https://schema.cloudformation.eu-south-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"1702c0b5540b1c0eb640f3c3cde4ba81\"", "url": "https://schema.cloudformation.eu-south-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/164e1bfc2823fbd49d8d0e7163ebf32b2b6653d7edfe98a64577daae0b481c38.meta.json b/src/cfnlint/data/DownloadsMetadata/164e1bfc2823fbd49d8d0e7163ebf32b2b6653d7edfe98a64577daae0b481c38.meta.json index c63413b557..04c5c9b74f 100644 --- a/src/cfnlint/data/DownloadsMetadata/164e1bfc2823fbd49d8d0e7163ebf32b2b6653d7edfe98a64577daae0b481c38.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/164e1bfc2823fbd49d8d0e7163ebf32b2b6653d7edfe98a64577daae0b481c38.meta.json @@ -1 +1 @@ -{"etag": "\"88b31efd15169716b9161d47fc7d101d\"", "url": "https://schema.cloudformation.cn-north-1.amazonaws.com.cn/CloudformationSchema.zip"} +{"etag": "\"582e66fdd371fbe35fb64e61d66fb1fc\"", "url": "https://schema.cloudformation.cn-north-1.amazonaws.com.cn/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/18624fcc4a1c571691d10b2508e6be565e4752bbc10d9552de8df8f81348c42b.meta.json b/src/cfnlint/data/DownloadsMetadata/18624fcc4a1c571691d10b2508e6be565e4752bbc10d9552de8df8f81348c42b.meta.json index bc9851c747..9343f1a904 100644 --- a/src/cfnlint/data/DownloadsMetadata/18624fcc4a1c571691d10b2508e6be565e4752bbc10d9552de8df8f81348c42b.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/18624fcc4a1c571691d10b2508e6be565e4752bbc10d9552de8df8f81348c42b.meta.json @@ -1 +1 @@ -{"etag": "\"0e8c43d597d228c1db8bb9178e8b8f37\"", "url": "https://schema.cloudformation.us-gov-east-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"ae221f614e6d6af373ff271958f74e71\"", "url": "https://schema.cloudformation.us-gov-east-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/227d6e59c86482f7153466759080e65963a1bf4413531ad420ff60a5a0d7965d.meta.json b/src/cfnlint/data/DownloadsMetadata/227d6e59c86482f7153466759080e65963a1bf4413531ad420ff60a5a0d7965d.meta.json index ca8f00819b..21a3dc8fb6 100644 --- a/src/cfnlint/data/DownloadsMetadata/227d6e59c86482f7153466759080e65963a1bf4413531ad420ff60a5a0d7965d.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/227d6e59c86482f7153466759080e65963a1bf4413531ad420ff60a5a0d7965d.meta.json @@ -1 +1 @@ -{"etag": "\"4f087289a61ed305e32017e7ff323e34\"", "url": "https://schema.cloudformation.me-south-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"046d41a33a73f1ac9400a9ca26cb76a1\"", "url": "https://schema.cloudformation.me-south-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/23be708e675cb6098b08969e4dbbc3f54cfc32461d10e077e7e5de1fc25d8b8f.meta.json b/src/cfnlint/data/DownloadsMetadata/23be708e675cb6098b08969e4dbbc3f54cfc32461d10e077e7e5de1fc25d8b8f.meta.json index ea5272ecc7..84820eb581 100644 --- a/src/cfnlint/data/DownloadsMetadata/23be708e675cb6098b08969e4dbbc3f54cfc32461d10e077e7e5de1fc25d8b8f.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/23be708e675cb6098b08969e4dbbc3f54cfc32461d10e077e7e5de1fc25d8b8f.meta.json @@ -1 +1 @@ -{"etag": "\"582340e29e3bfe3a8d51b4b683aaaf69\"", "url": "https://schema.cloudformation.us-gov-west-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"152f26645b17a2cbf153dbf28d269259\"", "url": "https://schema.cloudformation.us-gov-west-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/26cf4521b683d3267844178a6bcd1d0ad3fe2e7838c23f6acd054944cb2b1618.meta.json b/src/cfnlint/data/DownloadsMetadata/26cf4521b683d3267844178a6bcd1d0ad3fe2e7838c23f6acd054944cb2b1618.meta.json index a04e0e670a..7f1e6e7d76 100644 --- a/src/cfnlint/data/DownloadsMetadata/26cf4521b683d3267844178a6bcd1d0ad3fe2e7838c23f6acd054944cb2b1618.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/26cf4521b683d3267844178a6bcd1d0ad3fe2e7838c23f6acd054944cb2b1618.meta.json @@ -1 +1 @@ -{"etag": "\"78746b74b820ee23ca1d6a91da60731c\"", "url": "https://schema.cloudformation.me-central-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"38f0a54ecd7a3a7211b21972ffbfd902\"", "url": "https://schema.cloudformation.me-central-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/276cecfeb1ec5e608e2aaa06925a2da57e9907e4a512c10ddae70b98b4dada43.meta.json b/src/cfnlint/data/DownloadsMetadata/276cecfeb1ec5e608e2aaa06925a2da57e9907e4a512c10ddae70b98b4dada43.meta.json index 6272c1e047..72fe6e722f 100644 --- a/src/cfnlint/data/DownloadsMetadata/276cecfeb1ec5e608e2aaa06925a2da57e9907e4a512c10ddae70b98b4dada43.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/276cecfeb1ec5e608e2aaa06925a2da57e9907e4a512c10ddae70b98b4dada43.meta.json @@ -1 +1 @@ -{"etag": "\"efc2d0aabd4d4b8673fa5e49fc477f96\"", "url": "https://schema.cloudformation.eu-west-2.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"2dc9d4f19eb8d949182014dc81b240a0\"", "url": "https://schema.cloudformation.eu-west-2.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/371e40c90b2e47c99f6e275e060ee83a3fbf0a0fb76625ba46dbe42abd34333c.meta.json b/src/cfnlint/data/DownloadsMetadata/371e40c90b2e47c99f6e275e060ee83a3fbf0a0fb76625ba46dbe42abd34333c.meta.json index ff65f5c03a..dedb96feec 100644 --- a/src/cfnlint/data/DownloadsMetadata/371e40c90b2e47c99f6e275e060ee83a3fbf0a0fb76625ba46dbe42abd34333c.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/371e40c90b2e47c99f6e275e060ee83a3fbf0a0fb76625ba46dbe42abd34333c.meta.json @@ -1 +1 @@ -{"etag": "\"dc2ca21b2e7a67de151ace3ba490376c\"", "url": "https://schema.cloudformation.cn-northwest-1.amazonaws.com.cn/CloudformationSchema.zip"} +{"etag": "\"c648798cf4bc4c9010683f5ba92b5cd8\"", "url": "https://schema.cloudformation.cn-northwest-1.amazonaws.com.cn/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/42155835f382d82337be3d2bf832bada376aa3fe15197e3bb0e9290ff8719b4e.meta.json b/src/cfnlint/data/DownloadsMetadata/42155835f382d82337be3d2bf832bada376aa3fe15197e3bb0e9290ff8719b4e.meta.json index 825cd17306..366402a784 100644 --- a/src/cfnlint/data/DownloadsMetadata/42155835f382d82337be3d2bf832bada376aa3fe15197e3bb0e9290ff8719b4e.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/42155835f382d82337be3d2bf832bada376aa3fe15197e3bb0e9290ff8719b4e.meta.json @@ -1 +1 @@ -{"etag": "\"16c4d9c9042da148d7d9cd90c06c796c\"", "url": "https://schema.cloudformation.af-south-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"3f86f8872a080020221ab0d2278534b2\"", "url": "https://schema.cloudformation.af-south-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/42e9df95722b6524cd001503b6750b86f60a7b5acfc406ebb10d5748cbb8ed41.meta.json b/src/cfnlint/data/DownloadsMetadata/42e9df95722b6524cd001503b6750b86f60a7b5acfc406ebb10d5748cbb8ed41.meta.json index 18a3a846bc..39bd5f6d1d 100644 --- a/src/cfnlint/data/DownloadsMetadata/42e9df95722b6524cd001503b6750b86f60a7b5acfc406ebb10d5748cbb8ed41.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/42e9df95722b6524cd001503b6750b86f60a7b5acfc406ebb10d5748cbb8ed41.meta.json @@ -1 +1 @@ -{"etag": "\"c36690a2f5897235f191b750656a5ff7\"", "url": "https://schema.cloudformation.us-west-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"19e1faf4a32b70bf830a84d976546957\"", "url": "https://schema.cloudformation.us-west-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/49ed0265aaab90ce485c07e02ea671e5aa3b299156f53fa9d1fd8eeabec5a268.meta.json b/src/cfnlint/data/DownloadsMetadata/49ed0265aaab90ce485c07e02ea671e5aa3b299156f53fa9d1fd8eeabec5a268.meta.json index 5cde5846e1..96367faf47 100644 --- a/src/cfnlint/data/DownloadsMetadata/49ed0265aaab90ce485c07e02ea671e5aa3b299156f53fa9d1fd8eeabec5a268.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/49ed0265aaab90ce485c07e02ea671e5aa3b299156f53fa9d1fd8eeabec5a268.meta.json @@ -1 +1 @@ -{"etag": "\"d36e2dbdf974f8c3251e2289b371aabf\"", "url": "https://schema.cloudformation.ap-southeast-5.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"35f0ed56751e8b9d2ae9bfa4fa0ae934\"", "url": "https://schema.cloudformation.ap-southeast-5.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/4fbb29b69678acdd32c5758ed43ead9bf35136af536e92a84ccbaf062c315066.meta.json b/src/cfnlint/data/DownloadsMetadata/4fbb29b69678acdd32c5758ed43ead9bf35136af536e92a84ccbaf062c315066.meta.json index be70ac3e91..5bdbfd6957 100644 --- a/src/cfnlint/data/DownloadsMetadata/4fbb29b69678acdd32c5758ed43ead9bf35136af536e92a84ccbaf062c315066.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/4fbb29b69678acdd32c5758ed43ead9bf35136af536e92a84ccbaf062c315066.meta.json @@ -1 +1 @@ -{"etag": "\"5d2e65b0fbf8d81118d7078424180671\"", "url": "https://schema.cloudformation.eu-central-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"b942b154ba9b66738916013bdb5ccdf8\"", "url": "https://schema.cloudformation.eu-central-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/56584c7d00e444de640bef01fc2c630804470222e5e4c690bacef5312891581d.meta.json b/src/cfnlint/data/DownloadsMetadata/56584c7d00e444de640bef01fc2c630804470222e5e4c690bacef5312891581d.meta.json index 48c6d1b3c8..544214f422 100644 --- a/src/cfnlint/data/DownloadsMetadata/56584c7d00e444de640bef01fc2c630804470222e5e4c690bacef5312891581d.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/56584c7d00e444de640bef01fc2c630804470222e5e4c690bacef5312891581d.meta.json @@ -1 +1 @@ -{"etag": "\"78a02660ca7b8cec013abb5e6e48b204\"", "url": "https://schema.cloudformation.ap-south-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"afbe01e303bf22fb73b3bbc4cb062b48\"", "url": "https://schema.cloudformation.ap-south-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/583721567eccd1d5855daa623819df1a646b563d773e34b020d0ddeab2fe195b.meta.json b/src/cfnlint/data/DownloadsMetadata/583721567eccd1d5855daa623819df1a646b563d773e34b020d0ddeab2fe195b.meta.json index 85d8c56166..5bbd0239b1 100644 --- a/src/cfnlint/data/DownloadsMetadata/583721567eccd1d5855daa623819df1a646b563d773e34b020d0ddeab2fe195b.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/583721567eccd1d5855daa623819df1a646b563d773e34b020d0ddeab2fe195b.meta.json @@ -1 +1 @@ -{"etag": "\"bc7f4b6b06ba62b79b946d6c109e8d8e\"", "url": "https://schema.cloudformation.ap-southeast-4.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"a77591fe3f9644fff61577957c543da6\"", "url": "https://schema.cloudformation.ap-southeast-4.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/6316ae24f21cb620947aa250bebbee69548d44cc32e246ec9d7742088a2c17f8.meta.json b/src/cfnlint/data/DownloadsMetadata/6316ae24f21cb620947aa250bebbee69548d44cc32e246ec9d7742088a2c17f8.meta.json index bc53070c03..506c38c683 100644 --- a/src/cfnlint/data/DownloadsMetadata/6316ae24f21cb620947aa250bebbee69548d44cc32e246ec9d7742088a2c17f8.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/6316ae24f21cb620947aa250bebbee69548d44cc32e246ec9d7742088a2c17f8.meta.json @@ -1 +1 @@ -{"etag": "\"4c75ad8009803a0d162476afc69d38d1\"", "url": "https://schema.cloudformation.us-east-2.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"af9c857c37f35caf17f513497ae25312\"", "url": "https://schema.cloudformation.us-east-2.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/81e1cc73ff2daf7d1e1eca393c2d1fdd98ac34d4109512e0e0947ef752dcb9c9.meta.json b/src/cfnlint/data/DownloadsMetadata/81e1cc73ff2daf7d1e1eca393c2d1fdd98ac34d4109512e0e0947ef752dcb9c9.meta.json index 8a5b6e6557..3d574f6b51 100644 --- a/src/cfnlint/data/DownloadsMetadata/81e1cc73ff2daf7d1e1eca393c2d1fdd98ac34d4109512e0e0947ef752dcb9c9.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/81e1cc73ff2daf7d1e1eca393c2d1fdd98ac34d4109512e0e0947ef752dcb9c9.meta.json @@ -1 +1 @@ -{"etag": "\"bd4551e08025b416d7747d9a74e447b5\"", "url": "https://schema.cloudformation.ap-southeast-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"1ae72e066fd285d0b6e6dc75a382c421\"", "url": "https://schema.cloudformation.ap-southeast-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/8adeabf0a09b37a8ed924aea799005947e4a4542365d35fd75466abcf306eeca.meta.json b/src/cfnlint/data/DownloadsMetadata/8adeabf0a09b37a8ed924aea799005947e4a4542365d35fd75466abcf306eeca.meta.json index 63d8028618..878021d05d 100644 --- a/src/cfnlint/data/DownloadsMetadata/8adeabf0a09b37a8ed924aea799005947e4a4542365d35fd75466abcf306eeca.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/8adeabf0a09b37a8ed924aea799005947e4a4542365d35fd75466abcf306eeca.meta.json @@ -1 +1 @@ -{"etag": "\"ce40cd061dc0eeb64ee739c563229073\"", "url": "https://schema.cloudformation.ap-northeast-2.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"fbabef29f9777091c46a5f91c0c558af\"", "url": "https://schema.cloudformation.ap-northeast-2.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/8b8b0cee4df1ef0947a8289e8ec0c67869b7533eabab32ecfc0a00cb19e55a5f.meta.json b/src/cfnlint/data/DownloadsMetadata/8b8b0cee4df1ef0947a8289e8ec0c67869b7533eabab32ecfc0a00cb19e55a5f.meta.json index 679a770b1d..6ed3cb3b64 100644 --- a/src/cfnlint/data/DownloadsMetadata/8b8b0cee4df1ef0947a8289e8ec0c67869b7533eabab32ecfc0a00cb19e55a5f.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/8b8b0cee4df1ef0947a8289e8ec0c67869b7533eabab32ecfc0a00cb19e55a5f.meta.json @@ -1 +1 @@ -{"etag": "\"ffb5bd2d6e45dcda0665347144e60324\"", "url": "https://schema.cloudformation.ap-southeast-3.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"859d2ce203c0844af740414c5c4b9f0c\"", "url": "https://schema.cloudformation.ap-southeast-3.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/b1f069477cd577cde04dfe1b323c0bb0e783fe32b6bb6b13774c32fcca1d303a.meta.json b/src/cfnlint/data/DownloadsMetadata/b1f069477cd577cde04dfe1b323c0bb0e783fe32b6bb6b13774c32fcca1d303a.meta.json index b620d72008..339b65886e 100644 --- a/src/cfnlint/data/DownloadsMetadata/b1f069477cd577cde04dfe1b323c0bb0e783fe32b6bb6b13774c32fcca1d303a.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/b1f069477cd577cde04dfe1b323c0bb0e783fe32b6bb6b13774c32fcca1d303a.meta.json @@ -1 +1 @@ -{"etag": "\"5ef8b889070af2824e94997af16a8951\"", "url": "https://schema.cloudformation.ap-east-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"2ee7f71b3ecd946ed3d9751109de144b\"", "url": "https://schema.cloudformation.ap-east-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/c7ada205073390b33b7593ef8f304b9705f2567698dfdfa979bf0ccdb68cb856.meta.json b/src/cfnlint/data/DownloadsMetadata/c7ada205073390b33b7593ef8f304b9705f2567698dfdfa979bf0ccdb68cb856.meta.json index 4c89795216..a9b16f6a44 100644 --- a/src/cfnlint/data/DownloadsMetadata/c7ada205073390b33b7593ef8f304b9705f2567698dfdfa979bf0ccdb68cb856.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/c7ada205073390b33b7593ef8f304b9705f2567698dfdfa979bf0ccdb68cb856.meta.json @@ -1 +1 @@ -{"etag": "\"8de98a04b7e80d5a52d5bfee9c3bba66\"", "url": "https://schema.cloudformation.sa-east-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"29de0d416e9854f63a4900e795e51689\"", "url": "https://schema.cloudformation.sa-east-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/d24ce9a45a014b1ff04d479422ea956e92030ae5c03d7451980a15735e557edb.meta.json b/src/cfnlint/data/DownloadsMetadata/d24ce9a45a014b1ff04d479422ea956e92030ae5c03d7451980a15735e557edb.meta.json index ae3f5c2279..5af610e61f 100644 --- a/src/cfnlint/data/DownloadsMetadata/d24ce9a45a014b1ff04d479422ea956e92030ae5c03d7451980a15735e557edb.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/d24ce9a45a014b1ff04d479422ea956e92030ae5c03d7451980a15735e557edb.meta.json @@ -1 +1 @@ -{"etag": "\"e3b02ac9e0c7eb55da386785a319918a\"", "url": "https://schema.cloudformation.ap-southeast-2.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"6bae2da917a1133b0173aa0d74f3a5ac\"", "url": "https://schema.cloudformation.ap-southeast-2.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/d85e2e061cacfcffe4902adb1074a04e6bb7f975b606f8db57532faddfcdd8c8.meta.json b/src/cfnlint/data/DownloadsMetadata/d85e2e061cacfcffe4902adb1074a04e6bb7f975b606f8db57532faddfcdd8c8.meta.json index d51be4974a..6837426269 100644 --- a/src/cfnlint/data/DownloadsMetadata/d85e2e061cacfcffe4902adb1074a04e6bb7f975b606f8db57532faddfcdd8c8.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/d85e2e061cacfcffe4902adb1074a04e6bb7f975b606f8db57532faddfcdd8c8.meta.json @@ -1 +1 @@ -{"etag": "\"c77b44f369e022992a8561dedd2e182d\"", "url": "https://schema.cloudformation.ca-west-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"b2c14683f8b1bd7f5d0fe824fe737164\"", "url": "https://schema.cloudformation.ca-west-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/d8e41d35f4f8922b66525dea2c66d72a73ff097c685cda0a63c08a6416dc58ed.meta.json b/src/cfnlint/data/DownloadsMetadata/d8e41d35f4f8922b66525dea2c66d72a73ff097c685cda0a63c08a6416dc58ed.meta.json index abf0962e6f..6074c4353d 100644 --- a/src/cfnlint/data/DownloadsMetadata/d8e41d35f4f8922b66525dea2c66d72a73ff097c685cda0a63c08a6416dc58ed.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/d8e41d35f4f8922b66525dea2c66d72a73ff097c685cda0a63c08a6416dc58ed.meta.json @@ -1 +1 @@ -{"etag": "\"b6bab1881e1729e50ca99bcb9b838a2c\"", "url": "https://schema.cloudformation.eu-central-2.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"9352675b9f5578f3bc77788f611a3da9\"", "url": "https://schema.cloudformation.eu-central-2.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/dd98171253ebc36f5b78e247f3132b5f25c8d66a1f84939600616bab42579541.meta.json b/src/cfnlint/data/DownloadsMetadata/dd98171253ebc36f5b78e247f3132b5f25c8d66a1f84939600616bab42579541.meta.json index d17f5030f2..166e0dc6d8 100644 --- a/src/cfnlint/data/DownloadsMetadata/dd98171253ebc36f5b78e247f3132b5f25c8d66a1f84939600616bab42579541.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/dd98171253ebc36f5b78e247f3132b5f25c8d66a1f84939600616bab42579541.meta.json @@ -1 +1 @@ -{"etag": "\"ff5d2c12d060f95121f476490595058d\"", "url": "https://schema.cloudformation.eu-north-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"190f2d369bcc68234cf1d725cde49b94\"", "url": "https://schema.cloudformation.eu-north-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/df4945435575c690a2651bb31e7a9b48972142778e1ff452383ede2ad4bac3d7.meta.json b/src/cfnlint/data/DownloadsMetadata/df4945435575c690a2651bb31e7a9b48972142778e1ff452383ede2ad4bac3d7.meta.json index 1390c642d6..8bb712f940 100644 --- a/src/cfnlint/data/DownloadsMetadata/df4945435575c690a2651bb31e7a9b48972142778e1ff452383ede2ad4bac3d7.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/df4945435575c690a2651bb31e7a9b48972142778e1ff452383ede2ad4bac3d7.meta.json @@ -1 +1 @@ -{"etag": "\"5fef8788909211392393eb88e14fbfff\"", "url": "https://schema.cloudformation.eu-south-2.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"a079a8988e9882ce81ab71cf5bfc9a4a\"", "url": "https://schema.cloudformation.eu-south-2.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/e5301e07e25fa2c35d2c7e1f9dcf720826b315ef6f38515840537c02de23abe2.meta.json b/src/cfnlint/data/DownloadsMetadata/e5301e07e25fa2c35d2c7e1f9dcf720826b315ef6f38515840537c02de23abe2.meta.json index f3ec31f397..5db217597b 100644 --- a/src/cfnlint/data/DownloadsMetadata/e5301e07e25fa2c35d2c7e1f9dcf720826b315ef6f38515840537c02de23abe2.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/e5301e07e25fa2c35d2c7e1f9dcf720826b315ef6f38515840537c02de23abe2.meta.json @@ -1 +1 @@ -{"etag": "\"e178c8c26a1d0c9bbe225025e0efddc8\"", "url": "https://schema.cloudformation.ca-central-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"4a1d895b290b8b0f85e2099c21f8ce51\"", "url": "https://schema.cloudformation.ca-central-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/e8b3dacc1675b478e8c7392b51f41467cf908a34e6b4c3fb3e97e2b584f651ca.meta.json b/src/cfnlint/data/DownloadsMetadata/e8b3dacc1675b478e8c7392b51f41467cf908a34e6b4c3fb3e97e2b584f651ca.meta.json index b32ba94b0b..066a3446e9 100644 --- a/src/cfnlint/data/DownloadsMetadata/e8b3dacc1675b478e8c7392b51f41467cf908a34e6b4c3fb3e97e2b584f651ca.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/e8b3dacc1675b478e8c7392b51f41467cf908a34e6b4c3fb3e97e2b584f651ca.meta.json @@ -1 +1 @@ -{"etag": "\"9f3f49fa5edac419d42b8ff398042357\"", "url": "https://schema.cloudformation.eu-west-3.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"5a8f5f7444101819d744c7c929bf3ab9\"", "url": "https://schema.cloudformation.eu-west-3.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/ea0f7b8f144feb225afe73a24dfdf993318c41c71c21b0a17d4f68d82c5aee21.meta.json b/src/cfnlint/data/DownloadsMetadata/ea0f7b8f144feb225afe73a24dfdf993318c41c71c21b0a17d4f68d82c5aee21.meta.json index 3a7d894ceb..33a3f8921a 100644 --- a/src/cfnlint/data/DownloadsMetadata/ea0f7b8f144feb225afe73a24dfdf993318c41c71c21b0a17d4f68d82c5aee21.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/ea0f7b8f144feb225afe73a24dfdf993318c41c71c21b0a17d4f68d82c5aee21.meta.json @@ -1 +1 @@ -{"etag": "\"7fcc416c6601bea463b4e1e641f93d02\"", "url": "https://schema.cloudformation.ap-northeast-3.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"f3b43e345863759038b9de428ad24966\"", "url": "https://schema.cloudformation.ap-northeast-3.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/f1896c9151984eec294af1eddf64260f6cd7e4ced378cacdb93f76ed227b5c5d.meta.json b/src/cfnlint/data/DownloadsMetadata/f1896c9151984eec294af1eddf64260f6cd7e4ced378cacdb93f76ed227b5c5d.meta.json index 4140152181..7e633f1591 100644 --- a/src/cfnlint/data/DownloadsMetadata/f1896c9151984eec294af1eddf64260f6cd7e4ced378cacdb93f76ed227b5c5d.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/f1896c9151984eec294af1eddf64260f6cd7e4ced378cacdb93f76ed227b5c5d.meta.json @@ -1 +1 @@ -{"etag": "\"2516dd8659b69bae478ec25a64778cdb\"", "url": "https://schema.cloudformation.us-west-2.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"64e0a16a2ce223040fd222796aa6f25c\"", "url": "https://schema.cloudformation.us-west-2.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/f49718b210ea89ff182ae51cb7004366b9e2e4d5e38136a5be83b6a55e7a82a1.meta.json b/src/cfnlint/data/DownloadsMetadata/f49718b210ea89ff182ae51cb7004366b9e2e4d5e38136a5be83b6a55e7a82a1.meta.json index 190c50d320..4e2b671949 100644 --- a/src/cfnlint/data/DownloadsMetadata/f49718b210ea89ff182ae51cb7004366b9e2e4d5e38136a5be83b6a55e7a82a1.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/f49718b210ea89ff182ae51cb7004366b9e2e4d5e38136a5be83b6a55e7a82a1.meta.json @@ -1 +1 @@ -{"etag": "\"d4ebfc950dc4c6f95377b86a34a1af7a\"", "url": "https://schema.cloudformation.ap-south-2.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"4848ad9b82e1a9fe5055d8db8be4b03e\"", "url": "https://schema.cloudformation.ap-south-2.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/f54eee6f8ad9619f41835b700369cdbb41c64a9c91b2fa5b4928c0d9b2f780b0.meta.json b/src/cfnlint/data/DownloadsMetadata/f54eee6f8ad9619f41835b700369cdbb41c64a9c91b2fa5b4928c0d9b2f780b0.meta.json index a29561a619..3992b462ff 100644 --- a/src/cfnlint/data/DownloadsMetadata/f54eee6f8ad9619f41835b700369cdbb41c64a9c91b2fa5b4928c0d9b2f780b0.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/f54eee6f8ad9619f41835b700369cdbb41c64a9c91b2fa5b4928c0d9b2f780b0.meta.json @@ -1 +1 @@ -{"etag": "\"5d424d4ce01f84e770b4e0367e32b98b\"", "url": "https://schema.cloudformation.us-east-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"9a31a2501983bc38efc837c6de29fa30\"", "url": "https://schema.cloudformation.us-east-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/f6f35a459759d6c132fa2fe798cefbd5b2d398fe33547eed780b9b70f10eb4a2.meta.json b/src/cfnlint/data/DownloadsMetadata/f6f35a459759d6c132fa2fe798cefbd5b2d398fe33547eed780b9b70f10eb4a2.meta.json index c782e89e4f..348aba0a1f 100644 --- a/src/cfnlint/data/DownloadsMetadata/f6f35a459759d6c132fa2fe798cefbd5b2d398fe33547eed780b9b70f10eb4a2.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/f6f35a459759d6c132fa2fe798cefbd5b2d398fe33547eed780b9b70f10eb4a2.meta.json @@ -1 +1 @@ -{"etag": "\"020c49ca994a2f3c1f2183b890ebfa75\"", "url": "https://schema.cloudformation.il-central-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"2faebbd385143ff284c46c2501977f8c\"", "url": "https://schema.cloudformation.il-central-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/fa657351d8e89c40ba6b82c4b1f5e1b5e50a1638ffe0a5dba0d8805c190a05f8.meta.json b/src/cfnlint/data/DownloadsMetadata/fa657351d8e89c40ba6b82c4b1f5e1b5e50a1638ffe0a5dba0d8805c190a05f8.meta.json index 369dea0b6d..1bfc03c03e 100644 --- a/src/cfnlint/data/DownloadsMetadata/fa657351d8e89c40ba6b82c4b1f5e1b5e50a1638ffe0a5dba0d8805c190a05f8.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/fa657351d8e89c40ba6b82c4b1f5e1b5e50a1638ffe0a5dba0d8805c190a05f8.meta.json @@ -1 +1 @@ -{"etag": "\"be78f70aa2f9fcf03ab6fbb1ae2ab565\"", "url": "https://schema.cloudformation.eu-west-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"0b6926f44eb27ac6ab4deb1913cdfb65\"", "url": "https://schema.cloudformation.eu-west-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/ff02b7d808c1c00053f09aa43a50addf3b69878d351cffd417dc9a457df808af.meta.json b/src/cfnlint/data/DownloadsMetadata/ff02b7d808c1c00053f09aa43a50addf3b69878d351cffd417dc9a457df808af.meta.json index f4038d4ea6..c04dcacf72 100644 --- a/src/cfnlint/data/DownloadsMetadata/ff02b7d808c1c00053f09aa43a50addf3b69878d351cffd417dc9a457df808af.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/ff02b7d808c1c00053f09aa43a50addf3b69878d351cffd417dc9a457df808af.meta.json @@ -1 +1 @@ -{"etag": "\"126060e994baed7d4a156ad777cc3287\"", "url": "https://schema.cloudformation.ap-northeast-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"5aca3f8055242f6cdd796a2d170d25fc\"", "url": "https://schema.cloudformation.ap-northeast-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/Serverless/ManagedPolicies.json b/src/cfnlint/data/Serverless/ManagedPolicies.json index eebc776e2b..6e8c8fbe4a 100644 --- a/src/cfnlint/data/Serverless/ManagedPolicies.json +++ b/src/cfnlint/data/Serverless/ManagedPolicies.json @@ -160,6 +160,8 @@ "AWSDataExchangeFullAccess": "arn:aws:iam::aws:policy/AWSDataExchangeFullAccess", "AWSDataExchangeProviderFullAccess": "arn:aws:iam::aws:policy/AWSDataExchangeProviderFullAccess", "AWSDataExchangeReadOnly": "arn:aws:iam::aws:policy/AWSDataExchangeReadOnly", + "AWSDataExchangeServiceRolePolicyForLicenseManagement": "arn:aws:iam::aws:policy/aws-service-role/AWSDataExchangeServiceRolePolicyForLicenseManagement", + "AWSDataExchangeServiceRolePolicyForOrganizationDiscovery": "arn:aws:iam::aws:policy/aws-service-role/AWSDataExchangeServiceRolePolicyForOrganizationDiscovery", "AWSDataExchangeSubscriberFullAccess": "arn:aws:iam::aws:policy/AWSDataExchangeSubscriberFullAccess", "AWSDataLifecycleManagerSSMFullAccess": "arn:aws:iam::aws:policy/service-role/AWSDataLifecycleManagerSSMFullAccess", "AWSDataLifecycleManagerServiceRole": "arn:aws:iam::aws:policy/service-role/AWSDataLifecycleManagerServiceRole", @@ -525,6 +527,7 @@ "AWSServiceRolePolicyForBackupRestoreTesting": "arn:aws:iam::aws:policy/aws-service-role/AWSServiceRolePolicyForBackupRestoreTesting", "AWSShieldDRTAccessPolicy": "arn:aws:iam::aws:policy/service-role/AWSShieldDRTAccessPolicy", "AWSShieldServiceRolePolicy": "arn:aws:iam::aws:policy/aws-service-role/AWSShieldServiceRolePolicy", + "AWSSocialMessagingServiceRolePolicy": "arn:aws:iam::aws:policy/aws-service-role/AWSSocialMessagingServiceRolePolicy", "AWSStepFunctionsConsoleFullAccess": "arn:aws:iam::aws:policy/AWSStepFunctionsConsoleFullAccess", "AWSStepFunctionsFullAccess": "arn:aws:iam::aws:policy/AWSStepFunctionsFullAccess", "AWSStepFunctionsReadOnlyAccess": "arn:aws:iam::aws:policy/AWSStepFunctionsReadOnlyAccess", @@ -1020,6 +1023,8 @@ "AmazonVPCReachabilityAnalyzerFullAccessPolicy": "arn:aws:iam::aws:policy/AmazonVPCReachabilityAnalyzerFullAccessPolicy", "AmazonVPCReachabilityAnalyzerPathComponentReadPolicy": "arn:aws:iam::aws:policy/AmazonVPCReachabilityAnalyzerPathComponentReadPolicy", "AmazonVPCReadOnlyAccess": "arn:aws:iam::aws:policy/AmazonVPCReadOnlyAccess", + "AmazonVerifiedPermissionsFullAccess": "arn:aws:iam::aws:policy/AmazonVerifiedPermissionsFullAccess", + "AmazonVerifiedPermissionsReadOnlyAccess": "arn:aws:iam::aws:policy/AmazonVerifiedPermissionsReadOnlyAccess", "AmazonWorkDocsFullAccess": "arn:aws:iam::aws:policy/AmazonWorkDocsFullAccess", "AmazonWorkDocsReadOnlyAccess": "arn:aws:iam::aws:policy/AmazonWorkDocsReadOnlyAccess", "AmazonWorkMailEventsServiceRolePolicy": "arn:aws:iam::aws:policy/aws-service-role/AmazonWorkMailEventsServiceRolePolicy", @@ -1201,6 +1206,7 @@ "ROSAWorkerInstancePolicy": "arn:aws:iam::aws:policy/service-role/ROSAWorkerInstancePolicy", "ReadOnlyAccess": "arn:aws:iam::aws:policy/ReadOnlyAccess", "ResourceGroupsServiceRolePolicy": "arn:aws:iam::aws:policy/aws-service-role/ResourceGroupsServiceRolePolicy", + "ResourceGroupsTaggingAPITagUntagSupportedResources": "arn:aws:iam::aws:policy/ResourceGroupsTaggingAPITagUntagSupportedResources", "ResourceGroupsandTagEditorFullAccess": "arn:aws:iam::aws:policy/ResourceGroupsandTagEditorFullAccess", "ResourceGroupsandTagEditorReadOnlyAccess": "arn:aws:iam::aws:policy/ResourceGroupsandTagEditorReadOnlyAccess", "Route53RecoveryReadinessServiceRolePolicy": "arn:aws:iam::aws:policy/aws-service-role/Route53RecoveryReadinessServiceRolePolicy", diff --git a/src/cfnlint/data/schemas/providers/af_south_1/__init__.py b/src/cfnlint/data/schemas/providers/af_south_1/__init__.py index 05689fb925..85e7fa7a3b 100644 --- a/src/cfnlint/data/schemas/providers/af_south_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/af_south_1/__init__.py @@ -1181,9 +1181,7 @@ "aws-ecs-cluster.json", "aws-ecs-clustercapacityproviderassociations.json", "aws-ecs-primarytaskset.json", - "aws-ecs-service.json", "aws-ecs-taskdefinition.json", - "aws-ecs-taskset.json", "aws-efs-accesspoint.json", "aws-efs-filesystem.json", "aws-efs-mounttarget.json", @@ -1270,7 +1268,6 @@ "aws-groundstation-config.json", "aws-groundstation-dataflowendpointgroup.json", "aws-groundstation-missionprofile.json", - "aws-guardduty-detector.json", "aws-guardduty-filter.json", "aws-guardduty-ipset.json", "aws-guardduty-malwareprotectionplan.json", @@ -1305,7 +1302,6 @@ "aws-inspectorv2-cisscanconfiguration.json", "aws-inspectorv2-filter.json", "aws-internetmonitor-monitor.json", - "aws-kinesis-stream.json", "aws-kinesisanalyticsv2-application.json", "aws-kinesisfirehose-deliverystream.json", "aws-kms-alias.json", @@ -1374,7 +1370,6 @@ "aws-neptune-dbsubnetgroup.json", "aws-neptune-eventsubscription.json", "aws-networkfirewall-firewall.json", - "aws-networkfirewall-firewallpolicy.json", "aws-networkfirewall-loggingconfiguration.json", "aws-networkfirewall-rulegroup.json", "aws-networkfirewall-tlsinspectionconfiguration.json", @@ -1423,7 +1418,6 @@ "aws-quicksight-vpcconnection.json", "aws-ram-permission.json", "aws-ram-resourceshare.json", - "aws-rds-dbcluster.json", "aws-rds-dbclusterparametergroup.json", "aws-rds-dbinstance.json", "aws-rds-dbparametergroup.json", @@ -1432,7 +1426,6 @@ "aws-rds-dbproxytargetgroup.json", "aws-rds-dbsecuritygroup.json", "aws-rds-dbsecuritygroupingress.json", - "aws-rds-dbsubnetgroup.json", "aws-rds-eventsubscription.json", "aws-rds-globalcluster.json", "aws-rds-integration.json", @@ -1496,6 +1489,7 @@ "aws-sagemaker-endpointconfig.json", "aws-sagemaker-featuregroup.json", "aws-sagemaker-image.json", + "aws-sagemaker-imageversion.json", "aws-sagemaker-inferenceexperiment.json", "aws-sagemaker-mlflowtrackingserver.json", "aws-sagemaker-model.json", diff --git a/src/cfnlint/data/schemas/providers/af_south_1/aws-ecs-service.json b/src/cfnlint/data/schemas/providers/af_south_1/aws-ecs-service.json new file mode 100644 index 0000000000..ba7baa1de3 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/af_south_1/aws-ecs-service.json @@ -0,0 +1,585 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/DeploymentController", + "/properties/LaunchType", + "/properties/Role", + "/properties/SchedulingStrategy", + "/properties/ServiceName" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "CapacityProviderStrategyItem": { + "additionalProperties": false, + "properties": { + "Base": { + "type": "integer" + }, + "CapacityProvider": { + "type": "string" + }, + "Weight": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentAlarms": { + "additionalProperties": false, + "properties": { + "AlarmNames": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "AlarmNames", + "Rollback", + "Enable" + ], + "type": "object" + }, + "DeploymentCircuitBreaker": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "Enable", + "Rollback" + ], + "type": "object" + }, + "DeploymentConfiguration": { + "additionalProperties": false, + "properties": { + "Alarms": { + "$ref": "#/definitions/DeploymentAlarms" + }, + "DeploymentCircuitBreaker": { + "$ref": "#/definitions/DeploymentCircuitBreaker" + }, + "MaximumPercent": { + "type": "integer" + }, + "MinimumHealthyPercent": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentController": { + "additionalProperties": false, + "properties": { + "Type": { + "enum": [ + "CODE_DEPLOY", + "ECS", + "EXTERNAL" + ], + "type": "string" + } + }, + "type": "object" + }, + "EBSTagSpecification": { + "additionalProperties": false, + "properties": { + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "ResourceType": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "ResourceType" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "LoadBalancerName": { + "type": "string" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "LogConfiguration": { + "additionalProperties": false, + "properties": { + "LogDriver": { + "type": "string" + }, + "Options": { + "additionalProperties": false, + "patternProperties": { + ".{1,}": { + "type": "string" + } + }, + "type": "object" + }, + "SecretOptions": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Secret" + }, + "type": "array" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsvpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "PlacementConstraint": { + "additionalProperties": false, + "properties": { + "Expression": { + "type": "string" + }, + "Type": { + "enum": [ + "distinctInstance", + "memberOf" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "PlacementStrategy": { + "additionalProperties": false, + "properties": { + "Field": { + "type": "string" + }, + "Type": { + "enum": [ + "binpack", + "random", + "spread" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "Secret": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "ValueFrom": { + "type": "string" + } + }, + "required": [ + "Name", + "ValueFrom" + ], + "type": "object" + }, + "ServiceConnectClientAlias": { + "additionalProperties": false, + "properties": { + "DnsName": { + "type": "string" + }, + "Port": { + "type": "integer" + } + }, + "required": [ + "Port" + ], + "type": "object" + }, + "ServiceConnectConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + }, + "LogConfiguration": { + "$ref": "#/definitions/LogConfiguration" + }, + "Namespace": { + "type": "string" + }, + "Services": { + "items": { + "$ref": "#/definitions/ServiceConnectService" + }, + "type": "array" + } + }, + "required": [ + "Enabled" + ], + "type": "object" + }, + "ServiceConnectService": { + "additionalProperties": false, + "properties": { + "ClientAliases": { + "items": { + "$ref": "#/definitions/ServiceConnectClientAlias" + }, + "type": "array" + }, + "DiscoveryName": { + "type": "string" + }, + "IngressPortOverride": { + "type": "integer" + }, + "PortName": { + "type": "string" + }, + "Timeout": { + "$ref": "#/definitions/TimeoutConfiguration" + }, + "Tls": { + "$ref": "#/definitions/ServiceConnectTlsConfiguration" + } + }, + "required": [ + "PortName" + ], + "type": "object" + }, + "ServiceConnectTlsCertificateAuthority": { + "additionalProperties": false, + "properties": { + "AwsPcaAuthorityArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceConnectTlsConfiguration": { + "additionalProperties": false, + "properties": { + "IssuerCertificateAuthority": { + "$ref": "#/definitions/ServiceConnectTlsCertificateAuthority" + }, + "KmsKey": { + "type": "string" + }, + "RoleArn": { + "type": "string" + } + }, + "required": [ + "IssuerCertificateAuthority" + ], + "type": "object" + }, + "ServiceManagedEBSVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "Encrypted": { + "type": "boolean" + }, + "FilesystemType": { + "type": "string" + }, + "Iops": { + "type": "integer" + }, + "KmsKeyId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SizeInGiB": { + "type": "integer" + }, + "SnapshotId": { + "type": "string" + }, + "TagSpecifications": { + "items": { + "$ref": "#/definitions/EBSTagSpecification" + }, + "type": "array" + }, + "Throughput": { + "type": "integer" + }, + "VolumeType": { + "type": "string" + } + }, + "required": [ + "RoleArn" + ], + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "ManagedEBSVolume": { + "$ref": "#/definitions/ServiceManagedEBSVolumeConfiguration" + }, + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + }, + "TimeoutConfiguration": { + "additionalProperties": false, + "properties": { + "IdleTimeoutSeconds": { + "type": "integer" + }, + "PerRequestTimeoutSeconds": { + "type": "integer" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/ServiceArn", + "/properties/Cluster" + ], + "properties": { + "CapacityProviderStrategy": { + "items": { + "$ref": "#/definitions/CapacityProviderStrategyItem" + }, + "type": "array" + }, + "Cluster": { + "type": "string" + }, + "DeploymentConfiguration": { + "$ref": "#/definitions/DeploymentConfiguration" + }, + "DeploymentController": { + "$ref": "#/definitions/DeploymentController" + }, + "DesiredCount": { + "type": "integer" + }, + "EnableECSManagedTags": { + "type": "boolean" + }, + "EnableExecuteCommand": { + "type": "boolean" + }, + "HealthCheckGracePeriodSeconds": { + "type": "integer" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE", + "EXTERNAL" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "Name": { + "type": "string" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlacementConstraints": { + "items": { + "$ref": "#/definitions/PlacementConstraint" + }, + "type": "array" + }, + "PlacementStrategies": { + "items": { + "$ref": "#/definitions/PlacementStrategy" + }, + "type": "array" + }, + "PlatformVersion": { + "default": "LATEST", + "type": "string" + }, + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "Role": { + "type": "string" + }, + "SchedulingStrategy": { + "enum": [ + "DAEMON", + "REPLICA" + ], + "type": "string" + }, + "ServiceArn": { + "type": "string" + }, + "ServiceConnectConfiguration": { + "$ref": "#/definitions/ServiceConnectConfiguration" + }, + "ServiceName": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + }, + "VolumeConfigurations": { + "items": { + "$ref": "#/definitions/ServiceVolumeConfiguration" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/ServiceArn", + "/properties/Name" + ], + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::Service", + "writeOnlyProperties": [ + "/properties/ServiceConnectConfiguration", + "/properties/VolumeConfigurations" + ] +} diff --git a/src/cfnlint/data/schemas/providers/cn_north_1/aws-ecs-taskset.json b/src/cfnlint/data/schemas/providers/af_south_1/aws-ecs-taskset.json similarity index 87% rename from src/cfnlint/data/schemas/providers/cn_north_1/aws-ecs-taskset.json rename to src/cfnlint/data/schemas/providers/af_south_1/aws-ecs-taskset.json index 663d1205f9..3491488499 100644 --- a/src/cfnlint/data/schemas/providers/cn_north_1/aws-ecs-taskset.json +++ b/src/cfnlint/data/schemas/providers/af_south_1/aws-ecs-taskset.json @@ -9,8 +9,7 @@ "/properties/PlatformVersion", "/properties/Service", "/properties/ServiceRegistries", - "/properties/TaskDefinition", - "/properties/CapacityProviderStrategy" + "/properties/TaskDefinition" ], "definitions": { "AwsVpcConfiguration": { @@ -45,21 +44,6 @@ ], "type": "object" }, - "CapacityProviderStrategyItem": { - "additionalProperties": false, - "properties": { - "Base": { - "type": "integer" - }, - "CapacityProvider": { - "type": "string" - }, - "Weight": { - "type": "integer" - } - }, - "type": "object" - }, "LoadBalancer": { "additionalProperties": false, "properties": { @@ -138,12 +122,6 @@ "/properties/Id" ], "properties": { - "CapacityProviderStrategy": { - "items": { - "$ref": "#/definitions/CapacityProviderStrategyItem" - }, - "type": "array" - }, "Cluster": { "type": "string" }, diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/aws-guardduty-detector.json b/src/cfnlint/data/schemas/providers/af_south_1/aws-guardduty-detector.json similarity index 95% rename from src/cfnlint/data/schemas/providers/eu_central_1/aws-guardduty-detector.json rename to src/cfnlint/data/schemas/providers/af_south_1/aws-guardduty-detector.json index 0632b1017c..efaad17ff9 100644 --- a/src/cfnlint/data/schemas/providers/eu_central_1/aws-guardduty-detector.json +++ b/src/cfnlint/data/schemas/providers/af_south_1/aws-guardduty-detector.json @@ -36,7 +36,6 @@ "additionalProperties": false, "properties": { "AdditionalConfiguration": { - "insertionOrder": false, "items": { "$ref": "#/definitions/CFNFeatureAdditionalConfiguration" }, @@ -146,7 +145,6 @@ "type": "boolean" }, "Features": { - "insertionOrder": false, "items": { "$ref": "#/definitions/CFNFeatureConfiguration" }, @@ -164,7 +162,6 @@ "type": "string" }, "Tags": { - "insertionOrder": false, "items": { "$ref": "#/definitions/TagItem" }, @@ -180,8 +177,7 @@ "tagging": { "cloudFormationSystemTags": false, "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, + "tagUpdatable": false, "taggable": true }, "typeName": "AWS::GuardDuty::Detector" diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_1/aws-kinesis-stream.json b/src/cfnlint/data/schemas/providers/af_south_1/aws-kinesis-stream.json similarity index 87% rename from src/cfnlint/data/schemas/providers/ap_southeast_1/aws-kinesis-stream.json rename to src/cfnlint/data/schemas/providers/af_south_1/aws-kinesis-stream.json index 45b4ce6a6b..be1bc65c07 100644 --- a/src/cfnlint/data/schemas/providers/ap_southeast_1/aws-kinesis-stream.json +++ b/src/cfnlint/data/schemas/providers/af_south_1/aws-kinesis-stream.json @@ -1,5 +1,4 @@ { - "$comment": "Do not set SystemTags to true without implementing a fail-open mechanism. It should not fail when adding systemTags for customers without AddTagsToStream Permission. Cloudformation will automatically add system tags even if customer does not have the AddTagsToStream permission. COE: https://www.coe.a2z.com/coe/236297/content", "additionalProperties": false, "createOnlyProperties": [ "/properties/Name" diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-networkfirewall-firewallpolicy.json b/src/cfnlint/data/schemas/providers/af_south_1/aws-networkfirewall-firewallpolicy.json similarity index 96% rename from src/cfnlint/data/schemas/providers/ap_southeast_2/aws-networkfirewall-firewallpolicy.json rename to src/cfnlint/data/schemas/providers/af_south_1/aws-networkfirewall-firewallpolicy.json index 6c4c8f2af1..973b595561 100644 --- a/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-networkfirewall-firewallpolicy.json +++ b/src/cfnlint/data/schemas/providers/af_south_1/aws-networkfirewall-firewallpolicy.json @@ -187,17 +187,6 @@ "StatefulEngineOptions": { "additionalProperties": false, "properties": { - "FlowTimeouts": { - "additionalProperties": false, - "properties": { - "TcpIdleTimeoutSeconds": { - "maximum": 600, - "minimum": 60, - "type": "integer" - } - }, - "type": "object" - }, "RuleOrder": { "$ref": "#/definitions/RuleOrder" }, diff --git a/src/cfnlint/data/schemas/providers/eu_central_2/aws-rds-dbcluster.json b/src/cfnlint/data/schemas/providers/af_south_1/aws-rds-dbcluster.json similarity index 98% rename from src/cfnlint/data/schemas/providers/eu_central_2/aws-rds-dbcluster.json rename to src/cfnlint/data/schemas/providers/af_south_1/aws-rds-dbcluster.json index 9748b231ac..46000178b5 100644 --- a/src/cfnlint/data/schemas/providers/eu_central_2/aws-rds-dbcluster.json +++ b/src/cfnlint/data/schemas/providers/af_south_1/aws-rds-dbcluster.json @@ -177,7 +177,6 @@ "type": "string" }, "DBClusterParameterGroupName": { - "default": "default.aurora5.6", "type": "string" }, "DBClusterResourceId": { @@ -265,7 +264,6 @@ "type": "string" }, "MonitoringInterval": { - "default": 0, "type": "integer" }, "MonitoringRoleArn": { @@ -305,7 +303,6 @@ "type": "string" }, "RestoreType": { - "default": "full-copy", "type": "string" }, "ScalingConfiguration": { @@ -356,7 +353,7 @@ "/properties/DBClusterIdentifier": "$lowercase(DBClusterIdentifier)", "/properties/DBClusterParameterGroupName": "$lowercase(DBClusterParameterGroupName)", "/properties/DBSubnetGroupName": "$lowercase(DBSubnetGroupName)", - "/properties/EnableHttpEndpoint": "$lowercase($string(EngineMode)) = 'serverless' ? EnableHttpEndpoint : ($lowercase($string(Engine)) = 'aurora-postgresql' ? EnableHttpEndpoint : false )", + "/properties/EnableHttpEndpoint": "$lowercase($string(EngineMode)) = 'serverless' ? EnableHttpEndpoint : ($lowercase($string(Engine)) in ['aurora-postgresql', 'aurora-mysql'] ? EnableHttpEndpoint : false )", "/properties/Engine": "$lowercase(Engine)", "/properties/EngineVersion": "$join([$string(EngineVersion), \".*\"])", "/properties/KmsKeyId": "$join([\"arn:(aws)[-]{0,1}[a-z]{0,2}[-]{0,1}[a-z]{0,3}:kms:[a-z]{2}[-]{1}[a-z]{3,10}[-]{0,1}[a-z]{0,10}[-]{1}[1-3]{1}:[0-9]{12}[:]{1}key\\/\", KmsKeyId])", diff --git a/src/cfnlint/data/schemas/providers/us_west_1/aws-rds-eventsubscription.json b/src/cfnlint/data/schemas/providers/af_south_1/aws-rds-dbsubnetgroup.json similarity index 62% rename from src/cfnlint/data/schemas/providers/us_west_1/aws-rds-eventsubscription.json rename to src/cfnlint/data/schemas/providers/af_south_1/aws-rds-dbsubnetgroup.json index 10fa51a2d0..d228afbbad 100644 --- a/src/cfnlint/data/schemas/providers/us_west_1/aws-rds-eventsubscription.json +++ b/src/cfnlint/data/schemas/providers/af_south_1/aws-rds-dbsubnetgroup.json @@ -1,8 +1,7 @@ { "additionalProperties": false, "createOnlyProperties": [ - "/properties/SubscriptionName", - "/properties/SnsTopicArn" + "/properties/DBSubnetGroupName" ], "definitions": { "Tag": { @@ -26,37 +25,22 @@ } }, "primaryIdentifier": [ - "/properties/SubscriptionName" + "/properties/DBSubnetGroupName" ], "properties": { - "Enabled": { - "default": true, - "type": "boolean" - }, - "EventCategories": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true + "DBSubnetGroupDescription": { + "type": "string" }, - "SnsTopicArn": { + "DBSubnetGroupName": { "type": "string" }, - "SourceIds": { + "SubnetIds": { "insertionOrder": false, "items": { "type": "string" }, "type": "array", - "uniqueItems": true - }, - "SourceType": { - "type": "string" - }, - "SubscriptionName": { - "maxLength": 255, - "type": "string" + "uniqueItems": false }, "Tags": { "insertionOrder": false, @@ -69,11 +53,19 @@ } }, "propertyTransform": { - "/properties/SubscriptionName": "$lowercase(SubscriptionName)" + "/properties/DBSubnetGroupName": "$lowercase(DBSubnetGroupName)" }, "required": [ - "SnsTopicArn" + "DBSubnetGroupDescription", + "SubnetIds" ], "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-rds", - "typeName": "AWS::RDS::EventSubscription" + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::RDS::DBSubnetGroup" } diff --git a/src/cfnlint/data/schemas/providers/ap_east_1/__init__.py b/src/cfnlint/data/schemas/providers/ap_east_1/__init__.py index f18df1390e..f631e26f25 100644 --- a/src/cfnlint/data/schemas/providers/ap_east_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_east_1/__init__.py @@ -859,6 +859,7 @@ "aws-apigatewayv2-route.json", "aws-apigatewayv2-routeresponse.json", "aws-apigatewayv2-stage.json", + "aws-apigatewayv2-vpclink.json", "aws-appconfig-application.json", "aws-appconfig-configurationprofile.json", "aws-appconfig-deployment.json", @@ -1135,9 +1136,7 @@ "aws-ecs-cluster.json", "aws-ecs-clustercapacityproviderassociations.json", "aws-ecs-primarytaskset.json", - "aws-ecs-service.json", "aws-ecs-taskdefinition.json", - "aws-ecs-taskset.json", "aws-efs-accesspoint.json", "aws-efs-filesystem.json", "aws-efs-mounttarget.json", @@ -1220,7 +1219,6 @@ "aws-glue-trigger.json", "aws-glue-usageprofile.json", "aws-glue-workflow.json", - "aws-guardduty-detector.json", "aws-guardduty-filter.json", "aws-guardduty-ipset.json", "aws-guardduty-malwareprotectionplan.json", @@ -1285,7 +1283,6 @@ "aws-iot-thingtype.json", "aws-iot-topicrule.json", "aws-iot-topicruledestination.json", - "aws-kinesis-stream.json", "aws-kinesisanalytics-applicationoutput.json", "aws-kinesisanalyticsv2-application.json", "aws-kinesisanalyticsv2-applicationoutput.json", @@ -1353,7 +1350,6 @@ "aws-neptune-dbsubnetgroup.json", "aws-neptune-eventsubscription.json", "aws-networkfirewall-firewall.json", - "aws-networkfirewall-firewallpolicy.json", "aws-networkfirewall-loggingconfiguration.json", "aws-networkfirewall-rulegroup.json", "aws-networkfirewall-tlsinspectionconfiguration.json", @@ -1465,6 +1461,7 @@ "aws-sagemaker-endpointconfig.json", "aws-sagemaker-featuregroup.json", "aws-sagemaker-image.json", + "aws-sagemaker-imageversion.json", "aws-sagemaker-inferenceexperiment.json", "aws-sagemaker-mlflowtrackingserver.json", "aws-sagemaker-model.json", diff --git a/src/cfnlint/data/schemas/providers/ap_east_1/aws-apigatewayv2-vpclink.json b/src/cfnlint/data/schemas/providers/ap_east_1/aws-apigatewayv2-vpclink.json deleted file mode 100644 index 6122cf0cee..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_east_1/aws-apigatewayv2-vpclink.json +++ /dev/null @@ -1,51 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/SecurityGroupIds", - "/properties/SubnetIds" - ], - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "Id": { - "type": "string" - }, - "Name": { - "type": "string" - }, - "SecurityGroupIds": { - "format": "AWS::EC2::SecurityGroup.Ids", - "items": { - "format": "AWS::EC2::SecurityGroup.GroupId", - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "SubnetIds": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "Tags": { - "additionalProperties": false, - "patternProperties": { - ".*": { - "type": "string" - } - }, - "type": "object" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "SubnetIds", - "Name" - ], - "typeName": "AWS::ApiGatewayV2::VpcLink" -} diff --git a/src/cfnlint/data/schemas/providers/ap_east_1/aws-ecs-service.json b/src/cfnlint/data/schemas/providers/ap_east_1/aws-ecs-service.json new file mode 100644 index 0000000000..ba7baa1de3 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_east_1/aws-ecs-service.json @@ -0,0 +1,585 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/DeploymentController", + "/properties/LaunchType", + "/properties/Role", + "/properties/SchedulingStrategy", + "/properties/ServiceName" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "CapacityProviderStrategyItem": { + "additionalProperties": false, + "properties": { + "Base": { + "type": "integer" + }, + "CapacityProvider": { + "type": "string" + }, + "Weight": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentAlarms": { + "additionalProperties": false, + "properties": { + "AlarmNames": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "AlarmNames", + "Rollback", + "Enable" + ], + "type": "object" + }, + "DeploymentCircuitBreaker": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "Enable", + "Rollback" + ], + "type": "object" + }, + "DeploymentConfiguration": { + "additionalProperties": false, + "properties": { + "Alarms": { + "$ref": "#/definitions/DeploymentAlarms" + }, + "DeploymentCircuitBreaker": { + "$ref": "#/definitions/DeploymentCircuitBreaker" + }, + "MaximumPercent": { + "type": "integer" + }, + "MinimumHealthyPercent": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentController": { + "additionalProperties": false, + "properties": { + "Type": { + "enum": [ + "CODE_DEPLOY", + "ECS", + "EXTERNAL" + ], + "type": "string" + } + }, + "type": "object" + }, + "EBSTagSpecification": { + "additionalProperties": false, + "properties": { + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "ResourceType": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "ResourceType" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "LoadBalancerName": { + "type": "string" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "LogConfiguration": { + "additionalProperties": false, + "properties": { + "LogDriver": { + "type": "string" + }, + "Options": { + "additionalProperties": false, + "patternProperties": { + ".{1,}": { + "type": "string" + } + }, + "type": "object" + }, + "SecretOptions": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Secret" + }, + "type": "array" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsvpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "PlacementConstraint": { + "additionalProperties": false, + "properties": { + "Expression": { + "type": "string" + }, + "Type": { + "enum": [ + "distinctInstance", + "memberOf" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "PlacementStrategy": { + "additionalProperties": false, + "properties": { + "Field": { + "type": "string" + }, + "Type": { + "enum": [ + "binpack", + "random", + "spread" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "Secret": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "ValueFrom": { + "type": "string" + } + }, + "required": [ + "Name", + "ValueFrom" + ], + "type": "object" + }, + "ServiceConnectClientAlias": { + "additionalProperties": false, + "properties": { + "DnsName": { + "type": "string" + }, + "Port": { + "type": "integer" + } + }, + "required": [ + "Port" + ], + "type": "object" + }, + "ServiceConnectConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + }, + "LogConfiguration": { + "$ref": "#/definitions/LogConfiguration" + }, + "Namespace": { + "type": "string" + }, + "Services": { + "items": { + "$ref": "#/definitions/ServiceConnectService" + }, + "type": "array" + } + }, + "required": [ + "Enabled" + ], + "type": "object" + }, + "ServiceConnectService": { + "additionalProperties": false, + "properties": { + "ClientAliases": { + "items": { + "$ref": "#/definitions/ServiceConnectClientAlias" + }, + "type": "array" + }, + "DiscoveryName": { + "type": "string" + }, + "IngressPortOverride": { + "type": "integer" + }, + "PortName": { + "type": "string" + }, + "Timeout": { + "$ref": "#/definitions/TimeoutConfiguration" + }, + "Tls": { + "$ref": "#/definitions/ServiceConnectTlsConfiguration" + } + }, + "required": [ + "PortName" + ], + "type": "object" + }, + "ServiceConnectTlsCertificateAuthority": { + "additionalProperties": false, + "properties": { + "AwsPcaAuthorityArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceConnectTlsConfiguration": { + "additionalProperties": false, + "properties": { + "IssuerCertificateAuthority": { + "$ref": "#/definitions/ServiceConnectTlsCertificateAuthority" + }, + "KmsKey": { + "type": "string" + }, + "RoleArn": { + "type": "string" + } + }, + "required": [ + "IssuerCertificateAuthority" + ], + "type": "object" + }, + "ServiceManagedEBSVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "Encrypted": { + "type": "boolean" + }, + "FilesystemType": { + "type": "string" + }, + "Iops": { + "type": "integer" + }, + "KmsKeyId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SizeInGiB": { + "type": "integer" + }, + "SnapshotId": { + "type": "string" + }, + "TagSpecifications": { + "items": { + "$ref": "#/definitions/EBSTagSpecification" + }, + "type": "array" + }, + "Throughput": { + "type": "integer" + }, + "VolumeType": { + "type": "string" + } + }, + "required": [ + "RoleArn" + ], + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "ManagedEBSVolume": { + "$ref": "#/definitions/ServiceManagedEBSVolumeConfiguration" + }, + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + }, + "TimeoutConfiguration": { + "additionalProperties": false, + "properties": { + "IdleTimeoutSeconds": { + "type": "integer" + }, + "PerRequestTimeoutSeconds": { + "type": "integer" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/ServiceArn", + "/properties/Cluster" + ], + "properties": { + "CapacityProviderStrategy": { + "items": { + "$ref": "#/definitions/CapacityProviderStrategyItem" + }, + "type": "array" + }, + "Cluster": { + "type": "string" + }, + "DeploymentConfiguration": { + "$ref": "#/definitions/DeploymentConfiguration" + }, + "DeploymentController": { + "$ref": "#/definitions/DeploymentController" + }, + "DesiredCount": { + "type": "integer" + }, + "EnableECSManagedTags": { + "type": "boolean" + }, + "EnableExecuteCommand": { + "type": "boolean" + }, + "HealthCheckGracePeriodSeconds": { + "type": "integer" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE", + "EXTERNAL" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "Name": { + "type": "string" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlacementConstraints": { + "items": { + "$ref": "#/definitions/PlacementConstraint" + }, + "type": "array" + }, + "PlacementStrategies": { + "items": { + "$ref": "#/definitions/PlacementStrategy" + }, + "type": "array" + }, + "PlatformVersion": { + "default": "LATEST", + "type": "string" + }, + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "Role": { + "type": "string" + }, + "SchedulingStrategy": { + "enum": [ + "DAEMON", + "REPLICA" + ], + "type": "string" + }, + "ServiceArn": { + "type": "string" + }, + "ServiceConnectConfiguration": { + "$ref": "#/definitions/ServiceConnectConfiguration" + }, + "ServiceName": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + }, + "VolumeConfigurations": { + "items": { + "$ref": "#/definitions/ServiceVolumeConfiguration" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/ServiceArn", + "/properties/Name" + ], + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::Service", + "writeOnlyProperties": [ + "/properties/ServiceConnectConfiguration", + "/properties/VolumeConfigurations" + ] +} diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/aws-ecs-taskset.json b/src/cfnlint/data/schemas/providers/ap_east_1/aws-ecs-taskset.json similarity index 87% rename from src/cfnlint/data/schemas/providers/eu_central_1/aws-ecs-taskset.json rename to src/cfnlint/data/schemas/providers/ap_east_1/aws-ecs-taskset.json index 663d1205f9..3491488499 100644 --- a/src/cfnlint/data/schemas/providers/eu_central_1/aws-ecs-taskset.json +++ b/src/cfnlint/data/schemas/providers/ap_east_1/aws-ecs-taskset.json @@ -9,8 +9,7 @@ "/properties/PlatformVersion", "/properties/Service", "/properties/ServiceRegistries", - "/properties/TaskDefinition", - "/properties/CapacityProviderStrategy" + "/properties/TaskDefinition" ], "definitions": { "AwsVpcConfiguration": { @@ -45,21 +44,6 @@ ], "type": "object" }, - "CapacityProviderStrategyItem": { - "additionalProperties": false, - "properties": { - "Base": { - "type": "integer" - }, - "CapacityProvider": { - "type": "string" - }, - "Weight": { - "type": "integer" - } - }, - "type": "object" - }, "LoadBalancer": { "additionalProperties": false, "properties": { @@ -138,12 +122,6 @@ "/properties/Id" ], "properties": { - "CapacityProviderStrategy": { - "items": { - "$ref": "#/definitions/CapacityProviderStrategyItem" - }, - "type": "array" - }, "Cluster": { "type": "string" }, diff --git a/src/cfnlint/data/schemas/providers/us_west_2/aws-guardduty-detector.json b/src/cfnlint/data/schemas/providers/ap_east_1/aws-guardduty-detector.json similarity index 95% rename from src/cfnlint/data/schemas/providers/us_west_2/aws-guardduty-detector.json rename to src/cfnlint/data/schemas/providers/ap_east_1/aws-guardduty-detector.json index 0632b1017c..efaad17ff9 100644 --- a/src/cfnlint/data/schemas/providers/us_west_2/aws-guardduty-detector.json +++ b/src/cfnlint/data/schemas/providers/ap_east_1/aws-guardduty-detector.json @@ -36,7 +36,6 @@ "additionalProperties": false, "properties": { "AdditionalConfiguration": { - "insertionOrder": false, "items": { "$ref": "#/definitions/CFNFeatureAdditionalConfiguration" }, @@ -146,7 +145,6 @@ "type": "boolean" }, "Features": { - "insertionOrder": false, "items": { "$ref": "#/definitions/CFNFeatureConfiguration" }, @@ -164,7 +162,6 @@ "type": "string" }, "Tags": { - "insertionOrder": false, "items": { "$ref": "#/definitions/TagItem" }, @@ -180,8 +177,7 @@ "tagging": { "cloudFormationSystemTags": false, "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, + "tagUpdatable": false, "taggable": true }, "typeName": "AWS::GuardDuty::Detector" diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/aws-kinesis-stream.json b/src/cfnlint/data/schemas/providers/ap_east_1/aws-kinesis-stream.json similarity index 87% rename from src/cfnlint/data/schemas/providers/eu_central_1/aws-kinesis-stream.json rename to src/cfnlint/data/schemas/providers/ap_east_1/aws-kinesis-stream.json index 45b4ce6a6b..be1bc65c07 100644 --- a/src/cfnlint/data/schemas/providers/eu_central_1/aws-kinesis-stream.json +++ b/src/cfnlint/data/schemas/providers/ap_east_1/aws-kinesis-stream.json @@ -1,5 +1,4 @@ { - "$comment": "Do not set SystemTags to true without implementing a fail-open mechanism. It should not fail when adding systemTags for customers without AddTagsToStream Permission. Cloudformation will automatically add system tags even if customer does not have the AddTagsToStream permission. COE: https://www.coe.a2z.com/coe/236297/content", "additionalProperties": false, "createOnlyProperties": [ "/properties/Name" diff --git a/src/cfnlint/data/schemas/providers/cn_north_1/aws-networkfirewall-firewallpolicy.json b/src/cfnlint/data/schemas/providers/ap_east_1/aws-networkfirewall-firewallpolicy.json similarity index 96% rename from src/cfnlint/data/schemas/providers/cn_north_1/aws-networkfirewall-firewallpolicy.json rename to src/cfnlint/data/schemas/providers/ap_east_1/aws-networkfirewall-firewallpolicy.json index 6c4c8f2af1..973b595561 100644 --- a/src/cfnlint/data/schemas/providers/cn_north_1/aws-networkfirewall-firewallpolicy.json +++ b/src/cfnlint/data/schemas/providers/ap_east_1/aws-networkfirewall-firewallpolicy.json @@ -187,17 +187,6 @@ "StatefulEngineOptions": { "additionalProperties": false, "properties": { - "FlowTimeouts": { - "additionalProperties": false, - "properties": { - "TcpIdleTimeoutSeconds": { - "maximum": 600, - "minimum": 60, - "type": "integer" - } - }, - "type": "object" - }, "RuleOrder": { "$ref": "#/definitions/RuleOrder" }, diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_1/__init__.py b/src/cfnlint/data/schemas/providers/ap_northeast_1/__init__.py index e14b185399..1284fae235 100644 --- a/src/cfnlint/data/schemas/providers/ap_northeast_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_northeast_1/__init__.py @@ -713,6 +713,7 @@ "AWS::Kendra::Faq", "AWS::Kendra::Index", "AWS::KendraRanking::ExecutionPlan", + "AWS::Kinesis::ResourcePolicy", "AWS::Kinesis::Stream", "AWS::Kinesis::StreamConsumer", "AWS::KinesisAnalytics::Application", @@ -1706,9 +1707,7 @@ "aws-ecs-cluster.json", "aws-ecs-clustercapacityproviderassociations.json", "aws-ecs-primarytaskset.json", - "aws-ecs-service.json", "aws-ecs-taskdefinition.json", - "aws-ecs-taskset.json", "aws-efs-accesspoint.json", "aws-efs-filesystem.json", "aws-efs-mounttarget.json", @@ -1957,6 +1956,8 @@ "aws-kendra-faq.json", "aws-kendra-index.json", "aws-kendraranking-executionplan.json", + "aws-kinesis-resourcepolicy.json", + "aws-kinesis-stream.json", "aws-kinesis-streamconsumer.json", "aws-kinesisanalytics-application.json", "aws-kinesisanalytics-applicationoutput.json", @@ -2096,7 +2097,6 @@ "aws-neptunegraph-graph.json", "aws-neptunegraph-privategraphendpoint.json", "aws-networkfirewall-firewall.json", - "aws-networkfirewall-firewallpolicy.json", "aws-networkfirewall-loggingconfiguration.json", "aws-networkfirewall-rulegroup.json", "aws-networkfirewall-tlsinspectionconfiguration.json", @@ -2253,7 +2253,6 @@ "aws-route53resolver-resolverendpoint.json", "aws-route53resolver-resolverqueryloggingconfig.json", "aws-route53resolver-resolverqueryloggingconfigassociation.json", - "aws-route53resolver-resolverrule.json", "aws-route53resolver-resolverruleassociation.json", "aws-rum-appmonitor.json", "aws-s3-accessgrant.json", @@ -2286,7 +2285,6 @@ "aws-sagemaker-endpointconfig.json", "aws-sagemaker-featuregroup.json", "aws-sagemaker-image.json", - "aws-sagemaker-imageversion.json", "aws-sagemaker-inferencecomponent.json", "aws-sagemaker-inferenceexperiment.json", "aws-sagemaker-mlflowtrackingserver.json", diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_1/aws-ecs-service.json b/src/cfnlint/data/schemas/providers/ap_northeast_1/aws-ecs-service.json new file mode 100644 index 0000000000..ba7baa1de3 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_northeast_1/aws-ecs-service.json @@ -0,0 +1,585 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/DeploymentController", + "/properties/LaunchType", + "/properties/Role", + "/properties/SchedulingStrategy", + "/properties/ServiceName" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "CapacityProviderStrategyItem": { + "additionalProperties": false, + "properties": { + "Base": { + "type": "integer" + }, + "CapacityProvider": { + "type": "string" + }, + "Weight": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentAlarms": { + "additionalProperties": false, + "properties": { + "AlarmNames": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "AlarmNames", + "Rollback", + "Enable" + ], + "type": "object" + }, + "DeploymentCircuitBreaker": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "Enable", + "Rollback" + ], + "type": "object" + }, + "DeploymentConfiguration": { + "additionalProperties": false, + "properties": { + "Alarms": { + "$ref": "#/definitions/DeploymentAlarms" + }, + "DeploymentCircuitBreaker": { + "$ref": "#/definitions/DeploymentCircuitBreaker" + }, + "MaximumPercent": { + "type": "integer" + }, + "MinimumHealthyPercent": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentController": { + "additionalProperties": false, + "properties": { + "Type": { + "enum": [ + "CODE_DEPLOY", + "ECS", + "EXTERNAL" + ], + "type": "string" + } + }, + "type": "object" + }, + "EBSTagSpecification": { + "additionalProperties": false, + "properties": { + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "ResourceType": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "ResourceType" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "LoadBalancerName": { + "type": "string" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "LogConfiguration": { + "additionalProperties": false, + "properties": { + "LogDriver": { + "type": "string" + }, + "Options": { + "additionalProperties": false, + "patternProperties": { + ".{1,}": { + "type": "string" + } + }, + "type": "object" + }, + "SecretOptions": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Secret" + }, + "type": "array" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsvpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "PlacementConstraint": { + "additionalProperties": false, + "properties": { + "Expression": { + "type": "string" + }, + "Type": { + "enum": [ + "distinctInstance", + "memberOf" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "PlacementStrategy": { + "additionalProperties": false, + "properties": { + "Field": { + "type": "string" + }, + "Type": { + "enum": [ + "binpack", + "random", + "spread" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "Secret": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "ValueFrom": { + "type": "string" + } + }, + "required": [ + "Name", + "ValueFrom" + ], + "type": "object" + }, + "ServiceConnectClientAlias": { + "additionalProperties": false, + "properties": { + "DnsName": { + "type": "string" + }, + "Port": { + "type": "integer" + } + }, + "required": [ + "Port" + ], + "type": "object" + }, + "ServiceConnectConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + }, + "LogConfiguration": { + "$ref": "#/definitions/LogConfiguration" + }, + "Namespace": { + "type": "string" + }, + "Services": { + "items": { + "$ref": "#/definitions/ServiceConnectService" + }, + "type": "array" + } + }, + "required": [ + "Enabled" + ], + "type": "object" + }, + "ServiceConnectService": { + "additionalProperties": false, + "properties": { + "ClientAliases": { + "items": { + "$ref": "#/definitions/ServiceConnectClientAlias" + }, + "type": "array" + }, + "DiscoveryName": { + "type": "string" + }, + "IngressPortOverride": { + "type": "integer" + }, + "PortName": { + "type": "string" + }, + "Timeout": { + "$ref": "#/definitions/TimeoutConfiguration" + }, + "Tls": { + "$ref": "#/definitions/ServiceConnectTlsConfiguration" + } + }, + "required": [ + "PortName" + ], + "type": "object" + }, + "ServiceConnectTlsCertificateAuthority": { + "additionalProperties": false, + "properties": { + "AwsPcaAuthorityArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceConnectTlsConfiguration": { + "additionalProperties": false, + "properties": { + "IssuerCertificateAuthority": { + "$ref": "#/definitions/ServiceConnectTlsCertificateAuthority" + }, + "KmsKey": { + "type": "string" + }, + "RoleArn": { + "type": "string" + } + }, + "required": [ + "IssuerCertificateAuthority" + ], + "type": "object" + }, + "ServiceManagedEBSVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "Encrypted": { + "type": "boolean" + }, + "FilesystemType": { + "type": "string" + }, + "Iops": { + "type": "integer" + }, + "KmsKeyId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SizeInGiB": { + "type": "integer" + }, + "SnapshotId": { + "type": "string" + }, + "TagSpecifications": { + "items": { + "$ref": "#/definitions/EBSTagSpecification" + }, + "type": "array" + }, + "Throughput": { + "type": "integer" + }, + "VolumeType": { + "type": "string" + } + }, + "required": [ + "RoleArn" + ], + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "ManagedEBSVolume": { + "$ref": "#/definitions/ServiceManagedEBSVolumeConfiguration" + }, + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + }, + "TimeoutConfiguration": { + "additionalProperties": false, + "properties": { + "IdleTimeoutSeconds": { + "type": "integer" + }, + "PerRequestTimeoutSeconds": { + "type": "integer" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/ServiceArn", + "/properties/Cluster" + ], + "properties": { + "CapacityProviderStrategy": { + "items": { + "$ref": "#/definitions/CapacityProviderStrategyItem" + }, + "type": "array" + }, + "Cluster": { + "type": "string" + }, + "DeploymentConfiguration": { + "$ref": "#/definitions/DeploymentConfiguration" + }, + "DeploymentController": { + "$ref": "#/definitions/DeploymentController" + }, + "DesiredCount": { + "type": "integer" + }, + "EnableECSManagedTags": { + "type": "boolean" + }, + "EnableExecuteCommand": { + "type": "boolean" + }, + "HealthCheckGracePeriodSeconds": { + "type": "integer" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE", + "EXTERNAL" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "Name": { + "type": "string" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlacementConstraints": { + "items": { + "$ref": "#/definitions/PlacementConstraint" + }, + "type": "array" + }, + "PlacementStrategies": { + "items": { + "$ref": "#/definitions/PlacementStrategy" + }, + "type": "array" + }, + "PlatformVersion": { + "default": "LATEST", + "type": "string" + }, + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "Role": { + "type": "string" + }, + "SchedulingStrategy": { + "enum": [ + "DAEMON", + "REPLICA" + ], + "type": "string" + }, + "ServiceArn": { + "type": "string" + }, + "ServiceConnectConfiguration": { + "$ref": "#/definitions/ServiceConnectConfiguration" + }, + "ServiceName": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + }, + "VolumeConfigurations": { + "items": { + "$ref": "#/definitions/ServiceVolumeConfiguration" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/ServiceArn", + "/properties/Name" + ], + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::Service", + "writeOnlyProperties": [ + "/properties/ServiceConnectConfiguration", + "/properties/VolumeConfigurations" + ] +} diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_1/aws-ecs-taskset.json b/src/cfnlint/data/schemas/providers/ap_northeast_1/aws-ecs-taskset.json new file mode 100644 index 0000000000..3491488499 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_northeast_1/aws-ecs-taskset.json @@ -0,0 +1,191 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/ExternalId", + "/properties/LaunchType", + "/properties/LoadBalancers", + "/properties/NetworkConfiguration", + "/properties/PlatformVersion", + "/properties/Service", + "/properties/ServiceRegistries", + "/properties/TaskDefinition" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "maxItems": 5, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "maxItems": 16, + "type": "array" + } + }, + "required": [ + "Subnets" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsVpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "Scale": { + "additionalProperties": false, + "properties": { + "Unit": { + "enum": [ + "PERCENT" + ], + "type": "string" + }, + "Value": { + "maximum": 100, + "minimum": 0, + "type": "number" + } + }, + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Cluster", + "/properties/Service", + "/properties/Id" + ], + "properties": { + "Cluster": { + "type": "string" + }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlatformVersion": { + "type": "string" + }, + "Scale": { + "$ref": "#/definitions/Scale" + }, + "Service": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "Cluster", + "Service", + "TaskDefinition" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-ecs.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::TaskSet" +} diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/aws-networkfirewall-firewallpolicy.json b/src/cfnlint/data/schemas/providers/ap_northeast_1/aws-networkfirewall-firewallpolicy.json similarity index 96% rename from src/cfnlint/data/schemas/providers/eu_central_1/aws-networkfirewall-firewallpolicy.json rename to src/cfnlint/data/schemas/providers/ap_northeast_1/aws-networkfirewall-firewallpolicy.json index 6c4c8f2af1..973b595561 100644 --- a/src/cfnlint/data/schemas/providers/eu_central_1/aws-networkfirewall-firewallpolicy.json +++ b/src/cfnlint/data/schemas/providers/ap_northeast_1/aws-networkfirewall-firewallpolicy.json @@ -187,17 +187,6 @@ "StatefulEngineOptions": { "additionalProperties": false, "properties": { - "FlowTimeouts": { - "additionalProperties": false, - "properties": { - "TcpIdleTimeoutSeconds": { - "maximum": 600, - "minimum": 60, - "type": "integer" - } - }, - "type": "object" - }, "RuleOrder": { "$ref": "#/definitions/RuleOrder" }, diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_1/aws-route53resolver-resolverrule.json b/src/cfnlint/data/schemas/providers/ap_northeast_1/aws-route53resolver-resolverrule.json new file mode 100644 index 0000000000..7b24325ca2 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_northeast_1/aws-route53resolver-resolverrule.json @@ -0,0 +1,130 @@ +{ + "additionalProperties": false, + "conditionalCreateOnlyProperties": [ + "/properties/DomainName" + ], + "createOnlyProperties": [ + "/properties/RuleType" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + }, + "TargetAddress": { + "additionalProperties": false, + "properties": { + "Ip": { + "type": "string" + }, + "Ipv6": { + "type": "string" + }, + "Port": { + "maxLength": 65535, + "minLength": 0, + "type": "string" + }, + "Protocol": { + "enum": [ + "Do53", + "DoH" + ], + "type": "string" + }, + "ServerNameIndication": { + "maxLength": 255, + "minLength": 0, + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/ResolverRuleId" + ], + "properties": { + "Arn": { + "type": "string" + }, + "DomainName": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "Name": { + "maxLength": 64, + "minLength": 0, + "type": "string" + }, + "ResolverEndpointId": { + "maxLength": 64, + "minLength": 1, + "type": "string" + }, + "ResolverRuleId": { + "type": "string" + }, + "RuleType": { + "enum": [ + "FORWARD", + "SYSTEM", + "RECURSIVE", + "DELEGATE" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": false + }, + "TargetIps": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TargetAddress" + }, + "type": "array", + "uniqueItems": false + } + }, + "propertyTransform": { + "/properties/DomainName": "$join([DomainName, \".\"]) $OR DomainName" + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/ResolverRuleId" + ], + "required": [ + "RuleType" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-route53resolver.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Route53Resolver::ResolverRule" +} diff --git a/src/cfnlint/data/schemas/providers/af_south_1/aws-sagemaker-imageversion.json b/src/cfnlint/data/schemas/providers/ap_northeast_1/aws-sagemaker-imageversion.json similarity index 99% rename from src/cfnlint/data/schemas/providers/af_south_1/aws-sagemaker-imageversion.json rename to src/cfnlint/data/schemas/providers/ap_northeast_1/aws-sagemaker-imageversion.json index e7c91ccc8d..3b09dc9bad 100644 --- a/src/cfnlint/data/schemas/providers/af_south_1/aws-sagemaker-imageversion.json +++ b/src/cfnlint/data/schemas/providers/ap_northeast_1/aws-sagemaker-imageversion.json @@ -150,7 +150,6 @@ "readOnlyProperties": [ "/properties/ImageVersionArn", "/properties/ImageArn", - "/properties/Version", "/properties/ContainerImage" ], "required": [ diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_2/__init__.py b/src/cfnlint/data/schemas/providers/ap_northeast_2/__init__.py index be8958f797..858dd9ce5b 100644 --- a/src/cfnlint/data/schemas/providers/ap_northeast_2/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_northeast_2/__init__.py @@ -1563,9 +1563,7 @@ "aws-ecs-cluster.json", "aws-ecs-clustercapacityproviderassociations.json", "aws-ecs-primarytaskset.json", - "aws-ecs-service.json", "aws-ecs-taskdefinition.json", - "aws-ecs-taskset.json", "aws-efs-accesspoint.json", "aws-efs-filesystem.json", "aws-efs-mounttarget.json", @@ -1691,7 +1689,6 @@ "aws-groundstation-config.json", "aws-groundstation-dataflowendpointgroup.json", "aws-groundstation-missionprofile.json", - "aws-guardduty-detector.json", "aws-guardduty-filter.json", "aws-guardduty-ipset.json", "aws-guardduty-malwareprotectionplan.json", @@ -1788,7 +1785,6 @@ "aws-kafkaconnect-connector.json", "aws-kafkaconnect-customplugin.json", "aws-kafkaconnect-workerconfiguration.json", - "aws-kinesis-stream.json", "aws-kinesis-streamconsumer.json", "aws-kinesisanalytics-application.json", "aws-kinesisanalytics-applicationoutput.json", @@ -1915,7 +1911,6 @@ "aws-neptune-dbsubnetgroup.json", "aws-neptune-eventsubscription.json", "aws-networkfirewall-firewall.json", - "aws-networkfirewall-firewallpolicy.json", "aws-networkfirewall-loggingconfiguration.json", "aws-networkfirewall-rulegroup.json", "aws-networkfirewall-tlsinspectionconfiguration.json", @@ -1999,7 +1994,6 @@ "aws-ram-permission.json", "aws-ram-resourceshare.json", "aws-rds-customdbengineversion.json", - "aws-rds-dbcluster.json", "aws-rds-dbclusterparametergroup.json", "aws-rds-dbinstance.json", "aws-rds-dbparametergroup.json", @@ -2008,7 +2002,6 @@ "aws-rds-dbproxytargetgroup.json", "aws-rds-dbsecuritygroup.json", "aws-rds-dbsecuritygroupingress.json", - "aws-rds-dbsubnetgroup.json", "aws-rds-eventsubscription.json", "aws-rds-globalcluster.json", "aws-rds-integration.json", @@ -2086,6 +2079,7 @@ "aws-sagemaker-endpointconfig.json", "aws-sagemaker-featuregroup.json", "aws-sagemaker-image.json", + "aws-sagemaker-imageversion.json", "aws-sagemaker-inferencecomponent.json", "aws-sagemaker-inferenceexperiment.json", "aws-sagemaker-mlflowtrackingserver.json", diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-ecs-service.json b/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-ecs-service.json new file mode 100644 index 0000000000..ba7baa1de3 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-ecs-service.json @@ -0,0 +1,585 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/DeploymentController", + "/properties/LaunchType", + "/properties/Role", + "/properties/SchedulingStrategy", + "/properties/ServiceName" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "CapacityProviderStrategyItem": { + "additionalProperties": false, + "properties": { + "Base": { + "type": "integer" + }, + "CapacityProvider": { + "type": "string" + }, + "Weight": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentAlarms": { + "additionalProperties": false, + "properties": { + "AlarmNames": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "AlarmNames", + "Rollback", + "Enable" + ], + "type": "object" + }, + "DeploymentCircuitBreaker": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "Enable", + "Rollback" + ], + "type": "object" + }, + "DeploymentConfiguration": { + "additionalProperties": false, + "properties": { + "Alarms": { + "$ref": "#/definitions/DeploymentAlarms" + }, + "DeploymentCircuitBreaker": { + "$ref": "#/definitions/DeploymentCircuitBreaker" + }, + "MaximumPercent": { + "type": "integer" + }, + "MinimumHealthyPercent": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentController": { + "additionalProperties": false, + "properties": { + "Type": { + "enum": [ + "CODE_DEPLOY", + "ECS", + "EXTERNAL" + ], + "type": "string" + } + }, + "type": "object" + }, + "EBSTagSpecification": { + "additionalProperties": false, + "properties": { + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "ResourceType": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "ResourceType" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "LoadBalancerName": { + "type": "string" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "LogConfiguration": { + "additionalProperties": false, + "properties": { + "LogDriver": { + "type": "string" + }, + "Options": { + "additionalProperties": false, + "patternProperties": { + ".{1,}": { + "type": "string" + } + }, + "type": "object" + }, + "SecretOptions": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Secret" + }, + "type": "array" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsvpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "PlacementConstraint": { + "additionalProperties": false, + "properties": { + "Expression": { + "type": "string" + }, + "Type": { + "enum": [ + "distinctInstance", + "memberOf" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "PlacementStrategy": { + "additionalProperties": false, + "properties": { + "Field": { + "type": "string" + }, + "Type": { + "enum": [ + "binpack", + "random", + "spread" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "Secret": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "ValueFrom": { + "type": "string" + } + }, + "required": [ + "Name", + "ValueFrom" + ], + "type": "object" + }, + "ServiceConnectClientAlias": { + "additionalProperties": false, + "properties": { + "DnsName": { + "type": "string" + }, + "Port": { + "type": "integer" + } + }, + "required": [ + "Port" + ], + "type": "object" + }, + "ServiceConnectConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + }, + "LogConfiguration": { + "$ref": "#/definitions/LogConfiguration" + }, + "Namespace": { + "type": "string" + }, + "Services": { + "items": { + "$ref": "#/definitions/ServiceConnectService" + }, + "type": "array" + } + }, + "required": [ + "Enabled" + ], + "type": "object" + }, + "ServiceConnectService": { + "additionalProperties": false, + "properties": { + "ClientAliases": { + "items": { + "$ref": "#/definitions/ServiceConnectClientAlias" + }, + "type": "array" + }, + "DiscoveryName": { + "type": "string" + }, + "IngressPortOverride": { + "type": "integer" + }, + "PortName": { + "type": "string" + }, + "Timeout": { + "$ref": "#/definitions/TimeoutConfiguration" + }, + "Tls": { + "$ref": "#/definitions/ServiceConnectTlsConfiguration" + } + }, + "required": [ + "PortName" + ], + "type": "object" + }, + "ServiceConnectTlsCertificateAuthority": { + "additionalProperties": false, + "properties": { + "AwsPcaAuthorityArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceConnectTlsConfiguration": { + "additionalProperties": false, + "properties": { + "IssuerCertificateAuthority": { + "$ref": "#/definitions/ServiceConnectTlsCertificateAuthority" + }, + "KmsKey": { + "type": "string" + }, + "RoleArn": { + "type": "string" + } + }, + "required": [ + "IssuerCertificateAuthority" + ], + "type": "object" + }, + "ServiceManagedEBSVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "Encrypted": { + "type": "boolean" + }, + "FilesystemType": { + "type": "string" + }, + "Iops": { + "type": "integer" + }, + "KmsKeyId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SizeInGiB": { + "type": "integer" + }, + "SnapshotId": { + "type": "string" + }, + "TagSpecifications": { + "items": { + "$ref": "#/definitions/EBSTagSpecification" + }, + "type": "array" + }, + "Throughput": { + "type": "integer" + }, + "VolumeType": { + "type": "string" + } + }, + "required": [ + "RoleArn" + ], + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "ManagedEBSVolume": { + "$ref": "#/definitions/ServiceManagedEBSVolumeConfiguration" + }, + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + }, + "TimeoutConfiguration": { + "additionalProperties": false, + "properties": { + "IdleTimeoutSeconds": { + "type": "integer" + }, + "PerRequestTimeoutSeconds": { + "type": "integer" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/ServiceArn", + "/properties/Cluster" + ], + "properties": { + "CapacityProviderStrategy": { + "items": { + "$ref": "#/definitions/CapacityProviderStrategyItem" + }, + "type": "array" + }, + "Cluster": { + "type": "string" + }, + "DeploymentConfiguration": { + "$ref": "#/definitions/DeploymentConfiguration" + }, + "DeploymentController": { + "$ref": "#/definitions/DeploymentController" + }, + "DesiredCount": { + "type": "integer" + }, + "EnableECSManagedTags": { + "type": "boolean" + }, + "EnableExecuteCommand": { + "type": "boolean" + }, + "HealthCheckGracePeriodSeconds": { + "type": "integer" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE", + "EXTERNAL" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "Name": { + "type": "string" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlacementConstraints": { + "items": { + "$ref": "#/definitions/PlacementConstraint" + }, + "type": "array" + }, + "PlacementStrategies": { + "items": { + "$ref": "#/definitions/PlacementStrategy" + }, + "type": "array" + }, + "PlatformVersion": { + "default": "LATEST", + "type": "string" + }, + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "Role": { + "type": "string" + }, + "SchedulingStrategy": { + "enum": [ + "DAEMON", + "REPLICA" + ], + "type": "string" + }, + "ServiceArn": { + "type": "string" + }, + "ServiceConnectConfiguration": { + "$ref": "#/definitions/ServiceConnectConfiguration" + }, + "ServiceName": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + }, + "VolumeConfigurations": { + "items": { + "$ref": "#/definitions/ServiceVolumeConfiguration" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/ServiceArn", + "/properties/Name" + ], + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::Service", + "writeOnlyProperties": [ + "/properties/ServiceConnectConfiguration", + "/properties/VolumeConfigurations" + ] +} diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-ecs-taskset.json b/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-ecs-taskset.json new file mode 100644 index 0000000000..3491488499 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-ecs-taskset.json @@ -0,0 +1,191 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/ExternalId", + "/properties/LaunchType", + "/properties/LoadBalancers", + "/properties/NetworkConfiguration", + "/properties/PlatformVersion", + "/properties/Service", + "/properties/ServiceRegistries", + "/properties/TaskDefinition" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "maxItems": 5, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "maxItems": 16, + "type": "array" + } + }, + "required": [ + "Subnets" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsVpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "Scale": { + "additionalProperties": false, + "properties": { + "Unit": { + "enum": [ + "PERCENT" + ], + "type": "string" + }, + "Value": { + "maximum": 100, + "minimum": 0, + "type": "number" + } + }, + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Cluster", + "/properties/Service", + "/properties/Id" + ], + "properties": { + "Cluster": { + "type": "string" + }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlatformVersion": { + "type": "string" + }, + "Scale": { + "$ref": "#/definitions/Scale" + }, + "Service": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "Cluster", + "Service", + "TaskDefinition" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-ecs.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::TaskSet" +} diff --git a/src/cfnlint/data/schemas/providers/cn_north_1/aws-guardduty-detector.json b/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-guardduty-detector.json similarity index 95% rename from src/cfnlint/data/schemas/providers/cn_north_1/aws-guardduty-detector.json rename to src/cfnlint/data/schemas/providers/ap_northeast_2/aws-guardduty-detector.json index 0632b1017c..efaad17ff9 100644 --- a/src/cfnlint/data/schemas/providers/cn_north_1/aws-guardduty-detector.json +++ b/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-guardduty-detector.json @@ -36,7 +36,6 @@ "additionalProperties": false, "properties": { "AdditionalConfiguration": { - "insertionOrder": false, "items": { "$ref": "#/definitions/CFNFeatureAdditionalConfiguration" }, @@ -146,7 +145,6 @@ "type": "boolean" }, "Features": { - "insertionOrder": false, "items": { "$ref": "#/definitions/CFNFeatureConfiguration" }, @@ -164,7 +162,6 @@ "type": "string" }, "Tags": { - "insertionOrder": false, "items": { "$ref": "#/definitions/TagItem" }, @@ -180,8 +177,7 @@ "tagging": { "cloudFormationSystemTags": false, "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, + "tagUpdatable": false, "taggable": true }, "typeName": "AWS::GuardDuty::Detector" diff --git a/src/cfnlint/data/schemas/providers/us_west_2/aws-kinesis-stream.json b/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-kinesis-stream.json similarity index 87% rename from src/cfnlint/data/schemas/providers/us_west_2/aws-kinesis-stream.json rename to src/cfnlint/data/schemas/providers/ap_northeast_2/aws-kinesis-stream.json index 45b4ce6a6b..be1bc65c07 100644 --- a/src/cfnlint/data/schemas/providers/us_west_2/aws-kinesis-stream.json +++ b/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-kinesis-stream.json @@ -1,5 +1,4 @@ { - "$comment": "Do not set SystemTags to true without implementing a fail-open mechanism. It should not fail when adding systemTags for customers without AddTagsToStream Permission. Cloudformation will automatically add system tags even if customer does not have the AddTagsToStream permission. COE: https://www.coe.a2z.com/coe/236297/content", "additionalProperties": false, "createOnlyProperties": [ "/properties/Name" diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-networkfirewall-firewallpolicy.json b/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-networkfirewall-firewallpolicy.json new file mode 100644 index 0000000000..973b595561 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-networkfirewall-firewallpolicy.json @@ -0,0 +1,332 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/FirewallPolicyName" + ], + "definitions": { + "ActionDefinition": { + "additionalProperties": false, + "properties": { + "PublishMetricAction": { + "$ref": "#/definitions/PublishMetricAction" + } + }, + "type": "object" + }, + "CustomAction": { + "additionalProperties": false, + "properties": { + "ActionDefinition": { + "$ref": "#/definitions/ActionDefinition" + }, + "ActionName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + } + }, + "required": [ + "ActionName", + "ActionDefinition" + ], + "type": "object" + }, + "Dimension": { + "additionalProperties": false, + "properties": { + "Value": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-_ ]+$", + "type": "string" + } + }, + "required": [ + "Value" + ], + "type": "object" + }, + "FirewallPolicy": { + "additionalProperties": false, + "properties": { + "PolicyVariables": { + "additionalProperties": false, + "properties": { + "RuleVariables": { + "$ref": "#/definitions/RuleVariables" + } + }, + "type": "object" + }, + "StatefulDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatefulEngineOptions": { + "$ref": "#/definitions/StatefulEngineOptions" + }, + "StatefulRuleGroupReferences": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/StatefulRuleGroupReference" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessCustomActions": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/CustomAction" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessFragmentDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessRuleGroupReferences": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/StatelessRuleGroupReference" + }, + "type": "array", + "uniqueItems": false + }, + "TLSInspectionConfigurationArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "StatelessDefaultActions", + "StatelessFragmentDefaultActions" + ], + "type": "object" + }, + "IPSet": { + "additionalProperties": false, + "properties": { + "Definition": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/VariableDefinition" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "OverrideAction": { + "enum": [ + "DROP_TO_ALERT" + ], + "type": "string" + }, + "Priority": { + "maximum": 65535, + "minimum": 1, + "type": "integer" + }, + "PublishMetricAction": { + "additionalProperties": false, + "properties": { + "Dimensions": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/Dimension" + }, + "type": "array", + "uniqueItems": false + } + }, + "required": [ + "Dimensions" + ], + "type": "object" + }, + "ResourceArn": { + "maxLength": 256, + "minLength": 1, + "pattern": "^(arn:aws.*)$", + "type": "string" + }, + "RuleOrder": { + "enum": [ + "DEFAULT_ACTION_ORDER", + "STRICT_ORDER" + ], + "type": "string" + }, + "RuleVariables": { + "additionalProperties": false, + "patternProperties": { + "^[A-Za-z0-9_]{1,32}$": { + "$ref": "#/definitions/IPSet" + } + }, + "type": "object" + }, + "StatefulEngineOptions": { + "additionalProperties": false, + "properties": { + "RuleOrder": { + "$ref": "#/definitions/RuleOrder" + }, + "StreamExceptionPolicy": { + "$ref": "#/definitions/StreamExceptionPolicy" + } + }, + "type": "object" + }, + "StatefulRuleGroupOverride": { + "additionalProperties": false, + "properties": { + "Action": { + "$ref": "#/definitions/OverrideAction" + } + }, + "type": "object" + }, + "StatefulRuleGroupReference": { + "additionalProperties": false, + "properties": { + "Override": { + "$ref": "#/definitions/StatefulRuleGroupOverride" + }, + "Priority": { + "$ref": "#/definitions/Priority" + }, + "ResourceArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "ResourceArn" + ], + "type": "object" + }, + "StatelessRuleGroupReference": { + "additionalProperties": false, + "properties": { + "Priority": { + "$ref": "#/definitions/Priority" + }, + "ResourceArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "ResourceArn", + "Priority" + ], + "type": "object" + }, + "StreamExceptionPolicy": { + "enum": [ + "DROP", + "CONTINUE", + "REJECT" + ], + "type": "string" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "^.*$", + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 0, + "pattern": "^.*$", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "VariableDefinition": { + "minLength": 1, + "pattern": "^.*$", + "type": "string" + } + }, + "primaryIdentifier": [ + "/properties/FirewallPolicyArn" + ], + "properties": { + "Description": { + "maxLength": 512, + "minLength": 1, + "pattern": "^.*$", + "type": "string" + }, + "FirewallPolicy": { + "$ref": "#/definitions/FirewallPolicy" + }, + "FirewallPolicyArn": { + "$ref": "#/definitions/ResourceArn" + }, + "FirewallPolicyId": { + "maxLength": 36, + "minLength": 36, + "pattern": "^([0-9a-f]{8})-([0-9a-f]{4}-){3}([0-9a-f]{12})$", + "type": "string" + }, + "FirewallPolicyName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-]+$", + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + } + }, + "readOnlyProperties": [ + "/properties/FirewallPolicyArn", + "/properties/FirewallPolicyId" + ], + "required": [ + "FirewallPolicyName", + "FirewallPolicy" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-networkfirewall.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::NetworkFirewall::FirewallPolicy" +} diff --git a/src/cfnlint/data/schemas/providers/ca_west_1/aws-rds-dbcluster.json b/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-rds-dbcluster.json similarity index 98% rename from src/cfnlint/data/schemas/providers/ca_west_1/aws-rds-dbcluster.json rename to src/cfnlint/data/schemas/providers/ap_northeast_2/aws-rds-dbcluster.json index 9748b231ac..46000178b5 100644 --- a/src/cfnlint/data/schemas/providers/ca_west_1/aws-rds-dbcluster.json +++ b/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-rds-dbcluster.json @@ -177,7 +177,6 @@ "type": "string" }, "DBClusterParameterGroupName": { - "default": "default.aurora5.6", "type": "string" }, "DBClusterResourceId": { @@ -265,7 +264,6 @@ "type": "string" }, "MonitoringInterval": { - "default": 0, "type": "integer" }, "MonitoringRoleArn": { @@ -305,7 +303,6 @@ "type": "string" }, "RestoreType": { - "default": "full-copy", "type": "string" }, "ScalingConfiguration": { @@ -356,7 +353,7 @@ "/properties/DBClusterIdentifier": "$lowercase(DBClusterIdentifier)", "/properties/DBClusterParameterGroupName": "$lowercase(DBClusterParameterGroupName)", "/properties/DBSubnetGroupName": "$lowercase(DBSubnetGroupName)", - "/properties/EnableHttpEndpoint": "$lowercase($string(EngineMode)) = 'serverless' ? EnableHttpEndpoint : ($lowercase($string(Engine)) = 'aurora-postgresql' ? EnableHttpEndpoint : false )", + "/properties/EnableHttpEndpoint": "$lowercase($string(EngineMode)) = 'serverless' ? EnableHttpEndpoint : ($lowercase($string(Engine)) in ['aurora-postgresql', 'aurora-mysql'] ? EnableHttpEndpoint : false )", "/properties/Engine": "$lowercase(Engine)", "/properties/EngineVersion": "$join([$string(EngineVersion), \".*\"])", "/properties/KmsKeyId": "$join([\"arn:(aws)[-]{0,1}[a-z]{0,2}[-]{0,1}[a-z]{0,3}:kms:[a-z]{2}[-]{1}[a-z]{3,10}[-]{0,1}[a-z]{0,10}[-]{1}[1-3]{1}:[0-9]{12}[:]{1}key\\/\", KmsKeyId])", diff --git a/src/cfnlint/data/schemas/providers/ca_west_1/aws-rds-eventsubscription.json b/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-rds-dbsubnetgroup.json similarity index 62% rename from src/cfnlint/data/schemas/providers/ca_west_1/aws-rds-eventsubscription.json rename to src/cfnlint/data/schemas/providers/ap_northeast_2/aws-rds-dbsubnetgroup.json index 10fa51a2d0..d228afbbad 100644 --- a/src/cfnlint/data/schemas/providers/ca_west_1/aws-rds-eventsubscription.json +++ b/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-rds-dbsubnetgroup.json @@ -1,8 +1,7 @@ { "additionalProperties": false, "createOnlyProperties": [ - "/properties/SubscriptionName", - "/properties/SnsTopicArn" + "/properties/DBSubnetGroupName" ], "definitions": { "Tag": { @@ -26,37 +25,22 @@ } }, "primaryIdentifier": [ - "/properties/SubscriptionName" + "/properties/DBSubnetGroupName" ], "properties": { - "Enabled": { - "default": true, - "type": "boolean" - }, - "EventCategories": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true + "DBSubnetGroupDescription": { + "type": "string" }, - "SnsTopicArn": { + "DBSubnetGroupName": { "type": "string" }, - "SourceIds": { + "SubnetIds": { "insertionOrder": false, "items": { "type": "string" }, "type": "array", - "uniqueItems": true - }, - "SourceType": { - "type": "string" - }, - "SubscriptionName": { - "maxLength": 255, - "type": "string" + "uniqueItems": false }, "Tags": { "insertionOrder": false, @@ -69,11 +53,19 @@ } }, "propertyTransform": { - "/properties/SubscriptionName": "$lowercase(SubscriptionName)" + "/properties/DBSubnetGroupName": "$lowercase(DBSubnetGroupName)" }, "required": [ - "SnsTopicArn" + "DBSubnetGroupDescription", + "SubnetIds" ], "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-rds", - "typeName": "AWS::RDS::EventSubscription" + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::RDS::DBSubnetGroup" } diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_3/__init__.py b/src/cfnlint/data/schemas/providers/ap_northeast_3/__init__.py index eb12e0c1ed..3a569a5437 100644 --- a/src/cfnlint/data/schemas/providers/ap_northeast_3/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_northeast_3/__init__.py @@ -439,6 +439,7 @@ "AWS::KMS::Alias", "AWS::KMS::Key", "AWS::KMS::ReplicaKey", + "AWS::Kinesis::ResourcePolicy", "AWS::Kinesis::Stream", "AWS::Kinesis::StreamConsumer", "AWS::KinesisAnalyticsV2::Application", @@ -1104,9 +1105,7 @@ "aws-ecs-cluster.json", "aws-ecs-clustercapacityproviderassociations.json", "aws-ecs-primarytaskset.json", - "aws-ecs-service.json", "aws-ecs-taskdefinition.json", - "aws-ecs-taskset.json", "aws-efs-accesspoint.json", "aws-efs-filesystem.json", "aws-efs-mounttarget.json", @@ -1225,6 +1224,7 @@ "aws-internetmonitor-monitor.json", "aws-iot-policyprincipalattachment.json", "aws-iot-thingprincipalattachment.json", + "aws-kinesis-resourcepolicy.json", "aws-kinesis-stream.json", "aws-kinesis-streamconsumer.json", "aws-kinesisanalyticsv2-application.json", @@ -1312,7 +1312,6 @@ "aws-neptune-dbsubnetgroup.json", "aws-neptune-eventsubscription.json", "aws-networkfirewall-firewall.json", - "aws-networkfirewall-firewallpolicy.json", "aws-networkfirewall-loggingconfiguration.json", "aws-networkfirewall-rulegroup.json", "aws-networkfirewall-tlsinspectionconfiguration.json", @@ -1409,7 +1408,6 @@ "aws-route53resolver-resolverendpoint.json", "aws-route53resolver-resolverqueryloggingconfig.json", "aws-route53resolver-resolverqueryloggingconfigassociation.json", - "aws-route53resolver-resolverrule.json", "aws-route53resolver-resolverruleassociation.json", "aws-rum-appmonitor.json", "aws-s3-accessgrant.json", @@ -1435,7 +1433,6 @@ "aws-sagemaker-endpointconfig.json", "aws-sagemaker-featuregroup.json", "aws-sagemaker-image.json", - "aws-sagemaker-imageversion.json", "aws-sagemaker-inferenceexperiment.json", "aws-sagemaker-mlflowtrackingserver.json", "aws-sagemaker-model.json", diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-ecs-service.json b/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-ecs-service.json new file mode 100644 index 0000000000..ba7baa1de3 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-ecs-service.json @@ -0,0 +1,585 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/DeploymentController", + "/properties/LaunchType", + "/properties/Role", + "/properties/SchedulingStrategy", + "/properties/ServiceName" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "CapacityProviderStrategyItem": { + "additionalProperties": false, + "properties": { + "Base": { + "type": "integer" + }, + "CapacityProvider": { + "type": "string" + }, + "Weight": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentAlarms": { + "additionalProperties": false, + "properties": { + "AlarmNames": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "AlarmNames", + "Rollback", + "Enable" + ], + "type": "object" + }, + "DeploymentCircuitBreaker": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "Enable", + "Rollback" + ], + "type": "object" + }, + "DeploymentConfiguration": { + "additionalProperties": false, + "properties": { + "Alarms": { + "$ref": "#/definitions/DeploymentAlarms" + }, + "DeploymentCircuitBreaker": { + "$ref": "#/definitions/DeploymentCircuitBreaker" + }, + "MaximumPercent": { + "type": "integer" + }, + "MinimumHealthyPercent": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentController": { + "additionalProperties": false, + "properties": { + "Type": { + "enum": [ + "CODE_DEPLOY", + "ECS", + "EXTERNAL" + ], + "type": "string" + } + }, + "type": "object" + }, + "EBSTagSpecification": { + "additionalProperties": false, + "properties": { + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "ResourceType": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "ResourceType" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "LoadBalancerName": { + "type": "string" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "LogConfiguration": { + "additionalProperties": false, + "properties": { + "LogDriver": { + "type": "string" + }, + "Options": { + "additionalProperties": false, + "patternProperties": { + ".{1,}": { + "type": "string" + } + }, + "type": "object" + }, + "SecretOptions": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Secret" + }, + "type": "array" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsvpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "PlacementConstraint": { + "additionalProperties": false, + "properties": { + "Expression": { + "type": "string" + }, + "Type": { + "enum": [ + "distinctInstance", + "memberOf" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "PlacementStrategy": { + "additionalProperties": false, + "properties": { + "Field": { + "type": "string" + }, + "Type": { + "enum": [ + "binpack", + "random", + "spread" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "Secret": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "ValueFrom": { + "type": "string" + } + }, + "required": [ + "Name", + "ValueFrom" + ], + "type": "object" + }, + "ServiceConnectClientAlias": { + "additionalProperties": false, + "properties": { + "DnsName": { + "type": "string" + }, + "Port": { + "type": "integer" + } + }, + "required": [ + "Port" + ], + "type": "object" + }, + "ServiceConnectConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + }, + "LogConfiguration": { + "$ref": "#/definitions/LogConfiguration" + }, + "Namespace": { + "type": "string" + }, + "Services": { + "items": { + "$ref": "#/definitions/ServiceConnectService" + }, + "type": "array" + } + }, + "required": [ + "Enabled" + ], + "type": "object" + }, + "ServiceConnectService": { + "additionalProperties": false, + "properties": { + "ClientAliases": { + "items": { + "$ref": "#/definitions/ServiceConnectClientAlias" + }, + "type": "array" + }, + "DiscoveryName": { + "type": "string" + }, + "IngressPortOverride": { + "type": "integer" + }, + "PortName": { + "type": "string" + }, + "Timeout": { + "$ref": "#/definitions/TimeoutConfiguration" + }, + "Tls": { + "$ref": "#/definitions/ServiceConnectTlsConfiguration" + } + }, + "required": [ + "PortName" + ], + "type": "object" + }, + "ServiceConnectTlsCertificateAuthority": { + "additionalProperties": false, + "properties": { + "AwsPcaAuthorityArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceConnectTlsConfiguration": { + "additionalProperties": false, + "properties": { + "IssuerCertificateAuthority": { + "$ref": "#/definitions/ServiceConnectTlsCertificateAuthority" + }, + "KmsKey": { + "type": "string" + }, + "RoleArn": { + "type": "string" + } + }, + "required": [ + "IssuerCertificateAuthority" + ], + "type": "object" + }, + "ServiceManagedEBSVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "Encrypted": { + "type": "boolean" + }, + "FilesystemType": { + "type": "string" + }, + "Iops": { + "type": "integer" + }, + "KmsKeyId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SizeInGiB": { + "type": "integer" + }, + "SnapshotId": { + "type": "string" + }, + "TagSpecifications": { + "items": { + "$ref": "#/definitions/EBSTagSpecification" + }, + "type": "array" + }, + "Throughput": { + "type": "integer" + }, + "VolumeType": { + "type": "string" + } + }, + "required": [ + "RoleArn" + ], + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "ManagedEBSVolume": { + "$ref": "#/definitions/ServiceManagedEBSVolumeConfiguration" + }, + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + }, + "TimeoutConfiguration": { + "additionalProperties": false, + "properties": { + "IdleTimeoutSeconds": { + "type": "integer" + }, + "PerRequestTimeoutSeconds": { + "type": "integer" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/ServiceArn", + "/properties/Cluster" + ], + "properties": { + "CapacityProviderStrategy": { + "items": { + "$ref": "#/definitions/CapacityProviderStrategyItem" + }, + "type": "array" + }, + "Cluster": { + "type": "string" + }, + "DeploymentConfiguration": { + "$ref": "#/definitions/DeploymentConfiguration" + }, + "DeploymentController": { + "$ref": "#/definitions/DeploymentController" + }, + "DesiredCount": { + "type": "integer" + }, + "EnableECSManagedTags": { + "type": "boolean" + }, + "EnableExecuteCommand": { + "type": "boolean" + }, + "HealthCheckGracePeriodSeconds": { + "type": "integer" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE", + "EXTERNAL" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "Name": { + "type": "string" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlacementConstraints": { + "items": { + "$ref": "#/definitions/PlacementConstraint" + }, + "type": "array" + }, + "PlacementStrategies": { + "items": { + "$ref": "#/definitions/PlacementStrategy" + }, + "type": "array" + }, + "PlatformVersion": { + "default": "LATEST", + "type": "string" + }, + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "Role": { + "type": "string" + }, + "SchedulingStrategy": { + "enum": [ + "DAEMON", + "REPLICA" + ], + "type": "string" + }, + "ServiceArn": { + "type": "string" + }, + "ServiceConnectConfiguration": { + "$ref": "#/definitions/ServiceConnectConfiguration" + }, + "ServiceName": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + }, + "VolumeConfigurations": { + "items": { + "$ref": "#/definitions/ServiceVolumeConfiguration" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/ServiceArn", + "/properties/Name" + ], + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::Service", + "writeOnlyProperties": [ + "/properties/ServiceConnectConfiguration", + "/properties/VolumeConfigurations" + ] +} diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-ecs-taskset.json b/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-ecs-taskset.json new file mode 100644 index 0000000000..3491488499 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-ecs-taskset.json @@ -0,0 +1,191 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/ExternalId", + "/properties/LaunchType", + "/properties/LoadBalancers", + "/properties/NetworkConfiguration", + "/properties/PlatformVersion", + "/properties/Service", + "/properties/ServiceRegistries", + "/properties/TaskDefinition" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "maxItems": 5, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "maxItems": 16, + "type": "array" + } + }, + "required": [ + "Subnets" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsVpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "Scale": { + "additionalProperties": false, + "properties": { + "Unit": { + "enum": [ + "PERCENT" + ], + "type": "string" + }, + "Value": { + "maximum": 100, + "minimum": 0, + "type": "number" + } + }, + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Cluster", + "/properties/Service", + "/properties/Id" + ], + "properties": { + "Cluster": { + "type": "string" + }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlatformVersion": { + "type": "string" + }, + "Scale": { + "$ref": "#/definitions/Scale" + }, + "Service": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "Cluster", + "Service", + "TaskDefinition" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-ecs.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::TaskSet" +} diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-networkfirewall-firewallpolicy.json b/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-networkfirewall-firewallpolicy.json new file mode 100644 index 0000000000..973b595561 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-networkfirewall-firewallpolicy.json @@ -0,0 +1,332 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/FirewallPolicyName" + ], + "definitions": { + "ActionDefinition": { + "additionalProperties": false, + "properties": { + "PublishMetricAction": { + "$ref": "#/definitions/PublishMetricAction" + } + }, + "type": "object" + }, + "CustomAction": { + "additionalProperties": false, + "properties": { + "ActionDefinition": { + "$ref": "#/definitions/ActionDefinition" + }, + "ActionName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + } + }, + "required": [ + "ActionName", + "ActionDefinition" + ], + "type": "object" + }, + "Dimension": { + "additionalProperties": false, + "properties": { + "Value": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-_ ]+$", + "type": "string" + } + }, + "required": [ + "Value" + ], + "type": "object" + }, + "FirewallPolicy": { + "additionalProperties": false, + "properties": { + "PolicyVariables": { + "additionalProperties": false, + "properties": { + "RuleVariables": { + "$ref": "#/definitions/RuleVariables" + } + }, + "type": "object" + }, + "StatefulDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatefulEngineOptions": { + "$ref": "#/definitions/StatefulEngineOptions" + }, + "StatefulRuleGroupReferences": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/StatefulRuleGroupReference" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessCustomActions": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/CustomAction" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessFragmentDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessRuleGroupReferences": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/StatelessRuleGroupReference" + }, + "type": "array", + "uniqueItems": false + }, + "TLSInspectionConfigurationArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "StatelessDefaultActions", + "StatelessFragmentDefaultActions" + ], + "type": "object" + }, + "IPSet": { + "additionalProperties": false, + "properties": { + "Definition": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/VariableDefinition" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "OverrideAction": { + "enum": [ + "DROP_TO_ALERT" + ], + "type": "string" + }, + "Priority": { + "maximum": 65535, + "minimum": 1, + "type": "integer" + }, + "PublishMetricAction": { + "additionalProperties": false, + "properties": { + "Dimensions": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/Dimension" + }, + "type": "array", + "uniqueItems": false + } + }, + "required": [ + "Dimensions" + ], + "type": "object" + }, + "ResourceArn": { + "maxLength": 256, + "minLength": 1, + "pattern": "^(arn:aws.*)$", + "type": "string" + }, + "RuleOrder": { + "enum": [ + "DEFAULT_ACTION_ORDER", + "STRICT_ORDER" + ], + "type": "string" + }, + "RuleVariables": { + "additionalProperties": false, + "patternProperties": { + "^[A-Za-z0-9_]{1,32}$": { + "$ref": "#/definitions/IPSet" + } + }, + "type": "object" + }, + "StatefulEngineOptions": { + "additionalProperties": false, + "properties": { + "RuleOrder": { + "$ref": "#/definitions/RuleOrder" + }, + "StreamExceptionPolicy": { + "$ref": "#/definitions/StreamExceptionPolicy" + } + }, + "type": "object" + }, + "StatefulRuleGroupOverride": { + "additionalProperties": false, + "properties": { + "Action": { + "$ref": "#/definitions/OverrideAction" + } + }, + "type": "object" + }, + "StatefulRuleGroupReference": { + "additionalProperties": false, + "properties": { + "Override": { + "$ref": "#/definitions/StatefulRuleGroupOverride" + }, + "Priority": { + "$ref": "#/definitions/Priority" + }, + "ResourceArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "ResourceArn" + ], + "type": "object" + }, + "StatelessRuleGroupReference": { + "additionalProperties": false, + "properties": { + "Priority": { + "$ref": "#/definitions/Priority" + }, + "ResourceArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "ResourceArn", + "Priority" + ], + "type": "object" + }, + "StreamExceptionPolicy": { + "enum": [ + "DROP", + "CONTINUE", + "REJECT" + ], + "type": "string" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "^.*$", + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 0, + "pattern": "^.*$", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "VariableDefinition": { + "minLength": 1, + "pattern": "^.*$", + "type": "string" + } + }, + "primaryIdentifier": [ + "/properties/FirewallPolicyArn" + ], + "properties": { + "Description": { + "maxLength": 512, + "minLength": 1, + "pattern": "^.*$", + "type": "string" + }, + "FirewallPolicy": { + "$ref": "#/definitions/FirewallPolicy" + }, + "FirewallPolicyArn": { + "$ref": "#/definitions/ResourceArn" + }, + "FirewallPolicyId": { + "maxLength": 36, + "minLength": 36, + "pattern": "^([0-9a-f]{8})-([0-9a-f]{4}-){3}([0-9a-f]{12})$", + "type": "string" + }, + "FirewallPolicyName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-]+$", + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + } + }, + "readOnlyProperties": [ + "/properties/FirewallPolicyArn", + "/properties/FirewallPolicyId" + ], + "required": [ + "FirewallPolicyName", + "FirewallPolicy" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-networkfirewall.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::NetworkFirewall::FirewallPolicy" +} diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-route53resolver-resolverrule.json b/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-route53resolver-resolverrule.json new file mode 100644 index 0000000000..7b24325ca2 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-route53resolver-resolverrule.json @@ -0,0 +1,130 @@ +{ + "additionalProperties": false, + "conditionalCreateOnlyProperties": [ + "/properties/DomainName" + ], + "createOnlyProperties": [ + "/properties/RuleType" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + }, + "TargetAddress": { + "additionalProperties": false, + "properties": { + "Ip": { + "type": "string" + }, + "Ipv6": { + "type": "string" + }, + "Port": { + "maxLength": 65535, + "minLength": 0, + "type": "string" + }, + "Protocol": { + "enum": [ + "Do53", + "DoH" + ], + "type": "string" + }, + "ServerNameIndication": { + "maxLength": 255, + "minLength": 0, + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/ResolverRuleId" + ], + "properties": { + "Arn": { + "type": "string" + }, + "DomainName": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "Name": { + "maxLength": 64, + "minLength": 0, + "type": "string" + }, + "ResolverEndpointId": { + "maxLength": 64, + "minLength": 1, + "type": "string" + }, + "ResolverRuleId": { + "type": "string" + }, + "RuleType": { + "enum": [ + "FORWARD", + "SYSTEM", + "RECURSIVE", + "DELEGATE" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": false + }, + "TargetIps": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TargetAddress" + }, + "type": "array", + "uniqueItems": false + } + }, + "propertyTransform": { + "/properties/DomainName": "$join([DomainName, \".\"]) $OR DomainName" + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/ResolverRuleId" + ], + "required": [ + "RuleType" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-route53resolver.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Route53Resolver::ResolverRule" +} diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-sagemaker-imageversion.json b/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-sagemaker-imageversion.json similarity index 99% rename from src/cfnlint/data/schemas/providers/ap_northeast_2/aws-sagemaker-imageversion.json rename to src/cfnlint/data/schemas/providers/ap_northeast_3/aws-sagemaker-imageversion.json index e7c91ccc8d..3b09dc9bad 100644 --- a/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-sagemaker-imageversion.json +++ b/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-sagemaker-imageversion.json @@ -150,7 +150,6 @@ "readOnlyProperties": [ "/properties/ImageVersionArn", "/properties/ImageArn", - "/properties/Version", "/properties/ContainerImage" ], "required": [ diff --git a/src/cfnlint/data/schemas/providers/ap_south_1/__init__.py b/src/cfnlint/data/schemas/providers/ap_south_1/__init__.py index 9412740329..c8eee64295 100644 --- a/src/cfnlint/data/schemas/providers/ap_south_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_south_1/__init__.py @@ -654,6 +654,7 @@ "AWS::Kendra::Faq", "AWS::Kendra::Index", "AWS::KendraRanking::ExecutionPlan", + "AWS::Kinesis::ResourcePolicy", "AWS::Kinesis::Stream", "AWS::Kinesis::StreamConsumer", "AWS::KinesisAnalytics::Application", @@ -1562,9 +1563,7 @@ "aws-ecs-cluster.json", "aws-ecs-clustercapacityproviderassociations.json", "aws-ecs-primarytaskset.json", - "aws-ecs-service.json", "aws-ecs-taskdefinition.json", - "aws-ecs-taskset.json", "aws-efs-accesspoint.json", "aws-efs-filesystem.json", "aws-efs-mounttarget.json", @@ -1793,6 +1792,7 @@ "aws-kendra-faq.json", "aws-kendra-index.json", "aws-kendraranking-executionplan.json", + "aws-kinesis-resourcepolicy.json", "aws-kinesis-stream.json", "aws-kinesis-streamconsumer.json", "aws-kinesisanalytics-applicationoutput.json", @@ -2095,6 +2095,7 @@ "aws-sagemaker-endpointconfig.json", "aws-sagemaker-featuregroup.json", "aws-sagemaker-image.json", + "aws-sagemaker-imageversion.json", "aws-sagemaker-inferencecomponent.json", "aws-sagemaker-inferenceexperiment.json", "aws-sagemaker-mlflowtrackingserver.json", diff --git a/src/cfnlint/data/schemas/providers/ap_south_1/aws-ecs-service.json b/src/cfnlint/data/schemas/providers/ap_south_1/aws-ecs-service.json new file mode 100644 index 0000000000..ba7baa1de3 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_south_1/aws-ecs-service.json @@ -0,0 +1,585 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/DeploymentController", + "/properties/LaunchType", + "/properties/Role", + "/properties/SchedulingStrategy", + "/properties/ServiceName" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "CapacityProviderStrategyItem": { + "additionalProperties": false, + "properties": { + "Base": { + "type": "integer" + }, + "CapacityProvider": { + "type": "string" + }, + "Weight": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentAlarms": { + "additionalProperties": false, + "properties": { + "AlarmNames": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "AlarmNames", + "Rollback", + "Enable" + ], + "type": "object" + }, + "DeploymentCircuitBreaker": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "Enable", + "Rollback" + ], + "type": "object" + }, + "DeploymentConfiguration": { + "additionalProperties": false, + "properties": { + "Alarms": { + "$ref": "#/definitions/DeploymentAlarms" + }, + "DeploymentCircuitBreaker": { + "$ref": "#/definitions/DeploymentCircuitBreaker" + }, + "MaximumPercent": { + "type": "integer" + }, + "MinimumHealthyPercent": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentController": { + "additionalProperties": false, + "properties": { + "Type": { + "enum": [ + "CODE_DEPLOY", + "ECS", + "EXTERNAL" + ], + "type": "string" + } + }, + "type": "object" + }, + "EBSTagSpecification": { + "additionalProperties": false, + "properties": { + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "ResourceType": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "ResourceType" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "LoadBalancerName": { + "type": "string" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "LogConfiguration": { + "additionalProperties": false, + "properties": { + "LogDriver": { + "type": "string" + }, + "Options": { + "additionalProperties": false, + "patternProperties": { + ".{1,}": { + "type": "string" + } + }, + "type": "object" + }, + "SecretOptions": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Secret" + }, + "type": "array" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsvpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "PlacementConstraint": { + "additionalProperties": false, + "properties": { + "Expression": { + "type": "string" + }, + "Type": { + "enum": [ + "distinctInstance", + "memberOf" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "PlacementStrategy": { + "additionalProperties": false, + "properties": { + "Field": { + "type": "string" + }, + "Type": { + "enum": [ + "binpack", + "random", + "spread" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "Secret": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "ValueFrom": { + "type": "string" + } + }, + "required": [ + "Name", + "ValueFrom" + ], + "type": "object" + }, + "ServiceConnectClientAlias": { + "additionalProperties": false, + "properties": { + "DnsName": { + "type": "string" + }, + "Port": { + "type": "integer" + } + }, + "required": [ + "Port" + ], + "type": "object" + }, + "ServiceConnectConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + }, + "LogConfiguration": { + "$ref": "#/definitions/LogConfiguration" + }, + "Namespace": { + "type": "string" + }, + "Services": { + "items": { + "$ref": "#/definitions/ServiceConnectService" + }, + "type": "array" + } + }, + "required": [ + "Enabled" + ], + "type": "object" + }, + "ServiceConnectService": { + "additionalProperties": false, + "properties": { + "ClientAliases": { + "items": { + "$ref": "#/definitions/ServiceConnectClientAlias" + }, + "type": "array" + }, + "DiscoveryName": { + "type": "string" + }, + "IngressPortOverride": { + "type": "integer" + }, + "PortName": { + "type": "string" + }, + "Timeout": { + "$ref": "#/definitions/TimeoutConfiguration" + }, + "Tls": { + "$ref": "#/definitions/ServiceConnectTlsConfiguration" + } + }, + "required": [ + "PortName" + ], + "type": "object" + }, + "ServiceConnectTlsCertificateAuthority": { + "additionalProperties": false, + "properties": { + "AwsPcaAuthorityArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceConnectTlsConfiguration": { + "additionalProperties": false, + "properties": { + "IssuerCertificateAuthority": { + "$ref": "#/definitions/ServiceConnectTlsCertificateAuthority" + }, + "KmsKey": { + "type": "string" + }, + "RoleArn": { + "type": "string" + } + }, + "required": [ + "IssuerCertificateAuthority" + ], + "type": "object" + }, + "ServiceManagedEBSVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "Encrypted": { + "type": "boolean" + }, + "FilesystemType": { + "type": "string" + }, + "Iops": { + "type": "integer" + }, + "KmsKeyId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SizeInGiB": { + "type": "integer" + }, + "SnapshotId": { + "type": "string" + }, + "TagSpecifications": { + "items": { + "$ref": "#/definitions/EBSTagSpecification" + }, + "type": "array" + }, + "Throughput": { + "type": "integer" + }, + "VolumeType": { + "type": "string" + } + }, + "required": [ + "RoleArn" + ], + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "ManagedEBSVolume": { + "$ref": "#/definitions/ServiceManagedEBSVolumeConfiguration" + }, + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + }, + "TimeoutConfiguration": { + "additionalProperties": false, + "properties": { + "IdleTimeoutSeconds": { + "type": "integer" + }, + "PerRequestTimeoutSeconds": { + "type": "integer" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/ServiceArn", + "/properties/Cluster" + ], + "properties": { + "CapacityProviderStrategy": { + "items": { + "$ref": "#/definitions/CapacityProviderStrategyItem" + }, + "type": "array" + }, + "Cluster": { + "type": "string" + }, + "DeploymentConfiguration": { + "$ref": "#/definitions/DeploymentConfiguration" + }, + "DeploymentController": { + "$ref": "#/definitions/DeploymentController" + }, + "DesiredCount": { + "type": "integer" + }, + "EnableECSManagedTags": { + "type": "boolean" + }, + "EnableExecuteCommand": { + "type": "boolean" + }, + "HealthCheckGracePeriodSeconds": { + "type": "integer" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE", + "EXTERNAL" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "Name": { + "type": "string" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlacementConstraints": { + "items": { + "$ref": "#/definitions/PlacementConstraint" + }, + "type": "array" + }, + "PlacementStrategies": { + "items": { + "$ref": "#/definitions/PlacementStrategy" + }, + "type": "array" + }, + "PlatformVersion": { + "default": "LATEST", + "type": "string" + }, + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "Role": { + "type": "string" + }, + "SchedulingStrategy": { + "enum": [ + "DAEMON", + "REPLICA" + ], + "type": "string" + }, + "ServiceArn": { + "type": "string" + }, + "ServiceConnectConfiguration": { + "$ref": "#/definitions/ServiceConnectConfiguration" + }, + "ServiceName": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + }, + "VolumeConfigurations": { + "items": { + "$ref": "#/definitions/ServiceVolumeConfiguration" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/ServiceArn", + "/properties/Name" + ], + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::Service", + "writeOnlyProperties": [ + "/properties/ServiceConnectConfiguration", + "/properties/VolumeConfigurations" + ] +} diff --git a/src/cfnlint/data/schemas/providers/ap_south_1/aws-ecs-taskset.json b/src/cfnlint/data/schemas/providers/ap_south_1/aws-ecs-taskset.json new file mode 100644 index 0000000000..3491488499 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_south_1/aws-ecs-taskset.json @@ -0,0 +1,191 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/ExternalId", + "/properties/LaunchType", + "/properties/LoadBalancers", + "/properties/NetworkConfiguration", + "/properties/PlatformVersion", + "/properties/Service", + "/properties/ServiceRegistries", + "/properties/TaskDefinition" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "maxItems": 5, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "maxItems": 16, + "type": "array" + } + }, + "required": [ + "Subnets" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsVpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "Scale": { + "additionalProperties": false, + "properties": { + "Unit": { + "enum": [ + "PERCENT" + ], + "type": "string" + }, + "Value": { + "maximum": 100, + "minimum": 0, + "type": "number" + } + }, + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Cluster", + "/properties/Service", + "/properties/Id" + ], + "properties": { + "Cluster": { + "type": "string" + }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlatformVersion": { + "type": "string" + }, + "Scale": { + "$ref": "#/definitions/Scale" + }, + "Service": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "Cluster", + "Service", + "TaskDefinition" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-ecs.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::TaskSet" +} diff --git a/src/cfnlint/data/schemas/providers/ap_south_2/__init__.py b/src/cfnlint/data/schemas/providers/ap_south_2/__init__.py index f8571e5350..14138a0889 100644 --- a/src/cfnlint/data/schemas/providers/ap_south_2/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_south_2/__init__.py @@ -447,6 +447,7 @@ "AWS::NetworkFirewall::RuleGroup", "AWS::NetworkFirewall::TLSInspectionConfiguration", "AWS::NetworkManager::ConnectAttachment", + "AWS::NetworkManager::ConnectPeer", "AWS::NetworkManager::CoreNetwork", "AWS::NetworkManager::CustomerGatewayAssociation", "AWS::NetworkManager::Device", @@ -457,6 +458,7 @@ "AWS::NetworkManager::SiteToSiteVpnAttachment", "AWS::NetworkManager::TransitGatewayPeering", "AWS::NetworkManager::TransitGatewayRegistration", + "AWS::NetworkManager::TransitGatewayRouteTableAttachment", "AWS::NetworkManager::VpcAttachment", "AWS::Oam::Link", "AWS::Oam::Sink", @@ -882,9 +884,7 @@ "aws-ecs-cluster.json", "aws-ecs-clustercapacityproviderassociations.json", "aws-ecs-primarytaskset.json", - "aws-ecs-service.json", "aws-ecs-taskdefinition.json", - "aws-ecs-taskset.json", "aws-efs-accesspoint.json", "aws-efs-filesystem.json", "aws-efs-mounttarget.json", @@ -950,7 +950,6 @@ "aws-glue-trigger.json", "aws-glue-usageprofile.json", "aws-glue-workflow.json", - "aws-guardduty-detector.json", "aws-guardduty-filter.json", "aws-guardduty-ipset.json", "aws-guardduty-malwareprotectionplan.json", @@ -982,7 +981,6 @@ "aws-imagebuilder-lifecyclepolicy.json", "aws-imagebuilder-workflow.json", "aws-internetmonitor-monitor.json", - "aws-kinesis-stream.json", "aws-kinesisanalyticsv2-application.json", "aws-kinesisfirehose-deliverystream.json", "aws-kms-alias.json", @@ -1036,11 +1034,11 @@ "aws-msk-vpcconnection.json", "aws-mwaa-environment.json", "aws-networkfirewall-firewall.json", - "aws-networkfirewall-firewallpolicy.json", "aws-networkfirewall-loggingconfiguration.json", "aws-networkfirewall-rulegroup.json", "aws-networkfirewall-tlsinspectionconfiguration.json", "aws-networkmanager-connectattachment.json", + "aws-networkmanager-connectpeer.json", "aws-networkmanager-corenetwork.json", "aws-networkmanager-customergatewayassociation.json", "aws-networkmanager-device.json", @@ -1051,6 +1049,7 @@ "aws-networkmanager-sitetositevpnattachment.json", "aws-networkmanager-transitgatewaypeering.json", "aws-networkmanager-transitgatewayregistration.json", + "aws-networkmanager-transitgatewayroutetableattachment.json", "aws-networkmanager-vpcattachment.json", "aws-oam-link.json", "aws-oam-sink.json", diff --git a/src/cfnlint/data/schemas/providers/ap_south_2/aws-ecs-service.json b/src/cfnlint/data/schemas/providers/ap_south_2/aws-ecs-service.json new file mode 100644 index 0000000000..ba7baa1de3 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_south_2/aws-ecs-service.json @@ -0,0 +1,585 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/DeploymentController", + "/properties/LaunchType", + "/properties/Role", + "/properties/SchedulingStrategy", + "/properties/ServiceName" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "CapacityProviderStrategyItem": { + "additionalProperties": false, + "properties": { + "Base": { + "type": "integer" + }, + "CapacityProvider": { + "type": "string" + }, + "Weight": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentAlarms": { + "additionalProperties": false, + "properties": { + "AlarmNames": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "AlarmNames", + "Rollback", + "Enable" + ], + "type": "object" + }, + "DeploymentCircuitBreaker": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "Enable", + "Rollback" + ], + "type": "object" + }, + "DeploymentConfiguration": { + "additionalProperties": false, + "properties": { + "Alarms": { + "$ref": "#/definitions/DeploymentAlarms" + }, + "DeploymentCircuitBreaker": { + "$ref": "#/definitions/DeploymentCircuitBreaker" + }, + "MaximumPercent": { + "type": "integer" + }, + "MinimumHealthyPercent": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentController": { + "additionalProperties": false, + "properties": { + "Type": { + "enum": [ + "CODE_DEPLOY", + "ECS", + "EXTERNAL" + ], + "type": "string" + } + }, + "type": "object" + }, + "EBSTagSpecification": { + "additionalProperties": false, + "properties": { + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "ResourceType": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "ResourceType" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "LoadBalancerName": { + "type": "string" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "LogConfiguration": { + "additionalProperties": false, + "properties": { + "LogDriver": { + "type": "string" + }, + "Options": { + "additionalProperties": false, + "patternProperties": { + ".{1,}": { + "type": "string" + } + }, + "type": "object" + }, + "SecretOptions": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Secret" + }, + "type": "array" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsvpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "PlacementConstraint": { + "additionalProperties": false, + "properties": { + "Expression": { + "type": "string" + }, + "Type": { + "enum": [ + "distinctInstance", + "memberOf" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "PlacementStrategy": { + "additionalProperties": false, + "properties": { + "Field": { + "type": "string" + }, + "Type": { + "enum": [ + "binpack", + "random", + "spread" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "Secret": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "ValueFrom": { + "type": "string" + } + }, + "required": [ + "Name", + "ValueFrom" + ], + "type": "object" + }, + "ServiceConnectClientAlias": { + "additionalProperties": false, + "properties": { + "DnsName": { + "type": "string" + }, + "Port": { + "type": "integer" + } + }, + "required": [ + "Port" + ], + "type": "object" + }, + "ServiceConnectConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + }, + "LogConfiguration": { + "$ref": "#/definitions/LogConfiguration" + }, + "Namespace": { + "type": "string" + }, + "Services": { + "items": { + "$ref": "#/definitions/ServiceConnectService" + }, + "type": "array" + } + }, + "required": [ + "Enabled" + ], + "type": "object" + }, + "ServiceConnectService": { + "additionalProperties": false, + "properties": { + "ClientAliases": { + "items": { + "$ref": "#/definitions/ServiceConnectClientAlias" + }, + "type": "array" + }, + "DiscoveryName": { + "type": "string" + }, + "IngressPortOverride": { + "type": "integer" + }, + "PortName": { + "type": "string" + }, + "Timeout": { + "$ref": "#/definitions/TimeoutConfiguration" + }, + "Tls": { + "$ref": "#/definitions/ServiceConnectTlsConfiguration" + } + }, + "required": [ + "PortName" + ], + "type": "object" + }, + "ServiceConnectTlsCertificateAuthority": { + "additionalProperties": false, + "properties": { + "AwsPcaAuthorityArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceConnectTlsConfiguration": { + "additionalProperties": false, + "properties": { + "IssuerCertificateAuthority": { + "$ref": "#/definitions/ServiceConnectTlsCertificateAuthority" + }, + "KmsKey": { + "type": "string" + }, + "RoleArn": { + "type": "string" + } + }, + "required": [ + "IssuerCertificateAuthority" + ], + "type": "object" + }, + "ServiceManagedEBSVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "Encrypted": { + "type": "boolean" + }, + "FilesystemType": { + "type": "string" + }, + "Iops": { + "type": "integer" + }, + "KmsKeyId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SizeInGiB": { + "type": "integer" + }, + "SnapshotId": { + "type": "string" + }, + "TagSpecifications": { + "items": { + "$ref": "#/definitions/EBSTagSpecification" + }, + "type": "array" + }, + "Throughput": { + "type": "integer" + }, + "VolumeType": { + "type": "string" + } + }, + "required": [ + "RoleArn" + ], + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "ManagedEBSVolume": { + "$ref": "#/definitions/ServiceManagedEBSVolumeConfiguration" + }, + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + }, + "TimeoutConfiguration": { + "additionalProperties": false, + "properties": { + "IdleTimeoutSeconds": { + "type": "integer" + }, + "PerRequestTimeoutSeconds": { + "type": "integer" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/ServiceArn", + "/properties/Cluster" + ], + "properties": { + "CapacityProviderStrategy": { + "items": { + "$ref": "#/definitions/CapacityProviderStrategyItem" + }, + "type": "array" + }, + "Cluster": { + "type": "string" + }, + "DeploymentConfiguration": { + "$ref": "#/definitions/DeploymentConfiguration" + }, + "DeploymentController": { + "$ref": "#/definitions/DeploymentController" + }, + "DesiredCount": { + "type": "integer" + }, + "EnableECSManagedTags": { + "type": "boolean" + }, + "EnableExecuteCommand": { + "type": "boolean" + }, + "HealthCheckGracePeriodSeconds": { + "type": "integer" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE", + "EXTERNAL" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "Name": { + "type": "string" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlacementConstraints": { + "items": { + "$ref": "#/definitions/PlacementConstraint" + }, + "type": "array" + }, + "PlacementStrategies": { + "items": { + "$ref": "#/definitions/PlacementStrategy" + }, + "type": "array" + }, + "PlatformVersion": { + "default": "LATEST", + "type": "string" + }, + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "Role": { + "type": "string" + }, + "SchedulingStrategy": { + "enum": [ + "DAEMON", + "REPLICA" + ], + "type": "string" + }, + "ServiceArn": { + "type": "string" + }, + "ServiceConnectConfiguration": { + "$ref": "#/definitions/ServiceConnectConfiguration" + }, + "ServiceName": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + }, + "VolumeConfigurations": { + "items": { + "$ref": "#/definitions/ServiceVolumeConfiguration" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/ServiceArn", + "/properties/Name" + ], + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::Service", + "writeOnlyProperties": [ + "/properties/ServiceConnectConfiguration", + "/properties/VolumeConfigurations" + ] +} diff --git a/src/cfnlint/data/schemas/providers/ap_south_2/aws-ecs-taskset.json b/src/cfnlint/data/schemas/providers/ap_south_2/aws-ecs-taskset.json new file mode 100644 index 0000000000..3491488499 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_south_2/aws-ecs-taskset.json @@ -0,0 +1,191 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/ExternalId", + "/properties/LaunchType", + "/properties/LoadBalancers", + "/properties/NetworkConfiguration", + "/properties/PlatformVersion", + "/properties/Service", + "/properties/ServiceRegistries", + "/properties/TaskDefinition" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "maxItems": 5, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "maxItems": 16, + "type": "array" + } + }, + "required": [ + "Subnets" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsVpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "Scale": { + "additionalProperties": false, + "properties": { + "Unit": { + "enum": [ + "PERCENT" + ], + "type": "string" + }, + "Value": { + "maximum": 100, + "minimum": 0, + "type": "number" + } + }, + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Cluster", + "/properties/Service", + "/properties/Id" + ], + "properties": { + "Cluster": { + "type": "string" + }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlatformVersion": { + "type": "string" + }, + "Scale": { + "$ref": "#/definitions/Scale" + }, + "Service": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "Cluster", + "Service", + "TaskDefinition" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-ecs.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::TaskSet" +} diff --git a/src/cfnlint/data/schemas/providers/ap_south_2/aws-guardduty-detector.json b/src/cfnlint/data/schemas/providers/ap_south_2/aws-guardduty-detector.json new file mode 100644 index 0000000000..efaad17ff9 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_south_2/aws-guardduty-detector.json @@ -0,0 +1,184 @@ +{ + "additionalProperties": false, + "definitions": { + "CFNDataSourceConfigurations": { + "additionalProperties": false, + "properties": { + "Kubernetes": { + "$ref": "#/definitions/CFNKubernetesConfiguration" + }, + "MalwareProtection": { + "$ref": "#/definitions/CFNMalwareProtectionConfiguration" + }, + "S3Logs": { + "$ref": "#/definitions/CFNS3LogsConfiguration" + } + }, + "type": "object" + }, + "CFNFeatureAdditionalConfiguration": { + "additionalProperties": false, + "properties": { + "Name": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "Status": { + "maxLength": 128, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "CFNFeatureConfiguration": { + "additionalProperties": false, + "properties": { + "AdditionalConfiguration": { + "items": { + "$ref": "#/definitions/CFNFeatureAdditionalConfiguration" + }, + "type": "array" + }, + "Name": { + "maxLength": 128, + "type": "string" + }, + "Status": { + "enum": [ + "ENABLED", + "DISABLED" + ], + "type": "string" + } + }, + "required": [ + "Name", + "Status" + ], + "type": "object" + }, + "CFNKubernetesAuditLogsConfiguration": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + } + }, + "required": [ + "Enable" + ], + "type": "object" + }, + "CFNKubernetesConfiguration": { + "additionalProperties": false, + "properties": { + "AuditLogs": { + "$ref": "#/definitions/CFNKubernetesAuditLogsConfiguration" + } + }, + "required": [ + "AuditLogs" + ], + "type": "object" + }, + "CFNMalwareProtectionConfiguration": { + "additionalProperties": false, + "properties": { + "ScanEc2InstanceWithFindings": { + "$ref": "#/definitions/CFNScanEc2InstanceWithFindingsConfiguration" + } + }, + "type": "object" + }, + "CFNS3LogsConfiguration": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + } + }, + "required": [ + "Enable" + ], + "type": "object" + }, + "CFNScanEc2InstanceWithFindingsConfiguration": { + "additionalProperties": false, + "properties": { + "EbsVolumes": { + "type": "boolean" + } + }, + "type": "object" + }, + "TagItem": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "DataSources": { + "$ref": "#/definitions/CFNDataSourceConfigurations" + }, + "Enable": { + "type": "boolean" + }, + "Features": { + "items": { + "$ref": "#/definitions/CFNFeatureConfiguration" + }, + "type": "array" + }, + "FindingPublishingFrequency": { + "enum": [ + "FIFTEEN_MINUTES", + "ONE_HOUR", + "SIX_HOURS" + ], + "type": "string" + }, + "Id": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/TagItem" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "Enable" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": false, + "taggable": true + }, + "typeName": "AWS::GuardDuty::Detector" +} diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_1/aws-kinesis-stream.json b/src/cfnlint/data/schemas/providers/ap_south_2/aws-kinesis-stream.json similarity index 87% rename from src/cfnlint/data/schemas/providers/ap_northeast_1/aws-kinesis-stream.json rename to src/cfnlint/data/schemas/providers/ap_south_2/aws-kinesis-stream.json index 45b4ce6a6b..be1bc65c07 100644 --- a/src/cfnlint/data/schemas/providers/ap_northeast_1/aws-kinesis-stream.json +++ b/src/cfnlint/data/schemas/providers/ap_south_2/aws-kinesis-stream.json @@ -1,5 +1,4 @@ { - "$comment": "Do not set SystemTags to true without implementing a fail-open mechanism. It should not fail when adding systemTags for customers without AddTagsToStream Permission. Cloudformation will automatically add system tags even if customer does not have the AddTagsToStream permission. COE: https://www.coe.a2z.com/coe/236297/content", "additionalProperties": false, "createOnlyProperties": [ "/properties/Name" diff --git a/src/cfnlint/data/schemas/providers/ap_south_2/aws-networkfirewall-firewallpolicy.json b/src/cfnlint/data/schemas/providers/ap_south_2/aws-networkfirewall-firewallpolicy.json new file mode 100644 index 0000000000..973b595561 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_south_2/aws-networkfirewall-firewallpolicy.json @@ -0,0 +1,332 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/FirewallPolicyName" + ], + "definitions": { + "ActionDefinition": { + "additionalProperties": false, + "properties": { + "PublishMetricAction": { + "$ref": "#/definitions/PublishMetricAction" + } + }, + "type": "object" + }, + "CustomAction": { + "additionalProperties": false, + "properties": { + "ActionDefinition": { + "$ref": "#/definitions/ActionDefinition" + }, + "ActionName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + } + }, + "required": [ + "ActionName", + "ActionDefinition" + ], + "type": "object" + }, + "Dimension": { + "additionalProperties": false, + "properties": { + "Value": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-_ ]+$", + "type": "string" + } + }, + "required": [ + "Value" + ], + "type": "object" + }, + "FirewallPolicy": { + "additionalProperties": false, + "properties": { + "PolicyVariables": { + "additionalProperties": false, + "properties": { + "RuleVariables": { + "$ref": "#/definitions/RuleVariables" + } + }, + "type": "object" + }, + "StatefulDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatefulEngineOptions": { + "$ref": "#/definitions/StatefulEngineOptions" + }, + "StatefulRuleGroupReferences": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/StatefulRuleGroupReference" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessCustomActions": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/CustomAction" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessFragmentDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessRuleGroupReferences": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/StatelessRuleGroupReference" + }, + "type": "array", + "uniqueItems": false + }, + "TLSInspectionConfigurationArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "StatelessDefaultActions", + "StatelessFragmentDefaultActions" + ], + "type": "object" + }, + "IPSet": { + "additionalProperties": false, + "properties": { + "Definition": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/VariableDefinition" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "OverrideAction": { + "enum": [ + "DROP_TO_ALERT" + ], + "type": "string" + }, + "Priority": { + "maximum": 65535, + "minimum": 1, + "type": "integer" + }, + "PublishMetricAction": { + "additionalProperties": false, + "properties": { + "Dimensions": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/Dimension" + }, + "type": "array", + "uniqueItems": false + } + }, + "required": [ + "Dimensions" + ], + "type": "object" + }, + "ResourceArn": { + "maxLength": 256, + "minLength": 1, + "pattern": "^(arn:aws.*)$", + "type": "string" + }, + "RuleOrder": { + "enum": [ + "DEFAULT_ACTION_ORDER", + "STRICT_ORDER" + ], + "type": "string" + }, + "RuleVariables": { + "additionalProperties": false, + "patternProperties": { + "^[A-Za-z0-9_]{1,32}$": { + "$ref": "#/definitions/IPSet" + } + }, + "type": "object" + }, + "StatefulEngineOptions": { + "additionalProperties": false, + "properties": { + "RuleOrder": { + "$ref": "#/definitions/RuleOrder" + }, + "StreamExceptionPolicy": { + "$ref": "#/definitions/StreamExceptionPolicy" + } + }, + "type": "object" + }, + "StatefulRuleGroupOverride": { + "additionalProperties": false, + "properties": { + "Action": { + "$ref": "#/definitions/OverrideAction" + } + }, + "type": "object" + }, + "StatefulRuleGroupReference": { + "additionalProperties": false, + "properties": { + "Override": { + "$ref": "#/definitions/StatefulRuleGroupOverride" + }, + "Priority": { + "$ref": "#/definitions/Priority" + }, + "ResourceArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "ResourceArn" + ], + "type": "object" + }, + "StatelessRuleGroupReference": { + "additionalProperties": false, + "properties": { + "Priority": { + "$ref": "#/definitions/Priority" + }, + "ResourceArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "ResourceArn", + "Priority" + ], + "type": "object" + }, + "StreamExceptionPolicy": { + "enum": [ + "DROP", + "CONTINUE", + "REJECT" + ], + "type": "string" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "^.*$", + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 0, + "pattern": "^.*$", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "VariableDefinition": { + "minLength": 1, + "pattern": "^.*$", + "type": "string" + } + }, + "primaryIdentifier": [ + "/properties/FirewallPolicyArn" + ], + "properties": { + "Description": { + "maxLength": 512, + "minLength": 1, + "pattern": "^.*$", + "type": "string" + }, + "FirewallPolicy": { + "$ref": "#/definitions/FirewallPolicy" + }, + "FirewallPolicyArn": { + "$ref": "#/definitions/ResourceArn" + }, + "FirewallPolicyId": { + "maxLength": 36, + "minLength": 36, + "pattern": "^([0-9a-f]{8})-([0-9a-f]{4}-){3}([0-9a-f]{12})$", + "type": "string" + }, + "FirewallPolicyName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-]+$", + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + } + }, + "readOnlyProperties": [ + "/properties/FirewallPolicyArn", + "/properties/FirewallPolicyId" + ], + "required": [ + "FirewallPolicyName", + "FirewallPolicy" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-networkfirewall.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::NetworkFirewall::FirewallPolicy" +} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_1/__init__.py b/src/cfnlint/data/schemas/providers/ap_southeast_1/__init__.py index 15df36ee80..9ad04ceb70 100644 --- a/src/cfnlint/data/schemas/providers/ap_southeast_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_southeast_1/__init__.py @@ -690,6 +690,7 @@ "AWS::Kendra::Faq", "AWS::Kendra::Index", "AWS::KendraRanking::ExecutionPlan", + "AWS::Kinesis::ResourcePolicy", "AWS::Kinesis::Stream", "AWS::Kinesis::StreamConsumer", "AWS::KinesisAnalytics::Application", @@ -1672,9 +1673,7 @@ "aws-ecs-cluster.json", "aws-ecs-clustercapacityproviderassociations.json", "aws-ecs-primarytaskset.json", - "aws-ecs-service.json", "aws-ecs-taskdefinition.json", - "aws-ecs-taskset.json", "aws-efs-accesspoint.json", "aws-efs-filesystem.json", "aws-efs-mounttarget.json", @@ -1899,6 +1898,8 @@ "aws-kendra-faq.json", "aws-kendra-index.json", "aws-kendraranking-executionplan.json", + "aws-kinesis-resourcepolicy.json", + "aws-kinesis-stream.json", "aws-kinesis-streamconsumer.json", "aws-kinesisanalytics-application.json", "aws-kinesisanalytics-applicationoutput.json", @@ -2135,7 +2136,6 @@ "aws-ram-permission.json", "aws-ram-resourceshare.json", "aws-rds-customdbengineversion.json", - "aws-rds-dbcluster.json", "aws-rds-dbclusterparametergroup.json", "aws-rds-dbinstance.json", "aws-rds-dbparametergroup.json", @@ -2144,7 +2144,6 @@ "aws-rds-dbproxytargetgroup.json", "aws-rds-dbsecuritygroup.json", "aws-rds-dbsecuritygroupingress.json", - "aws-rds-dbsubnetgroup.json", "aws-rds-eventsubscription.json", "aws-rds-globalcluster.json", "aws-rds-integration.json", @@ -2228,7 +2227,6 @@ "aws-sagemaker-endpointconfig.json", "aws-sagemaker-featuregroup.json", "aws-sagemaker-image.json", - "aws-sagemaker-imageversion.json", "aws-sagemaker-inferencecomponent.json", "aws-sagemaker-inferenceexperiment.json", "aws-sagemaker-mlflowtrackingserver.json", diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_1/aws-ecs-service.json b/src/cfnlint/data/schemas/providers/ap_southeast_1/aws-ecs-service.json new file mode 100644 index 0000000000..ba7baa1de3 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_1/aws-ecs-service.json @@ -0,0 +1,585 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/DeploymentController", + "/properties/LaunchType", + "/properties/Role", + "/properties/SchedulingStrategy", + "/properties/ServiceName" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "CapacityProviderStrategyItem": { + "additionalProperties": false, + "properties": { + "Base": { + "type": "integer" + }, + "CapacityProvider": { + "type": "string" + }, + "Weight": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentAlarms": { + "additionalProperties": false, + "properties": { + "AlarmNames": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "AlarmNames", + "Rollback", + "Enable" + ], + "type": "object" + }, + "DeploymentCircuitBreaker": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "Enable", + "Rollback" + ], + "type": "object" + }, + "DeploymentConfiguration": { + "additionalProperties": false, + "properties": { + "Alarms": { + "$ref": "#/definitions/DeploymentAlarms" + }, + "DeploymentCircuitBreaker": { + "$ref": "#/definitions/DeploymentCircuitBreaker" + }, + "MaximumPercent": { + "type": "integer" + }, + "MinimumHealthyPercent": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentController": { + "additionalProperties": false, + "properties": { + "Type": { + "enum": [ + "CODE_DEPLOY", + "ECS", + "EXTERNAL" + ], + "type": "string" + } + }, + "type": "object" + }, + "EBSTagSpecification": { + "additionalProperties": false, + "properties": { + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "ResourceType": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "ResourceType" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "LoadBalancerName": { + "type": "string" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "LogConfiguration": { + "additionalProperties": false, + "properties": { + "LogDriver": { + "type": "string" + }, + "Options": { + "additionalProperties": false, + "patternProperties": { + ".{1,}": { + "type": "string" + } + }, + "type": "object" + }, + "SecretOptions": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Secret" + }, + "type": "array" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsvpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "PlacementConstraint": { + "additionalProperties": false, + "properties": { + "Expression": { + "type": "string" + }, + "Type": { + "enum": [ + "distinctInstance", + "memberOf" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "PlacementStrategy": { + "additionalProperties": false, + "properties": { + "Field": { + "type": "string" + }, + "Type": { + "enum": [ + "binpack", + "random", + "spread" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "Secret": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "ValueFrom": { + "type": "string" + } + }, + "required": [ + "Name", + "ValueFrom" + ], + "type": "object" + }, + "ServiceConnectClientAlias": { + "additionalProperties": false, + "properties": { + "DnsName": { + "type": "string" + }, + "Port": { + "type": "integer" + } + }, + "required": [ + "Port" + ], + "type": "object" + }, + "ServiceConnectConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + }, + "LogConfiguration": { + "$ref": "#/definitions/LogConfiguration" + }, + "Namespace": { + "type": "string" + }, + "Services": { + "items": { + "$ref": "#/definitions/ServiceConnectService" + }, + "type": "array" + } + }, + "required": [ + "Enabled" + ], + "type": "object" + }, + "ServiceConnectService": { + "additionalProperties": false, + "properties": { + "ClientAliases": { + "items": { + "$ref": "#/definitions/ServiceConnectClientAlias" + }, + "type": "array" + }, + "DiscoveryName": { + "type": "string" + }, + "IngressPortOverride": { + "type": "integer" + }, + "PortName": { + "type": "string" + }, + "Timeout": { + "$ref": "#/definitions/TimeoutConfiguration" + }, + "Tls": { + "$ref": "#/definitions/ServiceConnectTlsConfiguration" + } + }, + "required": [ + "PortName" + ], + "type": "object" + }, + "ServiceConnectTlsCertificateAuthority": { + "additionalProperties": false, + "properties": { + "AwsPcaAuthorityArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceConnectTlsConfiguration": { + "additionalProperties": false, + "properties": { + "IssuerCertificateAuthority": { + "$ref": "#/definitions/ServiceConnectTlsCertificateAuthority" + }, + "KmsKey": { + "type": "string" + }, + "RoleArn": { + "type": "string" + } + }, + "required": [ + "IssuerCertificateAuthority" + ], + "type": "object" + }, + "ServiceManagedEBSVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "Encrypted": { + "type": "boolean" + }, + "FilesystemType": { + "type": "string" + }, + "Iops": { + "type": "integer" + }, + "KmsKeyId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SizeInGiB": { + "type": "integer" + }, + "SnapshotId": { + "type": "string" + }, + "TagSpecifications": { + "items": { + "$ref": "#/definitions/EBSTagSpecification" + }, + "type": "array" + }, + "Throughput": { + "type": "integer" + }, + "VolumeType": { + "type": "string" + } + }, + "required": [ + "RoleArn" + ], + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "ManagedEBSVolume": { + "$ref": "#/definitions/ServiceManagedEBSVolumeConfiguration" + }, + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + }, + "TimeoutConfiguration": { + "additionalProperties": false, + "properties": { + "IdleTimeoutSeconds": { + "type": "integer" + }, + "PerRequestTimeoutSeconds": { + "type": "integer" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/ServiceArn", + "/properties/Cluster" + ], + "properties": { + "CapacityProviderStrategy": { + "items": { + "$ref": "#/definitions/CapacityProviderStrategyItem" + }, + "type": "array" + }, + "Cluster": { + "type": "string" + }, + "DeploymentConfiguration": { + "$ref": "#/definitions/DeploymentConfiguration" + }, + "DeploymentController": { + "$ref": "#/definitions/DeploymentController" + }, + "DesiredCount": { + "type": "integer" + }, + "EnableECSManagedTags": { + "type": "boolean" + }, + "EnableExecuteCommand": { + "type": "boolean" + }, + "HealthCheckGracePeriodSeconds": { + "type": "integer" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE", + "EXTERNAL" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "Name": { + "type": "string" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlacementConstraints": { + "items": { + "$ref": "#/definitions/PlacementConstraint" + }, + "type": "array" + }, + "PlacementStrategies": { + "items": { + "$ref": "#/definitions/PlacementStrategy" + }, + "type": "array" + }, + "PlatformVersion": { + "default": "LATEST", + "type": "string" + }, + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "Role": { + "type": "string" + }, + "SchedulingStrategy": { + "enum": [ + "DAEMON", + "REPLICA" + ], + "type": "string" + }, + "ServiceArn": { + "type": "string" + }, + "ServiceConnectConfiguration": { + "$ref": "#/definitions/ServiceConnectConfiguration" + }, + "ServiceName": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + }, + "VolumeConfigurations": { + "items": { + "$ref": "#/definitions/ServiceVolumeConfiguration" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/ServiceArn", + "/properties/Name" + ], + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::Service", + "writeOnlyProperties": [ + "/properties/ServiceConnectConfiguration", + "/properties/VolumeConfigurations" + ] +} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_1/aws-ecs-taskset.json b/src/cfnlint/data/schemas/providers/ap_southeast_1/aws-ecs-taskset.json new file mode 100644 index 0000000000..3491488499 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_1/aws-ecs-taskset.json @@ -0,0 +1,191 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/ExternalId", + "/properties/LaunchType", + "/properties/LoadBalancers", + "/properties/NetworkConfiguration", + "/properties/PlatformVersion", + "/properties/Service", + "/properties/ServiceRegistries", + "/properties/TaskDefinition" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "maxItems": 5, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "maxItems": 16, + "type": "array" + } + }, + "required": [ + "Subnets" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsVpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "Scale": { + "additionalProperties": false, + "properties": { + "Unit": { + "enum": [ + "PERCENT" + ], + "type": "string" + }, + "Value": { + "maximum": 100, + "minimum": 0, + "type": "number" + } + }, + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Cluster", + "/properties/Service", + "/properties/Id" + ], + "properties": { + "Cluster": { + "type": "string" + }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlatformVersion": { + "type": "string" + }, + "Scale": { + "$ref": "#/definitions/Scale" + }, + "Service": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "Cluster", + "Service", + "TaskDefinition" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-ecs.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::TaskSet" +} diff --git a/src/cfnlint/data/schemas/providers/us_west_1/aws-rds-dbcluster.json b/src/cfnlint/data/schemas/providers/ap_southeast_1/aws-rds-dbcluster.json similarity index 98% rename from src/cfnlint/data/schemas/providers/us_west_1/aws-rds-dbcluster.json rename to src/cfnlint/data/schemas/providers/ap_southeast_1/aws-rds-dbcluster.json index 9748b231ac..46000178b5 100644 --- a/src/cfnlint/data/schemas/providers/us_west_1/aws-rds-dbcluster.json +++ b/src/cfnlint/data/schemas/providers/ap_southeast_1/aws-rds-dbcluster.json @@ -177,7 +177,6 @@ "type": "string" }, "DBClusterParameterGroupName": { - "default": "default.aurora5.6", "type": "string" }, "DBClusterResourceId": { @@ -265,7 +264,6 @@ "type": "string" }, "MonitoringInterval": { - "default": 0, "type": "integer" }, "MonitoringRoleArn": { @@ -305,7 +303,6 @@ "type": "string" }, "RestoreType": { - "default": "full-copy", "type": "string" }, "ScalingConfiguration": { @@ -356,7 +353,7 @@ "/properties/DBClusterIdentifier": "$lowercase(DBClusterIdentifier)", "/properties/DBClusterParameterGroupName": "$lowercase(DBClusterParameterGroupName)", "/properties/DBSubnetGroupName": "$lowercase(DBSubnetGroupName)", - "/properties/EnableHttpEndpoint": "$lowercase($string(EngineMode)) = 'serverless' ? EnableHttpEndpoint : ($lowercase($string(Engine)) = 'aurora-postgresql' ? EnableHttpEndpoint : false )", + "/properties/EnableHttpEndpoint": "$lowercase($string(EngineMode)) = 'serverless' ? EnableHttpEndpoint : ($lowercase($string(Engine)) in ['aurora-postgresql', 'aurora-mysql'] ? EnableHttpEndpoint : false )", "/properties/Engine": "$lowercase(Engine)", "/properties/EngineVersion": "$join([$string(EngineVersion), \".*\"])", "/properties/KmsKeyId": "$join([\"arn:(aws)[-]{0,1}[a-z]{0,2}[-]{0,1}[a-z]{0,3}:kms:[a-z]{2}[-]{1}[a-z]{3,10}[-]{0,1}[a-z]{0,10}[-]{1}[1-3]{1}:[0-9]{12}[:]{1}key\\/\", KmsKeyId])", diff --git a/src/cfnlint/data/schemas/providers/eu_central_2/aws-rds-eventsubscription.json b/src/cfnlint/data/schemas/providers/ap_southeast_1/aws-rds-dbsubnetgroup.json similarity index 62% rename from src/cfnlint/data/schemas/providers/eu_central_2/aws-rds-eventsubscription.json rename to src/cfnlint/data/schemas/providers/ap_southeast_1/aws-rds-dbsubnetgroup.json index 10fa51a2d0..d228afbbad 100644 --- a/src/cfnlint/data/schemas/providers/eu_central_2/aws-rds-eventsubscription.json +++ b/src/cfnlint/data/schemas/providers/ap_southeast_1/aws-rds-dbsubnetgroup.json @@ -1,8 +1,7 @@ { "additionalProperties": false, "createOnlyProperties": [ - "/properties/SubscriptionName", - "/properties/SnsTopicArn" + "/properties/DBSubnetGroupName" ], "definitions": { "Tag": { @@ -26,37 +25,22 @@ } }, "primaryIdentifier": [ - "/properties/SubscriptionName" + "/properties/DBSubnetGroupName" ], "properties": { - "Enabled": { - "default": true, - "type": "boolean" - }, - "EventCategories": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true + "DBSubnetGroupDescription": { + "type": "string" }, - "SnsTopicArn": { + "DBSubnetGroupName": { "type": "string" }, - "SourceIds": { + "SubnetIds": { "insertionOrder": false, "items": { "type": "string" }, "type": "array", - "uniqueItems": true - }, - "SourceType": { - "type": "string" - }, - "SubscriptionName": { - "maxLength": 255, - "type": "string" + "uniqueItems": false }, "Tags": { "insertionOrder": false, @@ -69,11 +53,19 @@ } }, "propertyTransform": { - "/properties/SubscriptionName": "$lowercase(SubscriptionName)" + "/properties/DBSubnetGroupName": "$lowercase(DBSubnetGroupName)" }, "required": [ - "SnsTopicArn" + "DBSubnetGroupDescription", + "SubnetIds" ], "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-rds", - "typeName": "AWS::RDS::EventSubscription" + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::RDS::DBSubnetGroup" } diff --git a/src/cfnlint/data/schemas/providers/ap_east_1/aws-sagemaker-imageversion.json b/src/cfnlint/data/schemas/providers/ap_southeast_1/aws-sagemaker-imageversion.json similarity index 99% rename from src/cfnlint/data/schemas/providers/ap_east_1/aws-sagemaker-imageversion.json rename to src/cfnlint/data/schemas/providers/ap_southeast_1/aws-sagemaker-imageversion.json index e7c91ccc8d..3b09dc9bad 100644 --- a/src/cfnlint/data/schemas/providers/ap_east_1/aws-sagemaker-imageversion.json +++ b/src/cfnlint/data/schemas/providers/ap_southeast_1/aws-sagemaker-imageversion.json @@ -150,7 +150,6 @@ "readOnlyProperties": [ "/properties/ImageVersionArn", "/properties/ImageArn", - "/properties/Version", "/properties/ContainerImage" ], "required": [ diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_2/__init__.py b/src/cfnlint/data/schemas/providers/ap_southeast_2/__init__.py index 0f6c1043fb..d46c1357c6 100644 --- a/src/cfnlint/data/schemas/providers/ap_southeast_2/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_southeast_2/__init__.py @@ -711,6 +711,7 @@ "AWS::Kendra::Faq", "AWS::Kendra::Index", "AWS::KendraRanking::ExecutionPlan", + "AWS::Kinesis::ResourcePolicy", "AWS::Kinesis::Stream", "AWS::Kinesis::StreamConsumer", "AWS::KinesisAnalytics::Application", @@ -1587,6 +1588,7 @@ "aws-dms-instanceprofile.json", "aws-dms-migrationproject.json", "aws-dms-replicationconfig.json", + "aws-dms-replicationinstance.json", "aws-dms-replicationsubnetgroup.json", "aws-dms-replicationtask.json", "aws-docdb-dbcluster.json", @@ -1697,9 +1699,7 @@ "aws-ecs-cluster.json", "aws-ecs-clustercapacityproviderassociations.json", "aws-ecs-primarytaskset.json", - "aws-ecs-service.json", "aws-ecs-taskdefinition.json", - "aws-ecs-taskset.json", "aws-efs-accesspoint.json", "aws-efs-filesystem.json", "aws-efs-mounttarget.json", @@ -1941,6 +1941,7 @@ "aws-kendra-faq.json", "aws-kendra-index.json", "aws-kendraranking-executionplan.json", + "aws-kinesis-resourcepolicy.json", "aws-kinesis-stream.json", "aws-kinesis-streamconsumer.json", "aws-kinesisanalytics-application.json", @@ -2029,14 +2030,12 @@ "aws-mediaconvert-jobtemplate.json", "aws-mediaconvert-preset.json", "aws-mediaconvert-queue.json", - "aws-medialive-channel.json", "aws-medialive-channelplacementgroup.json", "aws-medialive-cloudwatchalarmtemplate.json", "aws-medialive-cloudwatchalarmtemplategroup.json", "aws-medialive-cluster.json", "aws-medialive-eventbridgeruletemplate.json", "aws-medialive-eventbridgeruletemplategroup.json", - "aws-medialive-input.json", "aws-medialive-inputsecuritygroup.json", "aws-medialive-multiplex.json", "aws-medialive-multiplexprogram.json", @@ -2077,6 +2076,7 @@ "aws-neptune-dbsubnetgroup.json", "aws-neptune-eventsubscription.json", "aws-networkfirewall-firewall.json", + "aws-networkfirewall-firewallpolicy.json", "aws-networkfirewall-loggingconfiguration.json", "aws-networkfirewall-rulegroup.json", "aws-networkfirewall-tlsinspectionconfiguration.json", @@ -2236,7 +2236,6 @@ "aws-route53resolver-resolverendpoint.json", "aws-route53resolver-resolverqueryloggingconfig.json", "aws-route53resolver-resolverqueryloggingconfigassociation.json", - "aws-route53resolver-resolverrule.json", "aws-route53resolver-resolverruleassociation.json", "aws-rum-appmonitor.json", "aws-s3-accessgrant.json", @@ -2265,7 +2264,6 @@ "aws-sagemaker-endpointconfig.json", "aws-sagemaker-featuregroup.json", "aws-sagemaker-image.json", - "aws-sagemaker-imageversion.json", "aws-sagemaker-inferencecomponent.json", "aws-sagemaker-inferenceexperiment.json", "aws-sagemaker-mlflowtrackingserver.json", diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-dms-replicationinstance.json b/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-dms-replicationinstance.json deleted file mode 100644 index 3d4dfcb1dc..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-dms-replicationinstance.json +++ /dev/null @@ -1,106 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/KmsKeyId", - "/properties/ResourceIdentifier", - "/properties/ReplicationSubnetGroupIdentifier", - "/properties/PubliclyAccessible" - ], - "definitions": { - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "AllocatedStorage": { - "type": "integer" - }, - "AllowMajorVersionUpgrade": { - "type": "boolean" - }, - "AutoMinorVersionUpgrade": { - "type": "boolean" - }, - "AvailabilityZone": { - "type": "string" - }, - "EngineVersion": { - "type": "string" - }, - "Id": { - "type": "string" - }, - "KmsKeyId": { - "type": "string" - }, - "MultiAZ": { - "type": "boolean" - }, - "NetworkType": { - "type": "string" - }, - "PreferredMaintenanceWindow": { - "type": "string" - }, - "PubliclyAccessible": { - "type": "boolean" - }, - "ReplicationInstanceClass": { - "type": "string" - }, - "ReplicationInstanceIdentifier": { - "type": "string" - }, - "ReplicationInstancePrivateIpAddresses": { - "type": "string" - }, - "ReplicationInstancePublicIpAddresses": { - "type": "string" - }, - "ReplicationSubnetGroupIdentifier": { - "type": "string" - }, - "ResourceIdentifier": { - "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": false - }, - "VpcSecurityGroupIds": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - } - }, - "readOnlyProperties": [ - "/properties/ReplicationInstancePublicIpAddresses", - "/properties/Id", - "/properties/ReplicationInstancePrivateIpAddresses" - ], - "required": [ - "ReplicationInstanceClass" - ], - "typeName": "AWS::DMS::ReplicationInstance" -} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-ecs-service.json b/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-ecs-service.json new file mode 100644 index 0000000000..ba7baa1de3 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-ecs-service.json @@ -0,0 +1,585 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/DeploymentController", + "/properties/LaunchType", + "/properties/Role", + "/properties/SchedulingStrategy", + "/properties/ServiceName" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "CapacityProviderStrategyItem": { + "additionalProperties": false, + "properties": { + "Base": { + "type": "integer" + }, + "CapacityProvider": { + "type": "string" + }, + "Weight": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentAlarms": { + "additionalProperties": false, + "properties": { + "AlarmNames": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "AlarmNames", + "Rollback", + "Enable" + ], + "type": "object" + }, + "DeploymentCircuitBreaker": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "Enable", + "Rollback" + ], + "type": "object" + }, + "DeploymentConfiguration": { + "additionalProperties": false, + "properties": { + "Alarms": { + "$ref": "#/definitions/DeploymentAlarms" + }, + "DeploymentCircuitBreaker": { + "$ref": "#/definitions/DeploymentCircuitBreaker" + }, + "MaximumPercent": { + "type": "integer" + }, + "MinimumHealthyPercent": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentController": { + "additionalProperties": false, + "properties": { + "Type": { + "enum": [ + "CODE_DEPLOY", + "ECS", + "EXTERNAL" + ], + "type": "string" + } + }, + "type": "object" + }, + "EBSTagSpecification": { + "additionalProperties": false, + "properties": { + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "ResourceType": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "ResourceType" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "LoadBalancerName": { + "type": "string" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "LogConfiguration": { + "additionalProperties": false, + "properties": { + "LogDriver": { + "type": "string" + }, + "Options": { + "additionalProperties": false, + "patternProperties": { + ".{1,}": { + "type": "string" + } + }, + "type": "object" + }, + "SecretOptions": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Secret" + }, + "type": "array" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsvpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "PlacementConstraint": { + "additionalProperties": false, + "properties": { + "Expression": { + "type": "string" + }, + "Type": { + "enum": [ + "distinctInstance", + "memberOf" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "PlacementStrategy": { + "additionalProperties": false, + "properties": { + "Field": { + "type": "string" + }, + "Type": { + "enum": [ + "binpack", + "random", + "spread" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "Secret": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "ValueFrom": { + "type": "string" + } + }, + "required": [ + "Name", + "ValueFrom" + ], + "type": "object" + }, + "ServiceConnectClientAlias": { + "additionalProperties": false, + "properties": { + "DnsName": { + "type": "string" + }, + "Port": { + "type": "integer" + } + }, + "required": [ + "Port" + ], + "type": "object" + }, + "ServiceConnectConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + }, + "LogConfiguration": { + "$ref": "#/definitions/LogConfiguration" + }, + "Namespace": { + "type": "string" + }, + "Services": { + "items": { + "$ref": "#/definitions/ServiceConnectService" + }, + "type": "array" + } + }, + "required": [ + "Enabled" + ], + "type": "object" + }, + "ServiceConnectService": { + "additionalProperties": false, + "properties": { + "ClientAliases": { + "items": { + "$ref": "#/definitions/ServiceConnectClientAlias" + }, + "type": "array" + }, + "DiscoveryName": { + "type": "string" + }, + "IngressPortOverride": { + "type": "integer" + }, + "PortName": { + "type": "string" + }, + "Timeout": { + "$ref": "#/definitions/TimeoutConfiguration" + }, + "Tls": { + "$ref": "#/definitions/ServiceConnectTlsConfiguration" + } + }, + "required": [ + "PortName" + ], + "type": "object" + }, + "ServiceConnectTlsCertificateAuthority": { + "additionalProperties": false, + "properties": { + "AwsPcaAuthorityArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceConnectTlsConfiguration": { + "additionalProperties": false, + "properties": { + "IssuerCertificateAuthority": { + "$ref": "#/definitions/ServiceConnectTlsCertificateAuthority" + }, + "KmsKey": { + "type": "string" + }, + "RoleArn": { + "type": "string" + } + }, + "required": [ + "IssuerCertificateAuthority" + ], + "type": "object" + }, + "ServiceManagedEBSVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "Encrypted": { + "type": "boolean" + }, + "FilesystemType": { + "type": "string" + }, + "Iops": { + "type": "integer" + }, + "KmsKeyId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SizeInGiB": { + "type": "integer" + }, + "SnapshotId": { + "type": "string" + }, + "TagSpecifications": { + "items": { + "$ref": "#/definitions/EBSTagSpecification" + }, + "type": "array" + }, + "Throughput": { + "type": "integer" + }, + "VolumeType": { + "type": "string" + } + }, + "required": [ + "RoleArn" + ], + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "ManagedEBSVolume": { + "$ref": "#/definitions/ServiceManagedEBSVolumeConfiguration" + }, + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + }, + "TimeoutConfiguration": { + "additionalProperties": false, + "properties": { + "IdleTimeoutSeconds": { + "type": "integer" + }, + "PerRequestTimeoutSeconds": { + "type": "integer" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/ServiceArn", + "/properties/Cluster" + ], + "properties": { + "CapacityProviderStrategy": { + "items": { + "$ref": "#/definitions/CapacityProviderStrategyItem" + }, + "type": "array" + }, + "Cluster": { + "type": "string" + }, + "DeploymentConfiguration": { + "$ref": "#/definitions/DeploymentConfiguration" + }, + "DeploymentController": { + "$ref": "#/definitions/DeploymentController" + }, + "DesiredCount": { + "type": "integer" + }, + "EnableECSManagedTags": { + "type": "boolean" + }, + "EnableExecuteCommand": { + "type": "boolean" + }, + "HealthCheckGracePeriodSeconds": { + "type": "integer" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE", + "EXTERNAL" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "Name": { + "type": "string" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlacementConstraints": { + "items": { + "$ref": "#/definitions/PlacementConstraint" + }, + "type": "array" + }, + "PlacementStrategies": { + "items": { + "$ref": "#/definitions/PlacementStrategy" + }, + "type": "array" + }, + "PlatformVersion": { + "default": "LATEST", + "type": "string" + }, + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "Role": { + "type": "string" + }, + "SchedulingStrategy": { + "enum": [ + "DAEMON", + "REPLICA" + ], + "type": "string" + }, + "ServiceArn": { + "type": "string" + }, + "ServiceConnectConfiguration": { + "$ref": "#/definitions/ServiceConnectConfiguration" + }, + "ServiceName": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + }, + "VolumeConfigurations": { + "items": { + "$ref": "#/definitions/ServiceVolumeConfiguration" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/ServiceArn", + "/properties/Name" + ], + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::Service", + "writeOnlyProperties": [ + "/properties/ServiceConnectConfiguration", + "/properties/VolumeConfigurations" + ] +} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-ecs-taskset.json b/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-ecs-taskset.json new file mode 100644 index 0000000000..3491488499 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-ecs-taskset.json @@ -0,0 +1,191 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/ExternalId", + "/properties/LaunchType", + "/properties/LoadBalancers", + "/properties/NetworkConfiguration", + "/properties/PlatformVersion", + "/properties/Service", + "/properties/ServiceRegistries", + "/properties/TaskDefinition" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "maxItems": 5, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "maxItems": 16, + "type": "array" + } + }, + "required": [ + "Subnets" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsVpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "Scale": { + "additionalProperties": false, + "properties": { + "Unit": { + "enum": [ + "PERCENT" + ], + "type": "string" + }, + "Value": { + "maximum": 100, + "minimum": 0, + "type": "number" + } + }, + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Cluster", + "/properties/Service", + "/properties/Id" + ], + "properties": { + "Cluster": { + "type": "string" + }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlatformVersion": { + "type": "string" + }, + "Scale": { + "$ref": "#/definitions/Scale" + }, + "Service": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "Cluster", + "Service", + "TaskDefinition" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-ecs.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::TaskSet" +} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-medialive-channel.json b/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-medialive-channel.json new file mode 100644 index 0000000000..a6c907c033 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-medialive-channel.json @@ -0,0 +1,3591 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Vpc", + "/properties/AnywhereSettings" + ], + "definitions": { + "AacSettings": { + "additionalProperties": false, + "properties": { + "Bitrate": { + "type": "number" + }, + "CodingMode": { + "type": "string" + }, + "InputType": { + "type": "string" + }, + "Profile": { + "type": "string" + }, + "RateControlMode": { + "type": "string" + }, + "RawFormat": { + "type": "string" + }, + "SampleRate": { + "type": "number" + }, + "Spec": { + "type": "string" + }, + "VbrQuality": { + "type": "string" + } + }, + "type": "object" + }, + "Ac3Settings": { + "additionalProperties": false, + "properties": { + "AttenuationControl": { + "type": "string" + }, + "Bitrate": { + "type": "number" + }, + "BitstreamMode": { + "type": "string" + }, + "CodingMode": { + "type": "string" + }, + "Dialnorm": { + "type": "integer" + }, + "DrcProfile": { + "type": "string" + }, + "LfeFilter": { + "type": "string" + }, + "MetadataControl": { + "type": "string" + } + }, + "type": "object" + }, + "AncillarySourceSettings": { + "additionalProperties": false, + "properties": { + "SourceAncillaryChannelNumber": { + "type": "integer" + } + }, + "type": "object" + }, + "AnywhereSettings": { + "additionalProperties": false, + "properties": { + "ChannelPlacementGroupId": { + "type": "string" + }, + "ClusterId": { + "type": "string" + } + }, + "type": "object" + }, + "ArchiveCdnSettings": { + "additionalProperties": false, + "properties": { + "ArchiveS3Settings": { + "$ref": "#/definitions/ArchiveS3Settings" + } + }, + "type": "object" + }, + "ArchiveContainerSettings": { + "additionalProperties": false, + "properties": { + "M2tsSettings": { + "$ref": "#/definitions/M2tsSettings" + }, + "RawSettings": { + "$ref": "#/definitions/RawSettings" + } + }, + "type": "object" + }, + "ArchiveGroupSettings": { + "additionalProperties": false, + "properties": { + "ArchiveCdnSettings": { + "$ref": "#/definitions/ArchiveCdnSettings" + }, + "Destination": { + "$ref": "#/definitions/OutputLocationRef" + }, + "RolloverInterval": { + "type": "integer" + } + }, + "type": "object" + }, + "ArchiveOutputSettings": { + "additionalProperties": false, + "properties": { + "ContainerSettings": { + "$ref": "#/definitions/ArchiveContainerSettings" + }, + "Extension": { + "type": "string" + }, + "NameModifier": { + "type": "string" + } + }, + "type": "object" + }, + "ArchiveS3Settings": { + "additionalProperties": false, + "properties": { + "CannedAcl": { + "type": "string" + } + }, + "type": "object" + }, + "AribDestinationSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "AribSourceSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "AudioChannelMapping": { + "additionalProperties": false, + "properties": { + "InputChannelLevels": { + "items": { + "$ref": "#/definitions/InputChannelLevel" + }, + "type": "array", + "uniqueItems": false + }, + "OutputChannel": { + "type": "integer" + } + }, + "type": "object" + }, + "AudioCodecSettings": { + "additionalProperties": false, + "properties": { + "AacSettings": { + "$ref": "#/definitions/AacSettings" + }, + "Ac3Settings": { + "$ref": "#/definitions/Ac3Settings" + }, + "Eac3AtmosSettings": { + "$ref": "#/definitions/Eac3AtmosSettings" + }, + "Eac3Settings": { + "$ref": "#/definitions/Eac3Settings" + }, + "Mp2Settings": { + "$ref": "#/definitions/Mp2Settings" + }, + "PassThroughSettings": { + "$ref": "#/definitions/PassThroughSettings" + }, + "WavSettings": { + "$ref": "#/definitions/WavSettings" + } + }, + "type": "object" + }, + "AudioDescription": { + "additionalProperties": false, + "properties": { + "AudioDashRoles": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "AudioNormalizationSettings": { + "$ref": "#/definitions/AudioNormalizationSettings" + }, + "AudioSelectorName": { + "type": "string" + }, + "AudioType": { + "type": "string" + }, + "AudioTypeControl": { + "type": "string" + }, + "AudioWatermarkingSettings": { + "$ref": "#/definitions/AudioWatermarkSettings" + }, + "CodecSettings": { + "$ref": "#/definitions/AudioCodecSettings" + }, + "DvbDashAccessibility": { + "type": "string" + }, + "LanguageCode": { + "type": "string" + }, + "LanguageCodeControl": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "RemixSettings": { + "$ref": "#/definitions/RemixSettings" + }, + "StreamName": { + "type": "string" + } + }, + "type": "object" + }, + "AudioDolbyEDecode": { + "additionalProperties": false, + "properties": { + "ProgramSelection": { + "type": "string" + } + }, + "type": "object" + }, + "AudioHlsRenditionSelection": { + "additionalProperties": false, + "properties": { + "GroupId": { + "type": "string" + }, + "Name": { + "type": "string" + } + }, + "type": "object" + }, + "AudioLanguageSelection": { + "additionalProperties": false, + "properties": { + "LanguageCode": { + "type": "string" + }, + "LanguageSelectionPolicy": { + "type": "string" + } + }, + "type": "object" + }, + "AudioNormalizationSettings": { + "additionalProperties": false, + "properties": { + "Algorithm": { + "type": "string" + }, + "AlgorithmControl": { + "type": "string" + }, + "TargetLkfs": { + "type": "number" + } + }, + "type": "object" + }, + "AudioOnlyHlsSettings": { + "additionalProperties": false, + "properties": { + "AudioGroupId": { + "type": "string" + }, + "AudioOnlyImage": { + "$ref": "#/definitions/InputLocation" + }, + "AudioTrackType": { + "type": "string" + }, + "SegmentType": { + "type": "string" + } + }, + "type": "object" + }, + "AudioPidSelection": { + "additionalProperties": false, + "properties": { + "Pid": { + "type": "integer" + } + }, + "type": "object" + }, + "AudioSelector": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "SelectorSettings": { + "$ref": "#/definitions/AudioSelectorSettings" + } + }, + "type": "object" + }, + "AudioSelectorSettings": { + "additionalProperties": false, + "properties": { + "AudioHlsRenditionSelection": { + "$ref": "#/definitions/AudioHlsRenditionSelection" + }, + "AudioLanguageSelection": { + "$ref": "#/definitions/AudioLanguageSelection" + }, + "AudioPidSelection": { + "$ref": "#/definitions/AudioPidSelection" + }, + "AudioTrackSelection": { + "$ref": "#/definitions/AudioTrackSelection" + } + }, + "type": "object" + }, + "AudioSilenceFailoverSettings": { + "additionalProperties": false, + "properties": { + "AudioSelectorName": { + "type": "string" + }, + "AudioSilenceThresholdMsec": { + "type": "integer" + } + }, + "type": "object" + }, + "AudioTrack": { + "additionalProperties": false, + "properties": { + "Track": { + "type": "integer" + } + }, + "type": "object" + }, + "AudioTrackSelection": { + "additionalProperties": false, + "properties": { + "DolbyEDecode": { + "$ref": "#/definitions/AudioDolbyEDecode" + }, + "Tracks": { + "items": { + "$ref": "#/definitions/AudioTrack" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "AudioWatermarkSettings": { + "additionalProperties": false, + "properties": { + "NielsenWatermarksSettings": { + "$ref": "#/definitions/NielsenWatermarksSettings" + } + }, + "type": "object" + }, + "AutomaticInputFailoverSettings": { + "additionalProperties": false, + "properties": { + "ErrorClearTimeMsec": { + "type": "integer" + }, + "FailoverConditions": { + "items": { + "$ref": "#/definitions/FailoverCondition" + }, + "type": "array", + "uniqueItems": false + }, + "InputPreference": { + "type": "string" + }, + "SecondaryInputId": { + "type": "string" + } + }, + "type": "object" + }, + "Av1ColorSpaceSettings": { + "additionalProperties": false, + "properties": { + "ColorSpacePassthroughSettings": { + "$ref": "#/definitions/ColorSpacePassthroughSettings" + }, + "Hdr10Settings": { + "$ref": "#/definitions/Hdr10Settings" + }, + "Rec601Settings": { + "$ref": "#/definitions/Rec601Settings" + }, + "Rec709Settings": { + "$ref": "#/definitions/Rec709Settings" + } + }, + "type": "object" + }, + "Av1Settings": { + "additionalProperties": false, + "properties": { + "AfdSignaling": { + "type": "string" + }, + "BufSize": { + "type": "integer" + }, + "ColorSpaceSettings": { + "$ref": "#/definitions/Av1ColorSpaceSettings" + }, + "FixedAfd": { + "type": "string" + }, + "FramerateDenominator": { + "type": "integer" + }, + "FramerateNumerator": { + "type": "integer" + }, + "GopSize": { + "type": "number" + }, + "GopSizeUnits": { + "type": "string" + }, + "Level": { + "type": "string" + }, + "LookAheadRateControl": { + "type": "string" + }, + "MaxBitrate": { + "type": "integer" + }, + "MinIInterval": { + "type": "integer" + }, + "ParDenominator": { + "type": "integer" + }, + "ParNumerator": { + "type": "integer" + }, + "QvbrQualityLevel": { + "type": "integer" + }, + "SceneChangeDetect": { + "type": "string" + }, + "TimecodeBurninSettings": { + "$ref": "#/definitions/TimecodeBurninSettings" + } + }, + "type": "object" + }, + "AvailBlanking": { + "additionalProperties": false, + "properties": { + "AvailBlankingImage": { + "$ref": "#/definitions/InputLocation" + }, + "State": { + "type": "string" + } + }, + "type": "object" + }, + "AvailConfiguration": { + "additionalProperties": false, + "properties": { + "AvailSettings": { + "$ref": "#/definitions/AvailSettings" + }, + "Scte35SegmentationScope": { + "type": "string" + } + }, + "type": "object" + }, + "AvailSettings": { + "additionalProperties": false, + "properties": { + "Esam": { + "$ref": "#/definitions/Esam" + }, + "Scte35SpliceInsert": { + "$ref": "#/definitions/Scte35SpliceInsert" + }, + "Scte35TimeSignalApos": { + "$ref": "#/definitions/Scte35TimeSignalApos" + } + }, + "type": "object" + }, + "BandwidthReductionFilterSettings": { + "additionalProperties": false, + "properties": { + "PostFilterSharpening": { + "type": "string" + }, + "Strength": { + "type": "string" + } + }, + "type": "object" + }, + "BlackoutSlate": { + "additionalProperties": false, + "properties": { + "BlackoutSlateImage": { + "$ref": "#/definitions/InputLocation" + }, + "NetworkEndBlackout": { + "type": "string" + }, + "NetworkEndBlackoutImage": { + "$ref": "#/definitions/InputLocation" + }, + "NetworkId": { + "type": "string" + }, + "State": { + "type": "string" + } + }, + "type": "object" + }, + "BurnInDestinationSettings": { + "additionalProperties": false, + "properties": { + "Alignment": { + "type": "string" + }, + "BackgroundColor": { + "type": "string" + }, + "BackgroundOpacity": { + "type": "integer" + }, + "Font": { + "$ref": "#/definitions/InputLocation" + }, + "FontColor": { + "type": "string" + }, + "FontOpacity": { + "type": "integer" + }, + "FontResolution": { + "type": "integer" + }, + "FontSize": { + "type": "string" + }, + "OutlineColor": { + "type": "string" + }, + "OutlineSize": { + "type": "integer" + }, + "ShadowColor": { + "type": "string" + }, + "ShadowOpacity": { + "type": "integer" + }, + "ShadowXOffset": { + "type": "integer" + }, + "ShadowYOffset": { + "type": "integer" + }, + "TeletextGridControl": { + "type": "string" + }, + "XPosition": { + "type": "integer" + }, + "YPosition": { + "type": "integer" + } + }, + "type": "object" + }, + "CaptionDescription": { + "additionalProperties": false, + "properties": { + "Accessibility": { + "type": "string" + }, + "CaptionDashRoles": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "CaptionSelectorName": { + "type": "string" + }, + "DestinationSettings": { + "$ref": "#/definitions/CaptionDestinationSettings" + }, + "DvbDashAccessibility": { + "type": "string" + }, + "LanguageCode": { + "type": "string" + }, + "LanguageDescription": { + "type": "string" + }, + "Name": { + "type": "string" + } + }, + "type": "object" + }, + "CaptionDestinationSettings": { + "additionalProperties": false, + "properties": { + "AribDestinationSettings": { + "$ref": "#/definitions/AribDestinationSettings" + }, + "BurnInDestinationSettings": { + "$ref": "#/definitions/BurnInDestinationSettings" + }, + "DvbSubDestinationSettings": { + "$ref": "#/definitions/DvbSubDestinationSettings" + }, + "EbuTtDDestinationSettings": { + "$ref": "#/definitions/EbuTtDDestinationSettings" + }, + "EmbeddedDestinationSettings": { + "$ref": "#/definitions/EmbeddedDestinationSettings" + }, + "EmbeddedPlusScte20DestinationSettings": { + "$ref": "#/definitions/EmbeddedPlusScte20DestinationSettings" + }, + "RtmpCaptionInfoDestinationSettings": { + "$ref": "#/definitions/RtmpCaptionInfoDestinationSettings" + }, + "Scte20PlusEmbeddedDestinationSettings": { + "$ref": "#/definitions/Scte20PlusEmbeddedDestinationSettings" + }, + "Scte27DestinationSettings": { + "$ref": "#/definitions/Scte27DestinationSettings" + }, + "SmpteTtDestinationSettings": { + "$ref": "#/definitions/SmpteTtDestinationSettings" + }, + "TeletextDestinationSettings": { + "$ref": "#/definitions/TeletextDestinationSettings" + }, + "TtmlDestinationSettings": { + "$ref": "#/definitions/TtmlDestinationSettings" + }, + "WebvttDestinationSettings": { + "$ref": "#/definitions/WebvttDestinationSettings" + } + }, + "type": "object" + }, + "CaptionLanguageMapping": { + "additionalProperties": false, + "properties": { + "CaptionChannel": { + "type": "integer" + }, + "LanguageCode": { + "type": "string" + }, + "LanguageDescription": { + "type": "string" + } + }, + "type": "object" + }, + "CaptionRectangle": { + "additionalProperties": false, + "properties": { + "Height": { + "type": "number" + }, + "LeftOffset": { + "type": "number" + }, + "TopOffset": { + "type": "number" + }, + "Width": { + "type": "number" + } + }, + "type": "object" + }, + "CaptionSelector": { + "additionalProperties": false, + "properties": { + "LanguageCode": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "SelectorSettings": { + "$ref": "#/definitions/CaptionSelectorSettings" + } + }, + "type": "object" + }, + "CaptionSelectorSettings": { + "additionalProperties": false, + "properties": { + "AncillarySourceSettings": { + "$ref": "#/definitions/AncillarySourceSettings" + }, + "AribSourceSettings": { + "$ref": "#/definitions/AribSourceSettings" + }, + "DvbSubSourceSettings": { + "$ref": "#/definitions/DvbSubSourceSettings" + }, + "EmbeddedSourceSettings": { + "$ref": "#/definitions/EmbeddedSourceSettings" + }, + "Scte20SourceSettings": { + "$ref": "#/definitions/Scte20SourceSettings" + }, + "Scte27SourceSettings": { + "$ref": "#/definitions/Scte27SourceSettings" + }, + "TeletextSourceSettings": { + "$ref": "#/definitions/TeletextSourceSettings" + } + }, + "type": "object" + }, + "CdiInputSpecification": { + "additionalProperties": false, + "properties": { + "Resolution": { + "type": "string" + } + }, + "type": "object" + }, + "CmafIngestGroupSettings": { + "additionalProperties": false, + "properties": { + "Destination": { + "$ref": "#/definitions/OutputLocationRef" + }, + "NielsenId3Behavior": { + "type": "string" + }, + "Scte35Type": { + "type": "string" + }, + "SegmentLength": { + "type": "integer" + }, + "SegmentLengthUnits": { + "type": "string" + }, + "SendDelayMs": { + "type": "integer" + } + }, + "type": "object" + }, + "CmafIngestOutputSettings": { + "additionalProperties": false, + "properties": { + "NameModifier": { + "type": "string" + } + }, + "type": "object" + }, + "ColorCorrection": { + "additionalProperties": false, + "properties": { + "InputColorSpace": { + "type": "string" + }, + "OutputColorSpace": { + "type": "string" + }, + "Uri": { + "type": "string" + } + }, + "type": "object" + }, + "ColorCorrectionSettings": { + "additionalProperties": false, + "properties": { + "GlobalColorCorrections": { + "items": { + "$ref": "#/definitions/ColorCorrection" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "ColorSpacePassthroughSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "DolbyVision81Settings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "DvbNitSettings": { + "additionalProperties": false, + "properties": { + "NetworkId": { + "type": "integer" + }, + "NetworkName": { + "type": "string" + }, + "RepInterval": { + "type": "integer" + } + }, + "type": "object" + }, + "DvbSdtSettings": { + "additionalProperties": false, + "properties": { + "OutputSdt": { + "type": "string" + }, + "RepInterval": { + "type": "integer" + }, + "ServiceName": { + "type": "string" + }, + "ServiceProviderName": { + "type": "string" + } + }, + "type": "object" + }, + "DvbSubDestinationSettings": { + "additionalProperties": false, + "properties": { + "Alignment": { + "type": "string" + }, + "BackgroundColor": { + "type": "string" + }, + "BackgroundOpacity": { + "type": "integer" + }, + "Font": { + "$ref": "#/definitions/InputLocation" + }, + "FontColor": { + "type": "string" + }, + "FontOpacity": { + "type": "integer" + }, + "FontResolution": { + "type": "integer" + }, + "FontSize": { + "type": "string" + }, + "OutlineColor": { + "type": "string" + }, + "OutlineSize": { + "type": "integer" + }, + "ShadowColor": { + "type": "string" + }, + "ShadowOpacity": { + "type": "integer" + }, + "ShadowXOffset": { + "type": "integer" + }, + "ShadowYOffset": { + "type": "integer" + }, + "TeletextGridControl": { + "type": "string" + }, + "XPosition": { + "type": "integer" + }, + "YPosition": { + "type": "integer" + } + }, + "type": "object" + }, + "DvbSubSourceSettings": { + "additionalProperties": false, + "properties": { + "OcrLanguage": { + "type": "string" + }, + "Pid": { + "type": "integer" + } + }, + "type": "object" + }, + "DvbTdtSettings": { + "additionalProperties": false, + "properties": { + "RepInterval": { + "type": "integer" + } + }, + "type": "object" + }, + "Eac3AtmosSettings": { + "additionalProperties": false, + "properties": { + "Bitrate": { + "type": "number" + }, + "CodingMode": { + "type": "string" + }, + "Dialnorm": { + "type": "integer" + }, + "DrcLine": { + "type": "string" + }, + "DrcRf": { + "type": "string" + }, + "HeightTrim": { + "type": "number" + }, + "SurroundTrim": { + "type": "number" + } + }, + "type": "object" + }, + "Eac3Settings": { + "additionalProperties": false, + "properties": { + "AttenuationControl": { + "type": "string" + }, + "Bitrate": { + "type": "number" + }, + "BitstreamMode": { + "type": "string" + }, + "CodingMode": { + "type": "string" + }, + "DcFilter": { + "type": "string" + }, + "Dialnorm": { + "type": "integer" + }, + "DrcLine": { + "type": "string" + }, + "DrcRf": { + "type": "string" + }, + "LfeControl": { + "type": "string" + }, + "LfeFilter": { + "type": "string" + }, + "LoRoCenterMixLevel": { + "type": "number" + }, + "LoRoSurroundMixLevel": { + "type": "number" + }, + "LtRtCenterMixLevel": { + "type": "number" + }, + "LtRtSurroundMixLevel": { + "type": "number" + }, + "MetadataControl": { + "type": "string" + }, + "PassthroughControl": { + "type": "string" + }, + "PhaseControl": { + "type": "string" + }, + "StereoDownmix": { + "type": "string" + }, + "SurroundExMode": { + "type": "string" + }, + "SurroundMode": { + "type": "string" + } + }, + "type": "object" + }, + "EbuTtDDestinationSettings": { + "additionalProperties": false, + "properties": { + "CopyrightHolder": { + "type": "string" + }, + "FillLineGap": { + "type": "string" + }, + "FontFamily": { + "type": "string" + }, + "StyleControl": { + "type": "string" + } + }, + "type": "object" + }, + "EmbeddedDestinationSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "EmbeddedPlusScte20DestinationSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "EmbeddedSourceSettings": { + "additionalProperties": false, + "properties": { + "Convert608To708": { + "type": "string" + }, + "Scte20Detection": { + "type": "string" + }, + "Source608ChannelNumber": { + "type": "integer" + }, + "Source608TrackNumber": { + "type": "integer" + } + }, + "type": "object" + }, + "EncoderSettings": { + "additionalProperties": false, + "properties": { + "AudioDescriptions": { + "items": { + "$ref": "#/definitions/AudioDescription" + }, + "type": "array", + "uniqueItems": false + }, + "AvailBlanking": { + "$ref": "#/definitions/AvailBlanking" + }, + "AvailConfiguration": { + "$ref": "#/definitions/AvailConfiguration" + }, + "BlackoutSlate": { + "$ref": "#/definitions/BlackoutSlate" + }, + "CaptionDescriptions": { + "items": { + "$ref": "#/definitions/CaptionDescription" + }, + "type": "array", + "uniqueItems": false + }, + "ColorCorrectionSettings": { + "$ref": "#/definitions/ColorCorrectionSettings" + }, + "FeatureActivations": { + "$ref": "#/definitions/FeatureActivations" + }, + "GlobalConfiguration": { + "$ref": "#/definitions/GlobalConfiguration" + }, + "MotionGraphicsConfiguration": { + "$ref": "#/definitions/MotionGraphicsConfiguration" + }, + "NielsenConfiguration": { + "$ref": "#/definitions/NielsenConfiguration" + }, + "OutputGroups": { + "items": { + "$ref": "#/definitions/OutputGroup" + }, + "type": "array", + "uniqueItems": false + }, + "ThumbnailConfiguration": { + "$ref": "#/definitions/ThumbnailConfiguration" + }, + "TimecodeConfig": { + "$ref": "#/definitions/TimecodeConfig" + }, + "VideoDescriptions": { + "items": { + "$ref": "#/definitions/VideoDescription" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "EpochLockingSettings": { + "additionalProperties": false, + "properties": { + "CustomEpoch": { + "type": "string" + }, + "JamSyncTime": { + "type": "string" + } + }, + "type": "object" + }, + "Esam": { + "additionalProperties": false, + "properties": { + "AcquisitionPointId": { + "type": "string" + }, + "AdAvailOffset": { + "type": "integer" + }, + "PasswordParam": { + "type": "string" + }, + "PoisEndpoint": { + "type": "string" + }, + "Username": { + "type": "string" + }, + "ZoneIdentity": { + "type": "string" + } + }, + "type": "object" + }, + "FailoverCondition": { + "additionalProperties": false, + "properties": { + "FailoverConditionSettings": { + "$ref": "#/definitions/FailoverConditionSettings" + } + }, + "type": "object" + }, + "FailoverConditionSettings": { + "additionalProperties": false, + "properties": { + "AudioSilenceSettings": { + "$ref": "#/definitions/AudioSilenceFailoverSettings" + }, + "InputLossSettings": { + "$ref": "#/definitions/InputLossFailoverSettings" + }, + "VideoBlackSettings": { + "$ref": "#/definitions/VideoBlackFailoverSettings" + } + }, + "type": "object" + }, + "FeatureActivations": { + "additionalProperties": false, + "properties": { + "InputPrepareScheduleActions": { + "type": "string" + }, + "OutputStaticImageOverlayScheduleActions": { + "type": "string" + } + }, + "type": "object" + }, + "FecOutputSettings": { + "additionalProperties": false, + "properties": { + "ColumnDepth": { + "type": "integer" + }, + "IncludeFec": { + "type": "string" + }, + "RowLength": { + "type": "integer" + } + }, + "type": "object" + }, + "Fmp4HlsSettings": { + "additionalProperties": false, + "properties": { + "AudioRenditionSets": { + "type": "string" + }, + "NielsenId3Behavior": { + "type": "string" + }, + "TimedMetadataBehavior": { + "type": "string" + } + }, + "type": "object" + }, + "FrameCaptureCdnSettings": { + "additionalProperties": false, + "properties": { + "FrameCaptureS3Settings": { + "$ref": "#/definitions/FrameCaptureS3Settings" + } + }, + "type": "object" + }, + "FrameCaptureGroupSettings": { + "additionalProperties": false, + "properties": { + "Destination": { + "$ref": "#/definitions/OutputLocationRef" + }, + "FrameCaptureCdnSettings": { + "$ref": "#/definitions/FrameCaptureCdnSettings" + } + }, + "type": "object" + }, + "FrameCaptureHlsSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "FrameCaptureOutputSettings": { + "additionalProperties": false, + "properties": { + "NameModifier": { + "type": "string" + } + }, + "type": "object" + }, + "FrameCaptureS3Settings": { + "additionalProperties": false, + "properties": { + "CannedAcl": { + "type": "string" + } + }, + "type": "object" + }, + "FrameCaptureSettings": { + "additionalProperties": false, + "properties": { + "CaptureInterval": { + "type": "integer" + }, + "CaptureIntervalUnits": { + "type": "string" + }, + "TimecodeBurninSettings": { + "$ref": "#/definitions/TimecodeBurninSettings" + } + }, + "type": "object" + }, + "GlobalConfiguration": { + "additionalProperties": false, + "properties": { + "InitialAudioGain": { + "type": "integer" + }, + "InputEndAction": { + "type": "string" + }, + "InputLossBehavior": { + "$ref": "#/definitions/InputLossBehavior" + }, + "OutputLockingMode": { + "type": "string" + }, + "OutputLockingSettings": { + "$ref": "#/definitions/OutputLockingSettings" + }, + "OutputTimingSource": { + "type": "string" + }, + "SupportLowFramerateInputs": { + "type": "string" + } + }, + "type": "object" + }, + "H264ColorSpaceSettings": { + "additionalProperties": false, + "properties": { + "ColorSpacePassthroughSettings": { + "$ref": "#/definitions/ColorSpacePassthroughSettings" + }, + "Rec601Settings": { + "$ref": "#/definitions/Rec601Settings" + }, + "Rec709Settings": { + "$ref": "#/definitions/Rec709Settings" + } + }, + "type": "object" + }, + "H264FilterSettings": { + "additionalProperties": false, + "properties": { + "BandwidthReductionFilterSettings": { + "$ref": "#/definitions/BandwidthReductionFilterSettings" + }, + "TemporalFilterSettings": { + "$ref": "#/definitions/TemporalFilterSettings" + } + }, + "type": "object" + }, + "H264Settings": { + "additionalProperties": false, + "properties": { + "AdaptiveQuantization": { + "type": "string" + }, + "AfdSignaling": { + "type": "string" + }, + "Bitrate": { + "type": "integer" + }, + "BufFillPct": { + "type": "integer" + }, + "BufSize": { + "type": "integer" + }, + "ColorMetadata": { + "type": "string" + }, + "ColorSpaceSettings": { + "$ref": "#/definitions/H264ColorSpaceSettings" + }, + "EntropyEncoding": { + "type": "string" + }, + "FilterSettings": { + "$ref": "#/definitions/H264FilterSettings" + }, + "FixedAfd": { + "type": "string" + }, + "FlickerAq": { + "type": "string" + }, + "ForceFieldPictures": { + "type": "string" + }, + "FramerateControl": { + "type": "string" + }, + "FramerateDenominator": { + "type": "integer" + }, + "FramerateNumerator": { + "type": "integer" + }, + "GopBReference": { + "type": "string" + }, + "GopClosedCadence": { + "type": "integer" + }, + "GopNumBFrames": { + "type": "integer" + }, + "GopSize": { + "type": "number" + }, + "GopSizeUnits": { + "type": "string" + }, + "Level": { + "type": "string" + }, + "LookAheadRateControl": { + "type": "string" + }, + "MaxBitrate": { + "type": "integer" + }, + "MinIInterval": { + "type": "integer" + }, + "MinQp": { + "type": "integer" + }, + "NumRefFrames": { + "type": "integer" + }, + "ParControl": { + "type": "string" + }, + "ParDenominator": { + "type": "integer" + }, + "ParNumerator": { + "type": "integer" + }, + "Profile": { + "type": "string" + }, + "QualityLevel": { + "type": "string" + }, + "QvbrQualityLevel": { + "type": "integer" + }, + "RateControlMode": { + "type": "string" + }, + "ScanType": { + "type": "string" + }, + "SceneChangeDetect": { + "type": "string" + }, + "Slices": { + "type": "integer" + }, + "Softness": { + "type": "integer" + }, + "SpatialAq": { + "type": "string" + }, + "SubgopLength": { + "type": "string" + }, + "Syntax": { + "type": "string" + }, + "TemporalAq": { + "type": "string" + }, + "TimecodeBurninSettings": { + "$ref": "#/definitions/TimecodeBurninSettings" + }, + "TimecodeInsertion": { + "type": "string" + } + }, + "type": "object" + }, + "H265ColorSpaceSettings": { + "additionalProperties": false, + "properties": { + "ColorSpacePassthroughSettings": { + "$ref": "#/definitions/ColorSpacePassthroughSettings" + }, + "DolbyVision81Settings": { + "$ref": "#/definitions/DolbyVision81Settings" + }, + "Hdr10Settings": { + "$ref": "#/definitions/Hdr10Settings" + }, + "Rec601Settings": { + "$ref": "#/definitions/Rec601Settings" + }, + "Rec709Settings": { + "$ref": "#/definitions/Rec709Settings" + } + }, + "type": "object" + }, + "H265FilterSettings": { + "additionalProperties": false, + "properties": { + "BandwidthReductionFilterSettings": { + "$ref": "#/definitions/BandwidthReductionFilterSettings" + }, + "TemporalFilterSettings": { + "$ref": "#/definitions/TemporalFilterSettings" + } + }, + "type": "object" + }, + "H265Settings": { + "additionalProperties": false, + "properties": { + "AdaptiveQuantization": { + "type": "string" + }, + "AfdSignaling": { + "type": "string" + }, + "AlternativeTransferFunction": { + "type": "string" + }, + "Bitrate": { + "type": "integer" + }, + "BufSize": { + "type": "integer" + }, + "ColorMetadata": { + "type": "string" + }, + "ColorSpaceSettings": { + "$ref": "#/definitions/H265ColorSpaceSettings" + }, + "FilterSettings": { + "$ref": "#/definitions/H265FilterSettings" + }, + "FixedAfd": { + "type": "string" + }, + "FlickerAq": { + "type": "string" + }, + "FramerateDenominator": { + "type": "integer" + }, + "FramerateNumerator": { + "type": "integer" + }, + "GopClosedCadence": { + "type": "integer" + }, + "GopSize": { + "type": "number" + }, + "GopSizeUnits": { + "type": "string" + }, + "Level": { + "type": "string" + }, + "LookAheadRateControl": { + "type": "string" + }, + "MaxBitrate": { + "type": "integer" + }, + "MinIInterval": { + "type": "integer" + }, + "MinQp": { + "type": "integer" + }, + "MvOverPictureBoundaries": { + "type": "string" + }, + "MvTemporalPredictor": { + "type": "string" + }, + "ParDenominator": { + "type": "integer" + }, + "ParNumerator": { + "type": "integer" + }, + "Profile": { + "type": "string" + }, + "QvbrQualityLevel": { + "type": "integer" + }, + "RateControlMode": { + "type": "string" + }, + "ScanType": { + "type": "string" + }, + "SceneChangeDetect": { + "type": "string" + }, + "Slices": { + "type": "integer" + }, + "Tier": { + "type": "string" + }, + "TileHeight": { + "type": "integer" + }, + "TilePadding": { + "type": "string" + }, + "TileWidth": { + "type": "integer" + }, + "TimecodeBurninSettings": { + "$ref": "#/definitions/TimecodeBurninSettings" + }, + "TimecodeInsertion": { + "type": "string" + }, + "TreeblockSize": { + "type": "string" + } + }, + "type": "object" + }, + "Hdr10Settings": { + "additionalProperties": false, + "properties": { + "MaxCll": { + "type": "integer" + }, + "MaxFall": { + "type": "integer" + } + }, + "type": "object" + }, + "HlsAkamaiSettings": { + "additionalProperties": false, + "properties": { + "ConnectionRetryInterval": { + "type": "integer" + }, + "FilecacheDuration": { + "type": "integer" + }, + "HttpTransferMode": { + "type": "string" + }, + "NumRetries": { + "type": "integer" + }, + "RestartDelay": { + "type": "integer" + }, + "Salt": { + "type": "string" + }, + "Token": { + "type": "string" + } + }, + "type": "object" + }, + "HlsBasicPutSettings": { + "additionalProperties": false, + "properties": { + "ConnectionRetryInterval": { + "type": "integer" + }, + "FilecacheDuration": { + "type": "integer" + }, + "NumRetries": { + "type": "integer" + }, + "RestartDelay": { + "type": "integer" + } + }, + "type": "object" + }, + "HlsCdnSettings": { + "additionalProperties": false, + "properties": { + "HlsAkamaiSettings": { + "$ref": "#/definitions/HlsAkamaiSettings" + }, + "HlsBasicPutSettings": { + "$ref": "#/definitions/HlsBasicPutSettings" + }, + "HlsMediaStoreSettings": { + "$ref": "#/definitions/HlsMediaStoreSettings" + }, + "HlsS3Settings": { + "$ref": "#/definitions/HlsS3Settings" + }, + "HlsWebdavSettings": { + "$ref": "#/definitions/HlsWebdavSettings" + } + }, + "type": "object" + }, + "HlsGroupSettings": { + "additionalProperties": false, + "properties": { + "AdMarkers": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "BaseUrlContent": { + "type": "string" + }, + "BaseUrlContent1": { + "type": "string" + }, + "BaseUrlManifest": { + "type": "string" + }, + "BaseUrlManifest1": { + "type": "string" + }, + "CaptionLanguageMappings": { + "items": { + "$ref": "#/definitions/CaptionLanguageMapping" + }, + "type": "array", + "uniqueItems": false + }, + "CaptionLanguageSetting": { + "type": "string" + }, + "ClientCache": { + "type": "string" + }, + "CodecSpecification": { + "type": "string" + }, + "ConstantIv": { + "type": "string" + }, + "Destination": { + "$ref": "#/definitions/OutputLocationRef" + }, + "DirectoryStructure": { + "type": "string" + }, + "DiscontinuityTags": { + "type": "string" + }, + "EncryptionType": { + "type": "string" + }, + "HlsCdnSettings": { + "$ref": "#/definitions/HlsCdnSettings" + }, + "HlsId3SegmentTagging": { + "type": "string" + }, + "IFrameOnlyPlaylists": { + "type": "string" + }, + "IncompleteSegmentBehavior": { + "type": "string" + }, + "IndexNSegments": { + "type": "integer" + }, + "InputLossAction": { + "type": "string" + }, + "IvInManifest": { + "type": "string" + }, + "IvSource": { + "type": "string" + }, + "KeepSegments": { + "type": "integer" + }, + "KeyFormat": { + "type": "string" + }, + "KeyFormatVersions": { + "type": "string" + }, + "KeyProviderSettings": { + "$ref": "#/definitions/KeyProviderSettings" + }, + "ManifestCompression": { + "type": "string" + }, + "ManifestDurationFormat": { + "type": "string" + }, + "MinSegmentLength": { + "type": "integer" + }, + "Mode": { + "type": "string" + }, + "OutputSelection": { + "type": "string" + }, + "ProgramDateTime": { + "type": "string" + }, + "ProgramDateTimeClock": { + "type": "string" + }, + "ProgramDateTimePeriod": { + "type": "integer" + }, + "RedundantManifest": { + "type": "string" + }, + "SegmentLength": { + "type": "integer" + }, + "SegmentationMode": { + "type": "string" + }, + "SegmentsPerSubdirectory": { + "type": "integer" + }, + "StreamInfResolution": { + "type": "string" + }, + "TimedMetadataId3Frame": { + "type": "string" + }, + "TimedMetadataId3Period": { + "type": "integer" + }, + "TimestampDeltaMilliseconds": { + "type": "integer" + }, + "TsFileMode": { + "type": "string" + } + }, + "type": "object" + }, + "HlsInputSettings": { + "additionalProperties": false, + "properties": { + "Bandwidth": { + "type": "integer" + }, + "BufferSegments": { + "type": "integer" + }, + "Retries": { + "type": "integer" + }, + "RetryInterval": { + "type": "integer" + }, + "Scte35Source": { + "type": "string" + } + }, + "type": "object" + }, + "HlsMediaStoreSettings": { + "additionalProperties": false, + "properties": { + "ConnectionRetryInterval": { + "type": "integer" + }, + "FilecacheDuration": { + "type": "integer" + }, + "MediaStoreStorageClass": { + "type": "string" + }, + "NumRetries": { + "type": "integer" + }, + "RestartDelay": { + "type": "integer" + } + }, + "type": "object" + }, + "HlsOutputSettings": { + "additionalProperties": false, + "properties": { + "H265PackagingType": { + "type": "string" + }, + "HlsSettings": { + "$ref": "#/definitions/HlsSettings" + }, + "NameModifier": { + "type": "string" + }, + "SegmentModifier": { + "type": "string" + } + }, + "type": "object" + }, + "HlsS3Settings": { + "additionalProperties": false, + "properties": { + "CannedAcl": { + "type": "string" + } + }, + "type": "object" + }, + "HlsSettings": { + "additionalProperties": false, + "properties": { + "AudioOnlyHlsSettings": { + "$ref": "#/definitions/AudioOnlyHlsSettings" + }, + "Fmp4HlsSettings": { + "$ref": "#/definitions/Fmp4HlsSettings" + }, + "FrameCaptureHlsSettings": { + "$ref": "#/definitions/FrameCaptureHlsSettings" + }, + "StandardHlsSettings": { + "$ref": "#/definitions/StandardHlsSettings" + } + }, + "type": "object" + }, + "HlsWebdavSettings": { + "additionalProperties": false, + "properties": { + "ConnectionRetryInterval": { + "type": "integer" + }, + "FilecacheDuration": { + "type": "integer" + }, + "HttpTransferMode": { + "type": "string" + }, + "NumRetries": { + "type": "integer" + }, + "RestartDelay": { + "type": "integer" + } + }, + "type": "object" + }, + "HtmlMotionGraphicsSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "InputAttachment": { + "additionalProperties": false, + "properties": { + "AutomaticInputFailoverSettings": { + "$ref": "#/definitions/AutomaticInputFailoverSettings" + }, + "InputAttachmentName": { + "type": "string" + }, + "InputId": { + "type": "string" + }, + "InputSettings": { + "$ref": "#/definitions/InputSettings" + }, + "LogicalInterfaceNames": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "InputChannelLevel": { + "additionalProperties": false, + "properties": { + "Gain": { + "type": "integer" + }, + "InputChannel": { + "type": "integer" + } + }, + "type": "object" + }, + "InputLocation": { + "additionalProperties": false, + "properties": { + "PasswordParam": { + "type": "string" + }, + "Uri": { + "type": "string" + }, + "Username": { + "type": "string" + } + }, + "type": "object" + }, + "InputLossBehavior": { + "additionalProperties": false, + "properties": { + "BlackFrameMsec": { + "type": "integer" + }, + "InputLossImageColor": { + "type": "string" + }, + "InputLossImageSlate": { + "$ref": "#/definitions/InputLocation" + }, + "InputLossImageType": { + "type": "string" + }, + "RepeatFrameMsec": { + "type": "integer" + } + }, + "type": "object" + }, + "InputLossFailoverSettings": { + "additionalProperties": false, + "properties": { + "InputLossThresholdMsec": { + "type": "integer" + } + }, + "type": "object" + }, + "InputSettings": { + "additionalProperties": false, + "properties": { + "AudioSelectors": { + "items": { + "$ref": "#/definitions/AudioSelector" + }, + "type": "array", + "uniqueItems": false + }, + "CaptionSelectors": { + "items": { + "$ref": "#/definitions/CaptionSelector" + }, + "type": "array", + "uniqueItems": false + }, + "DeblockFilter": { + "type": "string" + }, + "DenoiseFilter": { + "type": "string" + }, + "FilterStrength": { + "type": "integer" + }, + "InputFilter": { + "type": "string" + }, + "NetworkInputSettings": { + "$ref": "#/definitions/NetworkInputSettings" + }, + "Scte35Pid": { + "type": "integer" + }, + "Smpte2038DataPreference": { + "type": "string" + }, + "SourceEndBehavior": { + "type": "string" + }, + "VideoSelector": { + "$ref": "#/definitions/VideoSelector" + } + }, + "type": "object" + }, + "InputSpecification": { + "additionalProperties": false, + "properties": { + "Codec": { + "type": "string" + }, + "MaximumBitrate": { + "type": "string" + }, + "Resolution": { + "type": "string" + } + }, + "type": "object" + }, + "KeyProviderSettings": { + "additionalProperties": false, + "properties": { + "StaticKeySettings": { + "$ref": "#/definitions/StaticKeySettings" + } + }, + "type": "object" + }, + "M2tsSettings": { + "additionalProperties": false, + "properties": { + "AbsentInputAudioBehavior": { + "type": "string" + }, + "Arib": { + "type": "string" + }, + "AribCaptionsPid": { + "type": "string" + }, + "AribCaptionsPidControl": { + "type": "string" + }, + "AudioBufferModel": { + "type": "string" + }, + "AudioFramesPerPes": { + "type": "integer" + }, + "AudioPids": { + "type": "string" + }, + "AudioStreamType": { + "type": "string" + }, + "Bitrate": { + "type": "integer" + }, + "BufferModel": { + "type": "string" + }, + "CcDescriptor": { + "type": "string" + }, + "DvbNitSettings": { + "$ref": "#/definitions/DvbNitSettings" + }, + "DvbSdtSettings": { + "$ref": "#/definitions/DvbSdtSettings" + }, + "DvbSubPids": { + "type": "string" + }, + "DvbTdtSettings": { + "$ref": "#/definitions/DvbTdtSettings" + }, + "DvbTeletextPid": { + "type": "string" + }, + "Ebif": { + "type": "string" + }, + "EbpAudioInterval": { + "type": "string" + }, + "EbpLookaheadMs": { + "type": "integer" + }, + "EbpPlacement": { + "type": "string" + }, + "EcmPid": { + "type": "string" + }, + "EsRateInPes": { + "type": "string" + }, + "EtvPlatformPid": { + "type": "string" + }, + "EtvSignalPid": { + "type": "string" + }, + "FragmentTime": { + "type": "number" + }, + "Klv": { + "type": "string" + }, + "KlvDataPids": { + "type": "string" + }, + "NielsenId3Behavior": { + "type": "string" + }, + "NullPacketBitrate": { + "type": "number" + }, + "PatInterval": { + "type": "integer" + }, + "PcrControl": { + "type": "string" + }, + "PcrPeriod": { + "type": "integer" + }, + "PcrPid": { + "type": "string" + }, + "PmtInterval": { + "type": "integer" + }, + "PmtPid": { + "type": "string" + }, + "ProgramNum": { + "type": "integer" + }, + "RateMode": { + "type": "string" + }, + "Scte27Pids": { + "type": "string" + }, + "Scte35Control": { + "type": "string" + }, + "Scte35Pid": { + "type": "string" + }, + "Scte35PrerollPullupMilliseconds": { + "type": "number" + }, + "SegmentationMarkers": { + "type": "string" + }, + "SegmentationStyle": { + "type": "string" + }, + "SegmentationTime": { + "type": "number" + }, + "TimedMetadataBehavior": { + "type": "string" + }, + "TimedMetadataPid": { + "type": "string" + }, + "TransportStreamId": { + "type": "integer" + }, + "VideoPid": { + "type": "string" + } + }, + "type": "object" + }, + "M3u8Settings": { + "additionalProperties": false, + "properties": { + "AudioFramesPerPes": { + "type": "integer" + }, + "AudioPids": { + "type": "string" + }, + "EcmPid": { + "type": "string" + }, + "KlvBehavior": { + "type": "string" + }, + "KlvDataPids": { + "type": "string" + }, + "NielsenId3Behavior": { + "type": "string" + }, + "PatInterval": { + "type": "integer" + }, + "PcrControl": { + "type": "string" + }, + "PcrPeriod": { + "type": "integer" + }, + "PcrPid": { + "type": "string" + }, + "PmtInterval": { + "type": "integer" + }, + "PmtPid": { + "type": "string" + }, + "ProgramNum": { + "type": "integer" + }, + "Scte35Behavior": { + "type": "string" + }, + "Scte35Pid": { + "type": "string" + }, + "TimedMetadataBehavior": { + "type": "string" + }, + "TimedMetadataPid": { + "type": "string" + }, + "TransportStreamId": { + "type": "integer" + }, + "VideoPid": { + "type": "string" + } + }, + "type": "object" + }, + "MaintenanceCreateSettings": { + "additionalProperties": false, + "properties": { + "MaintenanceDay": { + "type": "string" + }, + "MaintenanceStartTime": { + "type": "string" + } + }, + "type": "object" + }, + "MediaPackageGroupSettings": { + "additionalProperties": false, + "properties": { + "Destination": { + "$ref": "#/definitions/OutputLocationRef" + } + }, + "type": "object" + }, + "MediaPackageOutputDestinationSettings": { + "additionalProperties": false, + "properties": { + "ChannelId": { + "type": "string" + } + }, + "type": "object" + }, + "MediaPackageOutputSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "MotionGraphicsConfiguration": { + "additionalProperties": false, + "properties": { + "MotionGraphicsInsertion": { + "type": "string" + }, + "MotionGraphicsSettings": { + "$ref": "#/definitions/MotionGraphicsSettings" + } + }, + "type": "object" + }, + "MotionGraphicsSettings": { + "additionalProperties": false, + "properties": { + "HtmlMotionGraphicsSettings": { + "$ref": "#/definitions/HtmlMotionGraphicsSettings" + } + }, + "type": "object" + }, + "Mp2Settings": { + "additionalProperties": false, + "properties": { + "Bitrate": { + "type": "number" + }, + "CodingMode": { + "type": "string" + }, + "SampleRate": { + "type": "number" + } + }, + "type": "object" + }, + "Mpeg2FilterSettings": { + "additionalProperties": false, + "properties": { + "TemporalFilterSettings": { + "$ref": "#/definitions/TemporalFilterSettings" + } + }, + "type": "object" + }, + "Mpeg2Settings": { + "additionalProperties": false, + "properties": { + "AdaptiveQuantization": { + "type": "string" + }, + "AfdSignaling": { + "type": "string" + }, + "ColorMetadata": { + "type": "string" + }, + "ColorSpace": { + "type": "string" + }, + "DisplayAspectRatio": { + "type": "string" + }, + "FilterSettings": { + "$ref": "#/definitions/Mpeg2FilterSettings" + }, + "FixedAfd": { + "type": "string" + }, + "FramerateDenominator": { + "type": "integer" + }, + "FramerateNumerator": { + "type": "integer" + }, + "GopClosedCadence": { + "type": "integer" + }, + "GopNumBFrames": { + "type": "integer" + }, + "GopSize": { + "type": "number" + }, + "GopSizeUnits": { + "type": "string" + }, + "ScanType": { + "type": "string" + }, + "SubgopLength": { + "type": "string" + }, + "TimecodeBurninSettings": { + "$ref": "#/definitions/TimecodeBurninSettings" + }, + "TimecodeInsertion": { + "type": "string" + } + }, + "type": "object" + }, + "MsSmoothGroupSettings": { + "additionalProperties": false, + "properties": { + "AcquisitionPointId": { + "type": "string" + }, + "AudioOnlyTimecodeControl": { + "type": "string" + }, + "CertificateMode": { + "type": "string" + }, + "ConnectionRetryInterval": { + "type": "integer" + }, + "Destination": { + "$ref": "#/definitions/OutputLocationRef" + }, + "EventId": { + "type": "string" + }, + "EventIdMode": { + "type": "string" + }, + "EventStopBehavior": { + "type": "string" + }, + "FilecacheDuration": { + "type": "integer" + }, + "FragmentLength": { + "type": "integer" + }, + "InputLossAction": { + "type": "string" + }, + "NumRetries": { + "type": "integer" + }, + "RestartDelay": { + "type": "integer" + }, + "SegmentationMode": { + "type": "string" + }, + "SendDelayMs": { + "type": "integer" + }, + "SparseTrackType": { + "type": "string" + }, + "StreamManifestBehavior": { + "type": "string" + }, + "TimestampOffset": { + "type": "string" + }, + "TimestampOffsetMode": { + "type": "string" + } + }, + "type": "object" + }, + "MsSmoothOutputSettings": { + "additionalProperties": false, + "properties": { + "H265PackagingType": { + "type": "string" + }, + "NameModifier": { + "type": "string" + } + }, + "type": "object" + }, + "MulticastInputSettings": { + "additionalProperties": false, + "properties": { + "SourceIpAddress": { + "type": "string" + } + }, + "type": "object" + }, + "MultiplexContainerSettings": { + "additionalProperties": false, + "properties": { + "MultiplexM2tsSettings": { + "$ref": "#/definitions/MultiplexM2tsSettings" + } + }, + "type": "object" + }, + "MultiplexGroupSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "MultiplexM2tsSettings": { + "additionalProperties": false, + "properties": { + "AbsentInputAudioBehavior": { + "type": "string" + }, + "Arib": { + "type": "string" + }, + "AudioBufferModel": { + "type": "string" + }, + "AudioFramesPerPes": { + "type": "integer" + }, + "AudioStreamType": { + "type": "string" + }, + "CcDescriptor": { + "type": "string" + }, + "Ebif": { + "type": "string" + }, + "EsRateInPes": { + "type": "string" + }, + "Klv": { + "type": "string" + }, + "NielsenId3Behavior": { + "type": "string" + }, + "PcrControl": { + "type": "string" + }, + "PcrPeriod": { + "type": "integer" + }, + "Scte35Control": { + "type": "string" + }, + "Scte35PrerollPullupMilliseconds": { + "type": "number" + } + }, + "type": "object" + }, + "MultiplexOutputSettings": { + "additionalProperties": false, + "properties": { + "ContainerSettings": { + "$ref": "#/definitions/MultiplexContainerSettings" + }, + "Destination": { + "$ref": "#/definitions/OutputLocationRef" + } + }, + "type": "object" + }, + "MultiplexProgramChannelDestinationSettings": { + "additionalProperties": false, + "properties": { + "MultiplexId": { + "type": "string" + }, + "ProgramName": { + "type": "string" + } + }, + "type": "object" + }, + "NetworkInputSettings": { + "additionalProperties": false, + "properties": { + "HlsInputSettings": { + "$ref": "#/definitions/HlsInputSettings" + }, + "MulticastInputSettings": { + "$ref": "#/definitions/MulticastInputSettings" + }, + "ServerValidation": { + "type": "string" + } + }, + "type": "object" + }, + "NielsenCBET": { + "additionalProperties": false, + "properties": { + "CbetCheckDigitString": { + "type": "string" + }, + "CbetStepaside": { + "type": "string" + }, + "Csid": { + "type": "string" + } + }, + "type": "object" + }, + "NielsenConfiguration": { + "additionalProperties": false, + "properties": { + "DistributorId": { + "type": "string" + }, + "NielsenPcmToId3Tagging": { + "type": "string" + } + }, + "type": "object" + }, + "NielsenNaesIiNw": { + "additionalProperties": false, + "properties": { + "CheckDigitString": { + "type": "string" + }, + "Sid": { + "type": "number" + }, + "Timezone": { + "type": "string" + } + }, + "type": "object" + }, + "NielsenWatermarksSettings": { + "additionalProperties": false, + "properties": { + "NielsenCbetSettings": { + "$ref": "#/definitions/NielsenCBET" + }, + "NielsenDistributionType": { + "type": "string" + }, + "NielsenNaesIiNwSettings": { + "$ref": "#/definitions/NielsenNaesIiNw" + } + }, + "type": "object" + }, + "Output": { + "additionalProperties": false, + "properties": { + "AudioDescriptionNames": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "CaptionDescriptionNames": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "OutputName": { + "type": "string" + }, + "OutputSettings": { + "$ref": "#/definitions/OutputSettings" + }, + "VideoDescriptionName": { + "type": "string" + } + }, + "type": "object" + }, + "OutputDestination": { + "additionalProperties": false, + "properties": { + "Id": { + "type": "string" + }, + "MediaPackageSettings": { + "items": { + "$ref": "#/definitions/MediaPackageOutputDestinationSettings" + }, + "type": "array", + "uniqueItems": false + }, + "MultiplexSettings": { + "$ref": "#/definitions/MultiplexProgramChannelDestinationSettings" + }, + "Settings": { + "items": { + "$ref": "#/definitions/OutputDestinationSettings" + }, + "type": "array", + "uniqueItems": false + }, + "SrtSettings": { + "items": { + "$ref": "#/definitions/SrtOutputDestinationSettings" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "OutputDestinationSettings": { + "additionalProperties": false, + "properties": { + "PasswordParam": { + "type": "string" + }, + "StreamName": { + "type": "string" + }, + "Url": { + "type": "string" + }, + "Username": { + "type": "string" + } + }, + "type": "object" + }, + "OutputGroup": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "OutputGroupSettings": { + "$ref": "#/definitions/OutputGroupSettings" + }, + "Outputs": { + "items": { + "$ref": "#/definitions/Output" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "OutputGroupSettings": { + "additionalProperties": false, + "properties": { + "ArchiveGroupSettings": { + "$ref": "#/definitions/ArchiveGroupSettings" + }, + "CmafIngestGroupSettings": { + "$ref": "#/definitions/CmafIngestGroupSettings" + }, + "FrameCaptureGroupSettings": { + "$ref": "#/definitions/FrameCaptureGroupSettings" + }, + "HlsGroupSettings": { + "$ref": "#/definitions/HlsGroupSettings" + }, + "MediaPackageGroupSettings": { + "$ref": "#/definitions/MediaPackageGroupSettings" + }, + "MsSmoothGroupSettings": { + "$ref": "#/definitions/MsSmoothGroupSettings" + }, + "MultiplexGroupSettings": { + "$ref": "#/definitions/MultiplexGroupSettings" + }, + "RtmpGroupSettings": { + "$ref": "#/definitions/RtmpGroupSettings" + }, + "SrtGroupSettings": { + "$ref": "#/definitions/SrtGroupSettings" + }, + "UdpGroupSettings": { + "$ref": "#/definitions/UdpGroupSettings" + } + }, + "type": "object" + }, + "OutputLocationRef": { + "additionalProperties": false, + "properties": { + "DestinationRefId": { + "type": "string" + } + }, + "type": "object" + }, + "OutputLockingSettings": { + "additionalProperties": false, + "properties": { + "EpochLockingSettings": { + "$ref": "#/definitions/EpochLockingSettings" + }, + "PipelineLockingSettings": { + "$ref": "#/definitions/PipelineLockingSettings" + } + }, + "type": "object" + }, + "OutputSettings": { + "additionalProperties": false, + "properties": { + "ArchiveOutputSettings": { + "$ref": "#/definitions/ArchiveOutputSettings" + }, + "CmafIngestOutputSettings": { + "$ref": "#/definitions/CmafIngestOutputSettings" + }, + "FrameCaptureOutputSettings": { + "$ref": "#/definitions/FrameCaptureOutputSettings" + }, + "HlsOutputSettings": { + "$ref": "#/definitions/HlsOutputSettings" + }, + "MediaPackageOutputSettings": { + "$ref": "#/definitions/MediaPackageOutputSettings" + }, + "MsSmoothOutputSettings": { + "$ref": "#/definitions/MsSmoothOutputSettings" + }, + "MultiplexOutputSettings": { + "$ref": "#/definitions/MultiplexOutputSettings" + }, + "RtmpOutputSettings": { + "$ref": "#/definitions/RtmpOutputSettings" + }, + "SrtOutputSettings": { + "$ref": "#/definitions/SrtOutputSettings" + }, + "UdpOutputSettings": { + "$ref": "#/definitions/UdpOutputSettings" + } + }, + "type": "object" + }, + "PassThroughSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "PipelineLockingSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "RawSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "Rec601Settings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "Rec709Settings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "RemixSettings": { + "additionalProperties": false, + "properties": { + "ChannelMappings": { + "items": { + "$ref": "#/definitions/AudioChannelMapping" + }, + "type": "array", + "uniqueItems": false + }, + "ChannelsIn": { + "type": "integer" + }, + "ChannelsOut": { + "type": "integer" + } + }, + "type": "object" + }, + "RtmpCaptionInfoDestinationSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "RtmpGroupSettings": { + "additionalProperties": false, + "properties": { + "AdMarkers": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "AuthenticationScheme": { + "type": "string" + }, + "CacheFullBehavior": { + "type": "string" + }, + "CacheLength": { + "type": "integer" + }, + "CaptionData": { + "type": "string" + }, + "IncludeFillerNalUnits": { + "type": "string" + }, + "InputLossAction": { + "type": "string" + }, + "RestartDelay": { + "type": "integer" + } + }, + "type": "object" + }, + "RtmpOutputSettings": { + "additionalProperties": false, + "properties": { + "CertificateMode": { + "type": "string" + }, + "ConnectionRetryInterval": { + "type": "integer" + }, + "Destination": { + "$ref": "#/definitions/OutputLocationRef" + }, + "NumRetries": { + "type": "integer" + } + }, + "type": "object" + }, + "Scte20PlusEmbeddedDestinationSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "Scte20SourceSettings": { + "additionalProperties": false, + "properties": { + "Convert608To708": { + "type": "string" + }, + "Source608ChannelNumber": { + "type": "integer" + } + }, + "type": "object" + }, + "Scte27DestinationSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "Scte27SourceSettings": { + "additionalProperties": false, + "properties": { + "OcrLanguage": { + "type": "string" + }, + "Pid": { + "type": "integer" + } + }, + "type": "object" + }, + "Scte35SpliceInsert": { + "additionalProperties": false, + "properties": { + "AdAvailOffset": { + "type": "integer" + }, + "NoRegionalBlackoutFlag": { + "type": "string" + }, + "WebDeliveryAllowedFlag": { + "type": "string" + } + }, + "type": "object" + }, + "Scte35TimeSignalApos": { + "additionalProperties": false, + "properties": { + "AdAvailOffset": { + "type": "integer" + }, + "NoRegionalBlackoutFlag": { + "type": "string" + }, + "WebDeliveryAllowedFlag": { + "type": "string" + } + }, + "type": "object" + }, + "SmpteTtDestinationSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "SrtGroupSettings": { + "additionalProperties": false, + "properties": { + "InputLossAction": { + "type": "string" + } + }, + "type": "object" + }, + "SrtOutputDestinationSettings": { + "additionalProperties": false, + "properties": { + "EncryptionPassphraseSecretArn": { + "type": "string" + }, + "StreamId": { + "type": "string" + }, + "Url": { + "type": "string" + } + }, + "type": "object" + }, + "SrtOutputSettings": { + "additionalProperties": false, + "properties": { + "BufferMsec": { + "type": "integer" + }, + "ContainerSettings": { + "$ref": "#/definitions/UdpContainerSettings" + }, + "Destination": { + "$ref": "#/definitions/OutputLocationRef" + }, + "EncryptionType": { + "type": "string" + }, + "Latency": { + "type": "integer" + } + }, + "type": "object" + }, + "StandardHlsSettings": { + "additionalProperties": false, + "properties": { + "AudioRenditionSets": { + "type": "string" + }, + "M3u8Settings": { + "$ref": "#/definitions/M3u8Settings" + } + }, + "type": "object" + }, + "StaticKeySettings": { + "additionalProperties": false, + "properties": { + "KeyProviderServer": { + "$ref": "#/definitions/InputLocation" + }, + "StaticKeyValue": { + "type": "string" + } + }, + "type": "object" + }, + "TeletextDestinationSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "TeletextSourceSettings": { + "additionalProperties": false, + "properties": { + "OutputRectangle": { + "$ref": "#/definitions/CaptionRectangle" + }, + "PageNumber": { + "type": "string" + } + }, + "type": "object" + }, + "TemporalFilterSettings": { + "additionalProperties": false, + "properties": { + "PostFilterSharpening": { + "type": "string" + }, + "Strength": { + "type": "string" + } + }, + "type": "object" + }, + "ThumbnailConfiguration": { + "additionalProperties": false, + "properties": { + "State": { + "type": "string" + } + }, + "type": "object" + }, + "TimecodeBurninSettings": { + "additionalProperties": false, + "properties": { + "FontSize": { + "type": "string" + }, + "Position": { + "type": "string" + }, + "Prefix": { + "type": "string" + } + }, + "type": "object" + }, + "TimecodeConfig": { + "additionalProperties": false, + "properties": { + "Source": { + "type": "string" + }, + "SyncThreshold": { + "type": "integer" + } + }, + "type": "object" + }, + "TtmlDestinationSettings": { + "additionalProperties": false, + "properties": { + "StyleControl": { + "type": "string" + } + }, + "type": "object" + }, + "UdpContainerSettings": { + "additionalProperties": false, + "properties": { + "M2tsSettings": { + "$ref": "#/definitions/M2tsSettings" + } + }, + "type": "object" + }, + "UdpGroupSettings": { + "additionalProperties": false, + "properties": { + "InputLossAction": { + "type": "string" + }, + "TimedMetadataId3Frame": { + "type": "string" + }, + "TimedMetadataId3Period": { + "type": "integer" + } + }, + "type": "object" + }, + "UdpOutputSettings": { + "additionalProperties": false, + "properties": { + "BufferMsec": { + "type": "integer" + }, + "ContainerSettings": { + "$ref": "#/definitions/UdpContainerSettings" + }, + "Destination": { + "$ref": "#/definitions/OutputLocationRef" + }, + "FecOutputSettings": { + "$ref": "#/definitions/FecOutputSettings" + } + }, + "type": "object" + }, + "VideoBlackFailoverSettings": { + "additionalProperties": false, + "properties": { + "BlackDetectThreshold": { + "type": "number" + }, + "VideoBlackThresholdMsec": { + "type": "integer" + } + }, + "type": "object" + }, + "VideoCodecSettings": { + "additionalProperties": false, + "properties": { + "Av1Settings": { + "$ref": "#/definitions/Av1Settings" + }, + "FrameCaptureSettings": { + "$ref": "#/definitions/FrameCaptureSettings" + }, + "H264Settings": { + "$ref": "#/definitions/H264Settings" + }, + "H265Settings": { + "$ref": "#/definitions/H265Settings" + }, + "Mpeg2Settings": { + "$ref": "#/definitions/Mpeg2Settings" + } + }, + "type": "object" + }, + "VideoDescription": { + "additionalProperties": false, + "properties": { + "CodecSettings": { + "$ref": "#/definitions/VideoCodecSettings" + }, + "Height": { + "type": "integer" + }, + "Name": { + "type": "string" + }, + "RespondToAfd": { + "type": "string" + }, + "ScalingBehavior": { + "type": "string" + }, + "Sharpness": { + "type": "integer" + }, + "Width": { + "type": "integer" + } + }, + "type": "object" + }, + "VideoSelector": { + "additionalProperties": false, + "properties": { + "ColorSpace": { + "type": "string" + }, + "ColorSpaceSettings": { + "$ref": "#/definitions/VideoSelectorColorSpaceSettings" + }, + "ColorSpaceUsage": { + "type": "string" + }, + "SelectorSettings": { + "$ref": "#/definitions/VideoSelectorSettings" + } + }, + "type": "object" + }, + "VideoSelectorColorSpaceSettings": { + "additionalProperties": false, + "properties": { + "Hdr10Settings": { + "$ref": "#/definitions/Hdr10Settings" + } + }, + "type": "object" + }, + "VideoSelectorPid": { + "additionalProperties": false, + "properties": { + "Pid": { + "type": "integer" + } + }, + "type": "object" + }, + "VideoSelectorProgramId": { + "additionalProperties": false, + "properties": { + "ProgramId": { + "type": "integer" + } + }, + "type": "object" + }, + "VideoSelectorSettings": { + "additionalProperties": false, + "properties": { + "VideoSelectorPid": { + "$ref": "#/definitions/VideoSelectorPid" + }, + "VideoSelectorProgramId": { + "$ref": "#/definitions/VideoSelectorProgramId" + } + }, + "type": "object" + }, + "VpcOutputSettings": { + "additionalProperties": false, + "properties": { + "PublicAddressAllocationIds": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "SecurityGroupIds": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "SubnetIds": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "WavSettings": { + "additionalProperties": false, + "properties": { + "BitDepth": { + "type": "number" + }, + "CodingMode": { + "type": "string" + }, + "SampleRate": { + "type": "number" + } + }, + "type": "object" + }, + "WebvttDestinationSettings": { + "additionalProperties": false, + "properties": { + "StyleControl": { + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "AnywhereSettings": { + "$ref": "#/definitions/AnywhereSettings" + }, + "Arn": { + "type": "string" + }, + "CdiInputSpecification": { + "$ref": "#/definitions/CdiInputSpecification" + }, + "ChannelClass": { + "type": "string" + }, + "Destinations": { + "items": { + "$ref": "#/definitions/OutputDestination" + }, + "type": "array", + "uniqueItems": false + }, + "EncoderSettings": { + "$ref": "#/definitions/EncoderSettings" + }, + "Id": { + "type": "string" + }, + "InputAttachments": { + "items": { + "$ref": "#/definitions/InputAttachment" + }, + "type": "array", + "uniqueItems": false + }, + "InputSpecification": { + "$ref": "#/definitions/InputSpecification" + }, + "Inputs": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "LogLevel": { + "type": "string" + }, + "Maintenance": { + "$ref": "#/definitions/MaintenanceCreateSettings" + }, + "Name": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "Tags": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "Vpc": { + "$ref": "#/definitions/VpcOutputSettings" + } + }, + "readOnlyProperties": [ + "/properties/Inputs", + "/properties/Id", + "/properties/Arn" + ], + "typeName": "AWS::MediaLive::Channel" +} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-medialive-input.json b/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-medialive-input.json new file mode 100644 index 0000000000..da0d73a7e8 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-medialive-input.json @@ -0,0 +1,249 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Vpc", + "/properties/Type", + "/properties/InputNetworkLocation" + ], + "definitions": { + "InputDestinationRequest": { + "additionalProperties": false, + "properties": { + "Network": { + "type": "string" + }, + "NetworkRoutes": { + "items": { + "$ref": "#/definitions/InputRequestDestinationRoute" + }, + "type": "array", + "uniqueItems": false + }, + "StaticIpAddress": { + "type": "string" + }, + "StreamName": { + "type": "string" + } + }, + "type": "object" + }, + "InputDeviceSettings": { + "additionalProperties": false, + "properties": { + "Id": { + "type": "string" + } + }, + "type": "object" + }, + "InputRequestDestinationRoute": { + "additionalProperties": false, + "properties": { + "Cidr": { + "type": "string" + }, + "Gateway": { + "type": "string" + } + }, + "type": "object" + }, + "InputSourceRequest": { + "additionalProperties": false, + "properties": { + "PasswordParam": { + "type": "string" + }, + "Url": { + "type": "string" + }, + "Username": { + "type": "string" + } + }, + "type": "object" + }, + "InputVpcRequest": { + "additionalProperties": false, + "properties": { + "SecurityGroupIds": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "SubnetIds": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "MediaConnectFlowRequest": { + "additionalProperties": false, + "properties": { + "FlowArn": { + "type": "string" + } + }, + "type": "object" + }, + "MulticastSettingsCreateRequest": { + "additionalProperties": false, + "properties": { + "Sources": { + "items": { + "$ref": "#/definitions/MulticastSourceCreateRequest" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "MulticastSourceCreateRequest": { + "additionalProperties": false, + "properties": { + "SourceIp": { + "type": "string" + }, + "Url": { + "type": "string" + } + }, + "type": "object" + }, + "SrtCallerDecryptionRequest": { + "additionalProperties": false, + "properties": { + "Algorithm": { + "type": "string" + }, + "PassphraseSecretArn": { + "type": "string" + } + }, + "type": "object" + }, + "SrtCallerSourceRequest": { + "additionalProperties": false, + "properties": { + "Decryption": { + "$ref": "#/definitions/SrtCallerDecryptionRequest" + }, + "MinimumLatency": { + "type": "integer" + }, + "SrtListenerAddress": { + "type": "string" + }, + "SrtListenerPort": { + "type": "string" + }, + "StreamId": { + "type": "string" + } + }, + "type": "object" + }, + "SrtSettingsRequest": { + "additionalProperties": false, + "properties": { + "SrtCallerSources": { + "items": { + "$ref": "#/definitions/SrtCallerSourceRequest" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "Arn": { + "type": "string" + }, + "Destinations": { + "items": { + "$ref": "#/definitions/InputDestinationRequest" + }, + "type": "array", + "uniqueItems": false + }, + "Id": { + "type": "string" + }, + "InputDevices": { + "items": { + "$ref": "#/definitions/InputDeviceSettings" + }, + "type": "array", + "uniqueItems": false + }, + "InputNetworkLocation": { + "type": "string" + }, + "InputSecurityGroups": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "MediaConnectFlows": { + "items": { + "$ref": "#/definitions/MediaConnectFlowRequest" + }, + "type": "array", + "uniqueItems": false + }, + "MulticastSettings": { + "$ref": "#/definitions/MulticastSettingsCreateRequest" + }, + "Name": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "Sources": { + "items": { + "$ref": "#/definitions/InputSourceRequest" + }, + "type": "array", + "uniqueItems": false + }, + "SrtSettings": { + "$ref": "#/definitions/SrtSettingsRequest" + }, + "Tags": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "Type": { + "type": "string" + }, + "Vpc": { + "$ref": "#/definitions/InputVpcRequest" + } + }, + "readOnlyProperties": [ + "/properties/Id", + "/properties/Arn" + ], + "typeName": "AWS::MediaLive::Input" +} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-route53resolver-resolverrule.json b/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-route53resolver-resolverrule.json new file mode 100644 index 0000000000..7b24325ca2 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-route53resolver-resolverrule.json @@ -0,0 +1,130 @@ +{ + "additionalProperties": false, + "conditionalCreateOnlyProperties": [ + "/properties/DomainName" + ], + "createOnlyProperties": [ + "/properties/RuleType" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + }, + "TargetAddress": { + "additionalProperties": false, + "properties": { + "Ip": { + "type": "string" + }, + "Ipv6": { + "type": "string" + }, + "Port": { + "maxLength": 65535, + "minLength": 0, + "type": "string" + }, + "Protocol": { + "enum": [ + "Do53", + "DoH" + ], + "type": "string" + }, + "ServerNameIndication": { + "maxLength": 255, + "minLength": 0, + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/ResolverRuleId" + ], + "properties": { + "Arn": { + "type": "string" + }, + "DomainName": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "Name": { + "maxLength": 64, + "minLength": 0, + "type": "string" + }, + "ResolverEndpointId": { + "maxLength": 64, + "minLength": 1, + "type": "string" + }, + "ResolverRuleId": { + "type": "string" + }, + "RuleType": { + "enum": [ + "FORWARD", + "SYSTEM", + "RECURSIVE", + "DELEGATE" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": false + }, + "TargetIps": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TargetAddress" + }, + "type": "array", + "uniqueItems": false + } + }, + "propertyTransform": { + "/properties/DomainName": "$join([DomainName, \".\"]) $OR DomainName" + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/ResolverRuleId" + ], + "required": [ + "RuleType" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-route53resolver.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Route53Resolver::ResolverRule" +} diff --git a/src/cfnlint/data/schemas/providers/ap_south_1/aws-sagemaker-imageversion.json b/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-sagemaker-imageversion.json similarity index 99% rename from src/cfnlint/data/schemas/providers/ap_south_1/aws-sagemaker-imageversion.json rename to src/cfnlint/data/schemas/providers/ap_southeast_2/aws-sagemaker-imageversion.json index e7c91ccc8d..3b09dc9bad 100644 --- a/src/cfnlint/data/schemas/providers/ap_south_1/aws-sagemaker-imageversion.json +++ b/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-sagemaker-imageversion.json @@ -150,7 +150,6 @@ "readOnlyProperties": [ "/properties/ImageVersionArn", "/properties/ImageArn", - "/properties/Version", "/properties/ContainerImage" ], "required": [ diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_3/__init__.py b/src/cfnlint/data/schemas/providers/ap_southeast_3/__init__.py index afea8d81f5..a6403ba03b 100644 --- a/src/cfnlint/data/schemas/providers/ap_southeast_3/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_southeast_3/__init__.py @@ -727,6 +727,22 @@ "aws-acmpca-permission.json", "aws-amazonmq-broker.json", "aws-amazonmq-configuration.json", + "aws-apigateway-account.json", + "aws-apigateway-apikey.json", + "aws-apigateway-authorizer.json", + "aws-apigateway-basepathmapping.json", + "aws-apigateway-clientcertificate.json", + "aws-apigateway-deployment.json", + "aws-apigateway-documentationpart.json", + "aws-apigateway-documentationversion.json", + "aws-apigateway-gatewayresponse.json", + "aws-apigateway-method.json", + "aws-apigateway-model.json", + "aws-apigateway-requestvalidator.json", + "aws-apigateway-resource.json", + "aws-apigateway-stage.json", + "aws-apigateway-usageplan.json", + "aws-apigateway-usageplankey.json", "aws-apigateway-vpclink.json", "aws-apigatewayv2-api.json", "aws-apigatewayv2-apimapping.json", @@ -973,9 +989,7 @@ "aws-ecs-cluster.json", "aws-ecs-clustercapacityproviderassociations.json", "aws-ecs-primarytaskset.json", - "aws-ecs-service.json", "aws-ecs-taskdefinition.json", - "aws-ecs-taskset.json", "aws-efs-accesspoint.json", "aws-efs-filesystem.json", "aws-efs-mounttarget.json", @@ -1052,7 +1066,6 @@ "aws-glue-table.json", "aws-glue-trigger.json", "aws-glue-workflow.json", - "aws-guardduty-detector.json", "aws-guardduty-filter.json", "aws-guardduty-ipset.json", "aws-guardduty-malwareprotectionplan.json", @@ -1092,7 +1105,6 @@ "aws-iotwireless-multicastgroup.json", "aws-iotwireless-serviceprofile.json", "aws-iotwireless-wirelessdevice.json", - "aws-kinesis-stream.json", "aws-kinesisanalyticsv2-application.json", "aws-kinesisfirehose-deliverystream.json", "aws-kms-alias.json", @@ -1137,7 +1149,6 @@ "aws-neptune-dbsubnetgroup.json", "aws-neptune-eventsubscription.json", "aws-networkfirewall-firewall.json", - "aws-networkfirewall-firewallpolicy.json", "aws-networkfirewall-loggingconfiguration.json", "aws-networkfirewall-rulegroup.json", "aws-networkfirewall-tlsinspectionconfiguration.json", @@ -1257,6 +1268,7 @@ "aws-sagemaker-endpointconfig.json", "aws-sagemaker-featuregroup.json", "aws-sagemaker-image.json", + "aws-sagemaker-imageversion.json", "aws-sagemaker-inferencecomponent.json", "aws-sagemaker-mlflowtrackingserver.json", "aws-sagemaker-model.json", diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-account.json b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-account.json deleted file mode 100644 index e732339968..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-account.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "additionalProperties": false, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "CloudWatchRoleArn": { - "type": "string" - }, - "Id": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "typeName": "AWS::ApiGateway::Account" -} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-apikey.json b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-apikey.json deleted file mode 100644 index 7c24b00f38..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-apikey.json +++ /dev/null @@ -1,82 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name", - "/properties/GenerateDistinctId", - "/properties/Value" - ], - "definitions": { - "StageKey": { - "additionalProperties": false, - "properties": { - "RestApiId": { - "type": "string" - }, - "StageName": { - "type": "string" - } - }, - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "CustomerId": { - "type": "string" - }, - "Description": { - "type": "string" - }, - "Enabled": { - "type": "boolean" - }, - "GenerateDistinctId": { - "type": "boolean" - }, - "Id": { - "type": "string" - }, - "Name": { - "type": "string" - }, - "StageKeys": { - "items": { - "$ref": "#/definitions/StageKey" - }, - "type": "array", - "uniqueItems": true - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": false - }, - "Value": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "typeName": "AWS::ApiGateway::ApiKey" -} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-authorizer.json b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-authorizer.json deleted file mode 100644 index 00c9ef18d2..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-authorizer.json +++ /dev/null @@ -1,63 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/RestApiId" - ], - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "AuthType": { - "type": "string" - }, - "AuthorizerCredentials": { - "type": "string" - }, - "AuthorizerResultTtlInSeconds": { - "maximum": 3600, - "minimum": 0, - "type": "integer" - }, - "AuthorizerUri": { - "type": "string" - }, - "Id": { - "type": "string" - }, - "IdentitySource": { - "type": "string" - }, - "IdentityValidationExpression": { - "type": "string" - }, - "Name": { - "type": "string" - }, - "ProviderARNs": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "RestApiId": { - "type": "string" - }, - "Type": { - "enum": [ - "COGNITO_USER_POOLS", - "REQUEST", - "TOKEN" - ], - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "Type", - "RestApiId" - ], - "typeName": "AWS::ApiGateway::Authorizer" -} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-basepathmapping.json b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-basepathmapping.json deleted file mode 100644 index 666e165a19..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-basepathmapping.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/BasePath", - "/properties/DomainName" - ], - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "BasePath": { - "type": "string" - }, - "DomainName": { - "type": "string" - }, - "Id": { - "type": "string" - }, - "RestApiId": { - "type": "string" - }, - "Stage": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "DomainName" - ], - "typeName": "AWS::ApiGateway::BasePathMapping" -} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-clientcertificate.json b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-clientcertificate.json deleted file mode 100644 index b25e87f3ca..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-clientcertificate.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "additionalProperties": false, - "definitions": { - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "Description": { - "type": "string" - }, - "Id": { - "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": false - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "typeName": "AWS::ApiGateway::ClientCertificate" -} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-deployment.json b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-deployment.json deleted file mode 100644 index b5914105d7..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-deployment.json +++ /dev/null @@ -1,219 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/DeploymentCanarySettings", - "/properties/RestApiId" - ], - "definitions": { - "AccessLogSetting": { - "additionalProperties": false, - "properties": { - "DestinationArn": { - "type": "string" - }, - "Format": { - "type": "string" - } - }, - "type": "object" - }, - "CanarySetting": { - "additionalProperties": false, - "properties": { - "PercentTraffic": { - "type": "number" - }, - "StageVariableOverrides": { - "patternProperties": { - "[a-zA-Z0-9]+": { - "type": "string" - } - }, - "type": "object" - }, - "UseStageCache": { - "type": "boolean" - } - }, - "type": "object" - }, - "DeploymentCanarySettings": { - "additionalProperties": false, - "properties": { - "PercentTraffic": { - "type": "number" - }, - "StageVariableOverrides": { - "patternProperties": { - "[a-zA-Z0-9]+": { - "type": "string" - } - }, - "type": "object" - }, - "UseStageCache": { - "type": "boolean" - } - }, - "type": "object" - }, - "MethodSetting": { - "additionalProperties": false, - "properties": { - "CacheDataEncrypted": { - "type": "boolean" - }, - "CacheTtlInSeconds": { - "type": "integer" - }, - "CachingEnabled": { - "type": "boolean" - }, - "DataTraceEnabled": { - "type": "boolean" - }, - "HttpMethod": { - "type": "string" - }, - "LoggingLevel": { - "type": "string" - }, - "MetricsEnabled": { - "type": "boolean" - }, - "ResourcePath": { - "type": "string" - }, - "ThrottlingBurstLimit": { - "type": "integer" - }, - "ThrottlingRateLimit": { - "type": "number" - } - }, - "type": "object" - }, - "StageDescription": { - "additionalProperties": false, - "properties": { - "AccessLogSetting": { - "$ref": "#/definitions/AccessLogSetting" - }, - "CacheClusterEnabled": { - "type": "boolean" - }, - "CacheClusterSize": { - "type": "string" - }, - "CacheDataEncrypted": { - "type": "boolean" - }, - "CacheTtlInSeconds": { - "type": "integer" - }, - "CachingEnabled": { - "type": "boolean" - }, - "CanarySetting": { - "$ref": "#/definitions/CanarySetting" - }, - "ClientCertificateId": { - "type": "string" - }, - "DataTraceEnabled": { - "type": "boolean" - }, - "Description": { - "type": "string" - }, - "DocumentationVersion": { - "type": "string" - }, - "LoggingLevel": { - "type": "string" - }, - "MethodSettings": { - "items": { - "$ref": "#/definitions/MethodSetting" - }, - "type": "array", - "uniqueItems": true - }, - "MetricsEnabled": { - "type": "boolean" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": false - }, - "ThrottlingBurstLimit": { - "type": "integer" - }, - "ThrottlingRateLimit": { - "type": "number" - }, - "TracingEnabled": { - "type": "boolean" - }, - "Variables": { - "patternProperties": { - "[a-zA-Z0-9]+": { - "type": "string" - } - }, - "type": "object" - } - }, - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "DeploymentCanarySettings": { - "$ref": "#/definitions/DeploymentCanarySettings" - }, - "Description": { - "type": "string" - }, - "Id": { - "type": "string" - }, - "RestApiId": { - "type": "string" - }, - "StageDescription": { - "$ref": "#/definitions/StageDescription" - }, - "StageName": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "RestApiId" - ], - "typeName": "AWS::ApiGateway::Deployment" -} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-documentationpart.json b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-documentationpart.json deleted file mode 100644 index bba1617735..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-documentationpart.json +++ /dev/null @@ -1,56 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Location", - "/properties/RestApiId" - ], - "definitions": { - "Location": { - "additionalProperties": false, - "properties": { - "Method": { - "type": "string" - }, - "Name": { - "type": "string" - }, - "Path": { - "type": "string" - }, - "StatusCode": { - "type": "string" - }, - "Type": { - "type": "string" - } - }, - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "Id": { - "type": "string" - }, - "Location": { - "$ref": "#/definitions/Location" - }, - "Properties": { - "type": "string" - }, - "RestApiId": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "RestApiId", - "Properties", - "Location" - ], - "typeName": "AWS::ApiGateway::DocumentationPart" -} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-documentationversion.json b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-documentationversion.json deleted file mode 100644 index d804c67001..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-documentationversion.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/DocumentationVersion", - "/properties/RestApiId" - ], - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "Description": { - "type": "string" - }, - "DocumentationVersion": { - "type": "string" - }, - "Id": { - "type": "string" - }, - "RestApiId": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "DocumentationVersion", - "RestApiId" - ], - "typeName": "AWS::ApiGateway::DocumentationVersion" -} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-gatewayresponse.json b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-gatewayresponse.json deleted file mode 100644 index bbef4e34b6..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-gatewayresponse.json +++ /dev/null @@ -1,71 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/ResponseType", - "/properties/RestApiId" - ], - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "Id": { - "type": "string" - }, - "ResponseParameters": { - "patternProperties": { - "[a-zA-Z0-9]+": { - "type": "string" - } - }, - "type": "object" - }, - "ResponseTemplates": { - "patternProperties": { - "[a-zA-Z0-9]+": { - "type": "string" - } - }, - "type": "object" - }, - "ResponseType": { - "enum": [ - "ACCESS_DENIED", - "API_CONFIGURATION_ERROR", - "AUTHORIZER_CONFIGURATION_ERROR", - "AUTHORIZER_FAILURE", - "BAD_REQUEST_BODY", - "BAD_REQUEST_PARAMETERS", - "DEFAULT_4XX", - "DEFAULT_5XX", - "EXPIRED_TOKEN", - "INTEGRATION_FAILURE", - "INTEGRATION_TIMEOUT", - "INVALID_API_KEY", - "INVALID_SIGNATURE", - "MISSING_AUTHENTICATION_TOKEN", - "QUOTA_EXCEEDED", - "REQUEST_TOO_LARGE", - "RESOURCE_NOT_FOUND", - "THROTTLED", - "UNAUTHORIZED", - "UNSUPPORTED_MEDIA_TYPE", - "WAF_FILTERED" - ], - "type": "string" - }, - "RestApiId": { - "type": "string" - }, - "StatusCode": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "RestApiId", - "ResponseType" - ], - "typeName": "AWS::ApiGateway::GatewayResponse" -} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-method.json b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-method.json deleted file mode 100644 index 8ba3c83b57..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-method.json +++ /dev/null @@ -1,207 +0,0 @@ -{ - "additionalProperties": false, - "definitions": { - "Integration": { - "additionalProperties": false, - "properties": { - "CacheKeyParameters": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "CacheNamespace": { - "type": "string" - }, - "ConnectionId": { - "type": "string" - }, - "ConnectionType": { - "type": "string" - }, - "ContentHandling": { - "type": "string" - }, - "Credentials": { - "type": "string" - }, - "IntegrationHttpMethod": { - "type": "string" - }, - "IntegrationResponses": { - "items": { - "$ref": "#/definitions/IntegrationResponse" - }, - "type": "array", - "uniqueItems": true - }, - "PassthroughBehavior": { - "type": "string" - }, - "RequestParameters": { - "patternProperties": { - "[a-zA-Z0-9]+": { - "type": "string" - } - }, - "type": "object" - }, - "RequestTemplates": { - "patternProperties": { - "[a-zA-Z0-9]+": { - "type": "string" - } - }, - "type": "object" - }, - "TimeoutInMillis": { - "type": "integer" - }, - "Type": { - "type": "string" - }, - "Uri": { - "type": "string" - } - }, - "type": "object" - }, - "IntegrationResponse": { - "additionalProperties": false, - "properties": { - "ContentHandling": { - "type": "string" - }, - "ResponseParameters": { - "patternProperties": { - "[a-zA-Z0-9]+": { - "type": "string" - } - }, - "type": "object" - }, - "ResponseTemplates": { - "patternProperties": { - "[a-zA-Z0-9]+": { - "type": "string" - } - }, - "type": "object" - }, - "SelectionPattern": { - "type": "string" - }, - "StatusCode": { - "type": "string" - } - }, - "required": [ - "StatusCode" - ], - "type": "object" - }, - "MethodResponse": { - "additionalProperties": false, - "properties": { - "ResponseModels": { - "patternProperties": { - "[a-zA-Z0-9]+": { - "type": "string" - } - }, - "type": "object" - }, - "ResponseParameters": { - "patternProperties": { - "[a-zA-Z0-9]+": { - "type": "boolean" - } - }, - "type": "object" - }, - "StatusCode": { - "type": "string" - } - }, - "required": [ - "StatusCode" - ], - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "ApiKeyRequired": { - "type": "boolean" - }, - "AuthorizationScopes": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "AuthorizationType": { - "type": "string" - }, - "AuthorizerId": { - "type": "string" - }, - "HttpMethod": { - "type": "string" - }, - "Id": { - "type": "string" - }, - "Integration": { - "$ref": "#/definitions/Integration" - }, - "MethodResponses": { - "items": { - "$ref": "#/definitions/MethodResponse" - }, - "type": "array", - "uniqueItems": true - }, - "OperationName": { - "type": "string" - }, - "RequestModels": { - "patternProperties": { - "[a-zA-Z0-9]+": { - "type": "string" - } - }, - "type": "object" - }, - "RequestParameters": { - "patternProperties": { - "[a-zA-Z0-9]+": { - "type": "boolean" - } - }, - "type": "object" - }, - "RequestValidatorId": { - "type": "string" - }, - "ResourceId": { - "type": "string" - }, - "RestApiId": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "ResourceId", - "RestApiId", - "HttpMethod" - ], - "typeName": "AWS::ApiGateway::Method" -} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-model.json b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-model.json deleted file mode 100644 index 9504a897a5..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-model.json +++ /dev/null @@ -1,42 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name", - "/properties/ContentType", - "/properties/RestApiId" - ], - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "ContentType": { - "type": "string" - }, - "Description": { - "type": "string" - }, - "Id": { - "type": "string" - }, - "Name": { - "type": "string" - }, - "RestApiId": { - "type": "string" - }, - "Schema": { - "format": "json", - "type": [ - "object", - "string" - ] - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "RestApiId" - ], - "typeName": "AWS::ApiGateway::Model" -} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-requestvalidator.json b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-requestvalidator.json deleted file mode 100644 index 72238424ed..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-requestvalidator.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name", - "/properties/RestApiId" - ], - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "Id": { - "type": "string" - }, - "Name": { - "type": "string" - }, - "RestApiId": { - "type": "string" - }, - "ValidateRequestBody": { - "type": "boolean" - }, - "ValidateRequestParameters": { - "type": "boolean" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "RestApiId" - ], - "typeName": "AWS::ApiGateway::RequestValidator" -} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-resource.json b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-resource.json deleted file mode 100644 index 60bfa2b925..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-resource.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/PathPart", - "/properties/ParentId", - "/properties/RestApiId" - ], - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "Id": { - "type": "string" - }, - "ParentId": { - "type": "string" - }, - "PathPart": { - "type": "string" - }, - "RestApiId": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "ParentId", - "PathPart", - "RestApiId" - ], - "typeName": "AWS::ApiGateway::Resource" -} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-restapi.json b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-restapi.json index d08152f085..54905e2c8b 100644 --- a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-restapi.json +++ b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-restapi.json @@ -50,14 +50,14 @@ } }, "required": [ - "Value", - "Key" + "Key", + "Value" ], "type": "object" } }, "primaryIdentifier": [ - "/properties/Id" + "/properties/RestApiId" ], "properties": { "ApiKeySourceType": { @@ -75,7 +75,6 @@ "uniqueItems": true }, "Body": { - "format": "json", "type": [ "object", "string" @@ -99,9 +98,6 @@ "FailOnWarnings": { "type": "boolean" }, - "Id": { - "type": "string" - }, "MinimumCompressionSize": { "type": "integer" }, @@ -112,20 +108,26 @@ "type": "string" }, "Parameters": { + "additionalProperties": false, "patternProperties": { "[a-zA-Z0-9]+": { "type": "string" } }, - "type": "object" + "type": [ + "object", + "string" + ] }, "Policy": { - "format": "json", "type": [ "object", "string" ] }, + "RestApiId": { + "type": "string" + }, "RootResourceId": { "type": "string" }, @@ -138,8 +140,24 @@ } }, "readOnlyProperties": [ - "/properties/Id", + "/properties/RestApiId", "/properties/RootResourceId" ], - "typeName": "AWS::ApiGateway::RestApi" + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ApiGateway::RestApi", + "writeOnlyProperties": [ + "/properties/Body", + "/properties/BodyS3Location", + "/properties/CloneFrom", + "/properties/FailOnWarnings", + "/properties/Mode", + "/properties/Parameters" + ] } diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-stage.json b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-stage.json deleted file mode 100644 index 3e0d7efcb3..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-stage.json +++ /dev/null @@ -1,167 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/StageName", - "/properties/RestApiId" - ], - "definitions": { - "AccessLogSetting": { - "additionalProperties": false, - "properties": { - "DestinationArn": { - "type": "string" - }, - "Format": { - "type": "string" - } - }, - "type": "object" - }, - "CanarySetting": { - "additionalProperties": false, - "properties": { - "DeploymentId": { - "type": "string" - }, - "PercentTraffic": { - "type": "number" - }, - "StageVariableOverrides": { - "patternProperties": { - "[a-zA-Z0-9]+": { - "type": "string" - } - }, - "type": "object" - }, - "UseStageCache": { - "type": "boolean" - } - }, - "type": "object" - }, - "MethodSetting": { - "additionalProperties": false, - "properties": { - "CacheDataEncrypted": { - "type": "boolean" - }, - "CacheTtlInSeconds": { - "type": "integer" - }, - "CachingEnabled": { - "type": "boolean" - }, - "DataTraceEnabled": { - "type": "boolean" - }, - "HttpMethod": { - "type": "string" - }, - "LoggingLevel": { - "type": "string" - }, - "MetricsEnabled": { - "type": "boolean" - }, - "ResourcePath": { - "pattern": "^/.*$", - "type": "string" - }, - "ThrottlingBurstLimit": { - "type": "integer" - }, - "ThrottlingRateLimit": { - "type": "number" - } - }, - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "AccessLogSetting": { - "$ref": "#/definitions/AccessLogSetting" - }, - "CacheClusterEnabled": { - "type": "boolean" - }, - "CacheClusterSize": { - "type": "string" - }, - "CanarySetting": { - "$ref": "#/definitions/CanarySetting" - }, - "ClientCertificateId": { - "type": "string" - }, - "DeploymentId": { - "type": "string" - }, - "Description": { - "type": "string" - }, - "DocumentationVersion": { - "type": "string" - }, - "Id": { - "type": "string" - }, - "MethodSettings": { - "items": { - "$ref": "#/definitions/MethodSetting" - }, - "type": "array", - "uniqueItems": true - }, - "RestApiId": { - "type": "string" - }, - "StageName": { - "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": false - }, - "TracingEnabled": { - "type": "boolean" - }, - "Variables": { - "patternProperties": { - "[a-zA-Z0-9]+": { - "type": "string" - } - }, - "type": "object" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "RestApiId" - ], - "typeName": "AWS::ApiGateway::Stage" -} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-usageplan.json b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-usageplan.json deleted file mode 100644 index 8f7200b105..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-usageplan.json +++ /dev/null @@ -1,106 +0,0 @@ -{ - "additionalProperties": false, - "definitions": { - "ApiStage": { - "additionalProperties": false, - "properties": { - "ApiId": { - "type": "string" - }, - "Stage": { - "type": "string" - }, - "Throttle": { - "patternProperties": { - "[a-zA-Z0-9]+": { - "$ref": "#/definitions/ThrottleSettings" - } - }, - "type": "object" - } - }, - "type": "object" - }, - "QuotaSettings": { - "additionalProperties": false, - "properties": { - "Limit": { - "type": "integer" - }, - "Offset": { - "type": "integer" - }, - "Period": { - "type": "string" - } - }, - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - }, - "ThrottleSettings": { - "additionalProperties": false, - "properties": { - "BurstLimit": { - "type": "integer" - }, - "RateLimit": { - "type": "number" - } - }, - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "ApiStages": { - "items": { - "$ref": "#/definitions/ApiStage" - }, - "type": "array", - "uniqueItems": true - }, - "Description": { - "type": "string" - }, - "Id": { - "type": "string" - }, - "Quota": { - "$ref": "#/definitions/QuotaSettings" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": false - }, - "Throttle": { - "$ref": "#/definitions/ThrottleSettings" - }, - "UsagePlanName": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "typeName": "AWS::ApiGateway::UsagePlan" -} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-usageplankey.json b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-usageplankey.json deleted file mode 100644 index 832cdf2cd8..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-apigateway-usageplankey.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/KeyType", - "/properties/UsagePlanId", - "/properties/KeyId" - ], - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "Id": { - "type": "string" - }, - "KeyId": { - "type": "string" - }, - "KeyType": { - "enum": [ - "API_KEY" - ], - "type": "string" - }, - "UsagePlanId": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "KeyType", - "UsagePlanId", - "KeyId" - ], - "typeName": "AWS::ApiGateway::UsagePlanKey" -} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-ecs-service.json b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-ecs-service.json new file mode 100644 index 0000000000..ba7baa1de3 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-ecs-service.json @@ -0,0 +1,585 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/DeploymentController", + "/properties/LaunchType", + "/properties/Role", + "/properties/SchedulingStrategy", + "/properties/ServiceName" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "CapacityProviderStrategyItem": { + "additionalProperties": false, + "properties": { + "Base": { + "type": "integer" + }, + "CapacityProvider": { + "type": "string" + }, + "Weight": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentAlarms": { + "additionalProperties": false, + "properties": { + "AlarmNames": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "AlarmNames", + "Rollback", + "Enable" + ], + "type": "object" + }, + "DeploymentCircuitBreaker": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "Enable", + "Rollback" + ], + "type": "object" + }, + "DeploymentConfiguration": { + "additionalProperties": false, + "properties": { + "Alarms": { + "$ref": "#/definitions/DeploymentAlarms" + }, + "DeploymentCircuitBreaker": { + "$ref": "#/definitions/DeploymentCircuitBreaker" + }, + "MaximumPercent": { + "type": "integer" + }, + "MinimumHealthyPercent": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentController": { + "additionalProperties": false, + "properties": { + "Type": { + "enum": [ + "CODE_DEPLOY", + "ECS", + "EXTERNAL" + ], + "type": "string" + } + }, + "type": "object" + }, + "EBSTagSpecification": { + "additionalProperties": false, + "properties": { + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "ResourceType": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "ResourceType" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "LoadBalancerName": { + "type": "string" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "LogConfiguration": { + "additionalProperties": false, + "properties": { + "LogDriver": { + "type": "string" + }, + "Options": { + "additionalProperties": false, + "patternProperties": { + ".{1,}": { + "type": "string" + } + }, + "type": "object" + }, + "SecretOptions": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Secret" + }, + "type": "array" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsvpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "PlacementConstraint": { + "additionalProperties": false, + "properties": { + "Expression": { + "type": "string" + }, + "Type": { + "enum": [ + "distinctInstance", + "memberOf" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "PlacementStrategy": { + "additionalProperties": false, + "properties": { + "Field": { + "type": "string" + }, + "Type": { + "enum": [ + "binpack", + "random", + "spread" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "Secret": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "ValueFrom": { + "type": "string" + } + }, + "required": [ + "Name", + "ValueFrom" + ], + "type": "object" + }, + "ServiceConnectClientAlias": { + "additionalProperties": false, + "properties": { + "DnsName": { + "type": "string" + }, + "Port": { + "type": "integer" + } + }, + "required": [ + "Port" + ], + "type": "object" + }, + "ServiceConnectConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + }, + "LogConfiguration": { + "$ref": "#/definitions/LogConfiguration" + }, + "Namespace": { + "type": "string" + }, + "Services": { + "items": { + "$ref": "#/definitions/ServiceConnectService" + }, + "type": "array" + } + }, + "required": [ + "Enabled" + ], + "type": "object" + }, + "ServiceConnectService": { + "additionalProperties": false, + "properties": { + "ClientAliases": { + "items": { + "$ref": "#/definitions/ServiceConnectClientAlias" + }, + "type": "array" + }, + "DiscoveryName": { + "type": "string" + }, + "IngressPortOverride": { + "type": "integer" + }, + "PortName": { + "type": "string" + }, + "Timeout": { + "$ref": "#/definitions/TimeoutConfiguration" + }, + "Tls": { + "$ref": "#/definitions/ServiceConnectTlsConfiguration" + } + }, + "required": [ + "PortName" + ], + "type": "object" + }, + "ServiceConnectTlsCertificateAuthority": { + "additionalProperties": false, + "properties": { + "AwsPcaAuthorityArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceConnectTlsConfiguration": { + "additionalProperties": false, + "properties": { + "IssuerCertificateAuthority": { + "$ref": "#/definitions/ServiceConnectTlsCertificateAuthority" + }, + "KmsKey": { + "type": "string" + }, + "RoleArn": { + "type": "string" + } + }, + "required": [ + "IssuerCertificateAuthority" + ], + "type": "object" + }, + "ServiceManagedEBSVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "Encrypted": { + "type": "boolean" + }, + "FilesystemType": { + "type": "string" + }, + "Iops": { + "type": "integer" + }, + "KmsKeyId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SizeInGiB": { + "type": "integer" + }, + "SnapshotId": { + "type": "string" + }, + "TagSpecifications": { + "items": { + "$ref": "#/definitions/EBSTagSpecification" + }, + "type": "array" + }, + "Throughput": { + "type": "integer" + }, + "VolumeType": { + "type": "string" + } + }, + "required": [ + "RoleArn" + ], + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "ManagedEBSVolume": { + "$ref": "#/definitions/ServiceManagedEBSVolumeConfiguration" + }, + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + }, + "TimeoutConfiguration": { + "additionalProperties": false, + "properties": { + "IdleTimeoutSeconds": { + "type": "integer" + }, + "PerRequestTimeoutSeconds": { + "type": "integer" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/ServiceArn", + "/properties/Cluster" + ], + "properties": { + "CapacityProviderStrategy": { + "items": { + "$ref": "#/definitions/CapacityProviderStrategyItem" + }, + "type": "array" + }, + "Cluster": { + "type": "string" + }, + "DeploymentConfiguration": { + "$ref": "#/definitions/DeploymentConfiguration" + }, + "DeploymentController": { + "$ref": "#/definitions/DeploymentController" + }, + "DesiredCount": { + "type": "integer" + }, + "EnableECSManagedTags": { + "type": "boolean" + }, + "EnableExecuteCommand": { + "type": "boolean" + }, + "HealthCheckGracePeriodSeconds": { + "type": "integer" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE", + "EXTERNAL" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "Name": { + "type": "string" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlacementConstraints": { + "items": { + "$ref": "#/definitions/PlacementConstraint" + }, + "type": "array" + }, + "PlacementStrategies": { + "items": { + "$ref": "#/definitions/PlacementStrategy" + }, + "type": "array" + }, + "PlatformVersion": { + "default": "LATEST", + "type": "string" + }, + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "Role": { + "type": "string" + }, + "SchedulingStrategy": { + "enum": [ + "DAEMON", + "REPLICA" + ], + "type": "string" + }, + "ServiceArn": { + "type": "string" + }, + "ServiceConnectConfiguration": { + "$ref": "#/definitions/ServiceConnectConfiguration" + }, + "ServiceName": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + }, + "VolumeConfigurations": { + "items": { + "$ref": "#/definitions/ServiceVolumeConfiguration" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/ServiceArn", + "/properties/Name" + ], + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::Service", + "writeOnlyProperties": [ + "/properties/ServiceConnectConfiguration", + "/properties/VolumeConfigurations" + ] +} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-ecs-taskset.json b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-ecs-taskset.json new file mode 100644 index 0000000000..3491488499 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-ecs-taskset.json @@ -0,0 +1,191 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/ExternalId", + "/properties/LaunchType", + "/properties/LoadBalancers", + "/properties/NetworkConfiguration", + "/properties/PlatformVersion", + "/properties/Service", + "/properties/ServiceRegistries", + "/properties/TaskDefinition" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "maxItems": 5, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "maxItems": 16, + "type": "array" + } + }, + "required": [ + "Subnets" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsVpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "Scale": { + "additionalProperties": false, + "properties": { + "Unit": { + "enum": [ + "PERCENT" + ], + "type": "string" + }, + "Value": { + "maximum": 100, + "minimum": 0, + "type": "number" + } + }, + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Cluster", + "/properties/Service", + "/properties/Id" + ], + "properties": { + "Cluster": { + "type": "string" + }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlatformVersion": { + "type": "string" + }, + "Scale": { + "$ref": "#/definitions/Scale" + }, + "Service": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "Cluster", + "Service", + "TaskDefinition" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-ecs.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::TaskSet" +} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-guardduty-detector.json b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-guardduty-detector.json new file mode 100644 index 0000000000..efaad17ff9 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-guardduty-detector.json @@ -0,0 +1,184 @@ +{ + "additionalProperties": false, + "definitions": { + "CFNDataSourceConfigurations": { + "additionalProperties": false, + "properties": { + "Kubernetes": { + "$ref": "#/definitions/CFNKubernetesConfiguration" + }, + "MalwareProtection": { + "$ref": "#/definitions/CFNMalwareProtectionConfiguration" + }, + "S3Logs": { + "$ref": "#/definitions/CFNS3LogsConfiguration" + } + }, + "type": "object" + }, + "CFNFeatureAdditionalConfiguration": { + "additionalProperties": false, + "properties": { + "Name": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "Status": { + "maxLength": 128, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "CFNFeatureConfiguration": { + "additionalProperties": false, + "properties": { + "AdditionalConfiguration": { + "items": { + "$ref": "#/definitions/CFNFeatureAdditionalConfiguration" + }, + "type": "array" + }, + "Name": { + "maxLength": 128, + "type": "string" + }, + "Status": { + "enum": [ + "ENABLED", + "DISABLED" + ], + "type": "string" + } + }, + "required": [ + "Name", + "Status" + ], + "type": "object" + }, + "CFNKubernetesAuditLogsConfiguration": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + } + }, + "required": [ + "Enable" + ], + "type": "object" + }, + "CFNKubernetesConfiguration": { + "additionalProperties": false, + "properties": { + "AuditLogs": { + "$ref": "#/definitions/CFNKubernetesAuditLogsConfiguration" + } + }, + "required": [ + "AuditLogs" + ], + "type": "object" + }, + "CFNMalwareProtectionConfiguration": { + "additionalProperties": false, + "properties": { + "ScanEc2InstanceWithFindings": { + "$ref": "#/definitions/CFNScanEc2InstanceWithFindingsConfiguration" + } + }, + "type": "object" + }, + "CFNS3LogsConfiguration": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + } + }, + "required": [ + "Enable" + ], + "type": "object" + }, + "CFNScanEc2InstanceWithFindingsConfiguration": { + "additionalProperties": false, + "properties": { + "EbsVolumes": { + "type": "boolean" + } + }, + "type": "object" + }, + "TagItem": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "DataSources": { + "$ref": "#/definitions/CFNDataSourceConfigurations" + }, + "Enable": { + "type": "boolean" + }, + "Features": { + "items": { + "$ref": "#/definitions/CFNFeatureConfiguration" + }, + "type": "array" + }, + "FindingPublishingFrequency": { + "enum": [ + "FIFTEEN_MINUTES", + "ONE_HOUR", + "SIX_HOURS" + ], + "type": "string" + }, + "Id": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/TagItem" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "Enable" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": false, + "taggable": true + }, + "typeName": "AWS::GuardDuty::Detector" +} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-kinesis-stream.json b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-kinesis-stream.json new file mode 100644 index 0000000000..be1bc65c07 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-kinesis-stream.json @@ -0,0 +1,133 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "StreamEncryption": { + "additionalProperties": false, + "properties": { + "EncryptionType": { + "enum": [ + "KMS" + ], + "type": "string" + }, + "KeyId": { + "anyOf": [ + { + "relationshipRef": { + "propertyPath": "/properties/Arn", + "typeName": "AWS::KMS::Key" + } + }, + { + "relationshipRef": { + "propertyPath": "/properties/KeyId", + "typeName": "AWS::KMS::Key" + } + } + ], + "maxLength": 2048, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "EncryptionType", + "KeyId" + ], + "type": "object" + }, + "StreamModeDetails": { + "additionalProperties": false, + "properties": { + "StreamMode": { + "enum": [ + "ON_DEMAND", + "PROVISIONED" + ], + "type": "string" + } + }, + "required": [ + "StreamMode" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Name" + ], + "properties": { + "Arn": { + "type": "string" + }, + "Name": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9_.-]+$", + "type": "string" + }, + "RetentionPeriodHours": { + "maximum": 8760, + "minimum": 1, + "type": "integer" + }, + "ShardCount": { + "maximum": 100000, + "minimum": 1, + "type": "integer" + }, + "StreamEncryption": { + "$ref": "#/definitions/StreamEncryption" + }, + "StreamModeDetails": { + "$ref": "#/definitions/StreamModeDetails", + "default": { + "StreamMode": "PROVISIONED" + } + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 50, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-kinesis.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Kinesis::Stream" +} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-networkfirewall-firewallpolicy.json b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-networkfirewall-firewallpolicy.json new file mode 100644 index 0000000000..973b595561 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-networkfirewall-firewallpolicy.json @@ -0,0 +1,332 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/FirewallPolicyName" + ], + "definitions": { + "ActionDefinition": { + "additionalProperties": false, + "properties": { + "PublishMetricAction": { + "$ref": "#/definitions/PublishMetricAction" + } + }, + "type": "object" + }, + "CustomAction": { + "additionalProperties": false, + "properties": { + "ActionDefinition": { + "$ref": "#/definitions/ActionDefinition" + }, + "ActionName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + } + }, + "required": [ + "ActionName", + "ActionDefinition" + ], + "type": "object" + }, + "Dimension": { + "additionalProperties": false, + "properties": { + "Value": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-_ ]+$", + "type": "string" + } + }, + "required": [ + "Value" + ], + "type": "object" + }, + "FirewallPolicy": { + "additionalProperties": false, + "properties": { + "PolicyVariables": { + "additionalProperties": false, + "properties": { + "RuleVariables": { + "$ref": "#/definitions/RuleVariables" + } + }, + "type": "object" + }, + "StatefulDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatefulEngineOptions": { + "$ref": "#/definitions/StatefulEngineOptions" + }, + "StatefulRuleGroupReferences": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/StatefulRuleGroupReference" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessCustomActions": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/CustomAction" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessFragmentDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessRuleGroupReferences": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/StatelessRuleGroupReference" + }, + "type": "array", + "uniqueItems": false + }, + "TLSInspectionConfigurationArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "StatelessDefaultActions", + "StatelessFragmentDefaultActions" + ], + "type": "object" + }, + "IPSet": { + "additionalProperties": false, + "properties": { + "Definition": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/VariableDefinition" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "OverrideAction": { + "enum": [ + "DROP_TO_ALERT" + ], + "type": "string" + }, + "Priority": { + "maximum": 65535, + "minimum": 1, + "type": "integer" + }, + "PublishMetricAction": { + "additionalProperties": false, + "properties": { + "Dimensions": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/Dimension" + }, + "type": "array", + "uniqueItems": false + } + }, + "required": [ + "Dimensions" + ], + "type": "object" + }, + "ResourceArn": { + "maxLength": 256, + "minLength": 1, + "pattern": "^(arn:aws.*)$", + "type": "string" + }, + "RuleOrder": { + "enum": [ + "DEFAULT_ACTION_ORDER", + "STRICT_ORDER" + ], + "type": "string" + }, + "RuleVariables": { + "additionalProperties": false, + "patternProperties": { + "^[A-Za-z0-9_]{1,32}$": { + "$ref": "#/definitions/IPSet" + } + }, + "type": "object" + }, + "StatefulEngineOptions": { + "additionalProperties": false, + "properties": { + "RuleOrder": { + "$ref": "#/definitions/RuleOrder" + }, + "StreamExceptionPolicy": { + "$ref": "#/definitions/StreamExceptionPolicy" + } + }, + "type": "object" + }, + "StatefulRuleGroupOverride": { + "additionalProperties": false, + "properties": { + "Action": { + "$ref": "#/definitions/OverrideAction" + } + }, + "type": "object" + }, + "StatefulRuleGroupReference": { + "additionalProperties": false, + "properties": { + "Override": { + "$ref": "#/definitions/StatefulRuleGroupOverride" + }, + "Priority": { + "$ref": "#/definitions/Priority" + }, + "ResourceArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "ResourceArn" + ], + "type": "object" + }, + "StatelessRuleGroupReference": { + "additionalProperties": false, + "properties": { + "Priority": { + "$ref": "#/definitions/Priority" + }, + "ResourceArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "ResourceArn", + "Priority" + ], + "type": "object" + }, + "StreamExceptionPolicy": { + "enum": [ + "DROP", + "CONTINUE", + "REJECT" + ], + "type": "string" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "^.*$", + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 0, + "pattern": "^.*$", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "VariableDefinition": { + "minLength": 1, + "pattern": "^.*$", + "type": "string" + } + }, + "primaryIdentifier": [ + "/properties/FirewallPolicyArn" + ], + "properties": { + "Description": { + "maxLength": 512, + "minLength": 1, + "pattern": "^.*$", + "type": "string" + }, + "FirewallPolicy": { + "$ref": "#/definitions/FirewallPolicy" + }, + "FirewallPolicyArn": { + "$ref": "#/definitions/ResourceArn" + }, + "FirewallPolicyId": { + "maxLength": 36, + "minLength": 36, + "pattern": "^([0-9a-f]{8})-([0-9a-f]{4}-){3}([0-9a-f]{12})$", + "type": "string" + }, + "FirewallPolicyName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-]+$", + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + } + }, + "readOnlyProperties": [ + "/properties/FirewallPolicyArn", + "/properties/FirewallPolicyId" + ], + "required": [ + "FirewallPolicyName", + "FirewallPolicy" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-networkfirewall.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::NetworkFirewall::FirewallPolicy" +} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-sagemaker-imageversion.json b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-sagemaker-imageversion.json deleted file mode 100644 index e7c91ccc8d..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-sagemaker-imageversion.json +++ /dev/null @@ -1,172 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/ImageName", - "/properties/BaseImage" - ], - "definitions": { - "Alias": { - "maxLength": 128, - "minLength": 1, - "pattern": "(?!^[.-])^([a-zA-Z0-9-_.]+)$", - "type": "string" - }, - "Aliases": { - "items": { - "$ref": "#/definitions/Alias" - }, - "type": "array" - }, - "BaseImage": { - "maxLength": 255, - "minLength": 1, - "pattern": ".+", - "type": "string" - }, - "ContainerImage": { - "maxLength": 255, - "minLength": 1, - "pattern": ".+", - "type": "string" - }, - "Horovod": { - "type": "boolean" - }, - "ImageArn": { - "maxLength": 256, - "minLength": 1, - "pattern": "^arn:aws(-[\\w]+)*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:image\\/[a-zA-Z0-9]([-.]?[a-zA-Z0-9])*$", - "type": "string" - }, - "ImageName": { - "maxLength": 63, - "minLength": 1, - "pattern": "^[A-Za-z0-9]([-.]?[A-Za-z0-9])*$", - "type": "string" - }, - "ImageVersionArn": { - "maxLength": 256, - "minLength": 1, - "pattern": "^arn:aws(-[\\w]+)*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:image-version\\/[a-zA-Z0-9]([-.]?[a-zA-Z0-9])*\\/[0-9]+$", - "type": "string" - }, - "JobType": { - "enum": [ - "TRAINING", - "INFERENCE", - "NOTEBOOK_KERNEL" - ], - "type": "string" - }, - "MLFramework": { - "maxLength": 128, - "minLength": 1, - "pattern": "^[a-zA-Z]+ ?\\d+\\.\\d+(\\.\\d+)?$", - "type": "string" - }, - "Processor": { - "enum": [ - "CPU", - "GPU" - ], - "type": "string" - }, - "ProgrammingLang": { - "maxLength": 128, - "minLength": 1, - "pattern": "^[a-zA-Z]+ ?\\d+\\.\\d+(\\.\\d+)?$", - "type": "string" - }, - "ReleaseNotes": { - "maxLength": 255, - "minLength": 1, - "pattern": ".*", - "type": "string" - }, - "VendorGuidance": { - "enum": [ - "NOT_PROVIDED", - "STABLE", - "TO_BE_ARCHIVED", - "ARCHIVED" - ], - "type": "string" - }, - "Version": { - "minimum": 1, - "type": "integer" - } - }, - "primaryIdentifier": [ - "/properties/ImageVersionArn" - ], - "properties": { - "Alias": { - "$ref": "#/definitions/Alias" - }, - "Aliases": { - "$ref": "#/definitions/Aliases" - }, - "BaseImage": { - "$ref": "#/definitions/BaseImage" - }, - "ContainerImage": { - "$ref": "#/definitions/ContainerImage" - }, - "Horovod": { - "$ref": "#/definitions/Horovod" - }, - "ImageArn": { - "$ref": "#/definitions/ImageArn" - }, - "ImageName": { - "$ref": "#/definitions/ImageName" - }, - "ImageVersionArn": { - "$ref": "#/definitions/ImageVersionArn" - }, - "JobType": { - "$ref": "#/definitions/JobType" - }, - "MLFramework": { - "$ref": "#/definitions/MLFramework" - }, - "Processor": { - "$ref": "#/definitions/Processor" - }, - "ProgrammingLang": { - "$ref": "#/definitions/ProgrammingLang" - }, - "ReleaseNotes": { - "$ref": "#/definitions/ReleaseNotes" - }, - "VendorGuidance": { - "$ref": "#/definitions/VendorGuidance" - }, - "Version": { - "$ref": "#/definitions/Version" - } - }, - "readOnlyProperties": [ - "/properties/ImageVersionArn", - "/properties/ImageArn", - "/properties/Version", - "/properties/ContainerImage" - ], - "required": [ - "ImageName", - "BaseImage" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sagemaker", - "tagging": { - "cloudFormationSystemTags": false, - "tagOnCreate": false, - "tagUpdatable": false, - "taggable": false - }, - "typeName": "AWS::SageMaker::ImageVersion", - "writeOnlyProperties": [ - "/properties/Aliases", - "/properties/Alias" - ] -} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_4/__init__.py b/src/cfnlint/data/schemas/providers/ap_southeast_4/__init__.py index 7eff9e88b2..be02c128de 100644 --- a/src/cfnlint/data/schemas/providers/ap_southeast_4/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_southeast_4/__init__.py @@ -869,9 +869,7 @@ "aws-ecs-cluster.json", "aws-ecs-clustercapacityproviderassociations.json", "aws-ecs-primarytaskset.json", - "aws-ecs-service.json", "aws-ecs-taskdefinition.json", - "aws-ecs-taskset.json", "aws-efs-accesspoint.json", "aws-efs-filesystem.json", "aws-efs-mounttarget.json", @@ -934,7 +932,6 @@ "aws-glue-trigger.json", "aws-glue-usageprofile.json", "aws-glue-workflow.json", - "aws-guardduty-detector.json", "aws-guardduty-filter.json", "aws-guardduty-ipset.json", "aws-guardduty-malwareprotectionplan.json", @@ -965,7 +962,6 @@ "aws-imagebuilder-lifecyclepolicy.json", "aws-imagebuilder-workflow.json", "aws-internetmonitor-monitor.json", - "aws-kinesis-stream.json", "aws-kinesisanalyticsv2-application.json", "aws-kinesisfirehose-deliverystream.json", "aws-kms-alias.json", @@ -1029,7 +1025,6 @@ "aws-msk-vpcconnection.json", "aws-mwaa-environment.json", "aws-networkfirewall-firewall.json", - "aws-networkfirewall-firewallpolicy.json", "aws-networkfirewall-loggingconfiguration.json", "aws-networkfirewall-rulegroup.json", "aws-networkfirewall-tlsinspectionconfiguration.json", @@ -1061,7 +1056,6 @@ "aws-pcaconnectorscep-connector.json", "aws-ram-permission.json", "aws-ram-resourceshare.json", - "aws-rds-dbcluster.json", "aws-rds-dbclusterparametergroup.json", "aws-rds-dbinstance.json", "aws-rds-dbparametergroup.json", @@ -1070,7 +1064,6 @@ "aws-rds-dbproxytargetgroup.json", "aws-rds-dbsecuritygroup.json", "aws-rds-dbsecuritygroupingress.json", - "aws-rds-dbsubnetgroup.json", "aws-rds-eventsubscription.json", "aws-rds-globalcluster.json", "aws-rds-integration.json", @@ -1126,6 +1119,7 @@ "aws-secretsmanager-resourcepolicy.json", "aws-secretsmanager-rotationschedule.json", "aws-secretsmanager-secret.json", + "aws-secretsmanager-secrettargetattachment.json", "aws-securityhub-automationrule.json", "aws-securityhub-delegatedadmin.json", "aws-securityhub-hub.json", diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-ecs-service.json b/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-ecs-service.json new file mode 100644 index 0000000000..ba7baa1de3 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-ecs-service.json @@ -0,0 +1,585 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/DeploymentController", + "/properties/LaunchType", + "/properties/Role", + "/properties/SchedulingStrategy", + "/properties/ServiceName" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "CapacityProviderStrategyItem": { + "additionalProperties": false, + "properties": { + "Base": { + "type": "integer" + }, + "CapacityProvider": { + "type": "string" + }, + "Weight": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentAlarms": { + "additionalProperties": false, + "properties": { + "AlarmNames": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "AlarmNames", + "Rollback", + "Enable" + ], + "type": "object" + }, + "DeploymentCircuitBreaker": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "Enable", + "Rollback" + ], + "type": "object" + }, + "DeploymentConfiguration": { + "additionalProperties": false, + "properties": { + "Alarms": { + "$ref": "#/definitions/DeploymentAlarms" + }, + "DeploymentCircuitBreaker": { + "$ref": "#/definitions/DeploymentCircuitBreaker" + }, + "MaximumPercent": { + "type": "integer" + }, + "MinimumHealthyPercent": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentController": { + "additionalProperties": false, + "properties": { + "Type": { + "enum": [ + "CODE_DEPLOY", + "ECS", + "EXTERNAL" + ], + "type": "string" + } + }, + "type": "object" + }, + "EBSTagSpecification": { + "additionalProperties": false, + "properties": { + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "ResourceType": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "ResourceType" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "LoadBalancerName": { + "type": "string" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "LogConfiguration": { + "additionalProperties": false, + "properties": { + "LogDriver": { + "type": "string" + }, + "Options": { + "additionalProperties": false, + "patternProperties": { + ".{1,}": { + "type": "string" + } + }, + "type": "object" + }, + "SecretOptions": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Secret" + }, + "type": "array" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsvpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "PlacementConstraint": { + "additionalProperties": false, + "properties": { + "Expression": { + "type": "string" + }, + "Type": { + "enum": [ + "distinctInstance", + "memberOf" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "PlacementStrategy": { + "additionalProperties": false, + "properties": { + "Field": { + "type": "string" + }, + "Type": { + "enum": [ + "binpack", + "random", + "spread" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "Secret": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "ValueFrom": { + "type": "string" + } + }, + "required": [ + "Name", + "ValueFrom" + ], + "type": "object" + }, + "ServiceConnectClientAlias": { + "additionalProperties": false, + "properties": { + "DnsName": { + "type": "string" + }, + "Port": { + "type": "integer" + } + }, + "required": [ + "Port" + ], + "type": "object" + }, + "ServiceConnectConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + }, + "LogConfiguration": { + "$ref": "#/definitions/LogConfiguration" + }, + "Namespace": { + "type": "string" + }, + "Services": { + "items": { + "$ref": "#/definitions/ServiceConnectService" + }, + "type": "array" + } + }, + "required": [ + "Enabled" + ], + "type": "object" + }, + "ServiceConnectService": { + "additionalProperties": false, + "properties": { + "ClientAliases": { + "items": { + "$ref": "#/definitions/ServiceConnectClientAlias" + }, + "type": "array" + }, + "DiscoveryName": { + "type": "string" + }, + "IngressPortOverride": { + "type": "integer" + }, + "PortName": { + "type": "string" + }, + "Timeout": { + "$ref": "#/definitions/TimeoutConfiguration" + }, + "Tls": { + "$ref": "#/definitions/ServiceConnectTlsConfiguration" + } + }, + "required": [ + "PortName" + ], + "type": "object" + }, + "ServiceConnectTlsCertificateAuthority": { + "additionalProperties": false, + "properties": { + "AwsPcaAuthorityArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceConnectTlsConfiguration": { + "additionalProperties": false, + "properties": { + "IssuerCertificateAuthority": { + "$ref": "#/definitions/ServiceConnectTlsCertificateAuthority" + }, + "KmsKey": { + "type": "string" + }, + "RoleArn": { + "type": "string" + } + }, + "required": [ + "IssuerCertificateAuthority" + ], + "type": "object" + }, + "ServiceManagedEBSVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "Encrypted": { + "type": "boolean" + }, + "FilesystemType": { + "type": "string" + }, + "Iops": { + "type": "integer" + }, + "KmsKeyId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SizeInGiB": { + "type": "integer" + }, + "SnapshotId": { + "type": "string" + }, + "TagSpecifications": { + "items": { + "$ref": "#/definitions/EBSTagSpecification" + }, + "type": "array" + }, + "Throughput": { + "type": "integer" + }, + "VolumeType": { + "type": "string" + } + }, + "required": [ + "RoleArn" + ], + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "ManagedEBSVolume": { + "$ref": "#/definitions/ServiceManagedEBSVolumeConfiguration" + }, + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + }, + "TimeoutConfiguration": { + "additionalProperties": false, + "properties": { + "IdleTimeoutSeconds": { + "type": "integer" + }, + "PerRequestTimeoutSeconds": { + "type": "integer" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/ServiceArn", + "/properties/Cluster" + ], + "properties": { + "CapacityProviderStrategy": { + "items": { + "$ref": "#/definitions/CapacityProviderStrategyItem" + }, + "type": "array" + }, + "Cluster": { + "type": "string" + }, + "DeploymentConfiguration": { + "$ref": "#/definitions/DeploymentConfiguration" + }, + "DeploymentController": { + "$ref": "#/definitions/DeploymentController" + }, + "DesiredCount": { + "type": "integer" + }, + "EnableECSManagedTags": { + "type": "boolean" + }, + "EnableExecuteCommand": { + "type": "boolean" + }, + "HealthCheckGracePeriodSeconds": { + "type": "integer" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE", + "EXTERNAL" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "Name": { + "type": "string" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlacementConstraints": { + "items": { + "$ref": "#/definitions/PlacementConstraint" + }, + "type": "array" + }, + "PlacementStrategies": { + "items": { + "$ref": "#/definitions/PlacementStrategy" + }, + "type": "array" + }, + "PlatformVersion": { + "default": "LATEST", + "type": "string" + }, + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "Role": { + "type": "string" + }, + "SchedulingStrategy": { + "enum": [ + "DAEMON", + "REPLICA" + ], + "type": "string" + }, + "ServiceArn": { + "type": "string" + }, + "ServiceConnectConfiguration": { + "$ref": "#/definitions/ServiceConnectConfiguration" + }, + "ServiceName": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + }, + "VolumeConfigurations": { + "items": { + "$ref": "#/definitions/ServiceVolumeConfiguration" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/ServiceArn", + "/properties/Name" + ], + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::Service", + "writeOnlyProperties": [ + "/properties/ServiceConnectConfiguration", + "/properties/VolumeConfigurations" + ] +} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-ecs-taskset.json b/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-ecs-taskset.json new file mode 100644 index 0000000000..3491488499 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-ecs-taskset.json @@ -0,0 +1,191 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/ExternalId", + "/properties/LaunchType", + "/properties/LoadBalancers", + "/properties/NetworkConfiguration", + "/properties/PlatformVersion", + "/properties/Service", + "/properties/ServiceRegistries", + "/properties/TaskDefinition" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "maxItems": 5, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "maxItems": 16, + "type": "array" + } + }, + "required": [ + "Subnets" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsVpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "Scale": { + "additionalProperties": false, + "properties": { + "Unit": { + "enum": [ + "PERCENT" + ], + "type": "string" + }, + "Value": { + "maximum": 100, + "minimum": 0, + "type": "number" + } + }, + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Cluster", + "/properties/Service", + "/properties/Id" + ], + "properties": { + "Cluster": { + "type": "string" + }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlatformVersion": { + "type": "string" + }, + "Scale": { + "$ref": "#/definitions/Scale" + }, + "Service": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "Cluster", + "Service", + "TaskDefinition" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-ecs.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::TaskSet" +} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-guardduty-detector.json b/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-guardduty-detector.json new file mode 100644 index 0000000000..efaad17ff9 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-guardduty-detector.json @@ -0,0 +1,184 @@ +{ + "additionalProperties": false, + "definitions": { + "CFNDataSourceConfigurations": { + "additionalProperties": false, + "properties": { + "Kubernetes": { + "$ref": "#/definitions/CFNKubernetesConfiguration" + }, + "MalwareProtection": { + "$ref": "#/definitions/CFNMalwareProtectionConfiguration" + }, + "S3Logs": { + "$ref": "#/definitions/CFNS3LogsConfiguration" + } + }, + "type": "object" + }, + "CFNFeatureAdditionalConfiguration": { + "additionalProperties": false, + "properties": { + "Name": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "Status": { + "maxLength": 128, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "CFNFeatureConfiguration": { + "additionalProperties": false, + "properties": { + "AdditionalConfiguration": { + "items": { + "$ref": "#/definitions/CFNFeatureAdditionalConfiguration" + }, + "type": "array" + }, + "Name": { + "maxLength": 128, + "type": "string" + }, + "Status": { + "enum": [ + "ENABLED", + "DISABLED" + ], + "type": "string" + } + }, + "required": [ + "Name", + "Status" + ], + "type": "object" + }, + "CFNKubernetesAuditLogsConfiguration": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + } + }, + "required": [ + "Enable" + ], + "type": "object" + }, + "CFNKubernetesConfiguration": { + "additionalProperties": false, + "properties": { + "AuditLogs": { + "$ref": "#/definitions/CFNKubernetesAuditLogsConfiguration" + } + }, + "required": [ + "AuditLogs" + ], + "type": "object" + }, + "CFNMalwareProtectionConfiguration": { + "additionalProperties": false, + "properties": { + "ScanEc2InstanceWithFindings": { + "$ref": "#/definitions/CFNScanEc2InstanceWithFindingsConfiguration" + } + }, + "type": "object" + }, + "CFNS3LogsConfiguration": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + } + }, + "required": [ + "Enable" + ], + "type": "object" + }, + "CFNScanEc2InstanceWithFindingsConfiguration": { + "additionalProperties": false, + "properties": { + "EbsVolumes": { + "type": "boolean" + } + }, + "type": "object" + }, + "TagItem": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "DataSources": { + "$ref": "#/definitions/CFNDataSourceConfigurations" + }, + "Enable": { + "type": "boolean" + }, + "Features": { + "items": { + "$ref": "#/definitions/CFNFeatureConfiguration" + }, + "type": "array" + }, + "FindingPublishingFrequency": { + "enum": [ + "FIFTEEN_MINUTES", + "ONE_HOUR", + "SIX_HOURS" + ], + "type": "string" + }, + "Id": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/TagItem" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "Enable" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": false, + "taggable": true + }, + "typeName": "AWS::GuardDuty::Detector" +} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-kinesis-stream.json b/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-kinesis-stream.json new file mode 100644 index 0000000000..be1bc65c07 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-kinesis-stream.json @@ -0,0 +1,133 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "StreamEncryption": { + "additionalProperties": false, + "properties": { + "EncryptionType": { + "enum": [ + "KMS" + ], + "type": "string" + }, + "KeyId": { + "anyOf": [ + { + "relationshipRef": { + "propertyPath": "/properties/Arn", + "typeName": "AWS::KMS::Key" + } + }, + { + "relationshipRef": { + "propertyPath": "/properties/KeyId", + "typeName": "AWS::KMS::Key" + } + } + ], + "maxLength": 2048, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "EncryptionType", + "KeyId" + ], + "type": "object" + }, + "StreamModeDetails": { + "additionalProperties": false, + "properties": { + "StreamMode": { + "enum": [ + "ON_DEMAND", + "PROVISIONED" + ], + "type": "string" + } + }, + "required": [ + "StreamMode" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Name" + ], + "properties": { + "Arn": { + "type": "string" + }, + "Name": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9_.-]+$", + "type": "string" + }, + "RetentionPeriodHours": { + "maximum": 8760, + "minimum": 1, + "type": "integer" + }, + "ShardCount": { + "maximum": 100000, + "minimum": 1, + "type": "integer" + }, + "StreamEncryption": { + "$ref": "#/definitions/StreamEncryption" + }, + "StreamModeDetails": { + "$ref": "#/definitions/StreamModeDetails", + "default": { + "StreamMode": "PROVISIONED" + } + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 50, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-kinesis.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Kinesis::Stream" +} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-networkfirewall-firewallpolicy.json b/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-networkfirewall-firewallpolicy.json new file mode 100644 index 0000000000..973b595561 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-networkfirewall-firewallpolicy.json @@ -0,0 +1,332 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/FirewallPolicyName" + ], + "definitions": { + "ActionDefinition": { + "additionalProperties": false, + "properties": { + "PublishMetricAction": { + "$ref": "#/definitions/PublishMetricAction" + } + }, + "type": "object" + }, + "CustomAction": { + "additionalProperties": false, + "properties": { + "ActionDefinition": { + "$ref": "#/definitions/ActionDefinition" + }, + "ActionName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + } + }, + "required": [ + "ActionName", + "ActionDefinition" + ], + "type": "object" + }, + "Dimension": { + "additionalProperties": false, + "properties": { + "Value": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-_ ]+$", + "type": "string" + } + }, + "required": [ + "Value" + ], + "type": "object" + }, + "FirewallPolicy": { + "additionalProperties": false, + "properties": { + "PolicyVariables": { + "additionalProperties": false, + "properties": { + "RuleVariables": { + "$ref": "#/definitions/RuleVariables" + } + }, + "type": "object" + }, + "StatefulDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatefulEngineOptions": { + "$ref": "#/definitions/StatefulEngineOptions" + }, + "StatefulRuleGroupReferences": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/StatefulRuleGroupReference" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessCustomActions": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/CustomAction" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessFragmentDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessRuleGroupReferences": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/StatelessRuleGroupReference" + }, + "type": "array", + "uniqueItems": false + }, + "TLSInspectionConfigurationArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "StatelessDefaultActions", + "StatelessFragmentDefaultActions" + ], + "type": "object" + }, + "IPSet": { + "additionalProperties": false, + "properties": { + "Definition": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/VariableDefinition" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "OverrideAction": { + "enum": [ + "DROP_TO_ALERT" + ], + "type": "string" + }, + "Priority": { + "maximum": 65535, + "minimum": 1, + "type": "integer" + }, + "PublishMetricAction": { + "additionalProperties": false, + "properties": { + "Dimensions": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/Dimension" + }, + "type": "array", + "uniqueItems": false + } + }, + "required": [ + "Dimensions" + ], + "type": "object" + }, + "ResourceArn": { + "maxLength": 256, + "minLength": 1, + "pattern": "^(arn:aws.*)$", + "type": "string" + }, + "RuleOrder": { + "enum": [ + "DEFAULT_ACTION_ORDER", + "STRICT_ORDER" + ], + "type": "string" + }, + "RuleVariables": { + "additionalProperties": false, + "patternProperties": { + "^[A-Za-z0-9_]{1,32}$": { + "$ref": "#/definitions/IPSet" + } + }, + "type": "object" + }, + "StatefulEngineOptions": { + "additionalProperties": false, + "properties": { + "RuleOrder": { + "$ref": "#/definitions/RuleOrder" + }, + "StreamExceptionPolicy": { + "$ref": "#/definitions/StreamExceptionPolicy" + } + }, + "type": "object" + }, + "StatefulRuleGroupOverride": { + "additionalProperties": false, + "properties": { + "Action": { + "$ref": "#/definitions/OverrideAction" + } + }, + "type": "object" + }, + "StatefulRuleGroupReference": { + "additionalProperties": false, + "properties": { + "Override": { + "$ref": "#/definitions/StatefulRuleGroupOverride" + }, + "Priority": { + "$ref": "#/definitions/Priority" + }, + "ResourceArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "ResourceArn" + ], + "type": "object" + }, + "StatelessRuleGroupReference": { + "additionalProperties": false, + "properties": { + "Priority": { + "$ref": "#/definitions/Priority" + }, + "ResourceArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "ResourceArn", + "Priority" + ], + "type": "object" + }, + "StreamExceptionPolicy": { + "enum": [ + "DROP", + "CONTINUE", + "REJECT" + ], + "type": "string" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "^.*$", + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 0, + "pattern": "^.*$", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "VariableDefinition": { + "minLength": 1, + "pattern": "^.*$", + "type": "string" + } + }, + "primaryIdentifier": [ + "/properties/FirewallPolicyArn" + ], + "properties": { + "Description": { + "maxLength": 512, + "minLength": 1, + "pattern": "^.*$", + "type": "string" + }, + "FirewallPolicy": { + "$ref": "#/definitions/FirewallPolicy" + }, + "FirewallPolicyArn": { + "$ref": "#/definitions/ResourceArn" + }, + "FirewallPolicyId": { + "maxLength": 36, + "minLength": 36, + "pattern": "^([0-9a-f]{8})-([0-9a-f]{4}-){3}([0-9a-f]{12})$", + "type": "string" + }, + "FirewallPolicyName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-]+$", + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + } + }, + "readOnlyProperties": [ + "/properties/FirewallPolicyArn", + "/properties/FirewallPolicyId" + ], + "required": [ + "FirewallPolicyName", + "FirewallPolicy" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-networkfirewall.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::NetworkFirewall::FirewallPolicy" +} diff --git a/src/cfnlint/data/schemas/providers/eu_central_2/aws-rds-dbinstance.json b/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-rds-dbcluster.json similarity index 51% rename from src/cfnlint/data/schemas/providers/eu_central_2/aws-rds-dbinstance.json rename to src/cfnlint/data/schemas/providers/ap_southeast_4/aws-rds-dbcluster.json index 9afcb2e658..46000178b5 100644 --- a/src/cfnlint/data/schemas/providers/eu_central_2/aws-rds-dbinstance.json +++ b/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-rds-dbcluster.json @@ -1,54 +1,29 @@ { "additionalProperties": false, "conditionalCreateOnlyProperties": [ - "/properties/AutoMinorVersionUpgrade", - "/properties/AvailabilityZone", - "/properties/BackupRetentionPeriod", - "/properties/DBClusterSnapshotIdentifier", - "/properties/DBParameterGroupName", - "/properties/DBSnapshotIdentifier", "/properties/Engine", - "/properties/MultiAZ", - "/properties/PerformanceInsightsKMSKeyId", - "/properties/PreferredMaintenanceWindow", - "/properties/RestoreTime", - "/properties/SourceDBClusterIdentifier", - "/properties/SourceDBInstanceAutomatedBackupsArn", - "/properties/SourceDBInstanceIdentifier", - "/properties/SourceDbiResourceId", - "/properties/StorageType", - "/properties/UseLatestRestorableTime" + "/properties/GlobalClusterIdentifier", + "/properties/MasterUsername" ], "createOnlyProperties": [ - "/properties/CharacterSetName", - "/properties/CustomIAMInstanceProfile", + "/properties/AvailabilityZones", "/properties/DBClusterIdentifier", - "/properties/DBInstanceIdentifier", - "/properties/DBName", "/properties/DBSubnetGroupName", + "/properties/DBSystemId", + "/properties/DatabaseName", + "/properties/EngineMode", "/properties/KmsKeyId", - "/properties/MasterUsername", - "/properties/NcharCharacterSetName", - "/properties/Port", + "/properties/PubliclyAccessible", + "/properties/RestoreToTime", + "/properties/RestoreType", + "/properties/SnapshotIdentifier", + "/properties/SourceDBClusterIdentifier", "/properties/SourceRegion", "/properties/StorageEncrypted", - "/properties/Timezone" + "/properties/UseLatestRestorableTime" ], "definitions": { - "CertificateDetails": { - "additionalProperties": false, - "properties": { - "CAIdentifier": { - "type": "string" - }, - "ValidTill": { - "format": "date-time", - "type": "string" - } - }, - "type": "object" - }, - "DBInstanceRole": { + "DBClusterRole": { "additionalProperties": false, "properties": { "FeatureName": { @@ -59,7 +34,6 @@ } }, "required": [ - "FeatureName", "RoleArn" ], "type": "object" @@ -70,9 +44,6 @@ "Address": { "type": "string" }, - "HostedZoneId": { - "type": "string" - }, "Port": { "type": "string" } @@ -91,22 +62,51 @@ }, "type": "object" }, - "ProcessorFeature": { + "ReadEndpoint": { "additionalProperties": false, "properties": { - "Name": { - "enum": [ - "coreCount", - "threadsPerCore" - ], + "Address": { "type": "string" + } + }, + "type": "object" + }, + "ScalingConfiguration": { + "additionalProperties": false, + "properties": { + "AutoPause": { + "type": "boolean" }, - "Value": { + "MaxCapacity": { + "type": "integer" + }, + "MinCapacity": { + "type": "integer" + }, + "SecondsBeforeTimeout": { + "type": "integer" + }, + "SecondsUntilAutoPause": { + "type": "integer" + }, + "TimeoutAction": { "type": "string" } }, "type": "object" }, + "ServerlessV2ScalingConfiguration": { + "additionalProperties": false, + "properties": { + "MaxCapacity": { + "type": "number" + }, + "MinCapacity": { + "type": "number" + } + }, + "type": "object" + }, "Tag": { "additionalProperties": false, "properties": { @@ -127,119 +127,62 @@ "type": "object" } }, - "dependencies": { - "KmsKeyId": { - "properties": { - "StorageEncrypted": { - "enum": [ - "true", - "True", - true - ] - } - }, - "required": [ - "StorageEncrypted" - ] - } - }, - "dependentExcluded": { - "SourceDBInstanceIdentifier": [ - "CharacterSetName", - "MasterUserPassword", - "MasterUsername", - "StorageEncrypted" - ] - }, - "deprecatedProperties": [ - "/properties/TdeCredentialArn", - "/properties/TdeCredentialPassword" - ], "primaryIdentifier": [ - "/properties/DBInstanceIdentifier" + "/properties/DBClusterIdentifier" ], "properties": { "AllocatedStorage": { - "pattern": "^[0-9]*$", - "type": "string" - }, - "AllowMajorVersionUpgrade": { - "type": "boolean" + "type": "integer" }, "AssociatedRoles": { "items": { - "$ref": "#/definitions/DBInstanceRole" + "$ref": "#/definitions/DBClusterRole" }, - "type": "array" + "type": "array", + "uniqueItems": true }, "AutoMinorVersionUpgrade": { "type": "boolean" }, - "AutomaticBackupReplicationKmsKeyId": { - "type": "string" - }, - "AutomaticBackupReplicationRegion": { - "type": "string" + "AvailabilityZones": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": true }, - "AvailabilityZone": { - "type": "string" + "BacktrackWindow": { + "minimum": 0, + "type": "integer" }, "BackupRetentionPeriod": { "default": 1, "maximum": 35, - "minimum": 0, + "minimum": 1, "type": "integer" }, - "CACertificateIdentifier": { - "type": "string" - }, - "CertificateDetails": { - "$ref": "#/definitions/CertificateDetails" - }, - "CertificateRotationRestart": { - "type": "boolean" - }, - "CharacterSetName": { - "type": "string" - }, "CopyTagsToSnapshot": { "type": "boolean" }, - "CustomIAMInstanceProfile": { + "DBClusterArn": { "type": "string" }, "DBClusterIdentifier": { - "type": "string" - }, - "DBClusterSnapshotIdentifier": { - "type": "string" - }, - "DBInstanceArn": { - "type": "string" - }, - "DBInstanceClass": { - "type": "string" - }, - "DBInstanceIdentifier": { "maxLength": 63, "minLength": 1, - "pattern": "^$|^[a-zA-Z]{1}(?:-?[a-zA-Z0-9]){0,62}$", + "pattern": "^[a-zA-Z]{1}(?:-?[a-zA-Z0-9]){0,62}$", "type": "string" }, - "DBName": { + "DBClusterInstanceClass": { "type": "string" }, - "DBParameterGroupName": { + "DBClusterParameterGroupName": { "type": "string" }, - "DBSecurityGroups": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true + "DBClusterResourceId": { + "type": "string" }, - "DBSnapshotIdentifier": { + "DBInstanceParameterGroupName": { "type": "string" }, "DBSubnetGroupName": { @@ -248,49 +191,35 @@ "DBSystemId": { "type": "string" }, - "DbiResourceId": { + "DatabaseName": { "type": "string" }, - "DedicatedLogVolume": { - "type": "boolean" - }, - "DeleteAutomatedBackups": { - "type": "boolean" - }, "DeletionProtection": { "type": "boolean" }, "Domain": { "type": "string" }, - "DomainAuthSecretArn": { - "type": "string" - }, - "DomainDnsIps": { - "items": { - "type": "string" - }, - "type": "array" - }, - "DomainFqdn": { - "type": "string" - }, "DomainIAMRoleName": { "type": "string" }, - "DomainOu": { - "type": "string" - }, "EnableCloudwatchLogsExports": { "items": { "type": "string" }, - "type": "array" + "type": "array", + "uniqueItems": true + }, + "EnableGlobalWriteForwarding": { + "type": "boolean" + }, + "EnableHttpEndpoint": { + "type": "boolean" }, "EnableIAMDatabaseAuthentication": { "type": "boolean" }, - "EnablePerformanceInsights": { + "EnableLocalWriteForwarding": { "type": "boolean" }, "Endpoint": { @@ -302,18 +231,24 @@ "EngineLifecycleSupport": { "type": "string" }, + "EngineMode": { + "type": "string" + }, "EngineVersion": { "type": "string" }, + "GlobalClusterIdentifier": { + "maxLength": 63, + "minLength": 0, + "pattern": "^$|^[a-zA-Z]{1}(?:-?[a-zA-Z0-9]){0,62}$", + "type": "string" + }, "Iops": { "type": "integer" }, "KmsKeyId": { "type": "string" }, - "LicenseModel": { - "type": "string" - }, "ManageMasterUserPassword": { "type": "boolean" }, @@ -324,69 +259,30 @@ "$ref": "#/definitions/MasterUserSecret" }, "MasterUsername": { - "maxLength": 128, "minLength": 1, - "pattern": "^[a-zA-Z][a-zA-Z0-9_]{0,127}$", + "pattern": "^[a-zA-Z]{1}[a-zA-Z0-9_]*$", "type": "string" }, - "MaxAllocatedStorage": { - "type": "integer" - }, "MonitoringInterval": { - "default": 0, "type": "integer" }, "MonitoringRoleArn": { "type": "string" }, - "MultiAZ": { - "type": "boolean" - }, - "NcharCharacterSetName": { - "type": "string" - }, "NetworkType": { "type": "string" }, - "OptionGroupName": { - "type": "string" + "PerformanceInsightsEnabled": { + "type": "boolean" }, - "PerformanceInsightsKMSKeyId": { + "PerformanceInsightsKmsKeyId": { "type": "string" }, "PerformanceInsightsRetentionPeriod": { - "enum": [ - 7, - 31, - 62, - 93, - 124, - 155, - 186, - 217, - 248, - 279, - 310, - 341, - 372, - 403, - 434, - 465, - 496, - 527, - 558, - 589, - 620, - 651, - 682, - 713, - 731 - ], "type": "integer" }, "Port": { - "pattern": "^\\d*$", - "type": "string" + "type": "integer" }, "PreferredBackupWindow": { "type": "string" @@ -394,38 +290,31 @@ "PreferredMaintenanceWindow": { "type": "string" }, - "ProcessorFeatures": { - "items": { - "$ref": "#/definitions/ProcessorFeature" - }, - "type": "array" - }, - "PromotionTier": { - "default": 1, - "maximum": 15, - "minimum": 0, - "type": "integer" - }, "PubliclyAccessible": { "type": "boolean" }, - "ReplicaMode": { - "type": "string" + "ReadEndpoint": { + "$ref": "#/definitions/ReadEndpoint" }, - "RestoreTime": { - "format": "date-time", + "ReplicationSourceIdentifier": { "type": "string" }, - "SourceDBClusterIdentifier": { + "RestoreToTime": { "type": "string" }, - "SourceDBInstanceAutomatedBackupsArn": { + "RestoreType": { "type": "string" }, - "SourceDBInstanceIdentifier": { + "ScalingConfiguration": { + "$ref": "#/definitions/ScalingConfiguration" + }, + "ServerlessV2ScalingConfiguration": { + "$ref": "#/definitions/ServerlessV2ScalingConfiguration" + }, + "SnapshotIdentifier": { "type": "string" }, - "SourceDbiResourceId": { + "SourceDBClusterIdentifier": { "type": "string" }, "SourceRegion": { @@ -445,25 +334,14 @@ "items": { "$ref": "#/definitions/Tag" }, + "maxItems": 50, "type": "array", - "uniqueItems": false - }, - "TdeCredentialArn": { - "type": "string" - }, - "TdeCredentialPassword": { - "type": "string" - }, - "Timezone": { - "type": "string" - }, - "UseDefaultProcessorFeatures": { - "type": "boolean" + "uniqueItems": true }, "UseLatestRestorableTime": { "type": "boolean" }, - "VPCSecurityGroups": { + "VpcSecurityGroupIds": { "items": { "type": "string" }, @@ -473,52 +351,47 @@ }, "propertyTransform": { "/properties/DBClusterIdentifier": "$lowercase(DBClusterIdentifier)", - "/properties/DBClusterSnapshotIdentifier": "$lowercase(DBClusterSnapshotIdentifier)", - "/properties/DBInstanceIdentifier": "$lowercase(DBInstanceIdentifier)", - "/properties/DBName": "$lowercase(DBName) $OR $uppercase(DBName)", - "/properties/DBParameterGroupName": "$lowercase(DBParameterGroupName)", - "/properties/DBSnapshotIdentifier": "$lowercase(DBSnapshotIdentifier)", + "/properties/DBClusterParameterGroupName": "$lowercase(DBClusterParameterGroupName)", "/properties/DBSubnetGroupName": "$lowercase(DBSubnetGroupName)", + "/properties/EnableHttpEndpoint": "$lowercase($string(EngineMode)) = 'serverless' ? EnableHttpEndpoint : ($lowercase($string(Engine)) in ['aurora-postgresql', 'aurora-mysql'] ? EnableHttpEndpoint : false )", "/properties/Engine": "$lowercase(Engine)", "/properties/EngineVersion": "$join([$string(EngineVersion), \".*\"])", "/properties/KmsKeyId": "$join([\"arn:(aws)[-]{0,1}[a-z]{0,2}[-]{0,1}[a-z]{0,3}:kms:[a-z]{2}[-]{1}[a-z]{3,10}[-]{0,1}[a-z]{0,10}[-]{1}[1-3]{1}:[0-9]{12}[:]{1}key\\/\", KmsKeyId])", "/properties/MasterUserSecret/KmsKeyId": "$join([\"arn:(aws)[-]{0,1}[a-z]{0,2}[-]{0,1}[a-z]{0,3}:kms:[a-z]{2}[-]{1}[a-z]{3,10}[-]{0,1}[a-z]{0,10}[-]{1}[1-3]{1}:[0-9]{12}[:]{1}key\\/\", MasterUserSecret.KmsKeyId])", "/properties/NetworkType": "$lowercase(NetworkType)", - "/properties/OptionGroupName": "$lowercase(OptionGroupName)", - "/properties/PerformanceInsightsKMSKeyId": "$join([\"arn:(aws)[-]{0,1}[a-z]{0,2}[-]{0,1}[a-z]{0,3}:kms:[a-z]{2}[-]{1}[a-z]{3,10}[-]{0,1}[a-z]{0,10}[-]{1}[1-3]{1}:[0-9]{12}[:]{1}key\\/\", PerformanceInsightsKMSKeyId])", + "/properties/PerformanceInsightsKmsKeyId": "$join([\"arn:(aws)[-]{0,1}[a-z]{0,2}[-]{0,1}[a-z]{0,3}:kms:[a-z]{2}[-]{1}[a-z]{3,10}[-]{0,1}[a-z]{0,10}[-]{1}[1-3]{1}:[0-9]{12}[:]{1}key\\/\", PerformanceInsightsKmsKeyId])", "/properties/PreferredMaintenanceWindow": "$lowercase(PreferredMaintenanceWindow)", - "/properties/SourceDBInstanceAutomatedBackupsArn": "$lowercase(SourceDBInstanceAutomatedBackupsArn)", - "/properties/SourceDBInstanceIdentifier": "$lowercase(SourceDBInstanceIdentifier)", + "/properties/SnapshotIdentifier": "$lowercase(SnapshotIdentifier)", + "/properties/SourceDBClusterIdentifier": "$lowercase(SourceDBClusterIdentifier)", "/properties/StorageType": "$lowercase(StorageType)" }, "readOnlyProperties": [ + "/properties/DBClusterArn", + "/properties/DBClusterResourceId", + "/properties/Endpoint", "/properties/Endpoint/Address", "/properties/Endpoint/Port", - "/properties/Endpoint/HostedZoneId", - "/properties/DbiResourceId", - "/properties/DBInstanceArn", - "/properties/DBSystemId", + "/properties/ReadEndpoint/Address", "/properties/MasterUserSecret/SecretArn", - "/properties/CertificateDetails/CAIdentifier", - "/properties/CertificateDetails/ValidTill" + "/properties/StorageThroughput" ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", - "typeName": "AWS::RDS::DBInstance", + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-rds", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::RDS::DBCluster", "writeOnlyProperties": [ - "/properties/AllowMajorVersionUpgrade", - "/properties/AutomaticBackupReplicationKmsKeyId", - "/properties/CertificateRotationRestart", - "/properties/DBSnapshotIdentifier", - "/properties/DeleteAutomatedBackups", + "/properties/DBInstanceParameterGroupName", "/properties/MasterUserPassword", - "/properties/Port", - "/properties/RestoreTime", - "/properties/SourceDBInstanceAutomatedBackupsArn", - "/properties/SourceDBInstanceIdentifier", - "/properties/SourceDbiResourceId", + "/properties/RestoreToTime", + "/properties/RestoreType", + "/properties/SnapshotIdentifier", + "/properties/SourceDBClusterIdentifier", "/properties/SourceRegion", - "/properties/TdeCredentialPassword", - "/properties/UseDefaultProcessorFeatures", "/properties/UseLatestRestorableTime" ] } diff --git a/src/cfnlint/data/schemas/providers/eu_central_2/aws-rds-dbparametergroup.json b/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-rds-dbsubnetgroup.json similarity index 58% rename from src/cfnlint/data/schemas/providers/eu_central_2/aws-rds-dbparametergroup.json rename to src/cfnlint/data/schemas/providers/ap_southeast_4/aws-rds-dbsubnetgroup.json index 8d14cf78b9..d228afbbad 100644 --- a/src/cfnlint/data/schemas/providers/eu_central_2/aws-rds-dbparametergroup.json +++ b/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-rds-dbsubnetgroup.json @@ -1,9 +1,7 @@ { "additionalProperties": false, "createOnlyProperties": [ - "/properties/DBParameterGroupName", - "/properties/Description", - "/properties/Family" + "/properties/DBSubnetGroupName" ], "definitions": { "Tag": { @@ -27,25 +25,22 @@ } }, "primaryIdentifier": [ - "/properties/DBParameterGroupName" + "/properties/DBSubnetGroupName" ], "properties": { - "DBParameterGroupName": { - "pattern": "^[a-zA-Z]{1}(?:-?[a-zA-Z0-9])*$", + "DBSubnetGroupDescription": { "type": "string" }, - "Description": { + "DBSubnetGroupName": { "type": "string" }, - "Family": { - "type": "string" - }, - "Parameters": { - "format": "json", - "type": [ - "object", - "string" - ] + "SubnetIds": { + "insertionOrder": false, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false }, "Tags": { "insertionOrder": false, @@ -58,12 +53,19 @@ } }, "propertyTransform": { - "/properties/DBParameterGroupName": "$lowercase(DBParameterGroupName)" + "/properties/DBSubnetGroupName": "$lowercase(DBSubnetGroupName)" }, "required": [ - "Family", - "Description" + "DBSubnetGroupDescription", + "SubnetIds" ], "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-rds", - "typeName": "AWS::RDS::DBParameterGroup" + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::RDS::DBSubnetGroup" } diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_5/__init__.py b/src/cfnlint/data/schemas/providers/ap_southeast_5/__init__.py index 0aa9554d72..8c391bbfcd 100644 --- a/src/cfnlint/data/schemas/providers/ap_southeast_5/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_southeast_5/__init__.py @@ -490,9 +490,7 @@ "aws-ecs-cluster.json", "aws-ecs-clustercapacityproviderassociations.json", "aws-ecs-primarytaskset.json", - "aws-ecs-service.json", "aws-ecs-taskdefinition.json", - "aws-ecs-taskset.json", "aws-efs-accesspoint.json", "aws-efs-filesystem.json", "aws-efs-mounttarget.json", @@ -539,7 +537,6 @@ "aws-imagebuilder-imagerecipe.json", "aws-imagebuilder-infrastructureconfiguration.json", "aws-imagebuilder-workflow.json", - "aws-kinesis-stream.json", "aws-kinesisfirehose-deliverystream.json", "aws-kms-alias.json", "aws-kms-key.json", @@ -572,13 +569,11 @@ "aws-organizations-resourcepolicy.json", "aws-ram-permission.json", "aws-ram-resourceshare.json", - "aws-rds-dbcluster.json", "aws-rds-dbclusterparametergroup.json", "aws-rds-dbinstance.json", "aws-rds-dbparametergroup.json", "aws-rds-dbsecuritygroup.json", "aws-rds-dbsecuritygroupingress.json", - "aws-rds-dbsubnetgroup.json", "aws-rds-eventsubscription.json", "aws-rds-globalcluster.json", "aws-rds-optiongroup.json", @@ -605,6 +600,7 @@ "aws-secretsmanager-resourcepolicy.json", "aws-secretsmanager-rotationschedule.json", "aws-secretsmanager-secret.json", + "aws-secretsmanager-secrettargetattachment.json", "aws-securityhub-hub.json", "aws-securityhub-organizationconfiguration.json", "aws-servicediscovery-httpnamespace.json", diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_5/aws-ecs-service.json b/src/cfnlint/data/schemas/providers/ap_southeast_5/aws-ecs-service.json new file mode 100644 index 0000000000..ba7baa1de3 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_5/aws-ecs-service.json @@ -0,0 +1,585 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/DeploymentController", + "/properties/LaunchType", + "/properties/Role", + "/properties/SchedulingStrategy", + "/properties/ServiceName" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "CapacityProviderStrategyItem": { + "additionalProperties": false, + "properties": { + "Base": { + "type": "integer" + }, + "CapacityProvider": { + "type": "string" + }, + "Weight": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentAlarms": { + "additionalProperties": false, + "properties": { + "AlarmNames": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "AlarmNames", + "Rollback", + "Enable" + ], + "type": "object" + }, + "DeploymentCircuitBreaker": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "Enable", + "Rollback" + ], + "type": "object" + }, + "DeploymentConfiguration": { + "additionalProperties": false, + "properties": { + "Alarms": { + "$ref": "#/definitions/DeploymentAlarms" + }, + "DeploymentCircuitBreaker": { + "$ref": "#/definitions/DeploymentCircuitBreaker" + }, + "MaximumPercent": { + "type": "integer" + }, + "MinimumHealthyPercent": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentController": { + "additionalProperties": false, + "properties": { + "Type": { + "enum": [ + "CODE_DEPLOY", + "ECS", + "EXTERNAL" + ], + "type": "string" + } + }, + "type": "object" + }, + "EBSTagSpecification": { + "additionalProperties": false, + "properties": { + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "ResourceType": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "ResourceType" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "LoadBalancerName": { + "type": "string" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "LogConfiguration": { + "additionalProperties": false, + "properties": { + "LogDriver": { + "type": "string" + }, + "Options": { + "additionalProperties": false, + "patternProperties": { + ".{1,}": { + "type": "string" + } + }, + "type": "object" + }, + "SecretOptions": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Secret" + }, + "type": "array" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsvpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "PlacementConstraint": { + "additionalProperties": false, + "properties": { + "Expression": { + "type": "string" + }, + "Type": { + "enum": [ + "distinctInstance", + "memberOf" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "PlacementStrategy": { + "additionalProperties": false, + "properties": { + "Field": { + "type": "string" + }, + "Type": { + "enum": [ + "binpack", + "random", + "spread" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "Secret": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "ValueFrom": { + "type": "string" + } + }, + "required": [ + "Name", + "ValueFrom" + ], + "type": "object" + }, + "ServiceConnectClientAlias": { + "additionalProperties": false, + "properties": { + "DnsName": { + "type": "string" + }, + "Port": { + "type": "integer" + } + }, + "required": [ + "Port" + ], + "type": "object" + }, + "ServiceConnectConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + }, + "LogConfiguration": { + "$ref": "#/definitions/LogConfiguration" + }, + "Namespace": { + "type": "string" + }, + "Services": { + "items": { + "$ref": "#/definitions/ServiceConnectService" + }, + "type": "array" + } + }, + "required": [ + "Enabled" + ], + "type": "object" + }, + "ServiceConnectService": { + "additionalProperties": false, + "properties": { + "ClientAliases": { + "items": { + "$ref": "#/definitions/ServiceConnectClientAlias" + }, + "type": "array" + }, + "DiscoveryName": { + "type": "string" + }, + "IngressPortOverride": { + "type": "integer" + }, + "PortName": { + "type": "string" + }, + "Timeout": { + "$ref": "#/definitions/TimeoutConfiguration" + }, + "Tls": { + "$ref": "#/definitions/ServiceConnectTlsConfiguration" + } + }, + "required": [ + "PortName" + ], + "type": "object" + }, + "ServiceConnectTlsCertificateAuthority": { + "additionalProperties": false, + "properties": { + "AwsPcaAuthorityArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceConnectTlsConfiguration": { + "additionalProperties": false, + "properties": { + "IssuerCertificateAuthority": { + "$ref": "#/definitions/ServiceConnectTlsCertificateAuthority" + }, + "KmsKey": { + "type": "string" + }, + "RoleArn": { + "type": "string" + } + }, + "required": [ + "IssuerCertificateAuthority" + ], + "type": "object" + }, + "ServiceManagedEBSVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "Encrypted": { + "type": "boolean" + }, + "FilesystemType": { + "type": "string" + }, + "Iops": { + "type": "integer" + }, + "KmsKeyId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SizeInGiB": { + "type": "integer" + }, + "SnapshotId": { + "type": "string" + }, + "TagSpecifications": { + "items": { + "$ref": "#/definitions/EBSTagSpecification" + }, + "type": "array" + }, + "Throughput": { + "type": "integer" + }, + "VolumeType": { + "type": "string" + } + }, + "required": [ + "RoleArn" + ], + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "ManagedEBSVolume": { + "$ref": "#/definitions/ServiceManagedEBSVolumeConfiguration" + }, + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + }, + "TimeoutConfiguration": { + "additionalProperties": false, + "properties": { + "IdleTimeoutSeconds": { + "type": "integer" + }, + "PerRequestTimeoutSeconds": { + "type": "integer" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/ServiceArn", + "/properties/Cluster" + ], + "properties": { + "CapacityProviderStrategy": { + "items": { + "$ref": "#/definitions/CapacityProviderStrategyItem" + }, + "type": "array" + }, + "Cluster": { + "type": "string" + }, + "DeploymentConfiguration": { + "$ref": "#/definitions/DeploymentConfiguration" + }, + "DeploymentController": { + "$ref": "#/definitions/DeploymentController" + }, + "DesiredCount": { + "type": "integer" + }, + "EnableECSManagedTags": { + "type": "boolean" + }, + "EnableExecuteCommand": { + "type": "boolean" + }, + "HealthCheckGracePeriodSeconds": { + "type": "integer" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE", + "EXTERNAL" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "Name": { + "type": "string" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlacementConstraints": { + "items": { + "$ref": "#/definitions/PlacementConstraint" + }, + "type": "array" + }, + "PlacementStrategies": { + "items": { + "$ref": "#/definitions/PlacementStrategy" + }, + "type": "array" + }, + "PlatformVersion": { + "default": "LATEST", + "type": "string" + }, + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "Role": { + "type": "string" + }, + "SchedulingStrategy": { + "enum": [ + "DAEMON", + "REPLICA" + ], + "type": "string" + }, + "ServiceArn": { + "type": "string" + }, + "ServiceConnectConfiguration": { + "$ref": "#/definitions/ServiceConnectConfiguration" + }, + "ServiceName": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + }, + "VolumeConfigurations": { + "items": { + "$ref": "#/definitions/ServiceVolumeConfiguration" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/ServiceArn", + "/properties/Name" + ], + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::Service", + "writeOnlyProperties": [ + "/properties/ServiceConnectConfiguration", + "/properties/VolumeConfigurations" + ] +} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_5/aws-ecs-taskset.json b/src/cfnlint/data/schemas/providers/ap_southeast_5/aws-ecs-taskset.json new file mode 100644 index 0000000000..3491488499 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_5/aws-ecs-taskset.json @@ -0,0 +1,191 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/ExternalId", + "/properties/LaunchType", + "/properties/LoadBalancers", + "/properties/NetworkConfiguration", + "/properties/PlatformVersion", + "/properties/Service", + "/properties/ServiceRegistries", + "/properties/TaskDefinition" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "maxItems": 5, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "maxItems": 16, + "type": "array" + } + }, + "required": [ + "Subnets" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsVpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "Scale": { + "additionalProperties": false, + "properties": { + "Unit": { + "enum": [ + "PERCENT" + ], + "type": "string" + }, + "Value": { + "maximum": 100, + "minimum": 0, + "type": "number" + } + }, + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Cluster", + "/properties/Service", + "/properties/Id" + ], + "properties": { + "Cluster": { + "type": "string" + }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlatformVersion": { + "type": "string" + }, + "Scale": { + "$ref": "#/definitions/Scale" + }, + "Service": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "Cluster", + "Service", + "TaskDefinition" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-ecs.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::TaskSet" +} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_5/aws-kinesis-stream.json b/src/cfnlint/data/schemas/providers/ap_southeast_5/aws-kinesis-stream.json new file mode 100644 index 0000000000..be1bc65c07 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_5/aws-kinesis-stream.json @@ -0,0 +1,133 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "StreamEncryption": { + "additionalProperties": false, + "properties": { + "EncryptionType": { + "enum": [ + "KMS" + ], + "type": "string" + }, + "KeyId": { + "anyOf": [ + { + "relationshipRef": { + "propertyPath": "/properties/Arn", + "typeName": "AWS::KMS::Key" + } + }, + { + "relationshipRef": { + "propertyPath": "/properties/KeyId", + "typeName": "AWS::KMS::Key" + } + } + ], + "maxLength": 2048, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "EncryptionType", + "KeyId" + ], + "type": "object" + }, + "StreamModeDetails": { + "additionalProperties": false, + "properties": { + "StreamMode": { + "enum": [ + "ON_DEMAND", + "PROVISIONED" + ], + "type": "string" + } + }, + "required": [ + "StreamMode" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Name" + ], + "properties": { + "Arn": { + "type": "string" + }, + "Name": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9_.-]+$", + "type": "string" + }, + "RetentionPeriodHours": { + "maximum": 8760, + "minimum": 1, + "type": "integer" + }, + "ShardCount": { + "maximum": 100000, + "minimum": 1, + "type": "integer" + }, + "StreamEncryption": { + "$ref": "#/definitions/StreamEncryption" + }, + "StreamModeDetails": { + "$ref": "#/definitions/StreamModeDetails", + "default": { + "StreamMode": "PROVISIONED" + } + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 50, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-kinesis.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Kinesis::Stream" +} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_5/aws-rds-dbcluster.json b/src/cfnlint/data/schemas/providers/ap_southeast_5/aws-rds-dbcluster.json new file mode 100644 index 0000000000..46000178b5 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_5/aws-rds-dbcluster.json @@ -0,0 +1,397 @@ +{ + "additionalProperties": false, + "conditionalCreateOnlyProperties": [ + "/properties/Engine", + "/properties/GlobalClusterIdentifier", + "/properties/MasterUsername" + ], + "createOnlyProperties": [ + "/properties/AvailabilityZones", + "/properties/DBClusterIdentifier", + "/properties/DBSubnetGroupName", + "/properties/DBSystemId", + "/properties/DatabaseName", + "/properties/EngineMode", + "/properties/KmsKeyId", + "/properties/PubliclyAccessible", + "/properties/RestoreToTime", + "/properties/RestoreType", + "/properties/SnapshotIdentifier", + "/properties/SourceDBClusterIdentifier", + "/properties/SourceRegion", + "/properties/StorageEncrypted", + "/properties/UseLatestRestorableTime" + ], + "definitions": { + "DBClusterRole": { + "additionalProperties": false, + "properties": { + "FeatureName": { + "type": "string" + }, + "RoleArn": { + "type": "string" + } + }, + "required": [ + "RoleArn" + ], + "type": "object" + }, + "Endpoint": { + "additionalProperties": false, + "properties": { + "Address": { + "type": "string" + }, + "Port": { + "type": "string" + } + }, + "type": "object" + }, + "MasterUserSecret": { + "additionalProperties": false, + "properties": { + "KmsKeyId": { + "type": "string" + }, + "SecretArn": { + "type": "string" + } + }, + "type": "object" + }, + "ReadEndpoint": { + "additionalProperties": false, + "properties": { + "Address": { + "type": "string" + } + }, + "type": "object" + }, + "ScalingConfiguration": { + "additionalProperties": false, + "properties": { + "AutoPause": { + "type": "boolean" + }, + "MaxCapacity": { + "type": "integer" + }, + "MinCapacity": { + "type": "integer" + }, + "SecondsBeforeTimeout": { + "type": "integer" + }, + "SecondsUntilAutoPause": { + "type": "integer" + }, + "TimeoutAction": { + "type": "string" + } + }, + "type": "object" + }, + "ServerlessV2ScalingConfiguration": { + "additionalProperties": false, + "properties": { + "MaxCapacity": { + "type": "number" + }, + "MinCapacity": { + "type": "number" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/DBClusterIdentifier" + ], + "properties": { + "AllocatedStorage": { + "type": "integer" + }, + "AssociatedRoles": { + "items": { + "$ref": "#/definitions/DBClusterRole" + }, + "type": "array", + "uniqueItems": true + }, + "AutoMinorVersionUpgrade": { + "type": "boolean" + }, + "AvailabilityZones": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "BacktrackWindow": { + "minimum": 0, + "type": "integer" + }, + "BackupRetentionPeriod": { + "default": 1, + "maximum": 35, + "minimum": 1, + "type": "integer" + }, + "CopyTagsToSnapshot": { + "type": "boolean" + }, + "DBClusterArn": { + "type": "string" + }, + "DBClusterIdentifier": { + "maxLength": 63, + "minLength": 1, + "pattern": "^[a-zA-Z]{1}(?:-?[a-zA-Z0-9]){0,62}$", + "type": "string" + }, + "DBClusterInstanceClass": { + "type": "string" + }, + "DBClusterParameterGroupName": { + "type": "string" + }, + "DBClusterResourceId": { + "type": "string" + }, + "DBInstanceParameterGroupName": { + "type": "string" + }, + "DBSubnetGroupName": { + "type": "string" + }, + "DBSystemId": { + "type": "string" + }, + "DatabaseName": { + "type": "string" + }, + "DeletionProtection": { + "type": "boolean" + }, + "Domain": { + "type": "string" + }, + "DomainIAMRoleName": { + "type": "string" + }, + "EnableCloudwatchLogsExports": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "EnableGlobalWriteForwarding": { + "type": "boolean" + }, + "EnableHttpEndpoint": { + "type": "boolean" + }, + "EnableIAMDatabaseAuthentication": { + "type": "boolean" + }, + "EnableLocalWriteForwarding": { + "type": "boolean" + }, + "Endpoint": { + "$ref": "#/definitions/Endpoint" + }, + "Engine": { + "type": "string" + }, + "EngineLifecycleSupport": { + "type": "string" + }, + "EngineMode": { + "type": "string" + }, + "EngineVersion": { + "type": "string" + }, + "GlobalClusterIdentifier": { + "maxLength": 63, + "minLength": 0, + "pattern": "^$|^[a-zA-Z]{1}(?:-?[a-zA-Z0-9]){0,62}$", + "type": "string" + }, + "Iops": { + "type": "integer" + }, + "KmsKeyId": { + "type": "string" + }, + "ManageMasterUserPassword": { + "type": "boolean" + }, + "MasterUserPassword": { + "type": "string" + }, + "MasterUserSecret": { + "$ref": "#/definitions/MasterUserSecret" + }, + "MasterUsername": { + "minLength": 1, + "pattern": "^[a-zA-Z]{1}[a-zA-Z0-9_]*$", + "type": "string" + }, + "MonitoringInterval": { + "type": "integer" + }, + "MonitoringRoleArn": { + "type": "string" + }, + "NetworkType": { + "type": "string" + }, + "PerformanceInsightsEnabled": { + "type": "boolean" + }, + "PerformanceInsightsKmsKeyId": { + "type": "string" + }, + "PerformanceInsightsRetentionPeriod": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "PreferredBackupWindow": { + "type": "string" + }, + "PreferredMaintenanceWindow": { + "type": "string" + }, + "PubliclyAccessible": { + "type": "boolean" + }, + "ReadEndpoint": { + "$ref": "#/definitions/ReadEndpoint" + }, + "ReplicationSourceIdentifier": { + "type": "string" + }, + "RestoreToTime": { + "type": "string" + }, + "RestoreType": { + "type": "string" + }, + "ScalingConfiguration": { + "$ref": "#/definitions/ScalingConfiguration" + }, + "ServerlessV2ScalingConfiguration": { + "$ref": "#/definitions/ServerlessV2ScalingConfiguration" + }, + "SnapshotIdentifier": { + "type": "string" + }, + "SourceDBClusterIdentifier": { + "type": "string" + }, + "SourceRegion": { + "type": "string" + }, + "StorageEncrypted": { + "type": "boolean" + }, + "StorageThroughput": { + "type": "integer" + }, + "StorageType": { + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 50, + "type": "array", + "uniqueItems": true + }, + "UseLatestRestorableTime": { + "type": "boolean" + }, + "VpcSecurityGroupIds": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": true + } + }, + "propertyTransform": { + "/properties/DBClusterIdentifier": "$lowercase(DBClusterIdentifier)", + "/properties/DBClusterParameterGroupName": "$lowercase(DBClusterParameterGroupName)", + "/properties/DBSubnetGroupName": "$lowercase(DBSubnetGroupName)", + "/properties/EnableHttpEndpoint": "$lowercase($string(EngineMode)) = 'serverless' ? EnableHttpEndpoint : ($lowercase($string(Engine)) in ['aurora-postgresql', 'aurora-mysql'] ? EnableHttpEndpoint : false )", + "/properties/Engine": "$lowercase(Engine)", + "/properties/EngineVersion": "$join([$string(EngineVersion), \".*\"])", + "/properties/KmsKeyId": "$join([\"arn:(aws)[-]{0,1}[a-z]{0,2}[-]{0,1}[a-z]{0,3}:kms:[a-z]{2}[-]{1}[a-z]{3,10}[-]{0,1}[a-z]{0,10}[-]{1}[1-3]{1}:[0-9]{12}[:]{1}key\\/\", KmsKeyId])", + "/properties/MasterUserSecret/KmsKeyId": "$join([\"arn:(aws)[-]{0,1}[a-z]{0,2}[-]{0,1}[a-z]{0,3}:kms:[a-z]{2}[-]{1}[a-z]{3,10}[-]{0,1}[a-z]{0,10}[-]{1}[1-3]{1}:[0-9]{12}[:]{1}key\\/\", MasterUserSecret.KmsKeyId])", + "/properties/NetworkType": "$lowercase(NetworkType)", + "/properties/PerformanceInsightsKmsKeyId": "$join([\"arn:(aws)[-]{0,1}[a-z]{0,2}[-]{0,1}[a-z]{0,3}:kms:[a-z]{2}[-]{1}[a-z]{3,10}[-]{0,1}[a-z]{0,10}[-]{1}[1-3]{1}:[0-9]{12}[:]{1}key\\/\", PerformanceInsightsKmsKeyId])", + "/properties/PreferredMaintenanceWindow": "$lowercase(PreferredMaintenanceWindow)", + "/properties/SnapshotIdentifier": "$lowercase(SnapshotIdentifier)", + "/properties/SourceDBClusterIdentifier": "$lowercase(SourceDBClusterIdentifier)", + "/properties/StorageType": "$lowercase(StorageType)" + }, + "readOnlyProperties": [ + "/properties/DBClusterArn", + "/properties/DBClusterResourceId", + "/properties/Endpoint", + "/properties/Endpoint/Address", + "/properties/Endpoint/Port", + "/properties/ReadEndpoint/Address", + "/properties/MasterUserSecret/SecretArn", + "/properties/StorageThroughput" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-rds", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::RDS::DBCluster", + "writeOnlyProperties": [ + "/properties/DBInstanceParameterGroupName", + "/properties/MasterUserPassword", + "/properties/RestoreToTime", + "/properties/RestoreType", + "/properties/SnapshotIdentifier", + "/properties/SourceDBClusterIdentifier", + "/properties/SourceRegion", + "/properties/UseLatestRestorableTime" + ] +} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_5/aws-rds-dbsubnetgroup.json b/src/cfnlint/data/schemas/providers/ap_southeast_5/aws-rds-dbsubnetgroup.json new file mode 100644 index 0000000000..d228afbbad --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_5/aws-rds-dbsubnetgroup.json @@ -0,0 +1,71 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/DBSubnetGroupName" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/DBSubnetGroupName" + ], + "properties": { + "DBSubnetGroupDescription": { + "type": "string" + }, + "DBSubnetGroupName": { + "type": "string" + }, + "SubnetIds": { + "insertionOrder": false, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 50, + "type": "array", + "uniqueItems": false + } + }, + "propertyTransform": { + "/properties/DBSubnetGroupName": "$lowercase(DBSubnetGroupName)" + }, + "required": [ + "DBSubnetGroupDescription", + "SubnetIds" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-rds", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::RDS::DBSubnetGroup" +} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_5/aws-secretsmanager-secrettargetattachment.json b/src/cfnlint/data/schemas/providers/ap_southeast_5/aws-secretsmanager-secrettargetattachment.json deleted file mode 100644 index 8b5501d290..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_southeast_5/aws-secretsmanager-secrettargetattachment.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "additionalProperties": false, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "Id": { - "type": "string" - }, - "SecretId": { - "type": "string" - }, - "TargetId": { - "type": "string" - }, - "TargetType": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "SecretId", - "TargetType", - "TargetId" - ], - "typeName": "AWS::SecretsManager::SecretTargetAttachment" -} diff --git a/src/cfnlint/data/schemas/providers/ca_central_1/__init__.py b/src/cfnlint/data/schemas/providers/ca_central_1/__init__.py index 0737b21a1f..57bd12edeb 100644 --- a/src/cfnlint/data/schemas/providers/ca_central_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/ca_central_1/__init__.py @@ -605,6 +605,7 @@ "AWS::Kendra::Faq", "AWS::Kendra::Index", "AWS::KendraRanking::ExecutionPlan", + "AWS::Kinesis::ResourcePolicy", "AWS::Kinesis::Stream", "AWS::Kinesis::StreamConsumer", "AWS::KinesisAnalytics::Application", @@ -1507,9 +1508,7 @@ "aws-ecs-cluster.json", "aws-ecs-clustercapacityproviderassociations.json", "aws-ecs-primarytaskset.json", - "aws-ecs-service.json", "aws-ecs-taskdefinition.json", - "aws-ecs-taskset.json", "aws-efs-accesspoint.json", "aws-efs-filesystem.json", "aws-efs-mounttarget.json", @@ -1689,6 +1688,7 @@ "aws-kendra-faq.json", "aws-kendra-index.json", "aws-kendraranking-executionplan.json", + "aws-kinesis-resourcepolicy.json", "aws-kinesis-stream.json", "aws-kinesis-streamconsumer.json", "aws-kinesisanalytics-applicationoutput.json", @@ -1809,7 +1809,6 @@ "aws-neptune-dbsubnetgroup.json", "aws-neptune-eventsubscription.json", "aws-networkfirewall-firewall.json", - "aws-networkfirewall-firewallpolicy.json", "aws-networkfirewall-loggingconfiguration.json", "aws-networkfirewall-rulegroup.json", "aws-networkfirewall-tlsinspectionconfiguration.json", @@ -1986,6 +1985,7 @@ "aws-sagemaker-endpointconfig.json", "aws-sagemaker-featuregroup.json", "aws-sagemaker-image.json", + "aws-sagemaker-imageversion.json", "aws-sagemaker-inferencecomponent.json", "aws-sagemaker-inferenceexperiment.json", "aws-sagemaker-mlflowtrackingserver.json", diff --git a/src/cfnlint/data/schemas/providers/ca_central_1/aws-ecs-service.json b/src/cfnlint/data/schemas/providers/ca_central_1/aws-ecs-service.json new file mode 100644 index 0000000000..ba7baa1de3 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ca_central_1/aws-ecs-service.json @@ -0,0 +1,585 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/DeploymentController", + "/properties/LaunchType", + "/properties/Role", + "/properties/SchedulingStrategy", + "/properties/ServiceName" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "CapacityProviderStrategyItem": { + "additionalProperties": false, + "properties": { + "Base": { + "type": "integer" + }, + "CapacityProvider": { + "type": "string" + }, + "Weight": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentAlarms": { + "additionalProperties": false, + "properties": { + "AlarmNames": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "AlarmNames", + "Rollback", + "Enable" + ], + "type": "object" + }, + "DeploymentCircuitBreaker": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "Enable", + "Rollback" + ], + "type": "object" + }, + "DeploymentConfiguration": { + "additionalProperties": false, + "properties": { + "Alarms": { + "$ref": "#/definitions/DeploymentAlarms" + }, + "DeploymentCircuitBreaker": { + "$ref": "#/definitions/DeploymentCircuitBreaker" + }, + "MaximumPercent": { + "type": "integer" + }, + "MinimumHealthyPercent": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentController": { + "additionalProperties": false, + "properties": { + "Type": { + "enum": [ + "CODE_DEPLOY", + "ECS", + "EXTERNAL" + ], + "type": "string" + } + }, + "type": "object" + }, + "EBSTagSpecification": { + "additionalProperties": false, + "properties": { + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "ResourceType": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "ResourceType" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "LoadBalancerName": { + "type": "string" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "LogConfiguration": { + "additionalProperties": false, + "properties": { + "LogDriver": { + "type": "string" + }, + "Options": { + "additionalProperties": false, + "patternProperties": { + ".{1,}": { + "type": "string" + } + }, + "type": "object" + }, + "SecretOptions": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Secret" + }, + "type": "array" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsvpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "PlacementConstraint": { + "additionalProperties": false, + "properties": { + "Expression": { + "type": "string" + }, + "Type": { + "enum": [ + "distinctInstance", + "memberOf" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "PlacementStrategy": { + "additionalProperties": false, + "properties": { + "Field": { + "type": "string" + }, + "Type": { + "enum": [ + "binpack", + "random", + "spread" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "Secret": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "ValueFrom": { + "type": "string" + } + }, + "required": [ + "Name", + "ValueFrom" + ], + "type": "object" + }, + "ServiceConnectClientAlias": { + "additionalProperties": false, + "properties": { + "DnsName": { + "type": "string" + }, + "Port": { + "type": "integer" + } + }, + "required": [ + "Port" + ], + "type": "object" + }, + "ServiceConnectConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + }, + "LogConfiguration": { + "$ref": "#/definitions/LogConfiguration" + }, + "Namespace": { + "type": "string" + }, + "Services": { + "items": { + "$ref": "#/definitions/ServiceConnectService" + }, + "type": "array" + } + }, + "required": [ + "Enabled" + ], + "type": "object" + }, + "ServiceConnectService": { + "additionalProperties": false, + "properties": { + "ClientAliases": { + "items": { + "$ref": "#/definitions/ServiceConnectClientAlias" + }, + "type": "array" + }, + "DiscoveryName": { + "type": "string" + }, + "IngressPortOverride": { + "type": "integer" + }, + "PortName": { + "type": "string" + }, + "Timeout": { + "$ref": "#/definitions/TimeoutConfiguration" + }, + "Tls": { + "$ref": "#/definitions/ServiceConnectTlsConfiguration" + } + }, + "required": [ + "PortName" + ], + "type": "object" + }, + "ServiceConnectTlsCertificateAuthority": { + "additionalProperties": false, + "properties": { + "AwsPcaAuthorityArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceConnectTlsConfiguration": { + "additionalProperties": false, + "properties": { + "IssuerCertificateAuthority": { + "$ref": "#/definitions/ServiceConnectTlsCertificateAuthority" + }, + "KmsKey": { + "type": "string" + }, + "RoleArn": { + "type": "string" + } + }, + "required": [ + "IssuerCertificateAuthority" + ], + "type": "object" + }, + "ServiceManagedEBSVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "Encrypted": { + "type": "boolean" + }, + "FilesystemType": { + "type": "string" + }, + "Iops": { + "type": "integer" + }, + "KmsKeyId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SizeInGiB": { + "type": "integer" + }, + "SnapshotId": { + "type": "string" + }, + "TagSpecifications": { + "items": { + "$ref": "#/definitions/EBSTagSpecification" + }, + "type": "array" + }, + "Throughput": { + "type": "integer" + }, + "VolumeType": { + "type": "string" + } + }, + "required": [ + "RoleArn" + ], + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "ManagedEBSVolume": { + "$ref": "#/definitions/ServiceManagedEBSVolumeConfiguration" + }, + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + }, + "TimeoutConfiguration": { + "additionalProperties": false, + "properties": { + "IdleTimeoutSeconds": { + "type": "integer" + }, + "PerRequestTimeoutSeconds": { + "type": "integer" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/ServiceArn", + "/properties/Cluster" + ], + "properties": { + "CapacityProviderStrategy": { + "items": { + "$ref": "#/definitions/CapacityProviderStrategyItem" + }, + "type": "array" + }, + "Cluster": { + "type": "string" + }, + "DeploymentConfiguration": { + "$ref": "#/definitions/DeploymentConfiguration" + }, + "DeploymentController": { + "$ref": "#/definitions/DeploymentController" + }, + "DesiredCount": { + "type": "integer" + }, + "EnableECSManagedTags": { + "type": "boolean" + }, + "EnableExecuteCommand": { + "type": "boolean" + }, + "HealthCheckGracePeriodSeconds": { + "type": "integer" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE", + "EXTERNAL" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "Name": { + "type": "string" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlacementConstraints": { + "items": { + "$ref": "#/definitions/PlacementConstraint" + }, + "type": "array" + }, + "PlacementStrategies": { + "items": { + "$ref": "#/definitions/PlacementStrategy" + }, + "type": "array" + }, + "PlatformVersion": { + "default": "LATEST", + "type": "string" + }, + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "Role": { + "type": "string" + }, + "SchedulingStrategy": { + "enum": [ + "DAEMON", + "REPLICA" + ], + "type": "string" + }, + "ServiceArn": { + "type": "string" + }, + "ServiceConnectConfiguration": { + "$ref": "#/definitions/ServiceConnectConfiguration" + }, + "ServiceName": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + }, + "VolumeConfigurations": { + "items": { + "$ref": "#/definitions/ServiceVolumeConfiguration" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/ServiceArn", + "/properties/Name" + ], + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::Service", + "writeOnlyProperties": [ + "/properties/ServiceConnectConfiguration", + "/properties/VolumeConfigurations" + ] +} diff --git a/src/cfnlint/data/schemas/providers/ca_central_1/aws-ecs-taskset.json b/src/cfnlint/data/schemas/providers/ca_central_1/aws-ecs-taskset.json new file mode 100644 index 0000000000..3491488499 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ca_central_1/aws-ecs-taskset.json @@ -0,0 +1,191 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/ExternalId", + "/properties/LaunchType", + "/properties/LoadBalancers", + "/properties/NetworkConfiguration", + "/properties/PlatformVersion", + "/properties/Service", + "/properties/ServiceRegistries", + "/properties/TaskDefinition" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "maxItems": 5, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "maxItems": 16, + "type": "array" + } + }, + "required": [ + "Subnets" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsVpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "Scale": { + "additionalProperties": false, + "properties": { + "Unit": { + "enum": [ + "PERCENT" + ], + "type": "string" + }, + "Value": { + "maximum": 100, + "minimum": 0, + "type": "number" + } + }, + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Cluster", + "/properties/Service", + "/properties/Id" + ], + "properties": { + "Cluster": { + "type": "string" + }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlatformVersion": { + "type": "string" + }, + "Scale": { + "$ref": "#/definitions/Scale" + }, + "Service": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "Cluster", + "Service", + "TaskDefinition" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-ecs.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::TaskSet" +} diff --git a/src/cfnlint/data/schemas/providers/ca_central_1/aws-networkfirewall-firewallpolicy.json b/src/cfnlint/data/schemas/providers/ca_central_1/aws-networkfirewall-firewallpolicy.json new file mode 100644 index 0000000000..973b595561 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ca_central_1/aws-networkfirewall-firewallpolicy.json @@ -0,0 +1,332 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/FirewallPolicyName" + ], + "definitions": { + "ActionDefinition": { + "additionalProperties": false, + "properties": { + "PublishMetricAction": { + "$ref": "#/definitions/PublishMetricAction" + } + }, + "type": "object" + }, + "CustomAction": { + "additionalProperties": false, + "properties": { + "ActionDefinition": { + "$ref": "#/definitions/ActionDefinition" + }, + "ActionName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + } + }, + "required": [ + "ActionName", + "ActionDefinition" + ], + "type": "object" + }, + "Dimension": { + "additionalProperties": false, + "properties": { + "Value": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-_ ]+$", + "type": "string" + } + }, + "required": [ + "Value" + ], + "type": "object" + }, + "FirewallPolicy": { + "additionalProperties": false, + "properties": { + "PolicyVariables": { + "additionalProperties": false, + "properties": { + "RuleVariables": { + "$ref": "#/definitions/RuleVariables" + } + }, + "type": "object" + }, + "StatefulDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatefulEngineOptions": { + "$ref": "#/definitions/StatefulEngineOptions" + }, + "StatefulRuleGroupReferences": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/StatefulRuleGroupReference" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessCustomActions": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/CustomAction" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessFragmentDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessRuleGroupReferences": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/StatelessRuleGroupReference" + }, + "type": "array", + "uniqueItems": false + }, + "TLSInspectionConfigurationArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "StatelessDefaultActions", + "StatelessFragmentDefaultActions" + ], + "type": "object" + }, + "IPSet": { + "additionalProperties": false, + "properties": { + "Definition": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/VariableDefinition" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "OverrideAction": { + "enum": [ + "DROP_TO_ALERT" + ], + "type": "string" + }, + "Priority": { + "maximum": 65535, + "minimum": 1, + "type": "integer" + }, + "PublishMetricAction": { + "additionalProperties": false, + "properties": { + "Dimensions": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/Dimension" + }, + "type": "array", + "uniqueItems": false + } + }, + "required": [ + "Dimensions" + ], + "type": "object" + }, + "ResourceArn": { + "maxLength": 256, + "minLength": 1, + "pattern": "^(arn:aws.*)$", + "type": "string" + }, + "RuleOrder": { + "enum": [ + "DEFAULT_ACTION_ORDER", + "STRICT_ORDER" + ], + "type": "string" + }, + "RuleVariables": { + "additionalProperties": false, + "patternProperties": { + "^[A-Za-z0-9_]{1,32}$": { + "$ref": "#/definitions/IPSet" + } + }, + "type": "object" + }, + "StatefulEngineOptions": { + "additionalProperties": false, + "properties": { + "RuleOrder": { + "$ref": "#/definitions/RuleOrder" + }, + "StreamExceptionPolicy": { + "$ref": "#/definitions/StreamExceptionPolicy" + } + }, + "type": "object" + }, + "StatefulRuleGroupOverride": { + "additionalProperties": false, + "properties": { + "Action": { + "$ref": "#/definitions/OverrideAction" + } + }, + "type": "object" + }, + "StatefulRuleGroupReference": { + "additionalProperties": false, + "properties": { + "Override": { + "$ref": "#/definitions/StatefulRuleGroupOverride" + }, + "Priority": { + "$ref": "#/definitions/Priority" + }, + "ResourceArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "ResourceArn" + ], + "type": "object" + }, + "StatelessRuleGroupReference": { + "additionalProperties": false, + "properties": { + "Priority": { + "$ref": "#/definitions/Priority" + }, + "ResourceArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "ResourceArn", + "Priority" + ], + "type": "object" + }, + "StreamExceptionPolicy": { + "enum": [ + "DROP", + "CONTINUE", + "REJECT" + ], + "type": "string" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "^.*$", + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 0, + "pattern": "^.*$", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "VariableDefinition": { + "minLength": 1, + "pattern": "^.*$", + "type": "string" + } + }, + "primaryIdentifier": [ + "/properties/FirewallPolicyArn" + ], + "properties": { + "Description": { + "maxLength": 512, + "minLength": 1, + "pattern": "^.*$", + "type": "string" + }, + "FirewallPolicy": { + "$ref": "#/definitions/FirewallPolicy" + }, + "FirewallPolicyArn": { + "$ref": "#/definitions/ResourceArn" + }, + "FirewallPolicyId": { + "maxLength": 36, + "minLength": 36, + "pattern": "^([0-9a-f]{8})-([0-9a-f]{4}-){3}([0-9a-f]{12})$", + "type": "string" + }, + "FirewallPolicyName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-]+$", + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + } + }, + "readOnlyProperties": [ + "/properties/FirewallPolicyArn", + "/properties/FirewallPolicyId" + ], + "required": [ + "FirewallPolicyName", + "FirewallPolicy" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-networkfirewall.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::NetworkFirewall::FirewallPolicy" +} diff --git a/src/cfnlint/data/schemas/providers/ca_central_1/aws-sagemaker-imageversion.json b/src/cfnlint/data/schemas/providers/ca_central_1/aws-sagemaker-imageversion.json deleted file mode 100644 index e7c91ccc8d..0000000000 --- a/src/cfnlint/data/schemas/providers/ca_central_1/aws-sagemaker-imageversion.json +++ /dev/null @@ -1,172 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/ImageName", - "/properties/BaseImage" - ], - "definitions": { - "Alias": { - "maxLength": 128, - "minLength": 1, - "pattern": "(?!^[.-])^([a-zA-Z0-9-_.]+)$", - "type": "string" - }, - "Aliases": { - "items": { - "$ref": "#/definitions/Alias" - }, - "type": "array" - }, - "BaseImage": { - "maxLength": 255, - "minLength": 1, - "pattern": ".+", - "type": "string" - }, - "ContainerImage": { - "maxLength": 255, - "minLength": 1, - "pattern": ".+", - "type": "string" - }, - "Horovod": { - "type": "boolean" - }, - "ImageArn": { - "maxLength": 256, - "minLength": 1, - "pattern": "^arn:aws(-[\\w]+)*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:image\\/[a-zA-Z0-9]([-.]?[a-zA-Z0-9])*$", - "type": "string" - }, - "ImageName": { - "maxLength": 63, - "minLength": 1, - "pattern": "^[A-Za-z0-9]([-.]?[A-Za-z0-9])*$", - "type": "string" - }, - "ImageVersionArn": { - "maxLength": 256, - "minLength": 1, - "pattern": "^arn:aws(-[\\w]+)*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:image-version\\/[a-zA-Z0-9]([-.]?[a-zA-Z0-9])*\\/[0-9]+$", - "type": "string" - }, - "JobType": { - "enum": [ - "TRAINING", - "INFERENCE", - "NOTEBOOK_KERNEL" - ], - "type": "string" - }, - "MLFramework": { - "maxLength": 128, - "minLength": 1, - "pattern": "^[a-zA-Z]+ ?\\d+\\.\\d+(\\.\\d+)?$", - "type": "string" - }, - "Processor": { - "enum": [ - "CPU", - "GPU" - ], - "type": "string" - }, - "ProgrammingLang": { - "maxLength": 128, - "minLength": 1, - "pattern": "^[a-zA-Z]+ ?\\d+\\.\\d+(\\.\\d+)?$", - "type": "string" - }, - "ReleaseNotes": { - "maxLength": 255, - "minLength": 1, - "pattern": ".*", - "type": "string" - }, - "VendorGuidance": { - "enum": [ - "NOT_PROVIDED", - "STABLE", - "TO_BE_ARCHIVED", - "ARCHIVED" - ], - "type": "string" - }, - "Version": { - "minimum": 1, - "type": "integer" - } - }, - "primaryIdentifier": [ - "/properties/ImageVersionArn" - ], - "properties": { - "Alias": { - "$ref": "#/definitions/Alias" - }, - "Aliases": { - "$ref": "#/definitions/Aliases" - }, - "BaseImage": { - "$ref": "#/definitions/BaseImage" - }, - "ContainerImage": { - "$ref": "#/definitions/ContainerImage" - }, - "Horovod": { - "$ref": "#/definitions/Horovod" - }, - "ImageArn": { - "$ref": "#/definitions/ImageArn" - }, - "ImageName": { - "$ref": "#/definitions/ImageName" - }, - "ImageVersionArn": { - "$ref": "#/definitions/ImageVersionArn" - }, - "JobType": { - "$ref": "#/definitions/JobType" - }, - "MLFramework": { - "$ref": "#/definitions/MLFramework" - }, - "Processor": { - "$ref": "#/definitions/Processor" - }, - "ProgrammingLang": { - "$ref": "#/definitions/ProgrammingLang" - }, - "ReleaseNotes": { - "$ref": "#/definitions/ReleaseNotes" - }, - "VendorGuidance": { - "$ref": "#/definitions/VendorGuidance" - }, - "Version": { - "$ref": "#/definitions/Version" - } - }, - "readOnlyProperties": [ - "/properties/ImageVersionArn", - "/properties/ImageArn", - "/properties/Version", - "/properties/ContainerImage" - ], - "required": [ - "ImageName", - "BaseImage" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sagemaker", - "tagging": { - "cloudFormationSystemTags": false, - "tagOnCreate": false, - "tagUpdatable": false, - "taggable": false - }, - "typeName": "AWS::SageMaker::ImageVersion", - "writeOnlyProperties": [ - "/properties/Aliases", - "/properties/Alias" - ] -} diff --git a/src/cfnlint/data/schemas/providers/ca_west_1/__init__.py b/src/cfnlint/data/schemas/providers/ca_west_1/__init__.py index 6a407dd8ed..bca5e667ac 100644 --- a/src/cfnlint/data/schemas/providers/ca_west_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/ca_west_1/__init__.py @@ -764,9 +764,7 @@ "aws-ecs-cluster.json", "aws-ecs-clustercapacityproviderassociations.json", "aws-ecs-primarytaskset.json", - "aws-ecs-service.json", "aws-ecs-taskdefinition.json", - "aws-ecs-taskset.json", "aws-efs-accesspoint.json", "aws-efs-filesystem.json", "aws-efs-mounttarget.json", @@ -817,13 +815,13 @@ "aws-glue-datacatalogencryptionsettings.json", "aws-glue-dataqualityruleset.json", "aws-glue-devendpoint.json", + "aws-glue-job.json", "aws-glue-mltransform.json", "aws-glue-partition.json", "aws-glue-securityconfiguration.json", "aws-glue-table.json", "aws-glue-trigger.json", "aws-glue-workflow.json", - "aws-guardduty-detector.json", "aws-guardduty-filter.json", "aws-guardduty-ipset.json", "aws-guardduty-malwareprotectionplan.json", @@ -848,7 +846,6 @@ "aws-imagebuilder-imagerecipe.json", "aws-imagebuilder-infrastructureconfiguration.json", "aws-imagebuilder-workflow.json", - "aws-kinesis-stream.json", "aws-kinesisanalyticsv2-application.json", "aws-kinesisfirehose-deliverystream.json", "aws-kms-alias.json", @@ -886,7 +883,6 @@ "aws-msk-vpcconnection.json", "aws-mwaa-environment.json", "aws-networkfirewall-firewall.json", - "aws-networkfirewall-firewallpolicy.json", "aws-networkfirewall-loggingconfiguration.json", "aws-networkfirewall-rulegroup.json", "aws-networkfirewall-tlsinspectionconfiguration.json", @@ -920,13 +916,19 @@ "aws-pcaconnectorscep-connector.json", "aws-ram-permission.json", "aws-ram-resourceshare.json", + "aws-rds-dbcluster.json", + "aws-rds-dbclusterparametergroup.json", + "aws-rds-dbinstance.json", + "aws-rds-dbparametergroup.json", "aws-rds-dbproxy.json", "aws-rds-dbproxyendpoint.json", "aws-rds-dbproxytargetgroup.json", "aws-rds-dbsecuritygroup.json", "aws-rds-dbsecuritygroupingress.json", "aws-rds-dbsubnetgroup.json", + "aws-rds-eventsubscription.json", "aws-rds-integration.json", + "aws-rds-optiongroup.json", "aws-redshift-cluster.json", "aws-redshift-clusterparametergroup.json", "aws-redshift-clustersecuritygroup.json", diff --git a/src/cfnlint/data/schemas/providers/ca_west_1/aws-ecs-service.json b/src/cfnlint/data/schemas/providers/ca_west_1/aws-ecs-service.json new file mode 100644 index 0000000000..ba7baa1de3 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ca_west_1/aws-ecs-service.json @@ -0,0 +1,585 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/DeploymentController", + "/properties/LaunchType", + "/properties/Role", + "/properties/SchedulingStrategy", + "/properties/ServiceName" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "CapacityProviderStrategyItem": { + "additionalProperties": false, + "properties": { + "Base": { + "type": "integer" + }, + "CapacityProvider": { + "type": "string" + }, + "Weight": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentAlarms": { + "additionalProperties": false, + "properties": { + "AlarmNames": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "AlarmNames", + "Rollback", + "Enable" + ], + "type": "object" + }, + "DeploymentCircuitBreaker": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "Enable", + "Rollback" + ], + "type": "object" + }, + "DeploymentConfiguration": { + "additionalProperties": false, + "properties": { + "Alarms": { + "$ref": "#/definitions/DeploymentAlarms" + }, + "DeploymentCircuitBreaker": { + "$ref": "#/definitions/DeploymentCircuitBreaker" + }, + "MaximumPercent": { + "type": "integer" + }, + "MinimumHealthyPercent": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentController": { + "additionalProperties": false, + "properties": { + "Type": { + "enum": [ + "CODE_DEPLOY", + "ECS", + "EXTERNAL" + ], + "type": "string" + } + }, + "type": "object" + }, + "EBSTagSpecification": { + "additionalProperties": false, + "properties": { + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "ResourceType": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "ResourceType" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "LoadBalancerName": { + "type": "string" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "LogConfiguration": { + "additionalProperties": false, + "properties": { + "LogDriver": { + "type": "string" + }, + "Options": { + "additionalProperties": false, + "patternProperties": { + ".{1,}": { + "type": "string" + } + }, + "type": "object" + }, + "SecretOptions": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Secret" + }, + "type": "array" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsvpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "PlacementConstraint": { + "additionalProperties": false, + "properties": { + "Expression": { + "type": "string" + }, + "Type": { + "enum": [ + "distinctInstance", + "memberOf" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "PlacementStrategy": { + "additionalProperties": false, + "properties": { + "Field": { + "type": "string" + }, + "Type": { + "enum": [ + "binpack", + "random", + "spread" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "Secret": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "ValueFrom": { + "type": "string" + } + }, + "required": [ + "Name", + "ValueFrom" + ], + "type": "object" + }, + "ServiceConnectClientAlias": { + "additionalProperties": false, + "properties": { + "DnsName": { + "type": "string" + }, + "Port": { + "type": "integer" + } + }, + "required": [ + "Port" + ], + "type": "object" + }, + "ServiceConnectConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + }, + "LogConfiguration": { + "$ref": "#/definitions/LogConfiguration" + }, + "Namespace": { + "type": "string" + }, + "Services": { + "items": { + "$ref": "#/definitions/ServiceConnectService" + }, + "type": "array" + } + }, + "required": [ + "Enabled" + ], + "type": "object" + }, + "ServiceConnectService": { + "additionalProperties": false, + "properties": { + "ClientAliases": { + "items": { + "$ref": "#/definitions/ServiceConnectClientAlias" + }, + "type": "array" + }, + "DiscoveryName": { + "type": "string" + }, + "IngressPortOverride": { + "type": "integer" + }, + "PortName": { + "type": "string" + }, + "Timeout": { + "$ref": "#/definitions/TimeoutConfiguration" + }, + "Tls": { + "$ref": "#/definitions/ServiceConnectTlsConfiguration" + } + }, + "required": [ + "PortName" + ], + "type": "object" + }, + "ServiceConnectTlsCertificateAuthority": { + "additionalProperties": false, + "properties": { + "AwsPcaAuthorityArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceConnectTlsConfiguration": { + "additionalProperties": false, + "properties": { + "IssuerCertificateAuthority": { + "$ref": "#/definitions/ServiceConnectTlsCertificateAuthority" + }, + "KmsKey": { + "type": "string" + }, + "RoleArn": { + "type": "string" + } + }, + "required": [ + "IssuerCertificateAuthority" + ], + "type": "object" + }, + "ServiceManagedEBSVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "Encrypted": { + "type": "boolean" + }, + "FilesystemType": { + "type": "string" + }, + "Iops": { + "type": "integer" + }, + "KmsKeyId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SizeInGiB": { + "type": "integer" + }, + "SnapshotId": { + "type": "string" + }, + "TagSpecifications": { + "items": { + "$ref": "#/definitions/EBSTagSpecification" + }, + "type": "array" + }, + "Throughput": { + "type": "integer" + }, + "VolumeType": { + "type": "string" + } + }, + "required": [ + "RoleArn" + ], + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "ManagedEBSVolume": { + "$ref": "#/definitions/ServiceManagedEBSVolumeConfiguration" + }, + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + }, + "TimeoutConfiguration": { + "additionalProperties": false, + "properties": { + "IdleTimeoutSeconds": { + "type": "integer" + }, + "PerRequestTimeoutSeconds": { + "type": "integer" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/ServiceArn", + "/properties/Cluster" + ], + "properties": { + "CapacityProviderStrategy": { + "items": { + "$ref": "#/definitions/CapacityProviderStrategyItem" + }, + "type": "array" + }, + "Cluster": { + "type": "string" + }, + "DeploymentConfiguration": { + "$ref": "#/definitions/DeploymentConfiguration" + }, + "DeploymentController": { + "$ref": "#/definitions/DeploymentController" + }, + "DesiredCount": { + "type": "integer" + }, + "EnableECSManagedTags": { + "type": "boolean" + }, + "EnableExecuteCommand": { + "type": "boolean" + }, + "HealthCheckGracePeriodSeconds": { + "type": "integer" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE", + "EXTERNAL" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "Name": { + "type": "string" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlacementConstraints": { + "items": { + "$ref": "#/definitions/PlacementConstraint" + }, + "type": "array" + }, + "PlacementStrategies": { + "items": { + "$ref": "#/definitions/PlacementStrategy" + }, + "type": "array" + }, + "PlatformVersion": { + "default": "LATEST", + "type": "string" + }, + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "Role": { + "type": "string" + }, + "SchedulingStrategy": { + "enum": [ + "DAEMON", + "REPLICA" + ], + "type": "string" + }, + "ServiceArn": { + "type": "string" + }, + "ServiceConnectConfiguration": { + "$ref": "#/definitions/ServiceConnectConfiguration" + }, + "ServiceName": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + }, + "VolumeConfigurations": { + "items": { + "$ref": "#/definitions/ServiceVolumeConfiguration" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/ServiceArn", + "/properties/Name" + ], + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::Service", + "writeOnlyProperties": [ + "/properties/ServiceConnectConfiguration", + "/properties/VolumeConfigurations" + ] +} diff --git a/src/cfnlint/data/schemas/providers/ca_west_1/aws-ecs-taskset.json b/src/cfnlint/data/schemas/providers/ca_west_1/aws-ecs-taskset.json new file mode 100644 index 0000000000..3491488499 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ca_west_1/aws-ecs-taskset.json @@ -0,0 +1,191 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/ExternalId", + "/properties/LaunchType", + "/properties/LoadBalancers", + "/properties/NetworkConfiguration", + "/properties/PlatformVersion", + "/properties/Service", + "/properties/ServiceRegistries", + "/properties/TaskDefinition" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "maxItems": 5, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "maxItems": 16, + "type": "array" + } + }, + "required": [ + "Subnets" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsVpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "Scale": { + "additionalProperties": false, + "properties": { + "Unit": { + "enum": [ + "PERCENT" + ], + "type": "string" + }, + "Value": { + "maximum": 100, + "minimum": 0, + "type": "number" + } + }, + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Cluster", + "/properties/Service", + "/properties/Id" + ], + "properties": { + "Cluster": { + "type": "string" + }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlatformVersion": { + "type": "string" + }, + "Scale": { + "$ref": "#/definitions/Scale" + }, + "Service": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "Cluster", + "Service", + "TaskDefinition" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-ecs.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::TaskSet" +} diff --git a/src/cfnlint/data/schemas/providers/ca_west_1/aws-glue-job.json b/src/cfnlint/data/schemas/providers/ca_west_1/aws-glue-job.json deleted file mode 100644 index 09c051399f..0000000000 --- a/src/cfnlint/data/schemas/providers/ca_west_1/aws-glue-job.json +++ /dev/null @@ -1,153 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name" - ], - "definitions": { - "ConnectionsList": { - "additionalProperties": false, - "properties": { - "Connections": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - } - }, - "type": "object" - }, - "ExecutionProperty": { - "additionalProperties": false, - "properties": { - "MaxConcurrentRuns": { - "type": "number" - } - }, - "type": "object" - }, - "JobCommand": { - "additionalProperties": false, - "properties": { - "Name": { - "type": "string" - }, - "PythonVersion": { - "type": "string" - }, - "Runtime": { - "type": "string" - }, - "ScriptLocation": { - "type": "string" - } - }, - "type": "object" - }, - "NotificationProperty": { - "additionalProperties": false, - "properties": { - "NotifyDelayAfter": { - "type": "integer" - } - }, - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "AllocatedCapacity": { - "type": "number" - }, - "Command": { - "$ref": "#/definitions/JobCommand" - }, - "Connections": { - "$ref": "#/definitions/ConnectionsList" - }, - "DefaultArguments": { - "format": "json", - "type": [ - "object", - "string" - ] - }, - "Description": { - "type": "string" - }, - "ExecutionClass": { - "type": "string" - }, - "ExecutionProperty": { - "$ref": "#/definitions/ExecutionProperty" - }, - "GlueVersion": { - "type": "string" - }, - "Id": { - "type": "string" - }, - "JobMode": { - "type": "string" - }, - "LogUri": { - "type": "string" - }, - "MaintenanceWindow": { - "type": "string" - }, - "MaxCapacity": { - "type": "number" - }, - "MaxRetries": { - "type": "number" - }, - "Name": { - "type": "string" - }, - "NonOverridableArguments": { - "format": "json", - "type": [ - "object", - "string" - ] - }, - "NotificationProperty": { - "$ref": "#/definitions/NotificationProperty" - }, - "NumberOfWorkers": { - "maximum": 299, - "minimum": 0, - "type": "integer" - }, - "Role": { - "type": "string" - }, - "SecurityConfiguration": { - "type": "string" - }, - "Tags": { - "format": "json", - "type": [ - "object", - "string" - ] - }, - "Timeout": { - "type": "integer" - }, - "WorkerType": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "Role", - "Command" - ], - "typeName": "AWS::Glue::Job" -} diff --git a/src/cfnlint/data/schemas/providers/ca_west_1/aws-guardduty-detector.json b/src/cfnlint/data/schemas/providers/ca_west_1/aws-guardduty-detector.json new file mode 100644 index 0000000000..efaad17ff9 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ca_west_1/aws-guardduty-detector.json @@ -0,0 +1,184 @@ +{ + "additionalProperties": false, + "definitions": { + "CFNDataSourceConfigurations": { + "additionalProperties": false, + "properties": { + "Kubernetes": { + "$ref": "#/definitions/CFNKubernetesConfiguration" + }, + "MalwareProtection": { + "$ref": "#/definitions/CFNMalwareProtectionConfiguration" + }, + "S3Logs": { + "$ref": "#/definitions/CFNS3LogsConfiguration" + } + }, + "type": "object" + }, + "CFNFeatureAdditionalConfiguration": { + "additionalProperties": false, + "properties": { + "Name": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "Status": { + "maxLength": 128, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "CFNFeatureConfiguration": { + "additionalProperties": false, + "properties": { + "AdditionalConfiguration": { + "items": { + "$ref": "#/definitions/CFNFeatureAdditionalConfiguration" + }, + "type": "array" + }, + "Name": { + "maxLength": 128, + "type": "string" + }, + "Status": { + "enum": [ + "ENABLED", + "DISABLED" + ], + "type": "string" + } + }, + "required": [ + "Name", + "Status" + ], + "type": "object" + }, + "CFNKubernetesAuditLogsConfiguration": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + } + }, + "required": [ + "Enable" + ], + "type": "object" + }, + "CFNKubernetesConfiguration": { + "additionalProperties": false, + "properties": { + "AuditLogs": { + "$ref": "#/definitions/CFNKubernetesAuditLogsConfiguration" + } + }, + "required": [ + "AuditLogs" + ], + "type": "object" + }, + "CFNMalwareProtectionConfiguration": { + "additionalProperties": false, + "properties": { + "ScanEc2InstanceWithFindings": { + "$ref": "#/definitions/CFNScanEc2InstanceWithFindingsConfiguration" + } + }, + "type": "object" + }, + "CFNS3LogsConfiguration": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + } + }, + "required": [ + "Enable" + ], + "type": "object" + }, + "CFNScanEc2InstanceWithFindingsConfiguration": { + "additionalProperties": false, + "properties": { + "EbsVolumes": { + "type": "boolean" + } + }, + "type": "object" + }, + "TagItem": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "DataSources": { + "$ref": "#/definitions/CFNDataSourceConfigurations" + }, + "Enable": { + "type": "boolean" + }, + "Features": { + "items": { + "$ref": "#/definitions/CFNFeatureConfiguration" + }, + "type": "array" + }, + "FindingPublishingFrequency": { + "enum": [ + "FIFTEEN_MINUTES", + "ONE_HOUR", + "SIX_HOURS" + ], + "type": "string" + }, + "Id": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/TagItem" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "Enable" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": false, + "taggable": true + }, + "typeName": "AWS::GuardDuty::Detector" +} diff --git a/src/cfnlint/data/schemas/providers/ca_west_1/aws-kinesis-stream.json b/src/cfnlint/data/schemas/providers/ca_west_1/aws-kinesis-stream.json new file mode 100644 index 0000000000..be1bc65c07 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ca_west_1/aws-kinesis-stream.json @@ -0,0 +1,133 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "StreamEncryption": { + "additionalProperties": false, + "properties": { + "EncryptionType": { + "enum": [ + "KMS" + ], + "type": "string" + }, + "KeyId": { + "anyOf": [ + { + "relationshipRef": { + "propertyPath": "/properties/Arn", + "typeName": "AWS::KMS::Key" + } + }, + { + "relationshipRef": { + "propertyPath": "/properties/KeyId", + "typeName": "AWS::KMS::Key" + } + } + ], + "maxLength": 2048, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "EncryptionType", + "KeyId" + ], + "type": "object" + }, + "StreamModeDetails": { + "additionalProperties": false, + "properties": { + "StreamMode": { + "enum": [ + "ON_DEMAND", + "PROVISIONED" + ], + "type": "string" + } + }, + "required": [ + "StreamMode" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Name" + ], + "properties": { + "Arn": { + "type": "string" + }, + "Name": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9_.-]+$", + "type": "string" + }, + "RetentionPeriodHours": { + "maximum": 8760, + "minimum": 1, + "type": "integer" + }, + "ShardCount": { + "maximum": 100000, + "minimum": 1, + "type": "integer" + }, + "StreamEncryption": { + "$ref": "#/definitions/StreamEncryption" + }, + "StreamModeDetails": { + "$ref": "#/definitions/StreamModeDetails", + "default": { + "StreamMode": "PROVISIONED" + } + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 50, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-kinesis.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Kinesis::Stream" +} diff --git a/src/cfnlint/data/schemas/providers/ca_west_1/aws-networkfirewall-firewallpolicy.json b/src/cfnlint/data/schemas/providers/ca_west_1/aws-networkfirewall-firewallpolicy.json new file mode 100644 index 0000000000..973b595561 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ca_west_1/aws-networkfirewall-firewallpolicy.json @@ -0,0 +1,332 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/FirewallPolicyName" + ], + "definitions": { + "ActionDefinition": { + "additionalProperties": false, + "properties": { + "PublishMetricAction": { + "$ref": "#/definitions/PublishMetricAction" + } + }, + "type": "object" + }, + "CustomAction": { + "additionalProperties": false, + "properties": { + "ActionDefinition": { + "$ref": "#/definitions/ActionDefinition" + }, + "ActionName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + } + }, + "required": [ + "ActionName", + "ActionDefinition" + ], + "type": "object" + }, + "Dimension": { + "additionalProperties": false, + "properties": { + "Value": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-_ ]+$", + "type": "string" + } + }, + "required": [ + "Value" + ], + "type": "object" + }, + "FirewallPolicy": { + "additionalProperties": false, + "properties": { + "PolicyVariables": { + "additionalProperties": false, + "properties": { + "RuleVariables": { + "$ref": "#/definitions/RuleVariables" + } + }, + "type": "object" + }, + "StatefulDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatefulEngineOptions": { + "$ref": "#/definitions/StatefulEngineOptions" + }, + "StatefulRuleGroupReferences": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/StatefulRuleGroupReference" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessCustomActions": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/CustomAction" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessFragmentDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessRuleGroupReferences": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/StatelessRuleGroupReference" + }, + "type": "array", + "uniqueItems": false + }, + "TLSInspectionConfigurationArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "StatelessDefaultActions", + "StatelessFragmentDefaultActions" + ], + "type": "object" + }, + "IPSet": { + "additionalProperties": false, + "properties": { + "Definition": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/VariableDefinition" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "OverrideAction": { + "enum": [ + "DROP_TO_ALERT" + ], + "type": "string" + }, + "Priority": { + "maximum": 65535, + "minimum": 1, + "type": "integer" + }, + "PublishMetricAction": { + "additionalProperties": false, + "properties": { + "Dimensions": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/Dimension" + }, + "type": "array", + "uniqueItems": false + } + }, + "required": [ + "Dimensions" + ], + "type": "object" + }, + "ResourceArn": { + "maxLength": 256, + "minLength": 1, + "pattern": "^(arn:aws.*)$", + "type": "string" + }, + "RuleOrder": { + "enum": [ + "DEFAULT_ACTION_ORDER", + "STRICT_ORDER" + ], + "type": "string" + }, + "RuleVariables": { + "additionalProperties": false, + "patternProperties": { + "^[A-Za-z0-9_]{1,32}$": { + "$ref": "#/definitions/IPSet" + } + }, + "type": "object" + }, + "StatefulEngineOptions": { + "additionalProperties": false, + "properties": { + "RuleOrder": { + "$ref": "#/definitions/RuleOrder" + }, + "StreamExceptionPolicy": { + "$ref": "#/definitions/StreamExceptionPolicy" + } + }, + "type": "object" + }, + "StatefulRuleGroupOverride": { + "additionalProperties": false, + "properties": { + "Action": { + "$ref": "#/definitions/OverrideAction" + } + }, + "type": "object" + }, + "StatefulRuleGroupReference": { + "additionalProperties": false, + "properties": { + "Override": { + "$ref": "#/definitions/StatefulRuleGroupOverride" + }, + "Priority": { + "$ref": "#/definitions/Priority" + }, + "ResourceArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "ResourceArn" + ], + "type": "object" + }, + "StatelessRuleGroupReference": { + "additionalProperties": false, + "properties": { + "Priority": { + "$ref": "#/definitions/Priority" + }, + "ResourceArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "ResourceArn", + "Priority" + ], + "type": "object" + }, + "StreamExceptionPolicy": { + "enum": [ + "DROP", + "CONTINUE", + "REJECT" + ], + "type": "string" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "^.*$", + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 0, + "pattern": "^.*$", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "VariableDefinition": { + "minLength": 1, + "pattern": "^.*$", + "type": "string" + } + }, + "primaryIdentifier": [ + "/properties/FirewallPolicyArn" + ], + "properties": { + "Description": { + "maxLength": 512, + "minLength": 1, + "pattern": "^.*$", + "type": "string" + }, + "FirewallPolicy": { + "$ref": "#/definitions/FirewallPolicy" + }, + "FirewallPolicyArn": { + "$ref": "#/definitions/ResourceArn" + }, + "FirewallPolicyId": { + "maxLength": 36, + "minLength": 36, + "pattern": "^([0-9a-f]{8})-([0-9a-f]{4}-){3}([0-9a-f]{12})$", + "type": "string" + }, + "FirewallPolicyName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-]+$", + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + } + }, + "readOnlyProperties": [ + "/properties/FirewallPolicyArn", + "/properties/FirewallPolicyId" + ], + "required": [ + "FirewallPolicyName", + "FirewallPolicy" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-networkfirewall.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::NetworkFirewall::FirewallPolicy" +} diff --git a/src/cfnlint/data/schemas/providers/ca_west_1/aws-rds-dbclusterparametergroup.json b/src/cfnlint/data/schemas/providers/ca_west_1/aws-rds-dbclusterparametergroup.json deleted file mode 100644 index 72b2c49945..0000000000 --- a/src/cfnlint/data/schemas/providers/ca_west_1/aws-rds-dbclusterparametergroup.json +++ /dev/null @@ -1,69 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/DBClusterParameterGroupName", - "/properties/Description", - "/properties/Family" - ], - "definitions": { - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key" - ], - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/DBClusterParameterGroupName" - ], - "properties": { - "DBClusterParameterGroupName": { - "pattern": "^[a-zA-Z]{1}(?:-?[a-zA-Z0-9])*$", - "type": "string" - }, - "Description": { - "type": "string" - }, - "Family": { - "type": "string" - }, - "Parameters": { - "format": "json", - "type": [ - "object", - "string" - ] - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 50, - "type": "array" - } - }, - "propertyTransform": { - "/properties/DBClusterParameterGroupName": "$lowercase(DBClusterParameterGroupName)" - }, - "required": [ - "Description", - "Family", - "Parameters" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-rds", - "typeName": "AWS::RDS::DBClusterParameterGroup" -} diff --git a/src/cfnlint/data/schemas/providers/ca_west_1/aws-rds-dbinstance.json b/src/cfnlint/data/schemas/providers/ca_west_1/aws-rds-dbinstance.json deleted file mode 100644 index 9afcb2e658..0000000000 --- a/src/cfnlint/data/schemas/providers/ca_west_1/aws-rds-dbinstance.json +++ /dev/null @@ -1,524 +0,0 @@ -{ - "additionalProperties": false, - "conditionalCreateOnlyProperties": [ - "/properties/AutoMinorVersionUpgrade", - "/properties/AvailabilityZone", - "/properties/BackupRetentionPeriod", - "/properties/DBClusterSnapshotIdentifier", - "/properties/DBParameterGroupName", - "/properties/DBSnapshotIdentifier", - "/properties/Engine", - "/properties/MultiAZ", - "/properties/PerformanceInsightsKMSKeyId", - "/properties/PreferredMaintenanceWindow", - "/properties/RestoreTime", - "/properties/SourceDBClusterIdentifier", - "/properties/SourceDBInstanceAutomatedBackupsArn", - "/properties/SourceDBInstanceIdentifier", - "/properties/SourceDbiResourceId", - "/properties/StorageType", - "/properties/UseLatestRestorableTime" - ], - "createOnlyProperties": [ - "/properties/CharacterSetName", - "/properties/CustomIAMInstanceProfile", - "/properties/DBClusterIdentifier", - "/properties/DBInstanceIdentifier", - "/properties/DBName", - "/properties/DBSubnetGroupName", - "/properties/KmsKeyId", - "/properties/MasterUsername", - "/properties/NcharCharacterSetName", - "/properties/Port", - "/properties/SourceRegion", - "/properties/StorageEncrypted", - "/properties/Timezone" - ], - "definitions": { - "CertificateDetails": { - "additionalProperties": false, - "properties": { - "CAIdentifier": { - "type": "string" - }, - "ValidTill": { - "format": "date-time", - "type": "string" - } - }, - "type": "object" - }, - "DBInstanceRole": { - "additionalProperties": false, - "properties": { - "FeatureName": { - "type": "string" - }, - "RoleArn": { - "type": "string" - } - }, - "required": [ - "FeatureName", - "RoleArn" - ], - "type": "object" - }, - "Endpoint": { - "additionalProperties": false, - "properties": { - "Address": { - "type": "string" - }, - "HostedZoneId": { - "type": "string" - }, - "Port": { - "type": "string" - } - }, - "type": "object" - }, - "MasterUserSecret": { - "additionalProperties": false, - "properties": { - "KmsKeyId": { - "type": "string" - }, - "SecretArn": { - "type": "string" - } - }, - "type": "object" - }, - "ProcessorFeature": { - "additionalProperties": false, - "properties": { - "Name": { - "enum": [ - "coreCount", - "threadsPerCore" - ], - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key" - ], - "type": "object" - } - }, - "dependencies": { - "KmsKeyId": { - "properties": { - "StorageEncrypted": { - "enum": [ - "true", - "True", - true - ] - } - }, - "required": [ - "StorageEncrypted" - ] - } - }, - "dependentExcluded": { - "SourceDBInstanceIdentifier": [ - "CharacterSetName", - "MasterUserPassword", - "MasterUsername", - "StorageEncrypted" - ] - }, - "deprecatedProperties": [ - "/properties/TdeCredentialArn", - "/properties/TdeCredentialPassword" - ], - "primaryIdentifier": [ - "/properties/DBInstanceIdentifier" - ], - "properties": { - "AllocatedStorage": { - "pattern": "^[0-9]*$", - "type": "string" - }, - "AllowMajorVersionUpgrade": { - "type": "boolean" - }, - "AssociatedRoles": { - "items": { - "$ref": "#/definitions/DBInstanceRole" - }, - "type": "array" - }, - "AutoMinorVersionUpgrade": { - "type": "boolean" - }, - "AutomaticBackupReplicationKmsKeyId": { - "type": "string" - }, - "AutomaticBackupReplicationRegion": { - "type": "string" - }, - "AvailabilityZone": { - "type": "string" - }, - "BackupRetentionPeriod": { - "default": 1, - "maximum": 35, - "minimum": 0, - "type": "integer" - }, - "CACertificateIdentifier": { - "type": "string" - }, - "CertificateDetails": { - "$ref": "#/definitions/CertificateDetails" - }, - "CertificateRotationRestart": { - "type": "boolean" - }, - "CharacterSetName": { - "type": "string" - }, - "CopyTagsToSnapshot": { - "type": "boolean" - }, - "CustomIAMInstanceProfile": { - "type": "string" - }, - "DBClusterIdentifier": { - "type": "string" - }, - "DBClusterSnapshotIdentifier": { - "type": "string" - }, - "DBInstanceArn": { - "type": "string" - }, - "DBInstanceClass": { - "type": "string" - }, - "DBInstanceIdentifier": { - "maxLength": 63, - "minLength": 1, - "pattern": "^$|^[a-zA-Z]{1}(?:-?[a-zA-Z0-9]){0,62}$", - "type": "string" - }, - "DBName": { - "type": "string" - }, - "DBParameterGroupName": { - "type": "string" - }, - "DBSecurityGroups": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "DBSnapshotIdentifier": { - "type": "string" - }, - "DBSubnetGroupName": { - "type": "string" - }, - "DBSystemId": { - "type": "string" - }, - "DbiResourceId": { - "type": "string" - }, - "DedicatedLogVolume": { - "type": "boolean" - }, - "DeleteAutomatedBackups": { - "type": "boolean" - }, - "DeletionProtection": { - "type": "boolean" - }, - "Domain": { - "type": "string" - }, - "DomainAuthSecretArn": { - "type": "string" - }, - "DomainDnsIps": { - "items": { - "type": "string" - }, - "type": "array" - }, - "DomainFqdn": { - "type": "string" - }, - "DomainIAMRoleName": { - "type": "string" - }, - "DomainOu": { - "type": "string" - }, - "EnableCloudwatchLogsExports": { - "items": { - "type": "string" - }, - "type": "array" - }, - "EnableIAMDatabaseAuthentication": { - "type": "boolean" - }, - "EnablePerformanceInsights": { - "type": "boolean" - }, - "Endpoint": { - "$ref": "#/definitions/Endpoint" - }, - "Engine": { - "type": "string" - }, - "EngineLifecycleSupport": { - "type": "string" - }, - "EngineVersion": { - "type": "string" - }, - "Iops": { - "type": "integer" - }, - "KmsKeyId": { - "type": "string" - }, - "LicenseModel": { - "type": "string" - }, - "ManageMasterUserPassword": { - "type": "boolean" - }, - "MasterUserPassword": { - "type": "string" - }, - "MasterUserSecret": { - "$ref": "#/definitions/MasterUserSecret" - }, - "MasterUsername": { - "maxLength": 128, - "minLength": 1, - "pattern": "^[a-zA-Z][a-zA-Z0-9_]{0,127}$", - "type": "string" - }, - "MaxAllocatedStorage": { - "type": "integer" - }, - "MonitoringInterval": { - "default": 0, - "type": "integer" - }, - "MonitoringRoleArn": { - "type": "string" - }, - "MultiAZ": { - "type": "boolean" - }, - "NcharCharacterSetName": { - "type": "string" - }, - "NetworkType": { - "type": "string" - }, - "OptionGroupName": { - "type": "string" - }, - "PerformanceInsightsKMSKeyId": { - "type": "string" - }, - "PerformanceInsightsRetentionPeriod": { - "enum": [ - 7, - 31, - 62, - 93, - 124, - 155, - 186, - 217, - 248, - 279, - 310, - 341, - 372, - 403, - 434, - 465, - 496, - 527, - 558, - 589, - 620, - 651, - 682, - 713, - 731 - ], - "type": "integer" - }, - "Port": { - "pattern": "^\\d*$", - "type": "string" - }, - "PreferredBackupWindow": { - "type": "string" - }, - "PreferredMaintenanceWindow": { - "type": "string" - }, - "ProcessorFeatures": { - "items": { - "$ref": "#/definitions/ProcessorFeature" - }, - "type": "array" - }, - "PromotionTier": { - "default": 1, - "maximum": 15, - "minimum": 0, - "type": "integer" - }, - "PubliclyAccessible": { - "type": "boolean" - }, - "ReplicaMode": { - "type": "string" - }, - "RestoreTime": { - "format": "date-time", - "type": "string" - }, - "SourceDBClusterIdentifier": { - "type": "string" - }, - "SourceDBInstanceAutomatedBackupsArn": { - "type": "string" - }, - "SourceDBInstanceIdentifier": { - "type": "string" - }, - "SourceDbiResourceId": { - "type": "string" - }, - "SourceRegion": { - "type": "string" - }, - "StorageEncrypted": { - "type": "boolean" - }, - "StorageThroughput": { - "type": "integer" - }, - "StorageType": { - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": false - }, - "TdeCredentialArn": { - "type": "string" - }, - "TdeCredentialPassword": { - "type": "string" - }, - "Timezone": { - "type": "string" - }, - "UseDefaultProcessorFeatures": { - "type": "boolean" - }, - "UseLatestRestorableTime": { - "type": "boolean" - }, - "VPCSecurityGroups": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - } - }, - "propertyTransform": { - "/properties/DBClusterIdentifier": "$lowercase(DBClusterIdentifier)", - "/properties/DBClusterSnapshotIdentifier": "$lowercase(DBClusterSnapshotIdentifier)", - "/properties/DBInstanceIdentifier": "$lowercase(DBInstanceIdentifier)", - "/properties/DBName": "$lowercase(DBName) $OR $uppercase(DBName)", - "/properties/DBParameterGroupName": "$lowercase(DBParameterGroupName)", - "/properties/DBSnapshotIdentifier": "$lowercase(DBSnapshotIdentifier)", - "/properties/DBSubnetGroupName": "$lowercase(DBSubnetGroupName)", - "/properties/Engine": "$lowercase(Engine)", - "/properties/EngineVersion": "$join([$string(EngineVersion), \".*\"])", - "/properties/KmsKeyId": "$join([\"arn:(aws)[-]{0,1}[a-z]{0,2}[-]{0,1}[a-z]{0,3}:kms:[a-z]{2}[-]{1}[a-z]{3,10}[-]{0,1}[a-z]{0,10}[-]{1}[1-3]{1}:[0-9]{12}[:]{1}key\\/\", KmsKeyId])", - "/properties/MasterUserSecret/KmsKeyId": "$join([\"arn:(aws)[-]{0,1}[a-z]{0,2}[-]{0,1}[a-z]{0,3}:kms:[a-z]{2}[-]{1}[a-z]{3,10}[-]{0,1}[a-z]{0,10}[-]{1}[1-3]{1}:[0-9]{12}[:]{1}key\\/\", MasterUserSecret.KmsKeyId])", - "/properties/NetworkType": "$lowercase(NetworkType)", - "/properties/OptionGroupName": "$lowercase(OptionGroupName)", - "/properties/PerformanceInsightsKMSKeyId": "$join([\"arn:(aws)[-]{0,1}[a-z]{0,2}[-]{0,1}[a-z]{0,3}:kms:[a-z]{2}[-]{1}[a-z]{3,10}[-]{0,1}[a-z]{0,10}[-]{1}[1-3]{1}:[0-9]{12}[:]{1}key\\/\", PerformanceInsightsKMSKeyId])", - "/properties/PreferredMaintenanceWindow": "$lowercase(PreferredMaintenanceWindow)", - "/properties/SourceDBInstanceAutomatedBackupsArn": "$lowercase(SourceDBInstanceAutomatedBackupsArn)", - "/properties/SourceDBInstanceIdentifier": "$lowercase(SourceDBInstanceIdentifier)", - "/properties/StorageType": "$lowercase(StorageType)" - }, - "readOnlyProperties": [ - "/properties/Endpoint/Address", - "/properties/Endpoint/Port", - "/properties/Endpoint/HostedZoneId", - "/properties/DbiResourceId", - "/properties/DBInstanceArn", - "/properties/DBSystemId", - "/properties/MasterUserSecret/SecretArn", - "/properties/CertificateDetails/CAIdentifier", - "/properties/CertificateDetails/ValidTill" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", - "typeName": "AWS::RDS::DBInstance", - "writeOnlyProperties": [ - "/properties/AllowMajorVersionUpgrade", - "/properties/AutomaticBackupReplicationKmsKeyId", - "/properties/CertificateRotationRestart", - "/properties/DBSnapshotIdentifier", - "/properties/DeleteAutomatedBackups", - "/properties/MasterUserPassword", - "/properties/Port", - "/properties/RestoreTime", - "/properties/SourceDBInstanceAutomatedBackupsArn", - "/properties/SourceDBInstanceIdentifier", - "/properties/SourceDbiResourceId", - "/properties/SourceRegion", - "/properties/TdeCredentialPassword", - "/properties/UseDefaultProcessorFeatures", - "/properties/UseLatestRestorableTime" - ] -} diff --git a/src/cfnlint/data/schemas/providers/ca_west_1/aws-rds-dbparametergroup.json b/src/cfnlint/data/schemas/providers/ca_west_1/aws-rds-dbparametergroup.json deleted file mode 100644 index 8d14cf78b9..0000000000 --- a/src/cfnlint/data/schemas/providers/ca_west_1/aws-rds-dbparametergroup.json +++ /dev/null @@ -1,69 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/DBParameterGroupName", - "/properties/Description", - "/properties/Family" - ], - "definitions": { - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key" - ], - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/DBParameterGroupName" - ], - "properties": { - "DBParameterGroupName": { - "pattern": "^[a-zA-Z]{1}(?:-?[a-zA-Z0-9])*$", - "type": "string" - }, - "Description": { - "type": "string" - }, - "Family": { - "type": "string" - }, - "Parameters": { - "format": "json", - "type": [ - "object", - "string" - ] - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 50, - "type": "array", - "uniqueItems": false - } - }, - "propertyTransform": { - "/properties/DBParameterGroupName": "$lowercase(DBParameterGroupName)" - }, - "required": [ - "Family", - "Description" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-rds", - "typeName": "AWS::RDS::DBParameterGroup" -} diff --git a/src/cfnlint/data/schemas/providers/ca_west_1/aws-rds-optiongroup.json b/src/cfnlint/data/schemas/providers/ca_west_1/aws-rds-optiongroup.json deleted file mode 100644 index d0e1e7a6a9..0000000000 --- a/src/cfnlint/data/schemas/providers/ca_west_1/aws-rds-optiongroup.json +++ /dev/null @@ -1,125 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/EngineName", - "/properties/MajorEngineVersion", - "/properties/OptionGroupDescription", - "/properties/OptionGroupName" - ], - "definitions": { - "OptionConfiguration": { - "additionalProperties": false, - "properties": { - "DBSecurityGroupMemberships": { - "insertionOrder": false, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "OptionName": { - "type": "string" - }, - "OptionSettings": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/OptionSetting" - }, - "type": "array" - }, - "OptionVersion": { - "type": "string" - }, - "Port": { - "type": "integer" - }, - "VpcSecurityGroupMemberships": { - "insertionOrder": false, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - } - }, - "required": [ - "OptionName" - ], - "type": "object" - }, - "OptionSetting": { - "additionalProperties": false, - "properties": { - "Name": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key" - ], - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/OptionGroupName" - ], - "properties": { - "EngineName": { - "type": "string" - }, - "MajorEngineVersion": { - "type": "string" - }, - "OptionConfigurations": { - "arrayType": "AttributeList", - "insertionOrder": false, - "items": { - "$ref": "#/definitions/OptionConfiguration" - }, - "type": "array" - }, - "OptionGroupDescription": { - "type": "string" - }, - "OptionGroupName": { - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" - } - }, - "propertyTransform": { - "/properties/OptionGroupName": "$lowercase(OptionGroupName)" - }, - "required": [ - "EngineName", - "MajorEngineVersion", - "OptionGroupDescription" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-rds", - "typeName": "AWS::RDS::OptionGroup" -} diff --git a/src/cfnlint/data/schemas/providers/cn_north_1/__init__.py b/src/cfnlint/data/schemas/providers/cn_north_1/__init__.py index 43dfd62f41..86b30cb8e8 100644 --- a/src/cfnlint/data/schemas/providers/cn_north_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/cn_north_1/__init__.py @@ -942,6 +942,7 @@ "aws-ec2-vpcdhcpoptionsassociation.json", "aws-ec2-vpcendpoint.json", "aws-ec2-vpcendpointconnectionnotification.json", + "aws-ec2-vpcendpointservice.json", "aws-ec2-vpcendpointservicepermissions.json", "aws-ec2-vpcgatewayattachment.json", "aws-ec2-vpcpeeringconnection.json", @@ -954,14 +955,13 @@ "aws-ecs-cluster.json", "aws-ecs-clustercapacityproviderassociations.json", "aws-ecs-primarytaskset.json", - "aws-ecs-service.json", "aws-ecs-taskdefinition.json", + "aws-ecs-taskset.json", "aws-efs-accesspoint.json", "aws-efs-filesystem.json", "aws-efs-mounttarget.json", "aws-eks-accessentry.json", "aws-eks-addon.json", - "aws-eks-cluster.json", "aws-eks-identityproviderconfig.json", "aws-eks-nodegroup.json", "aws-eks-podidentityassociation.json", @@ -1020,6 +1020,7 @@ "aws-gamelift-script.json", "aws-glue-classifier.json", "aws-glue-connection.json", + "aws-glue-crawler.json", "aws-glue-customentitytype.json", "aws-glue-database.json", "aws-glue-datacatalogencryptionsettings.json", @@ -1054,6 +1055,7 @@ "aws-greengrass-subscriptiondefinitionversion.json", "aws-greengrassv2-componentversion.json", "aws-greengrassv2-deployment.json", + "aws-guardduty-detector.json", "aws-guardduty-filter.json", "aws-guardduty-ipset.json", "aws-guardduty-master.json", @@ -1173,6 +1175,7 @@ "aws-neptune-dbsubnetgroup.json", "aws-neptune-eventsubscription.json", "aws-networkfirewall-firewall.json", + "aws-networkfirewall-firewallpolicy.json", "aws-networkfirewall-loggingconfiguration.json", "aws-networkfirewall-rulegroup.json", "aws-networkfirewall-tlsinspectionconfiguration.json", @@ -1248,7 +1251,6 @@ "aws-route53resolver-resolverendpoint.json", "aws-route53resolver-resolverqueryloggingconfig.json", "aws-route53resolver-resolverqueryloggingconfigassociation.json", - "aws-route53resolver-resolverrule.json", "aws-route53resolver-resolverruleassociation.json", "aws-s3-accessgrant.json", "aws-s3-accessgrantsinstance.json", @@ -1268,7 +1270,6 @@ "aws-sagemaker-endpointconfig.json", "aws-sagemaker-featuregroup.json", "aws-sagemaker-image.json", - "aws-sagemaker-imageversion.json", "aws-sagemaker-model.json", "aws-sagemaker-modelcard.json", "aws-sagemaker-modelpackage.json", @@ -1284,7 +1285,6 @@ "aws-secretsmanager-resourcepolicy.json", "aws-secretsmanager-rotationschedule.json", "aws-secretsmanager-secret.json", - "aws-secretsmanager-secrettargetattachment.json", "aws-securityhub-automationrule.json", "aws-securityhub-configurationpolicy.json", "aws-securityhub-delegatedadmin.json", diff --git a/src/cfnlint/data/schemas/providers/cn_north_1/aws-ec2-vpcendpointservice.json b/src/cfnlint/data/schemas/providers/cn_north_1/aws-ec2-vpcendpointservice.json deleted file mode 100644 index 67560dbc1d..0000000000 --- a/src/cfnlint/data/schemas/providers/cn_north_1/aws-ec2-vpcendpointservice.json +++ /dev/null @@ -1,47 +0,0 @@ -{ - "additionalProperties": false, - "primaryIdentifier": [ - "/properties/ServiceId" - ], - "properties": { - "AcceptanceRequired": { - "type": "boolean" - }, - "ContributorInsightsEnabled": { - "type": "boolean" - }, - "GatewayLoadBalancerArns": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "NetworkLoadBalancerArns": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "PayerResponsibility": { - "type": "string" - }, - "ServiceId": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/ServiceId" - ], - "tagging": { - "cloudFormationSystemTags": false, - "tagOnCreate": false, - "tagUpdatable": false, - "taggable": false - }, - "typeName": "AWS::EC2::VPCEndpointService", - "writeOnlyProperties": [ - "/properties/ContributorInsightsEnabled" - ] -} diff --git a/src/cfnlint/data/schemas/providers/cn_north_1/aws-ecs-service.json b/src/cfnlint/data/schemas/providers/cn_north_1/aws-ecs-service.json new file mode 100644 index 0000000000..ba7baa1de3 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/cn_north_1/aws-ecs-service.json @@ -0,0 +1,585 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/DeploymentController", + "/properties/LaunchType", + "/properties/Role", + "/properties/SchedulingStrategy", + "/properties/ServiceName" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "CapacityProviderStrategyItem": { + "additionalProperties": false, + "properties": { + "Base": { + "type": "integer" + }, + "CapacityProvider": { + "type": "string" + }, + "Weight": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentAlarms": { + "additionalProperties": false, + "properties": { + "AlarmNames": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "AlarmNames", + "Rollback", + "Enable" + ], + "type": "object" + }, + "DeploymentCircuitBreaker": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "Enable", + "Rollback" + ], + "type": "object" + }, + "DeploymentConfiguration": { + "additionalProperties": false, + "properties": { + "Alarms": { + "$ref": "#/definitions/DeploymentAlarms" + }, + "DeploymentCircuitBreaker": { + "$ref": "#/definitions/DeploymentCircuitBreaker" + }, + "MaximumPercent": { + "type": "integer" + }, + "MinimumHealthyPercent": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentController": { + "additionalProperties": false, + "properties": { + "Type": { + "enum": [ + "CODE_DEPLOY", + "ECS", + "EXTERNAL" + ], + "type": "string" + } + }, + "type": "object" + }, + "EBSTagSpecification": { + "additionalProperties": false, + "properties": { + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "ResourceType": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "ResourceType" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "LoadBalancerName": { + "type": "string" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "LogConfiguration": { + "additionalProperties": false, + "properties": { + "LogDriver": { + "type": "string" + }, + "Options": { + "additionalProperties": false, + "patternProperties": { + ".{1,}": { + "type": "string" + } + }, + "type": "object" + }, + "SecretOptions": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Secret" + }, + "type": "array" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsvpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "PlacementConstraint": { + "additionalProperties": false, + "properties": { + "Expression": { + "type": "string" + }, + "Type": { + "enum": [ + "distinctInstance", + "memberOf" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "PlacementStrategy": { + "additionalProperties": false, + "properties": { + "Field": { + "type": "string" + }, + "Type": { + "enum": [ + "binpack", + "random", + "spread" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "Secret": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "ValueFrom": { + "type": "string" + } + }, + "required": [ + "Name", + "ValueFrom" + ], + "type": "object" + }, + "ServiceConnectClientAlias": { + "additionalProperties": false, + "properties": { + "DnsName": { + "type": "string" + }, + "Port": { + "type": "integer" + } + }, + "required": [ + "Port" + ], + "type": "object" + }, + "ServiceConnectConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + }, + "LogConfiguration": { + "$ref": "#/definitions/LogConfiguration" + }, + "Namespace": { + "type": "string" + }, + "Services": { + "items": { + "$ref": "#/definitions/ServiceConnectService" + }, + "type": "array" + } + }, + "required": [ + "Enabled" + ], + "type": "object" + }, + "ServiceConnectService": { + "additionalProperties": false, + "properties": { + "ClientAliases": { + "items": { + "$ref": "#/definitions/ServiceConnectClientAlias" + }, + "type": "array" + }, + "DiscoveryName": { + "type": "string" + }, + "IngressPortOverride": { + "type": "integer" + }, + "PortName": { + "type": "string" + }, + "Timeout": { + "$ref": "#/definitions/TimeoutConfiguration" + }, + "Tls": { + "$ref": "#/definitions/ServiceConnectTlsConfiguration" + } + }, + "required": [ + "PortName" + ], + "type": "object" + }, + "ServiceConnectTlsCertificateAuthority": { + "additionalProperties": false, + "properties": { + "AwsPcaAuthorityArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceConnectTlsConfiguration": { + "additionalProperties": false, + "properties": { + "IssuerCertificateAuthority": { + "$ref": "#/definitions/ServiceConnectTlsCertificateAuthority" + }, + "KmsKey": { + "type": "string" + }, + "RoleArn": { + "type": "string" + } + }, + "required": [ + "IssuerCertificateAuthority" + ], + "type": "object" + }, + "ServiceManagedEBSVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "Encrypted": { + "type": "boolean" + }, + "FilesystemType": { + "type": "string" + }, + "Iops": { + "type": "integer" + }, + "KmsKeyId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SizeInGiB": { + "type": "integer" + }, + "SnapshotId": { + "type": "string" + }, + "TagSpecifications": { + "items": { + "$ref": "#/definitions/EBSTagSpecification" + }, + "type": "array" + }, + "Throughput": { + "type": "integer" + }, + "VolumeType": { + "type": "string" + } + }, + "required": [ + "RoleArn" + ], + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "ManagedEBSVolume": { + "$ref": "#/definitions/ServiceManagedEBSVolumeConfiguration" + }, + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + }, + "TimeoutConfiguration": { + "additionalProperties": false, + "properties": { + "IdleTimeoutSeconds": { + "type": "integer" + }, + "PerRequestTimeoutSeconds": { + "type": "integer" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/ServiceArn", + "/properties/Cluster" + ], + "properties": { + "CapacityProviderStrategy": { + "items": { + "$ref": "#/definitions/CapacityProviderStrategyItem" + }, + "type": "array" + }, + "Cluster": { + "type": "string" + }, + "DeploymentConfiguration": { + "$ref": "#/definitions/DeploymentConfiguration" + }, + "DeploymentController": { + "$ref": "#/definitions/DeploymentController" + }, + "DesiredCount": { + "type": "integer" + }, + "EnableECSManagedTags": { + "type": "boolean" + }, + "EnableExecuteCommand": { + "type": "boolean" + }, + "HealthCheckGracePeriodSeconds": { + "type": "integer" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE", + "EXTERNAL" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "Name": { + "type": "string" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlacementConstraints": { + "items": { + "$ref": "#/definitions/PlacementConstraint" + }, + "type": "array" + }, + "PlacementStrategies": { + "items": { + "$ref": "#/definitions/PlacementStrategy" + }, + "type": "array" + }, + "PlatformVersion": { + "default": "LATEST", + "type": "string" + }, + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "Role": { + "type": "string" + }, + "SchedulingStrategy": { + "enum": [ + "DAEMON", + "REPLICA" + ], + "type": "string" + }, + "ServiceArn": { + "type": "string" + }, + "ServiceConnectConfiguration": { + "$ref": "#/definitions/ServiceConnectConfiguration" + }, + "ServiceName": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + }, + "VolumeConfigurations": { + "items": { + "$ref": "#/definitions/ServiceVolumeConfiguration" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/ServiceArn", + "/properties/Name" + ], + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::Service", + "writeOnlyProperties": [ + "/properties/ServiceConnectConfiguration", + "/properties/VolumeConfigurations" + ] +} diff --git a/src/cfnlint/data/schemas/providers/cn_north_1/aws-eks-cluster.json b/src/cfnlint/data/schemas/providers/cn_north_1/aws-eks-cluster.json new file mode 100644 index 0000000000..999cbd80cc --- /dev/null +++ b/src/cfnlint/data/schemas/providers/cn_north_1/aws-eks-cluster.json @@ -0,0 +1,395 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/OutpostConfig", + "/properties/EncryptionConfig", + "/properties/KubernetesNetworkConfig", + "/properties/AccessConfig/BootstrapClusterCreatorAdminPermissions", + "/properties/Name", + "/properties/RoleArn", + "/properties/BootstrapSelfManagedAddons" + ], + "definitions": { + "AccessConfig": { + "additionalProperties": false, + "properties": { + "AuthenticationMode": { + "enum": [ + "CONFIG_MAP", + "API_AND_CONFIG_MAP", + "API" + ], + "type": "string" + }, + "BootstrapClusterCreatorAdminPermissions": { + "type": "boolean" + } + }, + "type": "object" + }, + "BlockStorage": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + } + }, + "type": "object" + }, + "ClusterLogging": { + "additionalProperties": false, + "properties": { + "EnabledTypes": { + "$ref": "#/definitions/EnabledTypes" + } + }, + "type": "object" + }, + "ControlPlanePlacement": { + "additionalProperties": false, + "properties": { + "GroupName": { + "type": "string" + } + }, + "type": "object" + }, + "EnabledTypes": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/LoggingTypeConfig" + }, + "type": "array" + }, + "EncryptionConfig": { + "additionalProperties": false, + "properties": { + "Provider": { + "$ref": "#/definitions/Provider" + }, + "Resources": { + "insertionOrder": false, + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "KubernetesNetworkConfig": { + "additionalProperties": false, + "properties": { + "IpFamily": { + "enum": [ + "ipv4", + "ipv6" + ], + "type": "string" + }, + "ServiceIpv4Cidr": { + "type": "string" + }, + "ServiceIpv6Cidr": { + "type": "string" + } + }, + "type": "object" + }, + "Logging": { + "additionalProperties": false, + "properties": { + "ClusterLogging": { + "$ref": "#/definitions/ClusterLogging" + } + }, + "type": "object" + }, + "LoggingTypeConfig": { + "additionalProperties": false, + "properties": { + "Type": { + "enum": [ + "api", + "audit", + "authenticator", + "controllerManager", + "scheduler" + ], + "type": "string" + } + }, + "type": "object" + }, + "OutpostConfig": { + "additionalProperties": false, + "properties": { + "ControlPlaneInstanceType": { + "type": "string" + }, + "ControlPlanePlacement": { + "$ref": "#/definitions/ControlPlanePlacement" + }, + "OutpostArns": { + "insertionOrder": false, + "items": { + "minItems": 1, + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "OutpostArns", + "ControlPlaneInstanceType" + ], + "type": "object" + }, + "Provider": { + "additionalProperties": false, + "properties": { + "KeyArn": { + "type": "string" + } + }, + "type": "object" + }, + "RemoteNodeNetwork": { + "additionalProperties": false, + "properties": { + "Cidrs": { + "insertionOrder": false, + "items": { + "minItems": 1, + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "Cidrs" + ], + "type": "object" + }, + "RemoteNodeNetworks": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/RemoteNodeNetwork" + }, + "type": "array" + }, + "RemotePodNetwork": { + "additionalProperties": false, + "properties": { + "Cidrs": { + "insertionOrder": false, + "items": { + "minItems": 1, + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "Cidrs" + ], + "type": "object" + }, + "RemotePodNetworks": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/RemotePodNetwork" + }, + "type": "array" + }, + "ResourcesVpcConfig": { + "additionalProperties": false, + "properties": { + "EndpointPrivateAccess": { + "type": "boolean" + }, + "EndpointPublicAccess": { + "type": "boolean" + }, + "PublicAccessCidrs": { + "insertionOrder": false, + "items": { + "minItems": 1, + "type": "string" + }, + "type": "array" + }, + "SecurityGroupIds": { + "format": "AWS::EC2::SecurityGroup.Ids", + "insertionOrder": false, + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "minItems": 1, + "type": "string" + }, + "type": "array" + }, + "SubnetIds": { + "insertionOrder": false, + "items": { + "minItems": 1, + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "SubnetIds" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "UpgradePolicy": { + "additionalProperties": false, + "properties": { + "SupportType": { + "enum": [ + "STANDARD", + "EXTENDED" + ], + "type": "string" + } + }, + "type": "object" + }, + "ZonalShiftConfig": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Name" + ], + "properties": { + "AccessConfig": { + "$ref": "#/definitions/AccessConfig" + }, + "Arn": { + "type": "string" + }, + "BootstrapSelfManagedAddons": { + "type": "boolean" + }, + "CertificateAuthorityData": { + "type": "string" + }, + "ClusterSecurityGroupId": { + "type": "string" + }, + "EncryptionConfig": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/EncryptionConfig", + "maxItems": 1 + }, + "type": "array" + }, + "EncryptionConfigKeyArn": { + "type": "string" + }, + "Endpoint": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "KubernetesNetworkConfig": { + "$ref": "#/definitions/KubernetesNetworkConfig" + }, + "Logging": { + "$ref": "#/definitions/Logging" + }, + "Name": { + "maxLength": 100, + "minLength": 1, + "pattern": "^[0-9A-Za-z][A-Za-z0-9\\-_]*", + "type": "string" + }, + "OpenIdConnectIssuerUrl": { + "type": "string" + }, + "OutpostConfig": { + "$ref": "#/definitions/OutpostConfig" + }, + "ResourcesVpcConfig": { + "$ref": "#/definitions/ResourcesVpcConfig" + }, + "RoleArn": { + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + }, + "UpgradePolicy": { + "$ref": "#/definitions/UpgradePolicy" + }, + "Version": { + "pattern": "1\\.\\d\\d", + "type": "string" + }, + "ZonalShiftConfig": { + "$ref": "#/definitions/ZonalShiftConfig" + } + }, + "readOnlyProperties": [ + "/properties/Id", + "/properties/Arn", + "/properties/Endpoint", + "/properties/CertificateAuthorityData", + "/properties/ClusterSecurityGroupId", + "/properties/EncryptionConfigKeyArn", + "/properties/OpenIdConnectIssuerUrl", + "/properties/KubernetesNetworkConfig/ServiceIpv6Cidr" + ], + "required": [ + "RoleArn", + "ResourcesVpcConfig" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-eks.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::EKS::Cluster", + "writeOnlyProperties": [ + "/properties/AccessConfig/BootstrapClusterCreatorAdminPermissions", + "/properties/BootstrapSelfManagedAddons" + ] +} diff --git a/src/cfnlint/data/schemas/providers/cn_north_1/aws-glue-crawler.json b/src/cfnlint/data/schemas/providers/cn_north_1/aws-glue-crawler.json deleted file mode 100644 index 7dcb87f3d8..0000000000 --- a/src/cfnlint/data/schemas/providers/cn_north_1/aws-glue-crawler.json +++ /dev/null @@ -1,328 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name" - ], - "definitions": { - "CatalogTarget": { - "additionalProperties": false, - "properties": { - "ConnectionName": { - "type": "string" - }, - "DatabaseName": { - "type": "string" - }, - "DlqEventQueueArn": { - "type": "string" - }, - "EventQueueArn": { - "type": "string" - }, - "Tables": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - } - }, - "type": "object" - }, - "DeltaTarget": { - "additionalProperties": false, - "properties": { - "ConnectionName": { - "type": "string" - }, - "CreateNativeDeltaTable": { - "type": "boolean" - }, - "DeltaTables": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "WriteManifest": { - "type": "boolean" - } - }, - "type": "object" - }, - "DynamoDBTarget": { - "additionalProperties": false, - "properties": { - "Path": { - "type": "string" - } - }, - "type": "object" - }, - "IcebergTarget": { - "additionalProperties": false, - "properties": { - "ConnectionName": { - "type": "string" - }, - "Exclusions": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "MaximumTraversalDepth": { - "type": "integer" - }, - "Paths": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - } - }, - "type": "object" - }, - "JdbcTarget": { - "additionalProperties": false, - "properties": { - "ConnectionName": { - "type": "string" - }, - "EnableAdditionalMetadata": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "Exclusions": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "Path": { - "type": "string" - } - }, - "type": "object" - }, - "LakeFormationConfiguration": { - "additionalProperties": false, - "properties": { - "AccountId": { - "type": "string" - }, - "UseLakeFormationCredentials": { - "type": "boolean" - } - }, - "type": "object" - }, - "MongoDBTarget": { - "additionalProperties": false, - "properties": { - "ConnectionName": { - "type": "string" - }, - "Path": { - "type": "string" - } - }, - "type": "object" - }, - "RecrawlPolicy": { - "additionalProperties": false, - "properties": { - "RecrawlBehavior": { - "type": "string" - } - }, - "type": "object" - }, - "S3Target": { - "additionalProperties": false, - "properties": { - "ConnectionName": { - "type": "string" - }, - "DlqEventQueueArn": { - "type": "string" - }, - "EventQueueArn": { - "type": "string" - }, - "Exclusions": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "Path": { - "type": "string" - }, - "SampleSize": { - "type": "integer" - } - }, - "type": "object" - }, - "Schedule": { - "additionalProperties": false, - "properties": { - "ScheduleExpression": { - "type": "string" - } - }, - "type": "object" - }, - "SchemaChangePolicy": { - "additionalProperties": false, - "properties": { - "DeleteBehavior": { - "enum": [ - "DELETE_FROM_DATABASE", - "DEPRECATE_IN_DATABASE", - "LOG" - ], - "type": "string" - }, - "UpdateBehavior": { - "enum": [ - "LOG", - "UPDATE_IN_DATABASE" - ], - "type": "string" - } - }, - "type": "object" - }, - "Targets": { - "additionalProperties": false, - "properties": { - "CatalogTargets": { - "items": { - "$ref": "#/definitions/CatalogTarget" - }, - "type": "array", - "uniqueItems": false - }, - "DeltaTargets": { - "items": { - "$ref": "#/definitions/DeltaTarget" - }, - "type": "array", - "uniqueItems": false - }, - "DynamoDBTargets": { - "items": { - "$ref": "#/definitions/DynamoDBTarget" - }, - "type": "array", - "uniqueItems": false - }, - "IcebergTargets": { - "items": { - "$ref": "#/definitions/IcebergTarget" - }, - "type": "array", - "uniqueItems": false - }, - "JdbcTargets": { - "items": { - "$ref": "#/definitions/JdbcTarget" - }, - "type": "array", - "uniqueItems": false - }, - "MongoDBTargets": { - "items": { - "$ref": "#/definitions/MongoDBTarget" - }, - "type": "array", - "uniqueItems": false - }, - "S3Targets": { - "items": { - "$ref": "#/definitions/S3Target" - }, - "type": "array", - "uniqueItems": false - } - }, - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "Classifiers": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "Configuration": { - "type": "string" - }, - "CrawlerSecurityConfiguration": { - "type": "string" - }, - "DatabaseName": { - "type": "string" - }, - "Description": { - "type": "string" - }, - "Id": { - "type": "string" - }, - "LakeFormationConfiguration": { - "$ref": "#/definitions/LakeFormationConfiguration" - }, - "Name": { - "type": "string" - }, - "RecrawlPolicy": { - "$ref": "#/definitions/RecrawlPolicy" - }, - "Role": { - "type": "string" - }, - "Schedule": { - "$ref": "#/definitions/Schedule" - }, - "SchemaChangePolicy": { - "$ref": "#/definitions/SchemaChangePolicy" - }, - "TablePrefix": { - "type": "string" - }, - "Tags": { - "format": "json", - "type": [ - "object", - "string" - ] - }, - "Targets": { - "$ref": "#/definitions/Targets" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "Role", - "Targets" - ], - "typeName": "AWS::Glue::Crawler" -} diff --git a/src/cfnlint/data/schemas/providers/cn_north_1/aws-route53resolver-resolverrule.json b/src/cfnlint/data/schemas/providers/cn_north_1/aws-route53resolver-resolverrule.json new file mode 100644 index 0000000000..7b24325ca2 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/cn_north_1/aws-route53resolver-resolverrule.json @@ -0,0 +1,130 @@ +{ + "additionalProperties": false, + "conditionalCreateOnlyProperties": [ + "/properties/DomainName" + ], + "createOnlyProperties": [ + "/properties/RuleType" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + }, + "TargetAddress": { + "additionalProperties": false, + "properties": { + "Ip": { + "type": "string" + }, + "Ipv6": { + "type": "string" + }, + "Port": { + "maxLength": 65535, + "minLength": 0, + "type": "string" + }, + "Protocol": { + "enum": [ + "Do53", + "DoH" + ], + "type": "string" + }, + "ServerNameIndication": { + "maxLength": 255, + "minLength": 0, + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/ResolverRuleId" + ], + "properties": { + "Arn": { + "type": "string" + }, + "DomainName": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "Name": { + "maxLength": 64, + "minLength": 0, + "type": "string" + }, + "ResolverEndpointId": { + "maxLength": 64, + "minLength": 1, + "type": "string" + }, + "ResolverRuleId": { + "type": "string" + }, + "RuleType": { + "enum": [ + "FORWARD", + "SYSTEM", + "RECURSIVE", + "DELEGATE" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": false + }, + "TargetIps": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TargetAddress" + }, + "type": "array", + "uniqueItems": false + } + }, + "propertyTransform": { + "/properties/DomainName": "$join([DomainName, \".\"]) $OR DomainName" + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/ResolverRuleId" + ], + "required": [ + "RuleType" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-route53resolver.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Route53Resolver::ResolverRule" +} diff --git a/src/cfnlint/data/schemas/providers/cn_north_1/aws-sagemaker-imageversion.json b/src/cfnlint/data/schemas/providers/cn_north_1/aws-sagemaker-imageversion.json new file mode 100644 index 0000000000..3b09dc9bad --- /dev/null +++ b/src/cfnlint/data/schemas/providers/cn_north_1/aws-sagemaker-imageversion.json @@ -0,0 +1,171 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/ImageName", + "/properties/BaseImage" + ], + "definitions": { + "Alias": { + "maxLength": 128, + "minLength": 1, + "pattern": "(?!^[.-])^([a-zA-Z0-9-_.]+)$", + "type": "string" + }, + "Aliases": { + "items": { + "$ref": "#/definitions/Alias" + }, + "type": "array" + }, + "BaseImage": { + "maxLength": 255, + "minLength": 1, + "pattern": ".+", + "type": "string" + }, + "ContainerImage": { + "maxLength": 255, + "minLength": 1, + "pattern": ".+", + "type": "string" + }, + "Horovod": { + "type": "boolean" + }, + "ImageArn": { + "maxLength": 256, + "minLength": 1, + "pattern": "^arn:aws(-[\\w]+)*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:image\\/[a-zA-Z0-9]([-.]?[a-zA-Z0-9])*$", + "type": "string" + }, + "ImageName": { + "maxLength": 63, + "minLength": 1, + "pattern": "^[A-Za-z0-9]([-.]?[A-Za-z0-9])*$", + "type": "string" + }, + "ImageVersionArn": { + "maxLength": 256, + "minLength": 1, + "pattern": "^arn:aws(-[\\w]+)*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:image-version\\/[a-zA-Z0-9]([-.]?[a-zA-Z0-9])*\\/[0-9]+$", + "type": "string" + }, + "JobType": { + "enum": [ + "TRAINING", + "INFERENCE", + "NOTEBOOK_KERNEL" + ], + "type": "string" + }, + "MLFramework": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z]+ ?\\d+\\.\\d+(\\.\\d+)?$", + "type": "string" + }, + "Processor": { + "enum": [ + "CPU", + "GPU" + ], + "type": "string" + }, + "ProgrammingLang": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z]+ ?\\d+\\.\\d+(\\.\\d+)?$", + "type": "string" + }, + "ReleaseNotes": { + "maxLength": 255, + "minLength": 1, + "pattern": ".*", + "type": "string" + }, + "VendorGuidance": { + "enum": [ + "NOT_PROVIDED", + "STABLE", + "TO_BE_ARCHIVED", + "ARCHIVED" + ], + "type": "string" + }, + "Version": { + "minimum": 1, + "type": "integer" + } + }, + "primaryIdentifier": [ + "/properties/ImageVersionArn" + ], + "properties": { + "Alias": { + "$ref": "#/definitions/Alias" + }, + "Aliases": { + "$ref": "#/definitions/Aliases" + }, + "BaseImage": { + "$ref": "#/definitions/BaseImage" + }, + "ContainerImage": { + "$ref": "#/definitions/ContainerImage" + }, + "Horovod": { + "$ref": "#/definitions/Horovod" + }, + "ImageArn": { + "$ref": "#/definitions/ImageArn" + }, + "ImageName": { + "$ref": "#/definitions/ImageName" + }, + "ImageVersionArn": { + "$ref": "#/definitions/ImageVersionArn" + }, + "JobType": { + "$ref": "#/definitions/JobType" + }, + "MLFramework": { + "$ref": "#/definitions/MLFramework" + }, + "Processor": { + "$ref": "#/definitions/Processor" + }, + "ProgrammingLang": { + "$ref": "#/definitions/ProgrammingLang" + }, + "ReleaseNotes": { + "$ref": "#/definitions/ReleaseNotes" + }, + "VendorGuidance": { + "$ref": "#/definitions/VendorGuidance" + }, + "Version": { + "$ref": "#/definitions/Version" + } + }, + "readOnlyProperties": [ + "/properties/ImageVersionArn", + "/properties/ImageArn", + "/properties/ContainerImage" + ], + "required": [ + "ImageName", + "BaseImage" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sagemaker", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": false, + "tagUpdatable": false, + "taggable": false + }, + "typeName": "AWS::SageMaker::ImageVersion", + "writeOnlyProperties": [ + "/properties/Aliases", + "/properties/Alias" + ] +} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-secretsmanager-secrettargetattachment.json b/src/cfnlint/data/schemas/providers/cn_north_1/aws-secretsmanager-secrettargetattachment.json similarity index 100% rename from src/cfnlint/data/schemas/providers/ap_southeast_4/aws-secretsmanager-secrettargetattachment.json rename to src/cfnlint/data/schemas/providers/cn_north_1/aws-secretsmanager-secrettargetattachment.json diff --git a/src/cfnlint/data/schemas/providers/cn_northwest_1/__init__.py b/src/cfnlint/data/schemas/providers/cn_northwest_1/__init__.py index 00edb78f17..370002b794 100644 --- a/src/cfnlint/data/schemas/providers/cn_northwest_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/cn_northwest_1/__init__.py @@ -908,9 +908,7 @@ "aws-ecs-cluster.json", "aws-ecs-clustercapacityproviderassociations.json", "aws-ecs-primarytaskset.json", - "aws-ecs-service.json", "aws-ecs-taskdefinition.json", - "aws-ecs-taskset.json", "aws-efs-accesspoint.json", "aws-efs-filesystem.json", "aws-efs-mounttarget.json", @@ -981,6 +979,7 @@ "aws-glue-datacatalogencryptionsettings.json", "aws-glue-dataqualityruleset.json", "aws-glue-devendpoint.json", + "aws-glue-job.json", "aws-glue-mltransform.json", "aws-glue-partition.json", "aws-glue-registry.json", @@ -991,7 +990,6 @@ "aws-glue-table.json", "aws-glue-trigger.json", "aws-glue-workflow.json", - "aws-guardduty-detector.json", "aws-guardduty-filter.json", "aws-guardduty-ipset.json", "aws-guardduty-master.json", @@ -1093,7 +1091,6 @@ "aws-neptune-dbcluster.json", "aws-neptune-dbsubnetgroup.json", "aws-networkfirewall-firewall.json", - "aws-networkfirewall-firewallpolicy.json", "aws-networkfirewall-loggingconfiguration.json", "aws-networkfirewall-rulegroup.json", "aws-networkfirewall-tlsinspectionconfiguration.json", @@ -1176,6 +1173,7 @@ "aws-sagemaker-endpointconfig.json", "aws-sagemaker-featuregroup.json", "aws-sagemaker-image.json", + "aws-sagemaker-imageversion.json", "aws-sagemaker-model.json", "aws-sagemaker-modelcard.json", "aws-sagemaker-modelpackage.json", diff --git a/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-ecs-service.json b/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-ecs-service.json new file mode 100644 index 0000000000..ba7baa1de3 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-ecs-service.json @@ -0,0 +1,585 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/DeploymentController", + "/properties/LaunchType", + "/properties/Role", + "/properties/SchedulingStrategy", + "/properties/ServiceName" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "CapacityProviderStrategyItem": { + "additionalProperties": false, + "properties": { + "Base": { + "type": "integer" + }, + "CapacityProvider": { + "type": "string" + }, + "Weight": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentAlarms": { + "additionalProperties": false, + "properties": { + "AlarmNames": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "AlarmNames", + "Rollback", + "Enable" + ], + "type": "object" + }, + "DeploymentCircuitBreaker": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "Enable", + "Rollback" + ], + "type": "object" + }, + "DeploymentConfiguration": { + "additionalProperties": false, + "properties": { + "Alarms": { + "$ref": "#/definitions/DeploymentAlarms" + }, + "DeploymentCircuitBreaker": { + "$ref": "#/definitions/DeploymentCircuitBreaker" + }, + "MaximumPercent": { + "type": "integer" + }, + "MinimumHealthyPercent": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentController": { + "additionalProperties": false, + "properties": { + "Type": { + "enum": [ + "CODE_DEPLOY", + "ECS", + "EXTERNAL" + ], + "type": "string" + } + }, + "type": "object" + }, + "EBSTagSpecification": { + "additionalProperties": false, + "properties": { + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "ResourceType": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "ResourceType" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "LoadBalancerName": { + "type": "string" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "LogConfiguration": { + "additionalProperties": false, + "properties": { + "LogDriver": { + "type": "string" + }, + "Options": { + "additionalProperties": false, + "patternProperties": { + ".{1,}": { + "type": "string" + } + }, + "type": "object" + }, + "SecretOptions": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Secret" + }, + "type": "array" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsvpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "PlacementConstraint": { + "additionalProperties": false, + "properties": { + "Expression": { + "type": "string" + }, + "Type": { + "enum": [ + "distinctInstance", + "memberOf" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "PlacementStrategy": { + "additionalProperties": false, + "properties": { + "Field": { + "type": "string" + }, + "Type": { + "enum": [ + "binpack", + "random", + "spread" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "Secret": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "ValueFrom": { + "type": "string" + } + }, + "required": [ + "Name", + "ValueFrom" + ], + "type": "object" + }, + "ServiceConnectClientAlias": { + "additionalProperties": false, + "properties": { + "DnsName": { + "type": "string" + }, + "Port": { + "type": "integer" + } + }, + "required": [ + "Port" + ], + "type": "object" + }, + "ServiceConnectConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + }, + "LogConfiguration": { + "$ref": "#/definitions/LogConfiguration" + }, + "Namespace": { + "type": "string" + }, + "Services": { + "items": { + "$ref": "#/definitions/ServiceConnectService" + }, + "type": "array" + } + }, + "required": [ + "Enabled" + ], + "type": "object" + }, + "ServiceConnectService": { + "additionalProperties": false, + "properties": { + "ClientAliases": { + "items": { + "$ref": "#/definitions/ServiceConnectClientAlias" + }, + "type": "array" + }, + "DiscoveryName": { + "type": "string" + }, + "IngressPortOverride": { + "type": "integer" + }, + "PortName": { + "type": "string" + }, + "Timeout": { + "$ref": "#/definitions/TimeoutConfiguration" + }, + "Tls": { + "$ref": "#/definitions/ServiceConnectTlsConfiguration" + } + }, + "required": [ + "PortName" + ], + "type": "object" + }, + "ServiceConnectTlsCertificateAuthority": { + "additionalProperties": false, + "properties": { + "AwsPcaAuthorityArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceConnectTlsConfiguration": { + "additionalProperties": false, + "properties": { + "IssuerCertificateAuthority": { + "$ref": "#/definitions/ServiceConnectTlsCertificateAuthority" + }, + "KmsKey": { + "type": "string" + }, + "RoleArn": { + "type": "string" + } + }, + "required": [ + "IssuerCertificateAuthority" + ], + "type": "object" + }, + "ServiceManagedEBSVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "Encrypted": { + "type": "boolean" + }, + "FilesystemType": { + "type": "string" + }, + "Iops": { + "type": "integer" + }, + "KmsKeyId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SizeInGiB": { + "type": "integer" + }, + "SnapshotId": { + "type": "string" + }, + "TagSpecifications": { + "items": { + "$ref": "#/definitions/EBSTagSpecification" + }, + "type": "array" + }, + "Throughput": { + "type": "integer" + }, + "VolumeType": { + "type": "string" + } + }, + "required": [ + "RoleArn" + ], + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "ManagedEBSVolume": { + "$ref": "#/definitions/ServiceManagedEBSVolumeConfiguration" + }, + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + }, + "TimeoutConfiguration": { + "additionalProperties": false, + "properties": { + "IdleTimeoutSeconds": { + "type": "integer" + }, + "PerRequestTimeoutSeconds": { + "type": "integer" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/ServiceArn", + "/properties/Cluster" + ], + "properties": { + "CapacityProviderStrategy": { + "items": { + "$ref": "#/definitions/CapacityProviderStrategyItem" + }, + "type": "array" + }, + "Cluster": { + "type": "string" + }, + "DeploymentConfiguration": { + "$ref": "#/definitions/DeploymentConfiguration" + }, + "DeploymentController": { + "$ref": "#/definitions/DeploymentController" + }, + "DesiredCount": { + "type": "integer" + }, + "EnableECSManagedTags": { + "type": "boolean" + }, + "EnableExecuteCommand": { + "type": "boolean" + }, + "HealthCheckGracePeriodSeconds": { + "type": "integer" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE", + "EXTERNAL" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "Name": { + "type": "string" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlacementConstraints": { + "items": { + "$ref": "#/definitions/PlacementConstraint" + }, + "type": "array" + }, + "PlacementStrategies": { + "items": { + "$ref": "#/definitions/PlacementStrategy" + }, + "type": "array" + }, + "PlatformVersion": { + "default": "LATEST", + "type": "string" + }, + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "Role": { + "type": "string" + }, + "SchedulingStrategy": { + "enum": [ + "DAEMON", + "REPLICA" + ], + "type": "string" + }, + "ServiceArn": { + "type": "string" + }, + "ServiceConnectConfiguration": { + "$ref": "#/definitions/ServiceConnectConfiguration" + }, + "ServiceName": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + }, + "VolumeConfigurations": { + "items": { + "$ref": "#/definitions/ServiceVolumeConfiguration" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/ServiceArn", + "/properties/Name" + ], + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::Service", + "writeOnlyProperties": [ + "/properties/ServiceConnectConfiguration", + "/properties/VolumeConfigurations" + ] +} diff --git a/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-ecs-taskset.json b/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-ecs-taskset.json new file mode 100644 index 0000000000..3491488499 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-ecs-taskset.json @@ -0,0 +1,191 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/ExternalId", + "/properties/LaunchType", + "/properties/LoadBalancers", + "/properties/NetworkConfiguration", + "/properties/PlatformVersion", + "/properties/Service", + "/properties/ServiceRegistries", + "/properties/TaskDefinition" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "maxItems": 5, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "maxItems": 16, + "type": "array" + } + }, + "required": [ + "Subnets" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsVpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "Scale": { + "additionalProperties": false, + "properties": { + "Unit": { + "enum": [ + "PERCENT" + ], + "type": "string" + }, + "Value": { + "maximum": 100, + "minimum": 0, + "type": "number" + } + }, + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Cluster", + "/properties/Service", + "/properties/Id" + ], + "properties": { + "Cluster": { + "type": "string" + }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlatformVersion": { + "type": "string" + }, + "Scale": { + "$ref": "#/definitions/Scale" + }, + "Service": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "Cluster", + "Service", + "TaskDefinition" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-ecs.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::TaskSet" +} diff --git a/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-glue-job.json b/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-glue-job.json deleted file mode 100644 index 5ad5c7f347..0000000000 --- a/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-glue-job.json +++ /dev/null @@ -1,150 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name" - ], - "definitions": { - "ConnectionsList": { - "additionalProperties": false, - "properties": { - "Connections": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - } - }, - "type": "object" - }, - "ExecutionProperty": { - "additionalProperties": false, - "properties": { - "MaxConcurrentRuns": { - "type": "number" - } - }, - "type": "object" - }, - "JobCommand": { - "additionalProperties": false, - "properties": { - "Name": { - "type": "string" - }, - "PythonVersion": { - "type": "string" - }, - "Runtime": { - "type": "string" - }, - "ScriptLocation": { - "type": "string" - } - }, - "type": "object" - }, - "NotificationProperty": { - "additionalProperties": false, - "properties": { - "NotifyDelayAfter": { - "type": "integer" - } - }, - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "AllocatedCapacity": { - "type": "number" - }, - "Command": { - "$ref": "#/definitions/JobCommand" - }, - "Connections": { - "$ref": "#/definitions/ConnectionsList" - }, - "DefaultArguments": { - "format": "json", - "type": [ - "object", - "string" - ] - }, - "Description": { - "type": "string" - }, - "ExecutionClass": { - "type": "string" - }, - "ExecutionProperty": { - "$ref": "#/definitions/ExecutionProperty" - }, - "GlueVersion": { - "type": "string" - }, - "Id": { - "type": "string" - }, - "LogUri": { - "type": "string" - }, - "MaintenanceWindow": { - "type": "string" - }, - "MaxCapacity": { - "type": "number" - }, - "MaxRetries": { - "type": "number" - }, - "Name": { - "type": "string" - }, - "NonOverridableArguments": { - "format": "json", - "type": [ - "object", - "string" - ] - }, - "NotificationProperty": { - "$ref": "#/definitions/NotificationProperty" - }, - "NumberOfWorkers": { - "maximum": 299, - "minimum": 0, - "type": "integer" - }, - "Role": { - "type": "string" - }, - "SecurityConfiguration": { - "type": "string" - }, - "Tags": { - "format": "json", - "type": [ - "object", - "string" - ] - }, - "Timeout": { - "type": "integer" - }, - "WorkerType": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "Role", - "Command" - ], - "typeName": "AWS::Glue::Job" -} diff --git a/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-guardduty-detector.json b/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-guardduty-detector.json new file mode 100644 index 0000000000..efaad17ff9 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-guardduty-detector.json @@ -0,0 +1,184 @@ +{ + "additionalProperties": false, + "definitions": { + "CFNDataSourceConfigurations": { + "additionalProperties": false, + "properties": { + "Kubernetes": { + "$ref": "#/definitions/CFNKubernetesConfiguration" + }, + "MalwareProtection": { + "$ref": "#/definitions/CFNMalwareProtectionConfiguration" + }, + "S3Logs": { + "$ref": "#/definitions/CFNS3LogsConfiguration" + } + }, + "type": "object" + }, + "CFNFeatureAdditionalConfiguration": { + "additionalProperties": false, + "properties": { + "Name": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "Status": { + "maxLength": 128, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "CFNFeatureConfiguration": { + "additionalProperties": false, + "properties": { + "AdditionalConfiguration": { + "items": { + "$ref": "#/definitions/CFNFeatureAdditionalConfiguration" + }, + "type": "array" + }, + "Name": { + "maxLength": 128, + "type": "string" + }, + "Status": { + "enum": [ + "ENABLED", + "DISABLED" + ], + "type": "string" + } + }, + "required": [ + "Name", + "Status" + ], + "type": "object" + }, + "CFNKubernetesAuditLogsConfiguration": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + } + }, + "required": [ + "Enable" + ], + "type": "object" + }, + "CFNKubernetesConfiguration": { + "additionalProperties": false, + "properties": { + "AuditLogs": { + "$ref": "#/definitions/CFNKubernetesAuditLogsConfiguration" + } + }, + "required": [ + "AuditLogs" + ], + "type": "object" + }, + "CFNMalwareProtectionConfiguration": { + "additionalProperties": false, + "properties": { + "ScanEc2InstanceWithFindings": { + "$ref": "#/definitions/CFNScanEc2InstanceWithFindingsConfiguration" + } + }, + "type": "object" + }, + "CFNS3LogsConfiguration": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + } + }, + "required": [ + "Enable" + ], + "type": "object" + }, + "CFNScanEc2InstanceWithFindingsConfiguration": { + "additionalProperties": false, + "properties": { + "EbsVolumes": { + "type": "boolean" + } + }, + "type": "object" + }, + "TagItem": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "DataSources": { + "$ref": "#/definitions/CFNDataSourceConfigurations" + }, + "Enable": { + "type": "boolean" + }, + "Features": { + "items": { + "$ref": "#/definitions/CFNFeatureConfiguration" + }, + "type": "array" + }, + "FindingPublishingFrequency": { + "enum": [ + "FIFTEEN_MINUTES", + "ONE_HOUR", + "SIX_HOURS" + ], + "type": "string" + }, + "Id": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/TagItem" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "Enable" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": false, + "taggable": true + }, + "typeName": "AWS::GuardDuty::Detector" +} diff --git a/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-networkfirewall-firewallpolicy.json b/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-networkfirewall-firewallpolicy.json new file mode 100644 index 0000000000..973b595561 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-networkfirewall-firewallpolicy.json @@ -0,0 +1,332 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/FirewallPolicyName" + ], + "definitions": { + "ActionDefinition": { + "additionalProperties": false, + "properties": { + "PublishMetricAction": { + "$ref": "#/definitions/PublishMetricAction" + } + }, + "type": "object" + }, + "CustomAction": { + "additionalProperties": false, + "properties": { + "ActionDefinition": { + "$ref": "#/definitions/ActionDefinition" + }, + "ActionName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + } + }, + "required": [ + "ActionName", + "ActionDefinition" + ], + "type": "object" + }, + "Dimension": { + "additionalProperties": false, + "properties": { + "Value": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-_ ]+$", + "type": "string" + } + }, + "required": [ + "Value" + ], + "type": "object" + }, + "FirewallPolicy": { + "additionalProperties": false, + "properties": { + "PolicyVariables": { + "additionalProperties": false, + "properties": { + "RuleVariables": { + "$ref": "#/definitions/RuleVariables" + } + }, + "type": "object" + }, + "StatefulDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatefulEngineOptions": { + "$ref": "#/definitions/StatefulEngineOptions" + }, + "StatefulRuleGroupReferences": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/StatefulRuleGroupReference" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessCustomActions": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/CustomAction" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessFragmentDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessRuleGroupReferences": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/StatelessRuleGroupReference" + }, + "type": "array", + "uniqueItems": false + }, + "TLSInspectionConfigurationArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "StatelessDefaultActions", + "StatelessFragmentDefaultActions" + ], + "type": "object" + }, + "IPSet": { + "additionalProperties": false, + "properties": { + "Definition": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/VariableDefinition" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "OverrideAction": { + "enum": [ + "DROP_TO_ALERT" + ], + "type": "string" + }, + "Priority": { + "maximum": 65535, + "minimum": 1, + "type": "integer" + }, + "PublishMetricAction": { + "additionalProperties": false, + "properties": { + "Dimensions": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/Dimension" + }, + "type": "array", + "uniqueItems": false + } + }, + "required": [ + "Dimensions" + ], + "type": "object" + }, + "ResourceArn": { + "maxLength": 256, + "minLength": 1, + "pattern": "^(arn:aws.*)$", + "type": "string" + }, + "RuleOrder": { + "enum": [ + "DEFAULT_ACTION_ORDER", + "STRICT_ORDER" + ], + "type": "string" + }, + "RuleVariables": { + "additionalProperties": false, + "patternProperties": { + "^[A-Za-z0-9_]{1,32}$": { + "$ref": "#/definitions/IPSet" + } + }, + "type": "object" + }, + "StatefulEngineOptions": { + "additionalProperties": false, + "properties": { + "RuleOrder": { + "$ref": "#/definitions/RuleOrder" + }, + "StreamExceptionPolicy": { + "$ref": "#/definitions/StreamExceptionPolicy" + } + }, + "type": "object" + }, + "StatefulRuleGroupOverride": { + "additionalProperties": false, + "properties": { + "Action": { + "$ref": "#/definitions/OverrideAction" + } + }, + "type": "object" + }, + "StatefulRuleGroupReference": { + "additionalProperties": false, + "properties": { + "Override": { + "$ref": "#/definitions/StatefulRuleGroupOverride" + }, + "Priority": { + "$ref": "#/definitions/Priority" + }, + "ResourceArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "ResourceArn" + ], + "type": "object" + }, + "StatelessRuleGroupReference": { + "additionalProperties": false, + "properties": { + "Priority": { + "$ref": "#/definitions/Priority" + }, + "ResourceArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "ResourceArn", + "Priority" + ], + "type": "object" + }, + "StreamExceptionPolicy": { + "enum": [ + "DROP", + "CONTINUE", + "REJECT" + ], + "type": "string" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "^.*$", + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 0, + "pattern": "^.*$", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "VariableDefinition": { + "minLength": 1, + "pattern": "^.*$", + "type": "string" + } + }, + "primaryIdentifier": [ + "/properties/FirewallPolicyArn" + ], + "properties": { + "Description": { + "maxLength": 512, + "minLength": 1, + "pattern": "^.*$", + "type": "string" + }, + "FirewallPolicy": { + "$ref": "#/definitions/FirewallPolicy" + }, + "FirewallPolicyArn": { + "$ref": "#/definitions/ResourceArn" + }, + "FirewallPolicyId": { + "maxLength": 36, + "minLength": 36, + "pattern": "^([0-9a-f]{8})-([0-9a-f]{4}-){3}([0-9a-f]{12})$", + "type": "string" + }, + "FirewallPolicyName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-]+$", + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + } + }, + "readOnlyProperties": [ + "/properties/FirewallPolicyArn", + "/properties/FirewallPolicyId" + ], + "required": [ + "FirewallPolicyName", + "FirewallPolicy" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-networkfirewall.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::NetworkFirewall::FirewallPolicy" +} diff --git a/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-sagemaker-imageversion.json b/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-sagemaker-imageversion.json deleted file mode 100644 index e7c91ccc8d..0000000000 --- a/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-sagemaker-imageversion.json +++ /dev/null @@ -1,172 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/ImageName", - "/properties/BaseImage" - ], - "definitions": { - "Alias": { - "maxLength": 128, - "minLength": 1, - "pattern": "(?!^[.-])^([a-zA-Z0-9-_.]+)$", - "type": "string" - }, - "Aliases": { - "items": { - "$ref": "#/definitions/Alias" - }, - "type": "array" - }, - "BaseImage": { - "maxLength": 255, - "minLength": 1, - "pattern": ".+", - "type": "string" - }, - "ContainerImage": { - "maxLength": 255, - "minLength": 1, - "pattern": ".+", - "type": "string" - }, - "Horovod": { - "type": "boolean" - }, - "ImageArn": { - "maxLength": 256, - "minLength": 1, - "pattern": "^arn:aws(-[\\w]+)*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:image\\/[a-zA-Z0-9]([-.]?[a-zA-Z0-9])*$", - "type": "string" - }, - "ImageName": { - "maxLength": 63, - "minLength": 1, - "pattern": "^[A-Za-z0-9]([-.]?[A-Za-z0-9])*$", - "type": "string" - }, - "ImageVersionArn": { - "maxLength": 256, - "minLength": 1, - "pattern": "^arn:aws(-[\\w]+)*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:image-version\\/[a-zA-Z0-9]([-.]?[a-zA-Z0-9])*\\/[0-9]+$", - "type": "string" - }, - "JobType": { - "enum": [ - "TRAINING", - "INFERENCE", - "NOTEBOOK_KERNEL" - ], - "type": "string" - }, - "MLFramework": { - "maxLength": 128, - "minLength": 1, - "pattern": "^[a-zA-Z]+ ?\\d+\\.\\d+(\\.\\d+)?$", - "type": "string" - }, - "Processor": { - "enum": [ - "CPU", - "GPU" - ], - "type": "string" - }, - "ProgrammingLang": { - "maxLength": 128, - "minLength": 1, - "pattern": "^[a-zA-Z]+ ?\\d+\\.\\d+(\\.\\d+)?$", - "type": "string" - }, - "ReleaseNotes": { - "maxLength": 255, - "minLength": 1, - "pattern": ".*", - "type": "string" - }, - "VendorGuidance": { - "enum": [ - "NOT_PROVIDED", - "STABLE", - "TO_BE_ARCHIVED", - "ARCHIVED" - ], - "type": "string" - }, - "Version": { - "minimum": 1, - "type": "integer" - } - }, - "primaryIdentifier": [ - "/properties/ImageVersionArn" - ], - "properties": { - "Alias": { - "$ref": "#/definitions/Alias" - }, - "Aliases": { - "$ref": "#/definitions/Aliases" - }, - "BaseImage": { - "$ref": "#/definitions/BaseImage" - }, - "ContainerImage": { - "$ref": "#/definitions/ContainerImage" - }, - "Horovod": { - "$ref": "#/definitions/Horovod" - }, - "ImageArn": { - "$ref": "#/definitions/ImageArn" - }, - "ImageName": { - "$ref": "#/definitions/ImageName" - }, - "ImageVersionArn": { - "$ref": "#/definitions/ImageVersionArn" - }, - "JobType": { - "$ref": "#/definitions/JobType" - }, - "MLFramework": { - "$ref": "#/definitions/MLFramework" - }, - "Processor": { - "$ref": "#/definitions/Processor" - }, - "ProgrammingLang": { - "$ref": "#/definitions/ProgrammingLang" - }, - "ReleaseNotes": { - "$ref": "#/definitions/ReleaseNotes" - }, - "VendorGuidance": { - "$ref": "#/definitions/VendorGuidance" - }, - "Version": { - "$ref": "#/definitions/Version" - } - }, - "readOnlyProperties": [ - "/properties/ImageVersionArn", - "/properties/ImageArn", - "/properties/Version", - "/properties/ContainerImage" - ], - "required": [ - "ImageName", - "BaseImage" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sagemaker", - "tagging": { - "cloudFormationSystemTags": false, - "tagOnCreate": false, - "tagUpdatable": false, - "taggable": false - }, - "typeName": "AWS::SageMaker::ImageVersion", - "writeOnlyProperties": [ - "/properties/Aliases", - "/properties/Alias" - ] -} diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/__init__.py b/src/cfnlint/data/schemas/providers/eu_central_1/__init__.py index 9918227e4c..fb446e5029 100644 --- a/src/cfnlint/data/schemas/providers/eu_central_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/eu_central_1/__init__.py @@ -1481,7 +1481,6 @@ "aws-codeguruprofiler-profilinggroup.json", "aws-codegurureviewer-repositoryassociation.json", "aws-codepipeline-customactiontype.json", - "aws-codepipeline-pipeline.json", "aws-codepipeline-webhook.json", "aws-codestar-githubrepository.json", "aws-codestarconnections-connection.json", @@ -1718,6 +1717,7 @@ "aws-ecs-primarytaskset.json", "aws-ecs-service.json", "aws-ecs-taskdefinition.json", + "aws-ecs-taskset.json", "aws-efs-accesspoint.json", "aws-efs-filesystem.json", "aws-efs-mounttarget.json", @@ -1848,6 +1848,7 @@ "aws-groundstation-config.json", "aws-groundstation-dataflowendpointgroup.json", "aws-groundstation-missionprofile.json", + "aws-guardduty-detector.json", "aws-guardduty-filter.json", "aws-guardduty-ipset.json", "aws-guardduty-malwareprotectionplan.json", @@ -1967,6 +1968,8 @@ "aws-kafkaconnect-connector.json", "aws-kafkaconnect-customplugin.json", "aws-kafkaconnect-workerconfiguration.json", + "aws-kinesis-resourcepolicy.json", + "aws-kinesis-stream.json", "aws-kinesis-streamconsumer.json", "aws-kinesisanalytics-applicationoutput.json", "aws-kinesisanalyticsv2-application.json", @@ -2033,7 +2036,6 @@ "aws-lookoutmetrics-alert.json", "aws-lookoutmetrics-anomalydetector.json", "aws-lookoutvision-project.json", - "aws-m2-application.json", "aws-m2-environment.json", "aws-macie-allowlist.json", "aws-macie-customdataidentifier.json", @@ -2051,13 +2053,11 @@ "aws-mediaconvert-jobtemplate.json", "aws-mediaconvert-preset.json", "aws-mediaconvert-queue.json", - "aws-medialive-channel.json", "aws-medialive-cloudwatchalarmtemplate.json", "aws-medialive-cloudwatchalarmtemplategroup.json", "aws-medialive-cluster.json", "aws-medialive-eventbridgeruletemplate.json", "aws-medialive-eventbridgeruletemplategroup.json", - "aws-medialive-input.json", "aws-medialive-inputsecuritygroup.json", "aws-medialive-multiplex.json", "aws-medialive-multiplexprogram.json", @@ -2066,7 +2066,6 @@ "aws-medialive-signalmap.json", "aws-mediapackage-asset.json", "aws-mediapackage-channel.json", - "aws-mediapackage-originendpoint.json", "aws-mediapackage-packagingconfiguration.json", "aws-mediapackage-packaginggroup.json", "aws-mediapackagev2-channel.json", @@ -2103,6 +2102,7 @@ "aws-neptunegraph-graph.json", "aws-neptunegraph-privategraphendpoint.json", "aws-networkfirewall-firewall.json", + "aws-networkfirewall-firewallpolicy.json", "aws-networkfirewall-loggingconfiguration.json", "aws-networkfirewall-rulegroup.json", "aws-networkfirewall-tlsinspectionconfiguration.json", @@ -2192,8 +2192,6 @@ "aws-proton-servicetemplate.json", "aws-qldb-ledger.json", "aws-qldb-stream.json", - "aws-quicksight-analysis.json", - "aws-quicksight-dashboard.json", "aws-quicksight-dataset.json", "aws-quicksight-datasource.json", "aws-quicksight-folder.json", @@ -2268,7 +2266,6 @@ "aws-route53resolver-resolverendpoint.json", "aws-route53resolver-resolverqueryloggingconfig.json", "aws-route53resolver-resolverqueryloggingconfigassociation.json", - "aws-route53resolver-resolverrule.json", "aws-route53resolver-resolverruleassociation.json", "aws-rum-appmonitor.json", "aws-s3-accessgrant.json", @@ -2299,7 +2296,6 @@ "aws-sagemaker-endpointconfig.json", "aws-sagemaker-featuregroup.json", "aws-sagemaker-image.json", - "aws-sagemaker-imageversion.json", "aws-sagemaker-inferencecomponent.json", "aws-sagemaker-inferenceexperiment.json", "aws-sagemaker-mlflowtrackingserver.json", @@ -2390,7 +2386,6 @@ "aws-signer-signingprofile.json", "aws-simspaceweaver-simulation.json", "aws-sns-subscription.json", - "aws-sns-topic.json", "aws-sns-topicinlinepolicy.json", "aws-sns-topicpolicy.json", "aws-sqs-queue.json", diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/aws-codepipeline-pipeline.json b/src/cfnlint/data/schemas/providers/eu_central_1/aws-codepipeline-pipeline.json new file mode 100644 index 0000000000..2ab3d0ad22 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_1/aws-codepipeline-pipeline.json @@ -0,0 +1,654 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "ActionDeclaration": { + "additionalProperties": false, + "properties": { + "ActionTypeId": { + "$ref": "#/definitions/ActionTypeId" + }, + "Commands": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "Configuration": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "InputArtifacts": { + "items": { + "$ref": "#/definitions/InputArtifact" + }, + "type": "array", + "uniqueItems": true + }, + "Name": { + "type": "string" + }, + "Namespace": { + "type": "string" + }, + "OutputArtifacts": { + "items": { + "$ref": "#/definitions/OutputArtifact" + }, + "type": "array", + "uniqueItems": true + }, + "OutputVariables": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "Region": { + "type": "string" + }, + "RoleArn": { + "pattern": "arn:aws(-[\\w]+)*:iam::[0-9]{12}:role/.*", + "type": "string" + }, + "RunOrder": { + "type": "integer" + }, + "TimeoutInMinutes": { + "type": "integer" + } + }, + "required": [ + "ActionTypeId", + "Name" + ], + "type": "object" + }, + "ActionTypeId": { + "additionalProperties": false, + "properties": { + "Category": { + "enum": [ + "Approval", + "Build", + "Compute", + "Deploy", + "Invoke", + "Source", + "Test" + ], + "type": "string" + }, + "Owner": { + "enum": [ + "AWS", + "Custom", + "ThirdParty" + ], + "type": "string" + }, + "Provider": { + "type": "string" + }, + "Version": { + "type": "string" + } + }, + "required": [ + "Owner", + "Category", + "Version", + "Provider" + ], + "type": "object" + }, + "ArtifactStore": { + "additionalProperties": false, + "properties": { + "EncryptionKey": { + "$ref": "#/definitions/EncryptionKey" + }, + "Location": { + "type": "string" + }, + "Type": { + "enum": [ + "S3" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Location" + ], + "type": "object" + }, + "ArtifactStoreMap": { + "additionalProperties": false, + "properties": { + "ArtifactStore": { + "$ref": "#/definitions/ArtifactStore" + }, + "Region": { + "type": "string" + } + }, + "required": [ + "ArtifactStore", + "Region" + ], + "type": "object" + }, + "BeforeEntryConditions": { + "additionalProperties": false, + "properties": { + "Conditions": { + "items": { + "$ref": "#/definitions/Condition" + }, + "type": "array", + "uniqueItems": true + } + }, + "type": "object" + }, + "BlockerDeclaration": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "Type": { + "enum": [ + "Schedule" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Name" + ], + "type": "object" + }, + "Condition": { + "additionalProperties": false, + "properties": { + "Result": { + "type": "string" + }, + "Rules": { + "items": { + "$ref": "#/definitions/RuleDeclaration" + }, + "type": "array", + "uniqueItems": true + } + }, + "type": "object" + }, + "EncryptionKey": { + "additionalProperties": false, + "properties": { + "Id": { + "type": "string" + }, + "Type": { + "type": "string" + } + }, + "required": [ + "Type", + "Id" + ], + "type": "object" + }, + "FailureConditions": { + "additionalProperties": false, + "properties": { + "Conditions": { + "items": { + "$ref": "#/definitions/Condition" + }, + "type": "array", + "uniqueItems": true + }, + "Result": { + "enum": [ + "ROLLBACK" + ], + "type": "string" + } + }, + "type": "object" + }, + "GitBranchFilterCriteria": { + "additionalProperties": false, + "properties": { + "Excludes": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "Includes": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": true + } + }, + "type": "object" + }, + "GitConfiguration": { + "additionalProperties": false, + "properties": { + "PullRequest": { + "items": { + "$ref": "#/definitions/GitPullRequestFilter" + }, + "type": "array", + "uniqueItems": true + }, + "Push": { + "items": { + "$ref": "#/definitions/GitPushFilter" + }, + "type": "array", + "uniqueItems": true + }, + "SourceActionName": { + "type": "string" + } + }, + "required": [ + "SourceActionName" + ], + "type": "object" + }, + "GitFilePathFilterCriteria": { + "additionalProperties": false, + "properties": { + "Excludes": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "Includes": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": true + } + }, + "type": "object" + }, + "GitPullRequestFilter": { + "additionalProperties": false, + "properties": { + "Branches": { + "$ref": "#/definitions/GitBranchFilterCriteria" + }, + "Events": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "FilePaths": { + "$ref": "#/definitions/GitFilePathFilterCriteria" + } + }, + "type": "object" + }, + "GitPushFilter": { + "additionalProperties": false, + "properties": { + "Branches": { + "$ref": "#/definitions/GitBranchFilterCriteria" + }, + "FilePaths": { + "$ref": "#/definitions/GitFilePathFilterCriteria" + }, + "Tags": { + "$ref": "#/definitions/GitTagFilterCriteria" + } + }, + "type": "object" + }, + "GitTagFilterCriteria": { + "additionalProperties": false, + "properties": { + "Excludes": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "Includes": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": true + } + }, + "type": "object" + }, + "InputArtifact": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "OutputArtifact": { + "additionalProperties": false, + "properties": { + "Files": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "PipelineTriggerDeclaration": { + "additionalProperties": false, + "properties": { + "GitConfiguration": { + "$ref": "#/definitions/GitConfiguration" + }, + "ProviderType": { + "enum": [ + "CodeStarSourceConnection" + ], + "type": "string" + } + }, + "required": [ + "ProviderType" + ], + "type": "object" + }, + "RuleDeclaration": { + "additionalProperties": false, + "properties": { + "Configuration": { + "type": "object" + }, + "InputArtifacts": { + "items": { + "$ref": "#/definitions/InputArtifact" + }, + "type": "array", + "uniqueItems": true + }, + "Name": { + "type": "string" + }, + "Region": { + "type": "string" + }, + "RoleArn": { + "pattern": "arn:aws(-[\\w]+)*:iam::[0-9]{12}:role/.*", + "type": "string" + }, + "RuleTypeId": { + "$ref": "#/definitions/RuleTypeId" + } + }, + "type": "object" + }, + "RuleTypeId": { + "additionalProperties": false, + "properties": { + "Category": { + "type": "string" + }, + "Owner": { + "type": "string" + }, + "Provider": { + "type": "string" + }, + "Version": { + "type": "string" + } + }, + "type": "object" + }, + "StageDeclaration": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/ActionDeclaration" + }, + "type": "array", + "uniqueItems": true + }, + "BeforeEntry": { + "$ref": "#/definitions/BeforeEntryConditions", + "type": "object" + }, + "Blockers": { + "items": { + "$ref": "#/definitions/BlockerDeclaration" + }, + "type": "array", + "uniqueItems": true + }, + "Name": { + "type": "string" + }, + "OnFailure": { + "$ref": "#/definitions/FailureConditions", + "type": "object" + }, + "OnSuccess": { + "$ref": "#/definitions/SuccessConditions", + "type": "object" + } + }, + "required": [ + "Actions", + "Name" + ], + "type": "object" + }, + "StageTransition": { + "additionalProperties": false, + "properties": { + "Reason": { + "type": "string" + }, + "StageName": { + "type": "string" + } + }, + "required": [ + "StageName", + "Reason" + ], + "type": "object" + }, + "SuccessConditions": { + "additionalProperties": false, + "properties": { + "Conditions": { + "items": { + "$ref": "#/definitions/Condition" + }, + "type": "array", + "uniqueItems": true + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + }, + "VariableDeclaration": { + "additionalProperties": false, + "properties": { + "DefaultValue": { + "type": "string" + }, + "Description": { + "type": "string" + }, + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Name" + ], + "properties": { + "ArtifactStore": { + "$ref": "#/definitions/ArtifactStore" + }, + "ArtifactStores": { + "items": { + "$ref": "#/definitions/ArtifactStoreMap" + }, + "type": "array", + "uniqueItems": true + }, + "DisableInboundStageTransitions": { + "items": { + "$ref": "#/definitions/StageTransition" + }, + "type": "array", + "uniqueItems": true + }, + "ExecutionMode": { + "default": "SUPERSEDED", + "enum": [ + "QUEUED", + "SUPERSEDED", + "PARALLEL" + ], + "type": "string" + }, + "Name": { + "type": "string" + }, + "PipelineType": { + "enum": [ + "V1", + "V2" + ], + "type": "string" + }, + "RestartExecutionOnUpdate": { + "type": "boolean" + }, + "RoleArn": { + "pattern": "arn:aws(-[\\w]+)*:iam::[0-9]{12}:role/.*", + "type": "string" + }, + "Stages": { + "items": { + "$ref": "#/definitions/StageDeclaration" + }, + "type": "array", + "uniqueItems": true + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": false + }, + "Triggers": { + "items": { + "$ref": "#/definitions/PipelineTriggerDeclaration" + }, + "type": "array", + "uniqueItems": true + }, + "Variables": { + "items": { + "$ref": "#/definitions/VariableDeclaration" + }, + "type": "array", + "uniqueItems": true + }, + "Version": { + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Version" + ], + "required": [ + "Stages", + "RoleArn" + ], + "requiredXor": [ + "ArtifactStore", + "ArtifactStores" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-codepipeline", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::CodePipeline::Pipeline", + "writeOnlyProperties": [ + "/properties/RestartExecutionOnUpdate" + ] +} diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/aws-m2-application.json b/src/cfnlint/data/schemas/providers/eu_central_1/aws-m2-application.json new file mode 100644 index 0000000000..12f0ef73da --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_1/aws-m2-application.json @@ -0,0 +1,121 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/EngineType", + "/properties/Name", + "/properties/KmsKeyId", + "/properties/RoleArn" + ], + "definitions": { + "Definition": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "S3Location": { + "pattern": "^\\S{1,2000}$", + "type": "string" + } + }, + "required": [ + "S3Location" + ], + "title": "S3Location", + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "Content": { + "maxLength": 6500, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Content" + ], + "title": "Content", + "type": "object" + } + ] + }, + "EngineType": { + "enum": [ + "microfocus", + "bluage" + ], + "type": "string" + }, + "TagMap": { + "additionalProperties": false, + "maxProperties": 200, + "minProperties": 0, + "patternProperties": { + "^(?!aws:).+$": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/ApplicationArn" + ], + "properties": { + "ApplicationArn": { + "pattern": "^arn:(aws|aws-cn|aws-iso|aws-iso-[a-z]{1}|aws-us-gov):[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:([a-z]{2}-((iso[a-z]{0,1}-)|(gov-)){0,1}[a-z]+-[0-9]):[0-9]{12}:[A-Za-z0-9/][A-Za-z0-9:_/+=,@.-]{0,1023}$", + "type": "string" + }, + "ApplicationId": { + "pattern": "^\\S{1,80}$", + "type": "string" + }, + "Definition": { + "$ref": "#/definitions/Definition" + }, + "Description": { + "maxLength": 500, + "minLength": 0, + "type": "string" + }, + "EngineType": { + "$ref": "#/definitions/EngineType" + }, + "KmsKeyId": { + "maxLength": 2048, + "type": "string" + }, + "Name": { + "pattern": "^[A-Za-z0-9][A-Za-z0-9_\\-]{1,59}$", + "type": "string" + }, + "RoleArn": { + "pattern": "^arn:(aws|aws-cn|aws-iso|aws-iso-[a-z]{1}|aws-us-gov):[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:([a-z]{2}-((iso[a-z]{0,1}-)|(gov-)){0,1}[a-z]+-[0-9]|):[0-9]{12}:[A-Za-z0-9/][A-Za-z0-9:_/+=,@.-]{0,1023}$", + "type": "string" + }, + "Tags": { + "$ref": "#/definitions/TagMap" + } + }, + "readOnlyProperties": [ + "/properties/ApplicationArn", + "/properties/ApplicationId" + ], + "required": [ + "EngineType", + "Name" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::M2::Application", + "writeOnlyProperties": [ + "/properties/Definition" + ] +} diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/aws-medialive-channel.json b/src/cfnlint/data/schemas/providers/eu_central_1/aws-medialive-channel.json new file mode 100644 index 0000000000..a6c907c033 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_1/aws-medialive-channel.json @@ -0,0 +1,3591 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Vpc", + "/properties/AnywhereSettings" + ], + "definitions": { + "AacSettings": { + "additionalProperties": false, + "properties": { + "Bitrate": { + "type": "number" + }, + "CodingMode": { + "type": "string" + }, + "InputType": { + "type": "string" + }, + "Profile": { + "type": "string" + }, + "RateControlMode": { + "type": "string" + }, + "RawFormat": { + "type": "string" + }, + "SampleRate": { + "type": "number" + }, + "Spec": { + "type": "string" + }, + "VbrQuality": { + "type": "string" + } + }, + "type": "object" + }, + "Ac3Settings": { + "additionalProperties": false, + "properties": { + "AttenuationControl": { + "type": "string" + }, + "Bitrate": { + "type": "number" + }, + "BitstreamMode": { + "type": "string" + }, + "CodingMode": { + "type": "string" + }, + "Dialnorm": { + "type": "integer" + }, + "DrcProfile": { + "type": "string" + }, + "LfeFilter": { + "type": "string" + }, + "MetadataControl": { + "type": "string" + } + }, + "type": "object" + }, + "AncillarySourceSettings": { + "additionalProperties": false, + "properties": { + "SourceAncillaryChannelNumber": { + "type": "integer" + } + }, + "type": "object" + }, + "AnywhereSettings": { + "additionalProperties": false, + "properties": { + "ChannelPlacementGroupId": { + "type": "string" + }, + "ClusterId": { + "type": "string" + } + }, + "type": "object" + }, + "ArchiveCdnSettings": { + "additionalProperties": false, + "properties": { + "ArchiveS3Settings": { + "$ref": "#/definitions/ArchiveS3Settings" + } + }, + "type": "object" + }, + "ArchiveContainerSettings": { + "additionalProperties": false, + "properties": { + "M2tsSettings": { + "$ref": "#/definitions/M2tsSettings" + }, + "RawSettings": { + "$ref": "#/definitions/RawSettings" + } + }, + "type": "object" + }, + "ArchiveGroupSettings": { + "additionalProperties": false, + "properties": { + "ArchiveCdnSettings": { + "$ref": "#/definitions/ArchiveCdnSettings" + }, + "Destination": { + "$ref": "#/definitions/OutputLocationRef" + }, + "RolloverInterval": { + "type": "integer" + } + }, + "type": "object" + }, + "ArchiveOutputSettings": { + "additionalProperties": false, + "properties": { + "ContainerSettings": { + "$ref": "#/definitions/ArchiveContainerSettings" + }, + "Extension": { + "type": "string" + }, + "NameModifier": { + "type": "string" + } + }, + "type": "object" + }, + "ArchiveS3Settings": { + "additionalProperties": false, + "properties": { + "CannedAcl": { + "type": "string" + } + }, + "type": "object" + }, + "AribDestinationSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "AribSourceSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "AudioChannelMapping": { + "additionalProperties": false, + "properties": { + "InputChannelLevels": { + "items": { + "$ref": "#/definitions/InputChannelLevel" + }, + "type": "array", + "uniqueItems": false + }, + "OutputChannel": { + "type": "integer" + } + }, + "type": "object" + }, + "AudioCodecSettings": { + "additionalProperties": false, + "properties": { + "AacSettings": { + "$ref": "#/definitions/AacSettings" + }, + "Ac3Settings": { + "$ref": "#/definitions/Ac3Settings" + }, + "Eac3AtmosSettings": { + "$ref": "#/definitions/Eac3AtmosSettings" + }, + "Eac3Settings": { + "$ref": "#/definitions/Eac3Settings" + }, + "Mp2Settings": { + "$ref": "#/definitions/Mp2Settings" + }, + "PassThroughSettings": { + "$ref": "#/definitions/PassThroughSettings" + }, + "WavSettings": { + "$ref": "#/definitions/WavSettings" + } + }, + "type": "object" + }, + "AudioDescription": { + "additionalProperties": false, + "properties": { + "AudioDashRoles": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "AudioNormalizationSettings": { + "$ref": "#/definitions/AudioNormalizationSettings" + }, + "AudioSelectorName": { + "type": "string" + }, + "AudioType": { + "type": "string" + }, + "AudioTypeControl": { + "type": "string" + }, + "AudioWatermarkingSettings": { + "$ref": "#/definitions/AudioWatermarkSettings" + }, + "CodecSettings": { + "$ref": "#/definitions/AudioCodecSettings" + }, + "DvbDashAccessibility": { + "type": "string" + }, + "LanguageCode": { + "type": "string" + }, + "LanguageCodeControl": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "RemixSettings": { + "$ref": "#/definitions/RemixSettings" + }, + "StreamName": { + "type": "string" + } + }, + "type": "object" + }, + "AudioDolbyEDecode": { + "additionalProperties": false, + "properties": { + "ProgramSelection": { + "type": "string" + } + }, + "type": "object" + }, + "AudioHlsRenditionSelection": { + "additionalProperties": false, + "properties": { + "GroupId": { + "type": "string" + }, + "Name": { + "type": "string" + } + }, + "type": "object" + }, + "AudioLanguageSelection": { + "additionalProperties": false, + "properties": { + "LanguageCode": { + "type": "string" + }, + "LanguageSelectionPolicy": { + "type": "string" + } + }, + "type": "object" + }, + "AudioNormalizationSettings": { + "additionalProperties": false, + "properties": { + "Algorithm": { + "type": "string" + }, + "AlgorithmControl": { + "type": "string" + }, + "TargetLkfs": { + "type": "number" + } + }, + "type": "object" + }, + "AudioOnlyHlsSettings": { + "additionalProperties": false, + "properties": { + "AudioGroupId": { + "type": "string" + }, + "AudioOnlyImage": { + "$ref": "#/definitions/InputLocation" + }, + "AudioTrackType": { + "type": "string" + }, + "SegmentType": { + "type": "string" + } + }, + "type": "object" + }, + "AudioPidSelection": { + "additionalProperties": false, + "properties": { + "Pid": { + "type": "integer" + } + }, + "type": "object" + }, + "AudioSelector": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "SelectorSettings": { + "$ref": "#/definitions/AudioSelectorSettings" + } + }, + "type": "object" + }, + "AudioSelectorSettings": { + "additionalProperties": false, + "properties": { + "AudioHlsRenditionSelection": { + "$ref": "#/definitions/AudioHlsRenditionSelection" + }, + "AudioLanguageSelection": { + "$ref": "#/definitions/AudioLanguageSelection" + }, + "AudioPidSelection": { + "$ref": "#/definitions/AudioPidSelection" + }, + "AudioTrackSelection": { + "$ref": "#/definitions/AudioTrackSelection" + } + }, + "type": "object" + }, + "AudioSilenceFailoverSettings": { + "additionalProperties": false, + "properties": { + "AudioSelectorName": { + "type": "string" + }, + "AudioSilenceThresholdMsec": { + "type": "integer" + } + }, + "type": "object" + }, + "AudioTrack": { + "additionalProperties": false, + "properties": { + "Track": { + "type": "integer" + } + }, + "type": "object" + }, + "AudioTrackSelection": { + "additionalProperties": false, + "properties": { + "DolbyEDecode": { + "$ref": "#/definitions/AudioDolbyEDecode" + }, + "Tracks": { + "items": { + "$ref": "#/definitions/AudioTrack" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "AudioWatermarkSettings": { + "additionalProperties": false, + "properties": { + "NielsenWatermarksSettings": { + "$ref": "#/definitions/NielsenWatermarksSettings" + } + }, + "type": "object" + }, + "AutomaticInputFailoverSettings": { + "additionalProperties": false, + "properties": { + "ErrorClearTimeMsec": { + "type": "integer" + }, + "FailoverConditions": { + "items": { + "$ref": "#/definitions/FailoverCondition" + }, + "type": "array", + "uniqueItems": false + }, + "InputPreference": { + "type": "string" + }, + "SecondaryInputId": { + "type": "string" + } + }, + "type": "object" + }, + "Av1ColorSpaceSettings": { + "additionalProperties": false, + "properties": { + "ColorSpacePassthroughSettings": { + "$ref": "#/definitions/ColorSpacePassthroughSettings" + }, + "Hdr10Settings": { + "$ref": "#/definitions/Hdr10Settings" + }, + "Rec601Settings": { + "$ref": "#/definitions/Rec601Settings" + }, + "Rec709Settings": { + "$ref": "#/definitions/Rec709Settings" + } + }, + "type": "object" + }, + "Av1Settings": { + "additionalProperties": false, + "properties": { + "AfdSignaling": { + "type": "string" + }, + "BufSize": { + "type": "integer" + }, + "ColorSpaceSettings": { + "$ref": "#/definitions/Av1ColorSpaceSettings" + }, + "FixedAfd": { + "type": "string" + }, + "FramerateDenominator": { + "type": "integer" + }, + "FramerateNumerator": { + "type": "integer" + }, + "GopSize": { + "type": "number" + }, + "GopSizeUnits": { + "type": "string" + }, + "Level": { + "type": "string" + }, + "LookAheadRateControl": { + "type": "string" + }, + "MaxBitrate": { + "type": "integer" + }, + "MinIInterval": { + "type": "integer" + }, + "ParDenominator": { + "type": "integer" + }, + "ParNumerator": { + "type": "integer" + }, + "QvbrQualityLevel": { + "type": "integer" + }, + "SceneChangeDetect": { + "type": "string" + }, + "TimecodeBurninSettings": { + "$ref": "#/definitions/TimecodeBurninSettings" + } + }, + "type": "object" + }, + "AvailBlanking": { + "additionalProperties": false, + "properties": { + "AvailBlankingImage": { + "$ref": "#/definitions/InputLocation" + }, + "State": { + "type": "string" + } + }, + "type": "object" + }, + "AvailConfiguration": { + "additionalProperties": false, + "properties": { + "AvailSettings": { + "$ref": "#/definitions/AvailSettings" + }, + "Scte35SegmentationScope": { + "type": "string" + } + }, + "type": "object" + }, + "AvailSettings": { + "additionalProperties": false, + "properties": { + "Esam": { + "$ref": "#/definitions/Esam" + }, + "Scte35SpliceInsert": { + "$ref": "#/definitions/Scte35SpliceInsert" + }, + "Scte35TimeSignalApos": { + "$ref": "#/definitions/Scte35TimeSignalApos" + } + }, + "type": "object" + }, + "BandwidthReductionFilterSettings": { + "additionalProperties": false, + "properties": { + "PostFilterSharpening": { + "type": "string" + }, + "Strength": { + "type": "string" + } + }, + "type": "object" + }, + "BlackoutSlate": { + "additionalProperties": false, + "properties": { + "BlackoutSlateImage": { + "$ref": "#/definitions/InputLocation" + }, + "NetworkEndBlackout": { + "type": "string" + }, + "NetworkEndBlackoutImage": { + "$ref": "#/definitions/InputLocation" + }, + "NetworkId": { + "type": "string" + }, + "State": { + "type": "string" + } + }, + "type": "object" + }, + "BurnInDestinationSettings": { + "additionalProperties": false, + "properties": { + "Alignment": { + "type": "string" + }, + "BackgroundColor": { + "type": "string" + }, + "BackgroundOpacity": { + "type": "integer" + }, + "Font": { + "$ref": "#/definitions/InputLocation" + }, + "FontColor": { + "type": "string" + }, + "FontOpacity": { + "type": "integer" + }, + "FontResolution": { + "type": "integer" + }, + "FontSize": { + "type": "string" + }, + "OutlineColor": { + "type": "string" + }, + "OutlineSize": { + "type": "integer" + }, + "ShadowColor": { + "type": "string" + }, + "ShadowOpacity": { + "type": "integer" + }, + "ShadowXOffset": { + "type": "integer" + }, + "ShadowYOffset": { + "type": "integer" + }, + "TeletextGridControl": { + "type": "string" + }, + "XPosition": { + "type": "integer" + }, + "YPosition": { + "type": "integer" + } + }, + "type": "object" + }, + "CaptionDescription": { + "additionalProperties": false, + "properties": { + "Accessibility": { + "type": "string" + }, + "CaptionDashRoles": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "CaptionSelectorName": { + "type": "string" + }, + "DestinationSettings": { + "$ref": "#/definitions/CaptionDestinationSettings" + }, + "DvbDashAccessibility": { + "type": "string" + }, + "LanguageCode": { + "type": "string" + }, + "LanguageDescription": { + "type": "string" + }, + "Name": { + "type": "string" + } + }, + "type": "object" + }, + "CaptionDestinationSettings": { + "additionalProperties": false, + "properties": { + "AribDestinationSettings": { + "$ref": "#/definitions/AribDestinationSettings" + }, + "BurnInDestinationSettings": { + "$ref": "#/definitions/BurnInDestinationSettings" + }, + "DvbSubDestinationSettings": { + "$ref": "#/definitions/DvbSubDestinationSettings" + }, + "EbuTtDDestinationSettings": { + "$ref": "#/definitions/EbuTtDDestinationSettings" + }, + "EmbeddedDestinationSettings": { + "$ref": "#/definitions/EmbeddedDestinationSettings" + }, + "EmbeddedPlusScte20DestinationSettings": { + "$ref": "#/definitions/EmbeddedPlusScte20DestinationSettings" + }, + "RtmpCaptionInfoDestinationSettings": { + "$ref": "#/definitions/RtmpCaptionInfoDestinationSettings" + }, + "Scte20PlusEmbeddedDestinationSettings": { + "$ref": "#/definitions/Scte20PlusEmbeddedDestinationSettings" + }, + "Scte27DestinationSettings": { + "$ref": "#/definitions/Scte27DestinationSettings" + }, + "SmpteTtDestinationSettings": { + "$ref": "#/definitions/SmpteTtDestinationSettings" + }, + "TeletextDestinationSettings": { + "$ref": "#/definitions/TeletextDestinationSettings" + }, + "TtmlDestinationSettings": { + "$ref": "#/definitions/TtmlDestinationSettings" + }, + "WebvttDestinationSettings": { + "$ref": "#/definitions/WebvttDestinationSettings" + } + }, + "type": "object" + }, + "CaptionLanguageMapping": { + "additionalProperties": false, + "properties": { + "CaptionChannel": { + "type": "integer" + }, + "LanguageCode": { + "type": "string" + }, + "LanguageDescription": { + "type": "string" + } + }, + "type": "object" + }, + "CaptionRectangle": { + "additionalProperties": false, + "properties": { + "Height": { + "type": "number" + }, + "LeftOffset": { + "type": "number" + }, + "TopOffset": { + "type": "number" + }, + "Width": { + "type": "number" + } + }, + "type": "object" + }, + "CaptionSelector": { + "additionalProperties": false, + "properties": { + "LanguageCode": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "SelectorSettings": { + "$ref": "#/definitions/CaptionSelectorSettings" + } + }, + "type": "object" + }, + "CaptionSelectorSettings": { + "additionalProperties": false, + "properties": { + "AncillarySourceSettings": { + "$ref": "#/definitions/AncillarySourceSettings" + }, + "AribSourceSettings": { + "$ref": "#/definitions/AribSourceSettings" + }, + "DvbSubSourceSettings": { + "$ref": "#/definitions/DvbSubSourceSettings" + }, + "EmbeddedSourceSettings": { + "$ref": "#/definitions/EmbeddedSourceSettings" + }, + "Scte20SourceSettings": { + "$ref": "#/definitions/Scte20SourceSettings" + }, + "Scte27SourceSettings": { + "$ref": "#/definitions/Scte27SourceSettings" + }, + "TeletextSourceSettings": { + "$ref": "#/definitions/TeletextSourceSettings" + } + }, + "type": "object" + }, + "CdiInputSpecification": { + "additionalProperties": false, + "properties": { + "Resolution": { + "type": "string" + } + }, + "type": "object" + }, + "CmafIngestGroupSettings": { + "additionalProperties": false, + "properties": { + "Destination": { + "$ref": "#/definitions/OutputLocationRef" + }, + "NielsenId3Behavior": { + "type": "string" + }, + "Scte35Type": { + "type": "string" + }, + "SegmentLength": { + "type": "integer" + }, + "SegmentLengthUnits": { + "type": "string" + }, + "SendDelayMs": { + "type": "integer" + } + }, + "type": "object" + }, + "CmafIngestOutputSettings": { + "additionalProperties": false, + "properties": { + "NameModifier": { + "type": "string" + } + }, + "type": "object" + }, + "ColorCorrection": { + "additionalProperties": false, + "properties": { + "InputColorSpace": { + "type": "string" + }, + "OutputColorSpace": { + "type": "string" + }, + "Uri": { + "type": "string" + } + }, + "type": "object" + }, + "ColorCorrectionSettings": { + "additionalProperties": false, + "properties": { + "GlobalColorCorrections": { + "items": { + "$ref": "#/definitions/ColorCorrection" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "ColorSpacePassthroughSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "DolbyVision81Settings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "DvbNitSettings": { + "additionalProperties": false, + "properties": { + "NetworkId": { + "type": "integer" + }, + "NetworkName": { + "type": "string" + }, + "RepInterval": { + "type": "integer" + } + }, + "type": "object" + }, + "DvbSdtSettings": { + "additionalProperties": false, + "properties": { + "OutputSdt": { + "type": "string" + }, + "RepInterval": { + "type": "integer" + }, + "ServiceName": { + "type": "string" + }, + "ServiceProviderName": { + "type": "string" + } + }, + "type": "object" + }, + "DvbSubDestinationSettings": { + "additionalProperties": false, + "properties": { + "Alignment": { + "type": "string" + }, + "BackgroundColor": { + "type": "string" + }, + "BackgroundOpacity": { + "type": "integer" + }, + "Font": { + "$ref": "#/definitions/InputLocation" + }, + "FontColor": { + "type": "string" + }, + "FontOpacity": { + "type": "integer" + }, + "FontResolution": { + "type": "integer" + }, + "FontSize": { + "type": "string" + }, + "OutlineColor": { + "type": "string" + }, + "OutlineSize": { + "type": "integer" + }, + "ShadowColor": { + "type": "string" + }, + "ShadowOpacity": { + "type": "integer" + }, + "ShadowXOffset": { + "type": "integer" + }, + "ShadowYOffset": { + "type": "integer" + }, + "TeletextGridControl": { + "type": "string" + }, + "XPosition": { + "type": "integer" + }, + "YPosition": { + "type": "integer" + } + }, + "type": "object" + }, + "DvbSubSourceSettings": { + "additionalProperties": false, + "properties": { + "OcrLanguage": { + "type": "string" + }, + "Pid": { + "type": "integer" + } + }, + "type": "object" + }, + "DvbTdtSettings": { + "additionalProperties": false, + "properties": { + "RepInterval": { + "type": "integer" + } + }, + "type": "object" + }, + "Eac3AtmosSettings": { + "additionalProperties": false, + "properties": { + "Bitrate": { + "type": "number" + }, + "CodingMode": { + "type": "string" + }, + "Dialnorm": { + "type": "integer" + }, + "DrcLine": { + "type": "string" + }, + "DrcRf": { + "type": "string" + }, + "HeightTrim": { + "type": "number" + }, + "SurroundTrim": { + "type": "number" + } + }, + "type": "object" + }, + "Eac3Settings": { + "additionalProperties": false, + "properties": { + "AttenuationControl": { + "type": "string" + }, + "Bitrate": { + "type": "number" + }, + "BitstreamMode": { + "type": "string" + }, + "CodingMode": { + "type": "string" + }, + "DcFilter": { + "type": "string" + }, + "Dialnorm": { + "type": "integer" + }, + "DrcLine": { + "type": "string" + }, + "DrcRf": { + "type": "string" + }, + "LfeControl": { + "type": "string" + }, + "LfeFilter": { + "type": "string" + }, + "LoRoCenterMixLevel": { + "type": "number" + }, + "LoRoSurroundMixLevel": { + "type": "number" + }, + "LtRtCenterMixLevel": { + "type": "number" + }, + "LtRtSurroundMixLevel": { + "type": "number" + }, + "MetadataControl": { + "type": "string" + }, + "PassthroughControl": { + "type": "string" + }, + "PhaseControl": { + "type": "string" + }, + "StereoDownmix": { + "type": "string" + }, + "SurroundExMode": { + "type": "string" + }, + "SurroundMode": { + "type": "string" + } + }, + "type": "object" + }, + "EbuTtDDestinationSettings": { + "additionalProperties": false, + "properties": { + "CopyrightHolder": { + "type": "string" + }, + "FillLineGap": { + "type": "string" + }, + "FontFamily": { + "type": "string" + }, + "StyleControl": { + "type": "string" + } + }, + "type": "object" + }, + "EmbeddedDestinationSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "EmbeddedPlusScte20DestinationSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "EmbeddedSourceSettings": { + "additionalProperties": false, + "properties": { + "Convert608To708": { + "type": "string" + }, + "Scte20Detection": { + "type": "string" + }, + "Source608ChannelNumber": { + "type": "integer" + }, + "Source608TrackNumber": { + "type": "integer" + } + }, + "type": "object" + }, + "EncoderSettings": { + "additionalProperties": false, + "properties": { + "AudioDescriptions": { + "items": { + "$ref": "#/definitions/AudioDescription" + }, + "type": "array", + "uniqueItems": false + }, + "AvailBlanking": { + "$ref": "#/definitions/AvailBlanking" + }, + "AvailConfiguration": { + "$ref": "#/definitions/AvailConfiguration" + }, + "BlackoutSlate": { + "$ref": "#/definitions/BlackoutSlate" + }, + "CaptionDescriptions": { + "items": { + "$ref": "#/definitions/CaptionDescription" + }, + "type": "array", + "uniqueItems": false + }, + "ColorCorrectionSettings": { + "$ref": "#/definitions/ColorCorrectionSettings" + }, + "FeatureActivations": { + "$ref": "#/definitions/FeatureActivations" + }, + "GlobalConfiguration": { + "$ref": "#/definitions/GlobalConfiguration" + }, + "MotionGraphicsConfiguration": { + "$ref": "#/definitions/MotionGraphicsConfiguration" + }, + "NielsenConfiguration": { + "$ref": "#/definitions/NielsenConfiguration" + }, + "OutputGroups": { + "items": { + "$ref": "#/definitions/OutputGroup" + }, + "type": "array", + "uniqueItems": false + }, + "ThumbnailConfiguration": { + "$ref": "#/definitions/ThumbnailConfiguration" + }, + "TimecodeConfig": { + "$ref": "#/definitions/TimecodeConfig" + }, + "VideoDescriptions": { + "items": { + "$ref": "#/definitions/VideoDescription" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "EpochLockingSettings": { + "additionalProperties": false, + "properties": { + "CustomEpoch": { + "type": "string" + }, + "JamSyncTime": { + "type": "string" + } + }, + "type": "object" + }, + "Esam": { + "additionalProperties": false, + "properties": { + "AcquisitionPointId": { + "type": "string" + }, + "AdAvailOffset": { + "type": "integer" + }, + "PasswordParam": { + "type": "string" + }, + "PoisEndpoint": { + "type": "string" + }, + "Username": { + "type": "string" + }, + "ZoneIdentity": { + "type": "string" + } + }, + "type": "object" + }, + "FailoverCondition": { + "additionalProperties": false, + "properties": { + "FailoverConditionSettings": { + "$ref": "#/definitions/FailoverConditionSettings" + } + }, + "type": "object" + }, + "FailoverConditionSettings": { + "additionalProperties": false, + "properties": { + "AudioSilenceSettings": { + "$ref": "#/definitions/AudioSilenceFailoverSettings" + }, + "InputLossSettings": { + "$ref": "#/definitions/InputLossFailoverSettings" + }, + "VideoBlackSettings": { + "$ref": "#/definitions/VideoBlackFailoverSettings" + } + }, + "type": "object" + }, + "FeatureActivations": { + "additionalProperties": false, + "properties": { + "InputPrepareScheduleActions": { + "type": "string" + }, + "OutputStaticImageOverlayScheduleActions": { + "type": "string" + } + }, + "type": "object" + }, + "FecOutputSettings": { + "additionalProperties": false, + "properties": { + "ColumnDepth": { + "type": "integer" + }, + "IncludeFec": { + "type": "string" + }, + "RowLength": { + "type": "integer" + } + }, + "type": "object" + }, + "Fmp4HlsSettings": { + "additionalProperties": false, + "properties": { + "AudioRenditionSets": { + "type": "string" + }, + "NielsenId3Behavior": { + "type": "string" + }, + "TimedMetadataBehavior": { + "type": "string" + } + }, + "type": "object" + }, + "FrameCaptureCdnSettings": { + "additionalProperties": false, + "properties": { + "FrameCaptureS3Settings": { + "$ref": "#/definitions/FrameCaptureS3Settings" + } + }, + "type": "object" + }, + "FrameCaptureGroupSettings": { + "additionalProperties": false, + "properties": { + "Destination": { + "$ref": "#/definitions/OutputLocationRef" + }, + "FrameCaptureCdnSettings": { + "$ref": "#/definitions/FrameCaptureCdnSettings" + } + }, + "type": "object" + }, + "FrameCaptureHlsSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "FrameCaptureOutputSettings": { + "additionalProperties": false, + "properties": { + "NameModifier": { + "type": "string" + } + }, + "type": "object" + }, + "FrameCaptureS3Settings": { + "additionalProperties": false, + "properties": { + "CannedAcl": { + "type": "string" + } + }, + "type": "object" + }, + "FrameCaptureSettings": { + "additionalProperties": false, + "properties": { + "CaptureInterval": { + "type": "integer" + }, + "CaptureIntervalUnits": { + "type": "string" + }, + "TimecodeBurninSettings": { + "$ref": "#/definitions/TimecodeBurninSettings" + } + }, + "type": "object" + }, + "GlobalConfiguration": { + "additionalProperties": false, + "properties": { + "InitialAudioGain": { + "type": "integer" + }, + "InputEndAction": { + "type": "string" + }, + "InputLossBehavior": { + "$ref": "#/definitions/InputLossBehavior" + }, + "OutputLockingMode": { + "type": "string" + }, + "OutputLockingSettings": { + "$ref": "#/definitions/OutputLockingSettings" + }, + "OutputTimingSource": { + "type": "string" + }, + "SupportLowFramerateInputs": { + "type": "string" + } + }, + "type": "object" + }, + "H264ColorSpaceSettings": { + "additionalProperties": false, + "properties": { + "ColorSpacePassthroughSettings": { + "$ref": "#/definitions/ColorSpacePassthroughSettings" + }, + "Rec601Settings": { + "$ref": "#/definitions/Rec601Settings" + }, + "Rec709Settings": { + "$ref": "#/definitions/Rec709Settings" + } + }, + "type": "object" + }, + "H264FilterSettings": { + "additionalProperties": false, + "properties": { + "BandwidthReductionFilterSettings": { + "$ref": "#/definitions/BandwidthReductionFilterSettings" + }, + "TemporalFilterSettings": { + "$ref": "#/definitions/TemporalFilterSettings" + } + }, + "type": "object" + }, + "H264Settings": { + "additionalProperties": false, + "properties": { + "AdaptiveQuantization": { + "type": "string" + }, + "AfdSignaling": { + "type": "string" + }, + "Bitrate": { + "type": "integer" + }, + "BufFillPct": { + "type": "integer" + }, + "BufSize": { + "type": "integer" + }, + "ColorMetadata": { + "type": "string" + }, + "ColorSpaceSettings": { + "$ref": "#/definitions/H264ColorSpaceSettings" + }, + "EntropyEncoding": { + "type": "string" + }, + "FilterSettings": { + "$ref": "#/definitions/H264FilterSettings" + }, + "FixedAfd": { + "type": "string" + }, + "FlickerAq": { + "type": "string" + }, + "ForceFieldPictures": { + "type": "string" + }, + "FramerateControl": { + "type": "string" + }, + "FramerateDenominator": { + "type": "integer" + }, + "FramerateNumerator": { + "type": "integer" + }, + "GopBReference": { + "type": "string" + }, + "GopClosedCadence": { + "type": "integer" + }, + "GopNumBFrames": { + "type": "integer" + }, + "GopSize": { + "type": "number" + }, + "GopSizeUnits": { + "type": "string" + }, + "Level": { + "type": "string" + }, + "LookAheadRateControl": { + "type": "string" + }, + "MaxBitrate": { + "type": "integer" + }, + "MinIInterval": { + "type": "integer" + }, + "MinQp": { + "type": "integer" + }, + "NumRefFrames": { + "type": "integer" + }, + "ParControl": { + "type": "string" + }, + "ParDenominator": { + "type": "integer" + }, + "ParNumerator": { + "type": "integer" + }, + "Profile": { + "type": "string" + }, + "QualityLevel": { + "type": "string" + }, + "QvbrQualityLevel": { + "type": "integer" + }, + "RateControlMode": { + "type": "string" + }, + "ScanType": { + "type": "string" + }, + "SceneChangeDetect": { + "type": "string" + }, + "Slices": { + "type": "integer" + }, + "Softness": { + "type": "integer" + }, + "SpatialAq": { + "type": "string" + }, + "SubgopLength": { + "type": "string" + }, + "Syntax": { + "type": "string" + }, + "TemporalAq": { + "type": "string" + }, + "TimecodeBurninSettings": { + "$ref": "#/definitions/TimecodeBurninSettings" + }, + "TimecodeInsertion": { + "type": "string" + } + }, + "type": "object" + }, + "H265ColorSpaceSettings": { + "additionalProperties": false, + "properties": { + "ColorSpacePassthroughSettings": { + "$ref": "#/definitions/ColorSpacePassthroughSettings" + }, + "DolbyVision81Settings": { + "$ref": "#/definitions/DolbyVision81Settings" + }, + "Hdr10Settings": { + "$ref": "#/definitions/Hdr10Settings" + }, + "Rec601Settings": { + "$ref": "#/definitions/Rec601Settings" + }, + "Rec709Settings": { + "$ref": "#/definitions/Rec709Settings" + } + }, + "type": "object" + }, + "H265FilterSettings": { + "additionalProperties": false, + "properties": { + "BandwidthReductionFilterSettings": { + "$ref": "#/definitions/BandwidthReductionFilterSettings" + }, + "TemporalFilterSettings": { + "$ref": "#/definitions/TemporalFilterSettings" + } + }, + "type": "object" + }, + "H265Settings": { + "additionalProperties": false, + "properties": { + "AdaptiveQuantization": { + "type": "string" + }, + "AfdSignaling": { + "type": "string" + }, + "AlternativeTransferFunction": { + "type": "string" + }, + "Bitrate": { + "type": "integer" + }, + "BufSize": { + "type": "integer" + }, + "ColorMetadata": { + "type": "string" + }, + "ColorSpaceSettings": { + "$ref": "#/definitions/H265ColorSpaceSettings" + }, + "FilterSettings": { + "$ref": "#/definitions/H265FilterSettings" + }, + "FixedAfd": { + "type": "string" + }, + "FlickerAq": { + "type": "string" + }, + "FramerateDenominator": { + "type": "integer" + }, + "FramerateNumerator": { + "type": "integer" + }, + "GopClosedCadence": { + "type": "integer" + }, + "GopSize": { + "type": "number" + }, + "GopSizeUnits": { + "type": "string" + }, + "Level": { + "type": "string" + }, + "LookAheadRateControl": { + "type": "string" + }, + "MaxBitrate": { + "type": "integer" + }, + "MinIInterval": { + "type": "integer" + }, + "MinQp": { + "type": "integer" + }, + "MvOverPictureBoundaries": { + "type": "string" + }, + "MvTemporalPredictor": { + "type": "string" + }, + "ParDenominator": { + "type": "integer" + }, + "ParNumerator": { + "type": "integer" + }, + "Profile": { + "type": "string" + }, + "QvbrQualityLevel": { + "type": "integer" + }, + "RateControlMode": { + "type": "string" + }, + "ScanType": { + "type": "string" + }, + "SceneChangeDetect": { + "type": "string" + }, + "Slices": { + "type": "integer" + }, + "Tier": { + "type": "string" + }, + "TileHeight": { + "type": "integer" + }, + "TilePadding": { + "type": "string" + }, + "TileWidth": { + "type": "integer" + }, + "TimecodeBurninSettings": { + "$ref": "#/definitions/TimecodeBurninSettings" + }, + "TimecodeInsertion": { + "type": "string" + }, + "TreeblockSize": { + "type": "string" + } + }, + "type": "object" + }, + "Hdr10Settings": { + "additionalProperties": false, + "properties": { + "MaxCll": { + "type": "integer" + }, + "MaxFall": { + "type": "integer" + } + }, + "type": "object" + }, + "HlsAkamaiSettings": { + "additionalProperties": false, + "properties": { + "ConnectionRetryInterval": { + "type": "integer" + }, + "FilecacheDuration": { + "type": "integer" + }, + "HttpTransferMode": { + "type": "string" + }, + "NumRetries": { + "type": "integer" + }, + "RestartDelay": { + "type": "integer" + }, + "Salt": { + "type": "string" + }, + "Token": { + "type": "string" + } + }, + "type": "object" + }, + "HlsBasicPutSettings": { + "additionalProperties": false, + "properties": { + "ConnectionRetryInterval": { + "type": "integer" + }, + "FilecacheDuration": { + "type": "integer" + }, + "NumRetries": { + "type": "integer" + }, + "RestartDelay": { + "type": "integer" + } + }, + "type": "object" + }, + "HlsCdnSettings": { + "additionalProperties": false, + "properties": { + "HlsAkamaiSettings": { + "$ref": "#/definitions/HlsAkamaiSettings" + }, + "HlsBasicPutSettings": { + "$ref": "#/definitions/HlsBasicPutSettings" + }, + "HlsMediaStoreSettings": { + "$ref": "#/definitions/HlsMediaStoreSettings" + }, + "HlsS3Settings": { + "$ref": "#/definitions/HlsS3Settings" + }, + "HlsWebdavSettings": { + "$ref": "#/definitions/HlsWebdavSettings" + } + }, + "type": "object" + }, + "HlsGroupSettings": { + "additionalProperties": false, + "properties": { + "AdMarkers": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "BaseUrlContent": { + "type": "string" + }, + "BaseUrlContent1": { + "type": "string" + }, + "BaseUrlManifest": { + "type": "string" + }, + "BaseUrlManifest1": { + "type": "string" + }, + "CaptionLanguageMappings": { + "items": { + "$ref": "#/definitions/CaptionLanguageMapping" + }, + "type": "array", + "uniqueItems": false + }, + "CaptionLanguageSetting": { + "type": "string" + }, + "ClientCache": { + "type": "string" + }, + "CodecSpecification": { + "type": "string" + }, + "ConstantIv": { + "type": "string" + }, + "Destination": { + "$ref": "#/definitions/OutputLocationRef" + }, + "DirectoryStructure": { + "type": "string" + }, + "DiscontinuityTags": { + "type": "string" + }, + "EncryptionType": { + "type": "string" + }, + "HlsCdnSettings": { + "$ref": "#/definitions/HlsCdnSettings" + }, + "HlsId3SegmentTagging": { + "type": "string" + }, + "IFrameOnlyPlaylists": { + "type": "string" + }, + "IncompleteSegmentBehavior": { + "type": "string" + }, + "IndexNSegments": { + "type": "integer" + }, + "InputLossAction": { + "type": "string" + }, + "IvInManifest": { + "type": "string" + }, + "IvSource": { + "type": "string" + }, + "KeepSegments": { + "type": "integer" + }, + "KeyFormat": { + "type": "string" + }, + "KeyFormatVersions": { + "type": "string" + }, + "KeyProviderSettings": { + "$ref": "#/definitions/KeyProviderSettings" + }, + "ManifestCompression": { + "type": "string" + }, + "ManifestDurationFormat": { + "type": "string" + }, + "MinSegmentLength": { + "type": "integer" + }, + "Mode": { + "type": "string" + }, + "OutputSelection": { + "type": "string" + }, + "ProgramDateTime": { + "type": "string" + }, + "ProgramDateTimeClock": { + "type": "string" + }, + "ProgramDateTimePeriod": { + "type": "integer" + }, + "RedundantManifest": { + "type": "string" + }, + "SegmentLength": { + "type": "integer" + }, + "SegmentationMode": { + "type": "string" + }, + "SegmentsPerSubdirectory": { + "type": "integer" + }, + "StreamInfResolution": { + "type": "string" + }, + "TimedMetadataId3Frame": { + "type": "string" + }, + "TimedMetadataId3Period": { + "type": "integer" + }, + "TimestampDeltaMilliseconds": { + "type": "integer" + }, + "TsFileMode": { + "type": "string" + } + }, + "type": "object" + }, + "HlsInputSettings": { + "additionalProperties": false, + "properties": { + "Bandwidth": { + "type": "integer" + }, + "BufferSegments": { + "type": "integer" + }, + "Retries": { + "type": "integer" + }, + "RetryInterval": { + "type": "integer" + }, + "Scte35Source": { + "type": "string" + } + }, + "type": "object" + }, + "HlsMediaStoreSettings": { + "additionalProperties": false, + "properties": { + "ConnectionRetryInterval": { + "type": "integer" + }, + "FilecacheDuration": { + "type": "integer" + }, + "MediaStoreStorageClass": { + "type": "string" + }, + "NumRetries": { + "type": "integer" + }, + "RestartDelay": { + "type": "integer" + } + }, + "type": "object" + }, + "HlsOutputSettings": { + "additionalProperties": false, + "properties": { + "H265PackagingType": { + "type": "string" + }, + "HlsSettings": { + "$ref": "#/definitions/HlsSettings" + }, + "NameModifier": { + "type": "string" + }, + "SegmentModifier": { + "type": "string" + } + }, + "type": "object" + }, + "HlsS3Settings": { + "additionalProperties": false, + "properties": { + "CannedAcl": { + "type": "string" + } + }, + "type": "object" + }, + "HlsSettings": { + "additionalProperties": false, + "properties": { + "AudioOnlyHlsSettings": { + "$ref": "#/definitions/AudioOnlyHlsSettings" + }, + "Fmp4HlsSettings": { + "$ref": "#/definitions/Fmp4HlsSettings" + }, + "FrameCaptureHlsSettings": { + "$ref": "#/definitions/FrameCaptureHlsSettings" + }, + "StandardHlsSettings": { + "$ref": "#/definitions/StandardHlsSettings" + } + }, + "type": "object" + }, + "HlsWebdavSettings": { + "additionalProperties": false, + "properties": { + "ConnectionRetryInterval": { + "type": "integer" + }, + "FilecacheDuration": { + "type": "integer" + }, + "HttpTransferMode": { + "type": "string" + }, + "NumRetries": { + "type": "integer" + }, + "RestartDelay": { + "type": "integer" + } + }, + "type": "object" + }, + "HtmlMotionGraphicsSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "InputAttachment": { + "additionalProperties": false, + "properties": { + "AutomaticInputFailoverSettings": { + "$ref": "#/definitions/AutomaticInputFailoverSettings" + }, + "InputAttachmentName": { + "type": "string" + }, + "InputId": { + "type": "string" + }, + "InputSettings": { + "$ref": "#/definitions/InputSettings" + }, + "LogicalInterfaceNames": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "InputChannelLevel": { + "additionalProperties": false, + "properties": { + "Gain": { + "type": "integer" + }, + "InputChannel": { + "type": "integer" + } + }, + "type": "object" + }, + "InputLocation": { + "additionalProperties": false, + "properties": { + "PasswordParam": { + "type": "string" + }, + "Uri": { + "type": "string" + }, + "Username": { + "type": "string" + } + }, + "type": "object" + }, + "InputLossBehavior": { + "additionalProperties": false, + "properties": { + "BlackFrameMsec": { + "type": "integer" + }, + "InputLossImageColor": { + "type": "string" + }, + "InputLossImageSlate": { + "$ref": "#/definitions/InputLocation" + }, + "InputLossImageType": { + "type": "string" + }, + "RepeatFrameMsec": { + "type": "integer" + } + }, + "type": "object" + }, + "InputLossFailoverSettings": { + "additionalProperties": false, + "properties": { + "InputLossThresholdMsec": { + "type": "integer" + } + }, + "type": "object" + }, + "InputSettings": { + "additionalProperties": false, + "properties": { + "AudioSelectors": { + "items": { + "$ref": "#/definitions/AudioSelector" + }, + "type": "array", + "uniqueItems": false + }, + "CaptionSelectors": { + "items": { + "$ref": "#/definitions/CaptionSelector" + }, + "type": "array", + "uniqueItems": false + }, + "DeblockFilter": { + "type": "string" + }, + "DenoiseFilter": { + "type": "string" + }, + "FilterStrength": { + "type": "integer" + }, + "InputFilter": { + "type": "string" + }, + "NetworkInputSettings": { + "$ref": "#/definitions/NetworkInputSettings" + }, + "Scte35Pid": { + "type": "integer" + }, + "Smpte2038DataPreference": { + "type": "string" + }, + "SourceEndBehavior": { + "type": "string" + }, + "VideoSelector": { + "$ref": "#/definitions/VideoSelector" + } + }, + "type": "object" + }, + "InputSpecification": { + "additionalProperties": false, + "properties": { + "Codec": { + "type": "string" + }, + "MaximumBitrate": { + "type": "string" + }, + "Resolution": { + "type": "string" + } + }, + "type": "object" + }, + "KeyProviderSettings": { + "additionalProperties": false, + "properties": { + "StaticKeySettings": { + "$ref": "#/definitions/StaticKeySettings" + } + }, + "type": "object" + }, + "M2tsSettings": { + "additionalProperties": false, + "properties": { + "AbsentInputAudioBehavior": { + "type": "string" + }, + "Arib": { + "type": "string" + }, + "AribCaptionsPid": { + "type": "string" + }, + "AribCaptionsPidControl": { + "type": "string" + }, + "AudioBufferModel": { + "type": "string" + }, + "AudioFramesPerPes": { + "type": "integer" + }, + "AudioPids": { + "type": "string" + }, + "AudioStreamType": { + "type": "string" + }, + "Bitrate": { + "type": "integer" + }, + "BufferModel": { + "type": "string" + }, + "CcDescriptor": { + "type": "string" + }, + "DvbNitSettings": { + "$ref": "#/definitions/DvbNitSettings" + }, + "DvbSdtSettings": { + "$ref": "#/definitions/DvbSdtSettings" + }, + "DvbSubPids": { + "type": "string" + }, + "DvbTdtSettings": { + "$ref": "#/definitions/DvbTdtSettings" + }, + "DvbTeletextPid": { + "type": "string" + }, + "Ebif": { + "type": "string" + }, + "EbpAudioInterval": { + "type": "string" + }, + "EbpLookaheadMs": { + "type": "integer" + }, + "EbpPlacement": { + "type": "string" + }, + "EcmPid": { + "type": "string" + }, + "EsRateInPes": { + "type": "string" + }, + "EtvPlatformPid": { + "type": "string" + }, + "EtvSignalPid": { + "type": "string" + }, + "FragmentTime": { + "type": "number" + }, + "Klv": { + "type": "string" + }, + "KlvDataPids": { + "type": "string" + }, + "NielsenId3Behavior": { + "type": "string" + }, + "NullPacketBitrate": { + "type": "number" + }, + "PatInterval": { + "type": "integer" + }, + "PcrControl": { + "type": "string" + }, + "PcrPeriod": { + "type": "integer" + }, + "PcrPid": { + "type": "string" + }, + "PmtInterval": { + "type": "integer" + }, + "PmtPid": { + "type": "string" + }, + "ProgramNum": { + "type": "integer" + }, + "RateMode": { + "type": "string" + }, + "Scte27Pids": { + "type": "string" + }, + "Scte35Control": { + "type": "string" + }, + "Scte35Pid": { + "type": "string" + }, + "Scte35PrerollPullupMilliseconds": { + "type": "number" + }, + "SegmentationMarkers": { + "type": "string" + }, + "SegmentationStyle": { + "type": "string" + }, + "SegmentationTime": { + "type": "number" + }, + "TimedMetadataBehavior": { + "type": "string" + }, + "TimedMetadataPid": { + "type": "string" + }, + "TransportStreamId": { + "type": "integer" + }, + "VideoPid": { + "type": "string" + } + }, + "type": "object" + }, + "M3u8Settings": { + "additionalProperties": false, + "properties": { + "AudioFramesPerPes": { + "type": "integer" + }, + "AudioPids": { + "type": "string" + }, + "EcmPid": { + "type": "string" + }, + "KlvBehavior": { + "type": "string" + }, + "KlvDataPids": { + "type": "string" + }, + "NielsenId3Behavior": { + "type": "string" + }, + "PatInterval": { + "type": "integer" + }, + "PcrControl": { + "type": "string" + }, + "PcrPeriod": { + "type": "integer" + }, + "PcrPid": { + "type": "string" + }, + "PmtInterval": { + "type": "integer" + }, + "PmtPid": { + "type": "string" + }, + "ProgramNum": { + "type": "integer" + }, + "Scte35Behavior": { + "type": "string" + }, + "Scte35Pid": { + "type": "string" + }, + "TimedMetadataBehavior": { + "type": "string" + }, + "TimedMetadataPid": { + "type": "string" + }, + "TransportStreamId": { + "type": "integer" + }, + "VideoPid": { + "type": "string" + } + }, + "type": "object" + }, + "MaintenanceCreateSettings": { + "additionalProperties": false, + "properties": { + "MaintenanceDay": { + "type": "string" + }, + "MaintenanceStartTime": { + "type": "string" + } + }, + "type": "object" + }, + "MediaPackageGroupSettings": { + "additionalProperties": false, + "properties": { + "Destination": { + "$ref": "#/definitions/OutputLocationRef" + } + }, + "type": "object" + }, + "MediaPackageOutputDestinationSettings": { + "additionalProperties": false, + "properties": { + "ChannelId": { + "type": "string" + } + }, + "type": "object" + }, + "MediaPackageOutputSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "MotionGraphicsConfiguration": { + "additionalProperties": false, + "properties": { + "MotionGraphicsInsertion": { + "type": "string" + }, + "MotionGraphicsSettings": { + "$ref": "#/definitions/MotionGraphicsSettings" + } + }, + "type": "object" + }, + "MotionGraphicsSettings": { + "additionalProperties": false, + "properties": { + "HtmlMotionGraphicsSettings": { + "$ref": "#/definitions/HtmlMotionGraphicsSettings" + } + }, + "type": "object" + }, + "Mp2Settings": { + "additionalProperties": false, + "properties": { + "Bitrate": { + "type": "number" + }, + "CodingMode": { + "type": "string" + }, + "SampleRate": { + "type": "number" + } + }, + "type": "object" + }, + "Mpeg2FilterSettings": { + "additionalProperties": false, + "properties": { + "TemporalFilterSettings": { + "$ref": "#/definitions/TemporalFilterSettings" + } + }, + "type": "object" + }, + "Mpeg2Settings": { + "additionalProperties": false, + "properties": { + "AdaptiveQuantization": { + "type": "string" + }, + "AfdSignaling": { + "type": "string" + }, + "ColorMetadata": { + "type": "string" + }, + "ColorSpace": { + "type": "string" + }, + "DisplayAspectRatio": { + "type": "string" + }, + "FilterSettings": { + "$ref": "#/definitions/Mpeg2FilterSettings" + }, + "FixedAfd": { + "type": "string" + }, + "FramerateDenominator": { + "type": "integer" + }, + "FramerateNumerator": { + "type": "integer" + }, + "GopClosedCadence": { + "type": "integer" + }, + "GopNumBFrames": { + "type": "integer" + }, + "GopSize": { + "type": "number" + }, + "GopSizeUnits": { + "type": "string" + }, + "ScanType": { + "type": "string" + }, + "SubgopLength": { + "type": "string" + }, + "TimecodeBurninSettings": { + "$ref": "#/definitions/TimecodeBurninSettings" + }, + "TimecodeInsertion": { + "type": "string" + } + }, + "type": "object" + }, + "MsSmoothGroupSettings": { + "additionalProperties": false, + "properties": { + "AcquisitionPointId": { + "type": "string" + }, + "AudioOnlyTimecodeControl": { + "type": "string" + }, + "CertificateMode": { + "type": "string" + }, + "ConnectionRetryInterval": { + "type": "integer" + }, + "Destination": { + "$ref": "#/definitions/OutputLocationRef" + }, + "EventId": { + "type": "string" + }, + "EventIdMode": { + "type": "string" + }, + "EventStopBehavior": { + "type": "string" + }, + "FilecacheDuration": { + "type": "integer" + }, + "FragmentLength": { + "type": "integer" + }, + "InputLossAction": { + "type": "string" + }, + "NumRetries": { + "type": "integer" + }, + "RestartDelay": { + "type": "integer" + }, + "SegmentationMode": { + "type": "string" + }, + "SendDelayMs": { + "type": "integer" + }, + "SparseTrackType": { + "type": "string" + }, + "StreamManifestBehavior": { + "type": "string" + }, + "TimestampOffset": { + "type": "string" + }, + "TimestampOffsetMode": { + "type": "string" + } + }, + "type": "object" + }, + "MsSmoothOutputSettings": { + "additionalProperties": false, + "properties": { + "H265PackagingType": { + "type": "string" + }, + "NameModifier": { + "type": "string" + } + }, + "type": "object" + }, + "MulticastInputSettings": { + "additionalProperties": false, + "properties": { + "SourceIpAddress": { + "type": "string" + } + }, + "type": "object" + }, + "MultiplexContainerSettings": { + "additionalProperties": false, + "properties": { + "MultiplexM2tsSettings": { + "$ref": "#/definitions/MultiplexM2tsSettings" + } + }, + "type": "object" + }, + "MultiplexGroupSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "MultiplexM2tsSettings": { + "additionalProperties": false, + "properties": { + "AbsentInputAudioBehavior": { + "type": "string" + }, + "Arib": { + "type": "string" + }, + "AudioBufferModel": { + "type": "string" + }, + "AudioFramesPerPes": { + "type": "integer" + }, + "AudioStreamType": { + "type": "string" + }, + "CcDescriptor": { + "type": "string" + }, + "Ebif": { + "type": "string" + }, + "EsRateInPes": { + "type": "string" + }, + "Klv": { + "type": "string" + }, + "NielsenId3Behavior": { + "type": "string" + }, + "PcrControl": { + "type": "string" + }, + "PcrPeriod": { + "type": "integer" + }, + "Scte35Control": { + "type": "string" + }, + "Scte35PrerollPullupMilliseconds": { + "type": "number" + } + }, + "type": "object" + }, + "MultiplexOutputSettings": { + "additionalProperties": false, + "properties": { + "ContainerSettings": { + "$ref": "#/definitions/MultiplexContainerSettings" + }, + "Destination": { + "$ref": "#/definitions/OutputLocationRef" + } + }, + "type": "object" + }, + "MultiplexProgramChannelDestinationSettings": { + "additionalProperties": false, + "properties": { + "MultiplexId": { + "type": "string" + }, + "ProgramName": { + "type": "string" + } + }, + "type": "object" + }, + "NetworkInputSettings": { + "additionalProperties": false, + "properties": { + "HlsInputSettings": { + "$ref": "#/definitions/HlsInputSettings" + }, + "MulticastInputSettings": { + "$ref": "#/definitions/MulticastInputSettings" + }, + "ServerValidation": { + "type": "string" + } + }, + "type": "object" + }, + "NielsenCBET": { + "additionalProperties": false, + "properties": { + "CbetCheckDigitString": { + "type": "string" + }, + "CbetStepaside": { + "type": "string" + }, + "Csid": { + "type": "string" + } + }, + "type": "object" + }, + "NielsenConfiguration": { + "additionalProperties": false, + "properties": { + "DistributorId": { + "type": "string" + }, + "NielsenPcmToId3Tagging": { + "type": "string" + } + }, + "type": "object" + }, + "NielsenNaesIiNw": { + "additionalProperties": false, + "properties": { + "CheckDigitString": { + "type": "string" + }, + "Sid": { + "type": "number" + }, + "Timezone": { + "type": "string" + } + }, + "type": "object" + }, + "NielsenWatermarksSettings": { + "additionalProperties": false, + "properties": { + "NielsenCbetSettings": { + "$ref": "#/definitions/NielsenCBET" + }, + "NielsenDistributionType": { + "type": "string" + }, + "NielsenNaesIiNwSettings": { + "$ref": "#/definitions/NielsenNaesIiNw" + } + }, + "type": "object" + }, + "Output": { + "additionalProperties": false, + "properties": { + "AudioDescriptionNames": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "CaptionDescriptionNames": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "OutputName": { + "type": "string" + }, + "OutputSettings": { + "$ref": "#/definitions/OutputSettings" + }, + "VideoDescriptionName": { + "type": "string" + } + }, + "type": "object" + }, + "OutputDestination": { + "additionalProperties": false, + "properties": { + "Id": { + "type": "string" + }, + "MediaPackageSettings": { + "items": { + "$ref": "#/definitions/MediaPackageOutputDestinationSettings" + }, + "type": "array", + "uniqueItems": false + }, + "MultiplexSettings": { + "$ref": "#/definitions/MultiplexProgramChannelDestinationSettings" + }, + "Settings": { + "items": { + "$ref": "#/definitions/OutputDestinationSettings" + }, + "type": "array", + "uniqueItems": false + }, + "SrtSettings": { + "items": { + "$ref": "#/definitions/SrtOutputDestinationSettings" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "OutputDestinationSettings": { + "additionalProperties": false, + "properties": { + "PasswordParam": { + "type": "string" + }, + "StreamName": { + "type": "string" + }, + "Url": { + "type": "string" + }, + "Username": { + "type": "string" + } + }, + "type": "object" + }, + "OutputGroup": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "OutputGroupSettings": { + "$ref": "#/definitions/OutputGroupSettings" + }, + "Outputs": { + "items": { + "$ref": "#/definitions/Output" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "OutputGroupSettings": { + "additionalProperties": false, + "properties": { + "ArchiveGroupSettings": { + "$ref": "#/definitions/ArchiveGroupSettings" + }, + "CmafIngestGroupSettings": { + "$ref": "#/definitions/CmafIngestGroupSettings" + }, + "FrameCaptureGroupSettings": { + "$ref": "#/definitions/FrameCaptureGroupSettings" + }, + "HlsGroupSettings": { + "$ref": "#/definitions/HlsGroupSettings" + }, + "MediaPackageGroupSettings": { + "$ref": "#/definitions/MediaPackageGroupSettings" + }, + "MsSmoothGroupSettings": { + "$ref": "#/definitions/MsSmoothGroupSettings" + }, + "MultiplexGroupSettings": { + "$ref": "#/definitions/MultiplexGroupSettings" + }, + "RtmpGroupSettings": { + "$ref": "#/definitions/RtmpGroupSettings" + }, + "SrtGroupSettings": { + "$ref": "#/definitions/SrtGroupSettings" + }, + "UdpGroupSettings": { + "$ref": "#/definitions/UdpGroupSettings" + } + }, + "type": "object" + }, + "OutputLocationRef": { + "additionalProperties": false, + "properties": { + "DestinationRefId": { + "type": "string" + } + }, + "type": "object" + }, + "OutputLockingSettings": { + "additionalProperties": false, + "properties": { + "EpochLockingSettings": { + "$ref": "#/definitions/EpochLockingSettings" + }, + "PipelineLockingSettings": { + "$ref": "#/definitions/PipelineLockingSettings" + } + }, + "type": "object" + }, + "OutputSettings": { + "additionalProperties": false, + "properties": { + "ArchiveOutputSettings": { + "$ref": "#/definitions/ArchiveOutputSettings" + }, + "CmafIngestOutputSettings": { + "$ref": "#/definitions/CmafIngestOutputSettings" + }, + "FrameCaptureOutputSettings": { + "$ref": "#/definitions/FrameCaptureOutputSettings" + }, + "HlsOutputSettings": { + "$ref": "#/definitions/HlsOutputSettings" + }, + "MediaPackageOutputSettings": { + "$ref": "#/definitions/MediaPackageOutputSettings" + }, + "MsSmoothOutputSettings": { + "$ref": "#/definitions/MsSmoothOutputSettings" + }, + "MultiplexOutputSettings": { + "$ref": "#/definitions/MultiplexOutputSettings" + }, + "RtmpOutputSettings": { + "$ref": "#/definitions/RtmpOutputSettings" + }, + "SrtOutputSettings": { + "$ref": "#/definitions/SrtOutputSettings" + }, + "UdpOutputSettings": { + "$ref": "#/definitions/UdpOutputSettings" + } + }, + "type": "object" + }, + "PassThroughSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "PipelineLockingSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "RawSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "Rec601Settings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "Rec709Settings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "RemixSettings": { + "additionalProperties": false, + "properties": { + "ChannelMappings": { + "items": { + "$ref": "#/definitions/AudioChannelMapping" + }, + "type": "array", + "uniqueItems": false + }, + "ChannelsIn": { + "type": "integer" + }, + "ChannelsOut": { + "type": "integer" + } + }, + "type": "object" + }, + "RtmpCaptionInfoDestinationSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "RtmpGroupSettings": { + "additionalProperties": false, + "properties": { + "AdMarkers": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "AuthenticationScheme": { + "type": "string" + }, + "CacheFullBehavior": { + "type": "string" + }, + "CacheLength": { + "type": "integer" + }, + "CaptionData": { + "type": "string" + }, + "IncludeFillerNalUnits": { + "type": "string" + }, + "InputLossAction": { + "type": "string" + }, + "RestartDelay": { + "type": "integer" + } + }, + "type": "object" + }, + "RtmpOutputSettings": { + "additionalProperties": false, + "properties": { + "CertificateMode": { + "type": "string" + }, + "ConnectionRetryInterval": { + "type": "integer" + }, + "Destination": { + "$ref": "#/definitions/OutputLocationRef" + }, + "NumRetries": { + "type": "integer" + } + }, + "type": "object" + }, + "Scte20PlusEmbeddedDestinationSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "Scte20SourceSettings": { + "additionalProperties": false, + "properties": { + "Convert608To708": { + "type": "string" + }, + "Source608ChannelNumber": { + "type": "integer" + } + }, + "type": "object" + }, + "Scte27DestinationSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "Scte27SourceSettings": { + "additionalProperties": false, + "properties": { + "OcrLanguage": { + "type": "string" + }, + "Pid": { + "type": "integer" + } + }, + "type": "object" + }, + "Scte35SpliceInsert": { + "additionalProperties": false, + "properties": { + "AdAvailOffset": { + "type": "integer" + }, + "NoRegionalBlackoutFlag": { + "type": "string" + }, + "WebDeliveryAllowedFlag": { + "type": "string" + } + }, + "type": "object" + }, + "Scte35TimeSignalApos": { + "additionalProperties": false, + "properties": { + "AdAvailOffset": { + "type": "integer" + }, + "NoRegionalBlackoutFlag": { + "type": "string" + }, + "WebDeliveryAllowedFlag": { + "type": "string" + } + }, + "type": "object" + }, + "SmpteTtDestinationSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "SrtGroupSettings": { + "additionalProperties": false, + "properties": { + "InputLossAction": { + "type": "string" + } + }, + "type": "object" + }, + "SrtOutputDestinationSettings": { + "additionalProperties": false, + "properties": { + "EncryptionPassphraseSecretArn": { + "type": "string" + }, + "StreamId": { + "type": "string" + }, + "Url": { + "type": "string" + } + }, + "type": "object" + }, + "SrtOutputSettings": { + "additionalProperties": false, + "properties": { + "BufferMsec": { + "type": "integer" + }, + "ContainerSettings": { + "$ref": "#/definitions/UdpContainerSettings" + }, + "Destination": { + "$ref": "#/definitions/OutputLocationRef" + }, + "EncryptionType": { + "type": "string" + }, + "Latency": { + "type": "integer" + } + }, + "type": "object" + }, + "StandardHlsSettings": { + "additionalProperties": false, + "properties": { + "AudioRenditionSets": { + "type": "string" + }, + "M3u8Settings": { + "$ref": "#/definitions/M3u8Settings" + } + }, + "type": "object" + }, + "StaticKeySettings": { + "additionalProperties": false, + "properties": { + "KeyProviderServer": { + "$ref": "#/definitions/InputLocation" + }, + "StaticKeyValue": { + "type": "string" + } + }, + "type": "object" + }, + "TeletextDestinationSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "TeletextSourceSettings": { + "additionalProperties": false, + "properties": { + "OutputRectangle": { + "$ref": "#/definitions/CaptionRectangle" + }, + "PageNumber": { + "type": "string" + } + }, + "type": "object" + }, + "TemporalFilterSettings": { + "additionalProperties": false, + "properties": { + "PostFilterSharpening": { + "type": "string" + }, + "Strength": { + "type": "string" + } + }, + "type": "object" + }, + "ThumbnailConfiguration": { + "additionalProperties": false, + "properties": { + "State": { + "type": "string" + } + }, + "type": "object" + }, + "TimecodeBurninSettings": { + "additionalProperties": false, + "properties": { + "FontSize": { + "type": "string" + }, + "Position": { + "type": "string" + }, + "Prefix": { + "type": "string" + } + }, + "type": "object" + }, + "TimecodeConfig": { + "additionalProperties": false, + "properties": { + "Source": { + "type": "string" + }, + "SyncThreshold": { + "type": "integer" + } + }, + "type": "object" + }, + "TtmlDestinationSettings": { + "additionalProperties": false, + "properties": { + "StyleControl": { + "type": "string" + } + }, + "type": "object" + }, + "UdpContainerSettings": { + "additionalProperties": false, + "properties": { + "M2tsSettings": { + "$ref": "#/definitions/M2tsSettings" + } + }, + "type": "object" + }, + "UdpGroupSettings": { + "additionalProperties": false, + "properties": { + "InputLossAction": { + "type": "string" + }, + "TimedMetadataId3Frame": { + "type": "string" + }, + "TimedMetadataId3Period": { + "type": "integer" + } + }, + "type": "object" + }, + "UdpOutputSettings": { + "additionalProperties": false, + "properties": { + "BufferMsec": { + "type": "integer" + }, + "ContainerSettings": { + "$ref": "#/definitions/UdpContainerSettings" + }, + "Destination": { + "$ref": "#/definitions/OutputLocationRef" + }, + "FecOutputSettings": { + "$ref": "#/definitions/FecOutputSettings" + } + }, + "type": "object" + }, + "VideoBlackFailoverSettings": { + "additionalProperties": false, + "properties": { + "BlackDetectThreshold": { + "type": "number" + }, + "VideoBlackThresholdMsec": { + "type": "integer" + } + }, + "type": "object" + }, + "VideoCodecSettings": { + "additionalProperties": false, + "properties": { + "Av1Settings": { + "$ref": "#/definitions/Av1Settings" + }, + "FrameCaptureSettings": { + "$ref": "#/definitions/FrameCaptureSettings" + }, + "H264Settings": { + "$ref": "#/definitions/H264Settings" + }, + "H265Settings": { + "$ref": "#/definitions/H265Settings" + }, + "Mpeg2Settings": { + "$ref": "#/definitions/Mpeg2Settings" + } + }, + "type": "object" + }, + "VideoDescription": { + "additionalProperties": false, + "properties": { + "CodecSettings": { + "$ref": "#/definitions/VideoCodecSettings" + }, + "Height": { + "type": "integer" + }, + "Name": { + "type": "string" + }, + "RespondToAfd": { + "type": "string" + }, + "ScalingBehavior": { + "type": "string" + }, + "Sharpness": { + "type": "integer" + }, + "Width": { + "type": "integer" + } + }, + "type": "object" + }, + "VideoSelector": { + "additionalProperties": false, + "properties": { + "ColorSpace": { + "type": "string" + }, + "ColorSpaceSettings": { + "$ref": "#/definitions/VideoSelectorColorSpaceSettings" + }, + "ColorSpaceUsage": { + "type": "string" + }, + "SelectorSettings": { + "$ref": "#/definitions/VideoSelectorSettings" + } + }, + "type": "object" + }, + "VideoSelectorColorSpaceSettings": { + "additionalProperties": false, + "properties": { + "Hdr10Settings": { + "$ref": "#/definitions/Hdr10Settings" + } + }, + "type": "object" + }, + "VideoSelectorPid": { + "additionalProperties": false, + "properties": { + "Pid": { + "type": "integer" + } + }, + "type": "object" + }, + "VideoSelectorProgramId": { + "additionalProperties": false, + "properties": { + "ProgramId": { + "type": "integer" + } + }, + "type": "object" + }, + "VideoSelectorSettings": { + "additionalProperties": false, + "properties": { + "VideoSelectorPid": { + "$ref": "#/definitions/VideoSelectorPid" + }, + "VideoSelectorProgramId": { + "$ref": "#/definitions/VideoSelectorProgramId" + } + }, + "type": "object" + }, + "VpcOutputSettings": { + "additionalProperties": false, + "properties": { + "PublicAddressAllocationIds": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "SecurityGroupIds": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "SubnetIds": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "WavSettings": { + "additionalProperties": false, + "properties": { + "BitDepth": { + "type": "number" + }, + "CodingMode": { + "type": "string" + }, + "SampleRate": { + "type": "number" + } + }, + "type": "object" + }, + "WebvttDestinationSettings": { + "additionalProperties": false, + "properties": { + "StyleControl": { + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "AnywhereSettings": { + "$ref": "#/definitions/AnywhereSettings" + }, + "Arn": { + "type": "string" + }, + "CdiInputSpecification": { + "$ref": "#/definitions/CdiInputSpecification" + }, + "ChannelClass": { + "type": "string" + }, + "Destinations": { + "items": { + "$ref": "#/definitions/OutputDestination" + }, + "type": "array", + "uniqueItems": false + }, + "EncoderSettings": { + "$ref": "#/definitions/EncoderSettings" + }, + "Id": { + "type": "string" + }, + "InputAttachments": { + "items": { + "$ref": "#/definitions/InputAttachment" + }, + "type": "array", + "uniqueItems": false + }, + "InputSpecification": { + "$ref": "#/definitions/InputSpecification" + }, + "Inputs": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "LogLevel": { + "type": "string" + }, + "Maintenance": { + "$ref": "#/definitions/MaintenanceCreateSettings" + }, + "Name": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "Tags": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "Vpc": { + "$ref": "#/definitions/VpcOutputSettings" + } + }, + "readOnlyProperties": [ + "/properties/Inputs", + "/properties/Id", + "/properties/Arn" + ], + "typeName": "AWS::MediaLive::Channel" +} diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/aws-medialive-input.json b/src/cfnlint/data/schemas/providers/eu_central_1/aws-medialive-input.json new file mode 100644 index 0000000000..da0d73a7e8 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_1/aws-medialive-input.json @@ -0,0 +1,249 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Vpc", + "/properties/Type", + "/properties/InputNetworkLocation" + ], + "definitions": { + "InputDestinationRequest": { + "additionalProperties": false, + "properties": { + "Network": { + "type": "string" + }, + "NetworkRoutes": { + "items": { + "$ref": "#/definitions/InputRequestDestinationRoute" + }, + "type": "array", + "uniqueItems": false + }, + "StaticIpAddress": { + "type": "string" + }, + "StreamName": { + "type": "string" + } + }, + "type": "object" + }, + "InputDeviceSettings": { + "additionalProperties": false, + "properties": { + "Id": { + "type": "string" + } + }, + "type": "object" + }, + "InputRequestDestinationRoute": { + "additionalProperties": false, + "properties": { + "Cidr": { + "type": "string" + }, + "Gateway": { + "type": "string" + } + }, + "type": "object" + }, + "InputSourceRequest": { + "additionalProperties": false, + "properties": { + "PasswordParam": { + "type": "string" + }, + "Url": { + "type": "string" + }, + "Username": { + "type": "string" + } + }, + "type": "object" + }, + "InputVpcRequest": { + "additionalProperties": false, + "properties": { + "SecurityGroupIds": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "SubnetIds": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "MediaConnectFlowRequest": { + "additionalProperties": false, + "properties": { + "FlowArn": { + "type": "string" + } + }, + "type": "object" + }, + "MulticastSettingsCreateRequest": { + "additionalProperties": false, + "properties": { + "Sources": { + "items": { + "$ref": "#/definitions/MulticastSourceCreateRequest" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "MulticastSourceCreateRequest": { + "additionalProperties": false, + "properties": { + "SourceIp": { + "type": "string" + }, + "Url": { + "type": "string" + } + }, + "type": "object" + }, + "SrtCallerDecryptionRequest": { + "additionalProperties": false, + "properties": { + "Algorithm": { + "type": "string" + }, + "PassphraseSecretArn": { + "type": "string" + } + }, + "type": "object" + }, + "SrtCallerSourceRequest": { + "additionalProperties": false, + "properties": { + "Decryption": { + "$ref": "#/definitions/SrtCallerDecryptionRequest" + }, + "MinimumLatency": { + "type": "integer" + }, + "SrtListenerAddress": { + "type": "string" + }, + "SrtListenerPort": { + "type": "string" + }, + "StreamId": { + "type": "string" + } + }, + "type": "object" + }, + "SrtSettingsRequest": { + "additionalProperties": false, + "properties": { + "SrtCallerSources": { + "items": { + "$ref": "#/definitions/SrtCallerSourceRequest" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "Arn": { + "type": "string" + }, + "Destinations": { + "items": { + "$ref": "#/definitions/InputDestinationRequest" + }, + "type": "array", + "uniqueItems": false + }, + "Id": { + "type": "string" + }, + "InputDevices": { + "items": { + "$ref": "#/definitions/InputDeviceSettings" + }, + "type": "array", + "uniqueItems": false + }, + "InputNetworkLocation": { + "type": "string" + }, + "InputSecurityGroups": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "MediaConnectFlows": { + "items": { + "$ref": "#/definitions/MediaConnectFlowRequest" + }, + "type": "array", + "uniqueItems": false + }, + "MulticastSettings": { + "$ref": "#/definitions/MulticastSettingsCreateRequest" + }, + "Name": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "Sources": { + "items": { + "$ref": "#/definitions/InputSourceRequest" + }, + "type": "array", + "uniqueItems": false + }, + "SrtSettings": { + "$ref": "#/definitions/SrtSettingsRequest" + }, + "Tags": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "Type": { + "type": "string" + }, + "Vpc": { + "$ref": "#/definitions/InputVpcRequest" + } + }, + "readOnlyProperties": [ + "/properties/Id", + "/properties/Arn" + ], + "typeName": "AWS::MediaLive::Input" +} diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/aws-mediapackage-originendpoint.json b/src/cfnlint/data/schemas/providers/eu_central_1/aws-mediapackage-originendpoint.json new file mode 100644 index 0000000000..261af58d4c --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_1/aws-mediapackage-originendpoint.json @@ -0,0 +1,577 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Id" + ], + "definitions": { + "AdsOnDeliveryRestrictions": { + "enum": [ + "NONE", + "RESTRICTED", + "UNRESTRICTED", + "BOTH" + ], + "type": "string" + }, + "Authorization": { + "additionalProperties": false, + "properties": { + "CdnIdentifierSecret": { + "type": "string" + }, + "SecretsRoleArn": { + "type": "string" + } + }, + "required": [ + "SecretsRoleArn", + "CdnIdentifierSecret" + ], + "type": "object" + }, + "CmafEncryption": { + "additionalProperties": false, + "properties": { + "ConstantInitializationVector": { + "maxLength": 32, + "minLength": 32, + "pattern": "\\A[0-9a-fA-F]+\\Z", + "type": "string" + }, + "EncryptionMethod": { + "enum": [ + "SAMPLE_AES", + "AES_CTR" + ], + "type": "string" + }, + "KeyRotationIntervalSeconds": { + "type": "integer" + }, + "SpekeKeyProvider": { + "$ref": "#/definitions/SpekeKeyProvider" + } + }, + "required": [ + "SpekeKeyProvider" + ], + "type": "object" + }, + "CmafPackage": { + "additionalProperties": false, + "properties": { + "Encryption": { + "$ref": "#/definitions/CmafEncryption" + }, + "HlsManifests": { + "items": { + "$ref": "#/definitions/HlsManifest" + }, + "type": "array" + }, + "SegmentDurationSeconds": { + "type": "integer" + }, + "SegmentPrefix": { + "type": "string" + }, + "StreamSelection": { + "$ref": "#/definitions/StreamSelection" + } + }, + "type": "object" + }, + "DashEncryption": { + "additionalProperties": false, + "properties": { + "KeyRotationIntervalSeconds": { + "type": "integer" + }, + "SpekeKeyProvider": { + "$ref": "#/definitions/SpekeKeyProvider" + } + }, + "required": [ + "SpekeKeyProvider" + ], + "type": "object" + }, + "DashPackage": { + "additionalProperties": false, + "properties": { + "AdTriggers": { + "items": { + "enum": [ + "SPLICE_INSERT", + "BREAK", + "PROVIDER_ADVERTISEMENT", + "DISTRIBUTOR_ADVERTISEMENT", + "PROVIDER_PLACEMENT_OPPORTUNITY", + "DISTRIBUTOR_PLACEMENT_OPPORTUNITY", + "PROVIDER_OVERLAY_PLACEMENT_OPPORTUNITY", + "DISTRIBUTOR_OVERLAY_PLACEMENT_OPPORTUNITY" + ], + "type": "string" + }, + "type": "array" + }, + "AdsOnDeliveryRestrictions": { + "$ref": "#/definitions/AdsOnDeliveryRestrictions" + }, + "Encryption": { + "$ref": "#/definitions/DashEncryption" + }, + "IncludeIframeOnlyStream": { + "type": "boolean" + }, + "ManifestLayout": { + "enum": [ + "FULL", + "COMPACT", + "DRM_TOP_LEVEL_COMPACT" + ], + "type": "string" + }, + "ManifestWindowSeconds": { + "type": "integer" + }, + "MinBufferTimeSeconds": { + "type": "integer" + }, + "MinUpdatePeriodSeconds": { + "type": "integer" + }, + "PeriodTriggers": { + "items": { + "enum": [ + "ADS" + ], + "type": "string" + }, + "type": "array" + }, + "Profile": { + "enum": [ + "NONE", + "HBBTV_1_5", + "HYBRIDCAST", + "DVB_DASH_2014" + ], + "type": "string" + }, + "SegmentDurationSeconds": { + "type": "integer" + }, + "SegmentTemplateFormat": { + "enum": [ + "NUMBER_WITH_TIMELINE", + "TIME_WITH_TIMELINE", + "NUMBER_WITH_DURATION" + ], + "type": "string" + }, + "StreamSelection": { + "$ref": "#/definitions/StreamSelection" + }, + "SuggestedPresentationDelaySeconds": { + "type": "integer" + }, + "UtcTiming": { + "enum": [ + "HTTP-XSDATE", + "HTTP-ISO", + "HTTP-HEAD", + "NONE" + ], + "type": "string" + }, + "UtcTimingUri": { + "type": "string" + } + }, + "type": "object" + }, + "EncryptionContractConfiguration": { + "additionalProperties": false, + "properties": { + "PresetSpeke20Audio": { + "enum": [ + "PRESET-AUDIO-1", + "PRESET-AUDIO-2", + "PRESET-AUDIO-3", + "SHARED", + "UNENCRYPTED" + ], + "type": "string" + }, + "PresetSpeke20Video": { + "enum": [ + "PRESET-VIDEO-1", + "PRESET-VIDEO-2", + "PRESET-VIDEO-3", + "PRESET-VIDEO-4", + "PRESET-VIDEO-5", + "PRESET-VIDEO-6", + "PRESET-VIDEO-7", + "PRESET-VIDEO-8", + "SHARED", + "UNENCRYPTED" + ], + "type": "string" + } + }, + "required": [ + "PresetSpeke20Audio", + "PresetSpeke20Video" + ], + "type": "object" + }, + "HlsEncryption": { + "additionalProperties": false, + "properties": { + "ConstantInitializationVector": { + "type": "string" + }, + "EncryptionMethod": { + "enum": [ + "AES_128", + "SAMPLE_AES" + ], + "type": "string" + }, + "KeyRotationIntervalSeconds": { + "type": "integer" + }, + "RepeatExtXKey": { + "type": "boolean" + }, + "SpekeKeyProvider": { + "$ref": "#/definitions/SpekeKeyProvider" + } + }, + "required": [ + "SpekeKeyProvider" + ], + "type": "object" + }, + "HlsManifest": { + "additionalProperties": false, + "properties": { + "AdMarkers": { + "enum": [ + "NONE", + "SCTE35_ENHANCED", + "PASSTHROUGH", + "DATERANGE" + ], + "type": "string" + }, + "AdTriggers": { + "items": { + "enum": [ + "SPLICE_INSERT", + "BREAK", + "PROVIDER_ADVERTISEMENT", + "DISTRIBUTOR_ADVERTISEMENT", + "PROVIDER_PLACEMENT_OPPORTUNITY", + "DISTRIBUTOR_PLACEMENT_OPPORTUNITY", + "PROVIDER_OVERLAY_PLACEMENT_OPPORTUNITY", + "DISTRIBUTOR_OVERLAY_PLACEMENT_OPPORTUNITY" + ], + "type": "string" + }, + "type": "array" + }, + "AdsOnDeliveryRestrictions": { + "$ref": "#/definitions/AdsOnDeliveryRestrictions" + }, + "Id": { + "type": "string" + }, + "IncludeIframeOnlyStream": { + "type": "boolean" + }, + "ManifestName": { + "type": "string" + }, + "PlaylistType": { + "enum": [ + "NONE", + "EVENT", + "VOD" + ], + "type": "string" + }, + "PlaylistWindowSeconds": { + "type": "integer" + }, + "ProgramDateTimeIntervalSeconds": { + "type": "integer" + }, + "Url": { + "type": "string" + } + }, + "required": [ + "Id" + ], + "type": "object" + }, + "HlsPackage": { + "additionalProperties": false, + "properties": { + "AdMarkers": { + "enum": [ + "NONE", + "SCTE35_ENHANCED", + "PASSTHROUGH", + "DATERANGE" + ], + "type": "string" + }, + "AdTriggers": { + "items": { + "enum": [ + "SPLICE_INSERT", + "BREAK", + "PROVIDER_ADVERTISEMENT", + "DISTRIBUTOR_ADVERTISEMENT", + "PROVIDER_PLACEMENT_OPPORTUNITY", + "DISTRIBUTOR_PLACEMENT_OPPORTUNITY", + "PROVIDER_OVERLAY_PLACEMENT_OPPORTUNITY", + "DISTRIBUTOR_OVERLAY_PLACEMENT_OPPORTUNITY" + ], + "type": "string" + }, + "type": "array" + }, + "AdsOnDeliveryRestrictions": { + "$ref": "#/definitions/AdsOnDeliveryRestrictions" + }, + "Encryption": { + "$ref": "#/definitions/HlsEncryption" + }, + "IncludeDvbSubtitles": { + "type": "boolean" + }, + "IncludeIframeOnlyStream": { + "type": "boolean" + }, + "PlaylistType": { + "enum": [ + "NONE", + "EVENT", + "VOD" + ], + "type": "string" + }, + "PlaylistWindowSeconds": { + "type": "integer" + }, + "ProgramDateTimeIntervalSeconds": { + "type": "integer" + }, + "SegmentDurationSeconds": { + "type": "integer" + }, + "StreamSelection": { + "$ref": "#/definitions/StreamSelection" + }, + "UseAudioRenditionGroup": { + "type": "boolean" + } + }, + "type": "object" + }, + "MssEncryption": { + "additionalProperties": false, + "properties": { + "SpekeKeyProvider": { + "$ref": "#/definitions/SpekeKeyProvider" + } + }, + "required": [ + "SpekeKeyProvider" + ], + "type": "object" + }, + "MssPackage": { + "additionalProperties": false, + "properties": { + "Encryption": { + "$ref": "#/definitions/MssEncryption" + }, + "ManifestWindowSeconds": { + "type": "integer" + }, + "SegmentDurationSeconds": { + "type": "integer" + }, + "StreamSelection": { + "$ref": "#/definitions/StreamSelection" + } + }, + "type": "object" + }, + "SpekeKeyProvider": { + "additionalProperties": false, + "properties": { + "CertificateArn": { + "type": "string" + }, + "EncryptionContractConfiguration": { + "$ref": "#/definitions/EncryptionContractConfiguration" + }, + "ResourceId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SystemIds": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Url": { + "type": "string" + } + }, + "required": [ + "ResourceId", + "SystemIds", + "Url", + "RoleArn" + ], + "type": "object" + }, + "StreamSelection": { + "additionalProperties": false, + "properties": { + "MaxVideoBitsPerSecond": { + "type": "integer" + }, + "MinVideoBitsPerSecond": { + "type": "integer" + }, + "StreamOrder": { + "enum": [ + "ORIGINAL", + "VIDEO_BITRATE_ASCENDING", + "VIDEO_BITRATE_DESCENDING" + ], + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + } + }, + "deprecatedProperties": [ + "/properties/HlsPackage/Encryption/SpekeKeyProvider/EncryptionContractConfiguration/PresetSpeke20Audio", + "/properties/HlsPackage/Encryption/SpekeKeyProvider/EncryptionContractConfiguration/PresetSpeke20Video", + "/properties/MssPackage/Encryption/SpekeKeyProvider/EncryptionContractConfiguration/PresetSpeke20Audio", + "/properties/MssPackage/Encryption/SpekeKeyProvider/EncryptionContractConfiguration/PresetSpeke20Video", + "/properties/CmafPackage/HlsManifests/*/Url" + ], + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "Arn": { + "type": "string" + }, + "Authorization": { + "$ref": "#/definitions/Authorization" + }, + "ChannelId": { + "type": "string" + }, + "CmafPackage": { + "$ref": "#/definitions/CmafPackage" + }, + "DashPackage": { + "$ref": "#/definitions/DashPackage" + }, + "Description": { + "type": "string" + }, + "HlsPackage": { + "$ref": "#/definitions/HlsPackage" + }, + "Id": { + "maxLength": 256, + "minLength": 1, + "pattern": "\\A[0-9a-zA-Z-_]+\\Z", + "type": "string" + }, + "ManifestName": { + "type": "string" + }, + "MssPackage": { + "$ref": "#/definitions/MssPackage" + }, + "Origination": { + "enum": [ + "ALLOW", + "DENY" + ], + "type": "string" + }, + "StartoverWindowSeconds": { + "type": "integer" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + }, + "TimeDelaySeconds": { + "type": "integer" + }, + "Url": { + "type": "string" + }, + "Whitelist": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/Url" + ], + "required": [ + "Id", + "ChannelId" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::MediaPackage::OriginEndpoint" +} diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/aws-quicksight-analysis.json b/src/cfnlint/data/schemas/providers/eu_central_1/aws-quicksight-analysis.json new file mode 100644 index 0000000000..2930258157 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_1/aws-quicksight-analysis.json @@ -0,0 +1,11381 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/AnalysisId", + "/properties/AwsAccountId" + ], + "definitions": { + "AggregationFunction": { + "additionalProperties": false, + "properties": { + "AttributeAggregationFunction": { + "$ref": "#/definitions/AttributeAggregationFunction" + }, + "CategoricalAggregationFunction": { + "$ref": "#/definitions/CategoricalAggregationFunction" + }, + "DateAggregationFunction": { + "$ref": "#/definitions/DateAggregationFunction" + }, + "NumericalAggregationFunction": { + "$ref": "#/definitions/NumericalAggregationFunction" + } + }, + "type": "object" + }, + "AggregationSortConfiguration": { + "additionalProperties": false, + "properties": { + "AggregationFunction": { + "$ref": "#/definitions/AggregationFunction" + }, + "Column": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "SortDirection": { + "$ref": "#/definitions/SortDirection" + } + }, + "required": [ + "Column", + "SortDirection" + ], + "type": "object" + }, + "AllSheetsFilterScopeConfiguration": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "AnalysisDefaults": { + "additionalProperties": false, + "properties": { + "DefaultNewSheetConfiguration": { + "$ref": "#/definitions/DefaultNewSheetConfiguration" + } + }, + "required": [ + "DefaultNewSheetConfiguration" + ], + "type": "object" + }, + "AnalysisDefinition": { + "additionalProperties": false, + "properties": { + "AnalysisDefaults": { + "$ref": "#/definitions/AnalysisDefaults" + }, + "CalculatedFields": { + "items": { + "$ref": "#/definitions/CalculatedField" + }, + "maxItems": 500, + "minItems": 0, + "type": "array" + }, + "ColumnConfigurations": { + "items": { + "$ref": "#/definitions/ColumnConfiguration" + }, + "maxItems": 2000, + "minItems": 0, + "type": "array" + }, + "DataSetIdentifierDeclarations": { + "items": { + "$ref": "#/definitions/DataSetIdentifierDeclaration" + }, + "maxItems": 50, + "minItems": 1, + "type": "array" + }, + "FilterGroups": { + "items": { + "$ref": "#/definitions/FilterGroup" + }, + "maxItems": 2000, + "minItems": 0, + "type": "array" + }, + "Options": { + "$ref": "#/definitions/AssetOptions" + }, + "ParameterDeclarations": { + "items": { + "$ref": "#/definitions/ParameterDeclaration" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "QueryExecutionOptions": { + "$ref": "#/definitions/QueryExecutionOptions" + }, + "Sheets": { + "items": { + "$ref": "#/definitions/SheetDefinition" + }, + "maxItems": 20, + "minItems": 0, + "type": "array" + } + }, + "required": [ + "DataSetIdentifierDeclarations" + ], + "type": "object" + }, + "AnalysisError": { + "additionalProperties": false, + "properties": { + "Message": { + "pattern": "\\S", + "type": "string" + }, + "Type": { + "$ref": "#/definitions/AnalysisErrorType" + }, + "ViolatedEntities": { + "items": { + "$ref": "#/definitions/Entity" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "AnalysisErrorType": { + "enum": [ + "ACCESS_DENIED", + "SOURCE_NOT_FOUND", + "DATA_SET_NOT_FOUND", + "INTERNAL_FAILURE", + "PARAMETER_VALUE_INCOMPATIBLE", + "PARAMETER_TYPE_INVALID", + "PARAMETER_NOT_FOUND", + "COLUMN_TYPE_MISMATCH", + "COLUMN_GEOGRAPHIC_ROLE_MISMATCH", + "COLUMN_REPLACEMENT_MISSING" + ], + "type": "string" + }, + "AnalysisSourceEntity": { + "additionalProperties": false, + "properties": { + "SourceTemplate": { + "$ref": "#/definitions/AnalysisSourceTemplate" + } + }, + "type": "object" + }, + "AnalysisSourceTemplate": { + "additionalProperties": false, + "properties": { + "Arn": { + "type": "string" + }, + "DataSetReferences": { + "items": { + "$ref": "#/definitions/DataSetReference" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "Arn", + "DataSetReferences" + ], + "type": "object" + }, + "AnchorDateConfiguration": { + "additionalProperties": false, + "properties": { + "AnchorOption": { + "$ref": "#/definitions/AnchorOption" + }, + "ParameterName": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + } + }, + "type": "object" + }, + "AnchorOption": { + "enum": [ + "NOW" + ], + "type": "string" + }, + "ArcAxisConfiguration": { + "additionalProperties": false, + "properties": { + "Range": { + "$ref": "#/definitions/ArcAxisDisplayRange" + }, + "ReserveRange": { + "default": 0, + "type": "number" + } + }, + "type": "object" + }, + "ArcAxisDisplayRange": { + "additionalProperties": false, + "properties": { + "Max": { + "default": null, + "type": "number" + }, + "Min": { + "default": null, + "type": "number" + } + }, + "type": "object" + }, + "ArcConfiguration": { + "additionalProperties": false, + "properties": { + "ArcAngle": { + "default": null, + "type": "number" + }, + "ArcThickness": { + "$ref": "#/definitions/ArcThicknessOptions" + } + }, + "type": "object" + }, + "ArcOptions": { + "additionalProperties": false, + "properties": { + "ArcThickness": { + "$ref": "#/definitions/ArcThickness" + } + }, + "type": "object" + }, + "ArcThickness": { + "enum": [ + "SMALL", + "MEDIUM", + "LARGE", + "WHOLE" + ], + "type": "string" + }, + "ArcThicknessOptions": { + "enum": [ + "SMALL", + "MEDIUM", + "LARGE" + ], + "type": "string" + }, + "AssetOptions": { + "additionalProperties": false, + "properties": { + "Timezone": { + "type": "string" + }, + "WeekStart": { + "$ref": "#/definitions/DayOfTheWeek" + } + }, + "type": "object" + }, + "AttributeAggregationFunction": { + "additionalProperties": false, + "properties": { + "SimpleAttributeAggregation": { + "$ref": "#/definitions/SimpleAttributeAggregationFunction" + }, + "ValueForMultipleValues": { + "type": "string" + } + }, + "type": "object" + }, + "AxisBinding": { + "enum": [ + "PRIMARY_YAXIS", + "SECONDARY_YAXIS" + ], + "type": "string" + }, + "AxisDataOptions": { + "additionalProperties": false, + "properties": { + "DateAxisOptions": { + "$ref": "#/definitions/DateAxisOptions" + }, + "NumericAxisOptions": { + "$ref": "#/definitions/NumericAxisOptions" + } + }, + "type": "object" + }, + "AxisDisplayDataDrivenRange": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "AxisDisplayMinMaxRange": { + "additionalProperties": false, + "properties": { + "Maximum": { + "default": null, + "type": "number" + }, + "Minimum": { + "default": null, + "type": "number" + } + }, + "type": "object" + }, + "AxisDisplayOptions": { + "additionalProperties": false, + "properties": { + "AxisLineVisibility": { + "$ref": "#/definitions/Visibility" + }, + "AxisOffset": { + "type": "string" + }, + "DataOptions": { + "$ref": "#/definitions/AxisDataOptions" + }, + "GridLineVisibility": { + "$ref": "#/definitions/Visibility" + }, + "ScrollbarOptions": { + "$ref": "#/definitions/ScrollBarOptions" + }, + "TickLabelOptions": { + "$ref": "#/definitions/AxisTickLabelOptions" + } + }, + "type": "object" + }, + "AxisDisplayRange": { + "additionalProperties": false, + "properties": { + "DataDriven": { + "$ref": "#/definitions/AxisDisplayDataDrivenRange" + }, + "MinMax": { + "$ref": "#/definitions/AxisDisplayMinMaxRange" + } + }, + "type": "object" + }, + "AxisLabelOptions": { + "additionalProperties": false, + "properties": { + "ApplyTo": { + "$ref": "#/definitions/AxisLabelReferenceOptions" + }, + "CustomLabel": { + "type": "string" + }, + "FontConfiguration": { + "$ref": "#/definitions/FontConfiguration" + } + }, + "type": "object" + }, + "AxisLabelReferenceOptions": { + "additionalProperties": false, + "properties": { + "Column": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Column", + "FieldId" + ], + "type": "object" + }, + "AxisLinearScale": { + "additionalProperties": false, + "properties": { + "StepCount": { + "default": null, + "type": "number" + }, + "StepSize": { + "default": null, + "type": "number" + } + }, + "type": "object" + }, + "AxisLogarithmicScale": { + "additionalProperties": false, + "properties": { + "Base": { + "default": null, + "type": "number" + } + }, + "type": "object" + }, + "AxisScale": { + "additionalProperties": false, + "properties": { + "Linear": { + "$ref": "#/definitions/AxisLinearScale" + }, + "Logarithmic": { + "$ref": "#/definitions/AxisLogarithmicScale" + } + }, + "type": "object" + }, + "AxisTickLabelOptions": { + "additionalProperties": false, + "properties": { + "LabelOptions": { + "$ref": "#/definitions/LabelOptions" + }, + "RotationAngle": { + "default": null, + "type": "number" + } + }, + "type": "object" + }, + "BarChartAggregatedFieldWells": { + "additionalProperties": false, + "properties": { + "Category": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "Colors": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "SmallMultiples": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 1, + "minItems": 0, + "type": "array" + }, + "Values": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "BarChartConfiguration": { + "additionalProperties": false, + "properties": { + "BarsArrangement": { + "$ref": "#/definitions/BarsArrangement" + }, + "CategoryAxis": { + "$ref": "#/definitions/AxisDisplayOptions" + }, + "CategoryLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "ColorLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "ContributionAnalysisDefaults": { + "items": { + "$ref": "#/definitions/ContributionAnalysisDefault" + }, + "maxItems": 200, + "minItems": 1, + "type": "array" + }, + "DataLabels": { + "$ref": "#/definitions/DataLabelOptions" + }, + "FieldWells": { + "$ref": "#/definitions/BarChartFieldWells" + }, + "Legend": { + "$ref": "#/definitions/LegendOptions" + }, + "Orientation": { + "$ref": "#/definitions/BarChartOrientation" + }, + "ReferenceLines": { + "items": { + "$ref": "#/definitions/ReferenceLine" + }, + "maxItems": 20, + "minItems": 0, + "type": "array" + }, + "SmallMultiplesOptions": { + "$ref": "#/definitions/SmallMultiplesOptions" + }, + "SortConfiguration": { + "$ref": "#/definitions/BarChartSortConfiguration" + }, + "Tooltip": { + "$ref": "#/definitions/TooltipOptions" + }, + "ValueAxis": { + "$ref": "#/definitions/AxisDisplayOptions" + }, + "ValueLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "VisualPalette": { + "$ref": "#/definitions/VisualPalette" + } + }, + "type": "object" + }, + "BarChartFieldWells": { + "additionalProperties": false, + "properties": { + "BarChartAggregatedFieldWells": { + "$ref": "#/definitions/BarChartAggregatedFieldWells" + } + }, + "type": "object" + }, + "BarChartOrientation": { + "enum": [ + "HORIZONTAL", + "VERTICAL" + ], + "type": "string" + }, + "BarChartSortConfiguration": { + "additionalProperties": false, + "properties": { + "CategoryItemsLimit": { + "$ref": "#/definitions/ItemsLimitConfiguration" + }, + "CategorySort": { + "items": { + "$ref": "#/definitions/FieldSortOptions" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + }, + "ColorItemsLimit": { + "$ref": "#/definitions/ItemsLimitConfiguration" + }, + "ColorSort": { + "items": { + "$ref": "#/definitions/FieldSortOptions" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + }, + "SmallMultiplesLimitConfiguration": { + "$ref": "#/definitions/ItemsLimitConfiguration" + }, + "SmallMultiplesSort": { + "items": { + "$ref": "#/definitions/FieldSortOptions" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "BarChartVisual": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/VisualCustomAction" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "ChartConfiguration": { + "$ref": "#/definitions/BarChartConfiguration" + }, + "ColumnHierarchies": { + "items": { + "$ref": "#/definitions/ColumnHierarchy" + }, + "maxItems": 2, + "minItems": 0, + "type": "array" + }, + "Subtitle": { + "$ref": "#/definitions/VisualSubtitleLabelOptions" + }, + "Title": { + "$ref": "#/definitions/VisualTitleLabelOptions" + }, + "VisualId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "VisualId" + ], + "type": "object" + }, + "BarsArrangement": { + "enum": [ + "CLUSTERED", + "STACKED", + "STACKED_PERCENT" + ], + "type": "string" + }, + "BaseMapStyleType": { + "enum": [ + "LIGHT_GRAY", + "DARK_GRAY", + "STREET", + "IMAGERY" + ], + "type": "string" + }, + "BinCountOptions": { + "additionalProperties": false, + "properties": { + "Value": { + "minimum": 0, + "type": "number" + } + }, + "type": "object" + }, + "BinWidthOptions": { + "additionalProperties": false, + "properties": { + "BinCountLimit": { + "maximum": 1000, + "minimum": 0, + "type": "number" + }, + "Value": { + "minimum": 0, + "type": "number" + } + }, + "type": "object" + }, + "BodySectionConfiguration": { + "additionalProperties": false, + "properties": { + "Content": { + "$ref": "#/definitions/BodySectionContent" + }, + "PageBreakConfiguration": { + "$ref": "#/definitions/SectionPageBreakConfiguration" + }, + "SectionId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "Style": { + "$ref": "#/definitions/SectionStyle" + } + }, + "required": [ + "Content", + "SectionId" + ], + "type": "object" + }, + "BodySectionContent": { + "additionalProperties": false, + "properties": { + "Layout": { + "$ref": "#/definitions/SectionLayoutConfiguration" + } + }, + "type": "object" + }, + "BoxPlotAggregatedFieldWells": { + "additionalProperties": false, + "properties": { + "GroupBy": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 1, + "minItems": 0, + "type": "array" + }, + "Values": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 5, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "BoxPlotChartConfiguration": { + "additionalProperties": false, + "properties": { + "BoxPlotOptions": { + "$ref": "#/definitions/BoxPlotOptions" + }, + "CategoryAxis": { + "$ref": "#/definitions/AxisDisplayOptions" + }, + "CategoryLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "FieldWells": { + "$ref": "#/definitions/BoxPlotFieldWells" + }, + "Legend": { + "$ref": "#/definitions/LegendOptions" + }, + "PrimaryYAxisDisplayOptions": { + "$ref": "#/definitions/AxisDisplayOptions" + }, + "PrimaryYAxisLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "ReferenceLines": { + "items": { + "$ref": "#/definitions/ReferenceLine" + }, + "maxItems": 20, + "minItems": 0, + "type": "array" + }, + "SortConfiguration": { + "$ref": "#/definitions/BoxPlotSortConfiguration" + }, + "Tooltip": { + "$ref": "#/definitions/TooltipOptions" + }, + "VisualPalette": { + "$ref": "#/definitions/VisualPalette" + } + }, + "type": "object" + }, + "BoxPlotFieldWells": { + "additionalProperties": false, + "properties": { + "BoxPlotAggregatedFieldWells": { + "$ref": "#/definitions/BoxPlotAggregatedFieldWells" + } + }, + "type": "object" + }, + "BoxPlotFillStyle": { + "enum": [ + "SOLID", + "TRANSPARENT" + ], + "type": "string" + }, + "BoxPlotOptions": { + "additionalProperties": false, + "properties": { + "AllDataPointsVisibility": { + "$ref": "#/definitions/Visibility" + }, + "OutlierVisibility": { + "$ref": "#/definitions/Visibility" + }, + "StyleOptions": { + "$ref": "#/definitions/BoxPlotStyleOptions" + } + }, + "type": "object" + }, + "BoxPlotSortConfiguration": { + "additionalProperties": false, + "properties": { + "CategorySort": { + "items": { + "$ref": "#/definitions/FieldSortOptions" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + }, + "PaginationConfiguration": { + "$ref": "#/definitions/PaginationConfiguration" + } + }, + "type": "object" + }, + "BoxPlotStyleOptions": { + "additionalProperties": false, + "properties": { + "FillStyle": { + "$ref": "#/definitions/BoxPlotFillStyle" + } + }, + "type": "object" + }, + "BoxPlotVisual": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/VisualCustomAction" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "ChartConfiguration": { + "$ref": "#/definitions/BoxPlotChartConfiguration" + }, + "ColumnHierarchies": { + "items": { + "$ref": "#/definitions/ColumnHierarchy" + }, + "maxItems": 2, + "minItems": 0, + "type": "array" + }, + "Subtitle": { + "$ref": "#/definitions/VisualSubtitleLabelOptions" + }, + "Title": { + "$ref": "#/definitions/VisualTitleLabelOptions" + }, + "VisualId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "VisualId" + ], + "type": "object" + }, + "CalculatedField": { + "additionalProperties": false, + "properties": { + "DataSetIdentifier": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Expression": { + "maxLength": 32000, + "minLength": 1, + "type": "string" + }, + "Name": { + "maxLength": 127, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "DataSetIdentifier", + "Expression", + "Name" + ], + "type": "object" + }, + "CalculatedMeasureField": { + "additionalProperties": false, + "properties": { + "Expression": { + "maxLength": 4096, + "minLength": 1, + "type": "string" + }, + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Expression", + "FieldId" + ], + "type": "object" + }, + "CascadingControlConfiguration": { + "additionalProperties": false, + "properties": { + "SourceControls": { + "items": { + "$ref": "#/definitions/CascadingControlSource" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "CascadingControlSource": { + "additionalProperties": false, + "properties": { + "ColumnToMatch": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "SourceSheetControlId": { + "type": "string" + } + }, + "type": "object" + }, + "CategoricalAggregationFunction": { + "enum": [ + "COUNT", + "DISTINCT_COUNT" + ], + "type": "string" + }, + "CategoricalDimensionField": { + "additionalProperties": false, + "properties": { + "Column": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "FormatConfiguration": { + "$ref": "#/definitions/StringFormatConfiguration" + }, + "HierarchyId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Column", + "FieldId" + ], + "type": "object" + }, + "CategoricalMeasureField": { + "additionalProperties": false, + "properties": { + "AggregationFunction": { + "$ref": "#/definitions/CategoricalAggregationFunction" + }, + "Column": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "FormatConfiguration": { + "$ref": "#/definitions/StringFormatConfiguration" + } + }, + "required": [ + "Column", + "FieldId" + ], + "type": "object" + }, + "CategoryDrillDownFilter": { + "additionalProperties": false, + "properties": { + "CategoryValues": { + "items": { + "maxLength": 512, + "minLength": 0, + "type": "string" + }, + "maxItems": 100000, + "minItems": 0, + "type": "array" + }, + "Column": { + "$ref": "#/definitions/ColumnIdentifier" + } + }, + "required": [ + "CategoryValues", + "Column" + ], + "type": "object" + }, + "CategoryFilter": { + "additionalProperties": false, + "properties": { + "Column": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "Configuration": { + "$ref": "#/definitions/CategoryFilterConfiguration" + }, + "DefaultFilterControlConfiguration": { + "$ref": "#/definitions/DefaultFilterControlConfiguration" + }, + "FilterId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "Column", + "Configuration", + "FilterId" + ], + "type": "object" + }, + "CategoryFilterConfiguration": { + "additionalProperties": false, + "properties": { + "CustomFilterConfiguration": { + "$ref": "#/definitions/CustomFilterConfiguration" + }, + "CustomFilterListConfiguration": { + "$ref": "#/definitions/CustomFilterListConfiguration" + }, + "FilterListConfiguration": { + "$ref": "#/definitions/FilterListConfiguration" + } + }, + "type": "object" + }, + "CategoryFilterMatchOperator": { + "enum": [ + "EQUALS", + "DOES_NOT_EQUAL", + "CONTAINS", + "DOES_NOT_CONTAIN", + "STARTS_WITH", + "ENDS_WITH" + ], + "type": "string" + }, + "CategoryFilterSelectAllOptions": { + "enum": [ + "FILTER_ALL_VALUES" + ], + "type": "string" + }, + "CategoryInnerFilter": { + "additionalProperties": false, + "properties": { + "Column": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "Configuration": { + "$ref": "#/definitions/CategoryFilterConfiguration" + }, + "DefaultFilterControlConfiguration": { + "$ref": "#/definitions/DefaultFilterControlConfiguration" + } + }, + "required": [ + "Column", + "Configuration" + ], + "type": "object" + }, + "ChartAxisLabelOptions": { + "additionalProperties": false, + "properties": { + "AxisLabelOptions": { + "items": { + "$ref": "#/definitions/AxisLabelOptions" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + }, + "SortIconVisibility": { + "$ref": "#/definitions/Visibility" + }, + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "ClusterMarker": { + "additionalProperties": false, + "properties": { + "SimpleClusterMarker": { + "$ref": "#/definitions/SimpleClusterMarker" + } + }, + "type": "object" + }, + "ClusterMarkerConfiguration": { + "additionalProperties": false, + "properties": { + "ClusterMarker": { + "$ref": "#/definitions/ClusterMarker" + } + }, + "type": "object" + }, + "ColorFillType": { + "enum": [ + "DISCRETE", + "GRADIENT" + ], + "type": "string" + }, + "ColorScale": { + "additionalProperties": false, + "properties": { + "ColorFillType": { + "$ref": "#/definitions/ColorFillType" + }, + "Colors": { + "items": { + "$ref": "#/definitions/DataColor" + }, + "maxItems": 3, + "minItems": 2, + "type": "array" + }, + "NullValueColor": { + "$ref": "#/definitions/DataColor" + } + }, + "required": [ + "ColorFillType", + "Colors" + ], + "type": "object" + }, + "ColorsConfiguration": { + "additionalProperties": false, + "properties": { + "CustomColors": { + "items": { + "$ref": "#/definitions/CustomColor" + }, + "maxItems": 50, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "ColumnConfiguration": { + "additionalProperties": false, + "properties": { + "ColorsConfiguration": { + "$ref": "#/definitions/ColorsConfiguration" + }, + "Column": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "FormatConfiguration": { + "$ref": "#/definitions/FormatConfiguration" + }, + "Role": { + "$ref": "#/definitions/ColumnRole" + } + }, + "required": [ + "Column" + ], + "type": "object" + }, + "ColumnHierarchy": { + "additionalProperties": false, + "properties": { + "DateTimeHierarchy": { + "$ref": "#/definitions/DateTimeHierarchy" + }, + "ExplicitHierarchy": { + "$ref": "#/definitions/ExplicitHierarchy" + }, + "PredefinedHierarchy": { + "$ref": "#/definitions/PredefinedHierarchy" + } + }, + "type": "object" + }, + "ColumnIdentifier": { + "additionalProperties": false, + "properties": { + "ColumnName": { + "maxLength": 127, + "minLength": 1, + "type": "string" + }, + "DataSetIdentifier": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "ColumnName", + "DataSetIdentifier" + ], + "type": "object" + }, + "ColumnRole": { + "enum": [ + "DIMENSION", + "MEASURE" + ], + "type": "string" + }, + "ColumnSort": { + "additionalProperties": false, + "properties": { + "AggregationFunction": { + "$ref": "#/definitions/AggregationFunction" + }, + "Direction": { + "$ref": "#/definitions/SortDirection" + }, + "SortBy": { + "$ref": "#/definitions/ColumnIdentifier" + } + }, + "required": [ + "Direction", + "SortBy" + ], + "type": "object" + }, + "ColumnTooltipItem": { + "additionalProperties": false, + "properties": { + "Aggregation": { + "$ref": "#/definitions/AggregationFunction" + }, + "Column": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "Label": { + "type": "string" + }, + "TooltipTarget": { + "$ref": "#/definitions/TooltipTarget" + }, + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "required": [ + "Column" + ], + "type": "object" + }, + "ComboChartAggregatedFieldWells": { + "additionalProperties": false, + "properties": { + "BarValues": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "Category": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "Colors": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "LineValues": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "ComboChartConfiguration": { + "additionalProperties": false, + "properties": { + "BarDataLabels": { + "$ref": "#/definitions/DataLabelOptions" + }, + "BarsArrangement": { + "$ref": "#/definitions/BarsArrangement" + }, + "CategoryAxis": { + "$ref": "#/definitions/AxisDisplayOptions" + }, + "CategoryLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "ColorLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "FieldWells": { + "$ref": "#/definitions/ComboChartFieldWells" + }, + "Legend": { + "$ref": "#/definitions/LegendOptions" + }, + "LineDataLabels": { + "$ref": "#/definitions/DataLabelOptions" + }, + "PrimaryYAxisDisplayOptions": { + "$ref": "#/definitions/AxisDisplayOptions" + }, + "PrimaryYAxisLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "ReferenceLines": { + "items": { + "$ref": "#/definitions/ReferenceLine" + }, + "maxItems": 20, + "minItems": 0, + "type": "array" + }, + "SecondaryYAxisDisplayOptions": { + "$ref": "#/definitions/AxisDisplayOptions" + }, + "SecondaryYAxisLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "SingleAxisOptions": { + "$ref": "#/definitions/SingleAxisOptions" + }, + "SortConfiguration": { + "$ref": "#/definitions/ComboChartSortConfiguration" + }, + "Tooltip": { + "$ref": "#/definitions/TooltipOptions" + }, + "VisualPalette": { + "$ref": "#/definitions/VisualPalette" + } + }, + "type": "object" + }, + "ComboChartFieldWells": { + "additionalProperties": false, + "properties": { + "ComboChartAggregatedFieldWells": { + "$ref": "#/definitions/ComboChartAggregatedFieldWells" + } + }, + "type": "object" + }, + "ComboChartSortConfiguration": { + "additionalProperties": false, + "properties": { + "CategoryItemsLimit": { + "$ref": "#/definitions/ItemsLimitConfiguration" + }, + "CategorySort": { + "items": { + "$ref": "#/definitions/FieldSortOptions" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + }, + "ColorItemsLimit": { + "$ref": "#/definitions/ItemsLimitConfiguration" + }, + "ColorSort": { + "items": { + "$ref": "#/definitions/FieldSortOptions" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "ComboChartVisual": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/VisualCustomAction" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "ChartConfiguration": { + "$ref": "#/definitions/ComboChartConfiguration" + }, + "ColumnHierarchies": { + "items": { + "$ref": "#/definitions/ColumnHierarchy" + }, + "maxItems": 2, + "minItems": 0, + "type": "array" + }, + "Subtitle": { + "$ref": "#/definitions/VisualSubtitleLabelOptions" + }, + "Title": { + "$ref": "#/definitions/VisualTitleLabelOptions" + }, + "VisualId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "VisualId" + ], + "type": "object" + }, + "CommitMode": { + "enum": [ + "AUTO", + "MANUAL" + ], + "type": "string" + }, + "ComparisonConfiguration": { + "additionalProperties": false, + "properties": { + "ComparisonFormat": { + "$ref": "#/definitions/ComparisonFormatConfiguration" + }, + "ComparisonMethod": { + "$ref": "#/definitions/ComparisonMethod" + } + }, + "type": "object" + }, + "ComparisonFormatConfiguration": { + "additionalProperties": false, + "properties": { + "NumberDisplayFormatConfiguration": { + "$ref": "#/definitions/NumberDisplayFormatConfiguration" + }, + "PercentageDisplayFormatConfiguration": { + "$ref": "#/definitions/PercentageDisplayFormatConfiguration" + } + }, + "type": "object" + }, + "ComparisonMethod": { + "enum": [ + "DIFFERENCE", + "PERCENT_DIFFERENCE", + "PERCENT" + ], + "type": "string" + }, + "Computation": { + "additionalProperties": false, + "properties": { + "Forecast": { + "$ref": "#/definitions/ForecastComputation" + }, + "GrowthRate": { + "$ref": "#/definitions/GrowthRateComputation" + }, + "MaximumMinimum": { + "$ref": "#/definitions/MaximumMinimumComputation" + }, + "MetricComparison": { + "$ref": "#/definitions/MetricComparisonComputation" + }, + "PeriodOverPeriod": { + "$ref": "#/definitions/PeriodOverPeriodComputation" + }, + "PeriodToDate": { + "$ref": "#/definitions/PeriodToDateComputation" + }, + "TopBottomMovers": { + "$ref": "#/definitions/TopBottomMoversComputation" + }, + "TopBottomRanked": { + "$ref": "#/definitions/TopBottomRankedComputation" + }, + "TotalAggregation": { + "$ref": "#/definitions/TotalAggregationComputation" + }, + "UniqueValues": { + "$ref": "#/definitions/UniqueValuesComputation" + } + }, + "type": "object" + }, + "ConditionalFormattingColor": { + "additionalProperties": false, + "properties": { + "Gradient": { + "$ref": "#/definitions/ConditionalFormattingGradientColor" + }, + "Solid": { + "$ref": "#/definitions/ConditionalFormattingSolidColor" + } + }, + "type": "object" + }, + "ConditionalFormattingCustomIconCondition": { + "additionalProperties": false, + "properties": { + "Color": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + }, + "DisplayConfiguration": { + "$ref": "#/definitions/ConditionalFormattingIconDisplayConfiguration" + }, + "Expression": { + "maxLength": 4096, + "minLength": 1, + "type": "string" + }, + "IconOptions": { + "$ref": "#/definitions/ConditionalFormattingCustomIconOptions" + } + }, + "required": [ + "Expression", + "IconOptions" + ], + "type": "object" + }, + "ConditionalFormattingCustomIconOptions": { + "additionalProperties": false, + "properties": { + "Icon": { + "$ref": "#/definitions/Icon" + }, + "UnicodeIcon": { + "pattern": "^[^\\u0000-\\u00FF]$", + "type": "string" + } + }, + "type": "object" + }, + "ConditionalFormattingGradientColor": { + "additionalProperties": false, + "properties": { + "Color": { + "$ref": "#/definitions/GradientColor" + }, + "Expression": { + "maxLength": 4096, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Color", + "Expression" + ], + "type": "object" + }, + "ConditionalFormattingIcon": { + "additionalProperties": false, + "properties": { + "CustomCondition": { + "$ref": "#/definitions/ConditionalFormattingCustomIconCondition" + }, + "IconSet": { + "$ref": "#/definitions/ConditionalFormattingIconSet" + } + }, + "type": "object" + }, + "ConditionalFormattingIconDisplayConfiguration": { + "additionalProperties": false, + "properties": { + "IconDisplayOption": { + "$ref": "#/definitions/ConditionalFormattingIconDisplayOption" + } + }, + "type": "object" + }, + "ConditionalFormattingIconDisplayOption": { + "enum": [ + "ICON_ONLY" + ], + "type": "string" + }, + "ConditionalFormattingIconSet": { + "additionalProperties": false, + "properties": { + "Expression": { + "maxLength": 4096, + "minLength": 1, + "type": "string" + }, + "IconSetType": { + "$ref": "#/definitions/ConditionalFormattingIconSetType" + } + }, + "required": [ + "Expression" + ], + "type": "object" + }, + "ConditionalFormattingIconSetType": { + "enum": [ + "PLUS_MINUS", + "CHECK_X", + "THREE_COLOR_ARROW", + "THREE_GRAY_ARROW", + "CARET_UP_MINUS_DOWN", + "THREE_SHAPE", + "THREE_CIRCLE", + "FLAGS", + "BARS", + "FOUR_COLOR_ARROW", + "FOUR_GRAY_ARROW" + ], + "type": "string" + }, + "ConditionalFormattingSolidColor": { + "additionalProperties": false, + "properties": { + "Color": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + }, + "Expression": { + "maxLength": 4096, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Expression" + ], + "type": "object" + }, + "ContributionAnalysisDefault": { + "additionalProperties": false, + "properties": { + "ContributorDimensions": { + "items": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "maxItems": 4, + "minItems": 1, + "type": "array" + }, + "MeasureFieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "ContributorDimensions", + "MeasureFieldId" + ], + "type": "object" + }, + "CrossDatasetTypes": { + "enum": [ + "ALL_DATASETS", + "SINGLE_DATASET" + ], + "type": "string" + }, + "CurrencyDisplayFormatConfiguration": { + "additionalProperties": false, + "properties": { + "DecimalPlacesConfiguration": { + "$ref": "#/definitions/DecimalPlacesConfiguration" + }, + "NegativeValueConfiguration": { + "$ref": "#/definitions/NegativeValueConfiguration" + }, + "NullValueFormatConfiguration": { + "$ref": "#/definitions/NullValueFormatConfiguration" + }, + "NumberScale": { + "$ref": "#/definitions/NumberScale" + }, + "Prefix": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "SeparatorConfiguration": { + "$ref": "#/definitions/NumericSeparatorConfiguration" + }, + "Suffix": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Symbol": { + "pattern": "^[A-Z]{3}$", + "type": "string" + } + }, + "type": "object" + }, + "CustomActionFilterOperation": { + "additionalProperties": false, + "properties": { + "SelectedFieldsConfiguration": { + "$ref": "#/definitions/FilterOperationSelectedFieldsConfiguration" + }, + "TargetVisualsConfiguration": { + "$ref": "#/definitions/FilterOperationTargetVisualsConfiguration" + } + }, + "required": [ + "SelectedFieldsConfiguration", + "TargetVisualsConfiguration" + ], + "type": "object" + }, + "CustomActionNavigationOperation": { + "additionalProperties": false, + "properties": { + "LocalNavigationConfiguration": { + "$ref": "#/definitions/LocalNavigationConfiguration" + } + }, + "type": "object" + }, + "CustomActionSetParametersOperation": { + "additionalProperties": false, + "properties": { + "ParameterValueConfigurations": { + "items": { + "$ref": "#/definitions/SetParameterValueConfiguration" + }, + "maxItems": 200, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "ParameterValueConfigurations" + ], + "type": "object" + }, + "CustomActionURLOperation": { + "additionalProperties": false, + "properties": { + "URLTarget": { + "$ref": "#/definitions/URLTargetConfiguration" + }, + "URLTemplate": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "URLTarget", + "URLTemplate" + ], + "type": "object" + }, + "CustomColor": { + "additionalProperties": false, + "properties": { + "Color": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + }, + "FieldValue": { + "maxLength": 2048, + "minLength": 0, + "type": "string" + }, + "SpecialValue": { + "$ref": "#/definitions/SpecialValue" + } + }, + "required": [ + "Color" + ], + "type": "object" + }, + "CustomContentConfiguration": { + "additionalProperties": false, + "properties": { + "ContentType": { + "$ref": "#/definitions/CustomContentType" + }, + "ContentUrl": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "ImageScaling": { + "$ref": "#/definitions/CustomContentImageScalingConfiguration" + } + }, + "type": "object" + }, + "CustomContentImageScalingConfiguration": { + "enum": [ + "FIT_TO_HEIGHT", + "FIT_TO_WIDTH", + "DO_NOT_SCALE", + "SCALE_TO_VISUAL" + ], + "type": "string" + }, + "CustomContentType": { + "enum": [ + "IMAGE", + "OTHER_EMBEDDED_CONTENT" + ], + "type": "string" + }, + "CustomContentVisual": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/VisualCustomAction" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "ChartConfiguration": { + "$ref": "#/definitions/CustomContentConfiguration" + }, + "DataSetIdentifier": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Subtitle": { + "$ref": "#/definitions/VisualSubtitleLabelOptions" + }, + "Title": { + "$ref": "#/definitions/VisualTitleLabelOptions" + }, + "VisualId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "DataSetIdentifier", + "VisualId" + ], + "type": "object" + }, + "CustomFilterConfiguration": { + "additionalProperties": false, + "properties": { + "CategoryValue": { + "maxLength": 512, + "minLength": 0, + "type": "string" + }, + "MatchOperator": { + "$ref": "#/definitions/CategoryFilterMatchOperator" + }, + "NullOption": { + "$ref": "#/definitions/FilterNullOption" + }, + "ParameterName": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "SelectAllOptions": { + "$ref": "#/definitions/CategoryFilterSelectAllOptions" + } + }, + "required": [ + "MatchOperator", + "NullOption" + ], + "type": "object" + }, + "CustomFilterListConfiguration": { + "additionalProperties": false, + "properties": { + "CategoryValues": { + "items": { + "maxLength": 512, + "minLength": 0, + "type": "string" + }, + "maxItems": 100000, + "minItems": 0, + "type": "array" + }, + "MatchOperator": { + "$ref": "#/definitions/CategoryFilterMatchOperator" + }, + "NullOption": { + "$ref": "#/definitions/FilterNullOption" + }, + "SelectAllOptions": { + "$ref": "#/definitions/CategoryFilterSelectAllOptions" + } + }, + "required": [ + "MatchOperator", + "NullOption" + ], + "type": "object" + }, + "CustomNarrativeOptions": { + "additionalProperties": false, + "properties": { + "Narrative": { + "maxLength": 150000, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Narrative" + ], + "type": "object" + }, + "CustomParameterValues": { + "additionalProperties": false, + "properties": { + "DateTimeValues": { + "items": { + "format": "date-time", + "type": "string" + }, + "maxItems": 50000, + "minItems": 0, + "type": "array" + }, + "DecimalValues": { + "items": { + "type": "number" + }, + "maxItems": 50000, + "minItems": 0, + "type": "array" + }, + "IntegerValues": { + "items": { + "type": "number" + }, + "maxItems": 50000, + "minItems": 0, + "type": "array" + }, + "StringValues": { + "items": { + "type": "string" + }, + "maxItems": 50000, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "CustomValuesConfiguration": { + "additionalProperties": false, + "properties": { + "CustomValues": { + "$ref": "#/definitions/CustomParameterValues" + }, + "IncludeNullValue": { + "type": "boolean" + } + }, + "required": [ + "CustomValues" + ], + "type": "object" + }, + "DataBarsOptions": { + "additionalProperties": false, + "properties": { + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "NegativeColor": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + }, + "PositiveColor": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + } + }, + "required": [ + "FieldId" + ], + "type": "object" + }, + "DataColor": { + "additionalProperties": false, + "properties": { + "Color": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + }, + "DataValue": { + "default": null, + "type": "number" + } + }, + "type": "object" + }, + "DataFieldSeriesItem": { + "additionalProperties": false, + "properties": { + "AxisBinding": { + "$ref": "#/definitions/AxisBinding" + }, + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "FieldValue": { + "type": "string" + }, + "Settings": { + "$ref": "#/definitions/LineChartSeriesSettings" + } + }, + "required": [ + "AxisBinding", + "FieldId" + ], + "type": "object" + }, + "DataLabelContent": { + "enum": [ + "VALUE", + "PERCENT", + "VALUE_AND_PERCENT" + ], + "type": "string" + }, + "DataLabelOptions": { + "additionalProperties": false, + "properties": { + "CategoryLabelVisibility": { + "$ref": "#/definitions/Visibility" + }, + "DataLabelTypes": { + "items": { + "$ref": "#/definitions/DataLabelType" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + }, + "LabelColor": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + }, + "LabelContent": { + "$ref": "#/definitions/DataLabelContent" + }, + "LabelFontConfiguration": { + "$ref": "#/definitions/FontConfiguration" + }, + "MeasureLabelVisibility": { + "$ref": "#/definitions/Visibility" + }, + "Overlap": { + "$ref": "#/definitions/DataLabelOverlap" + }, + "Position": { + "$ref": "#/definitions/DataLabelPosition" + }, + "TotalsVisibility": { + "$ref": "#/definitions/Visibility" + }, + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "DataLabelOverlap": { + "enum": [ + "DISABLE_OVERLAP", + "ENABLE_OVERLAP" + ], + "type": "string" + }, + "DataLabelPosition": { + "enum": [ + "INSIDE", + "OUTSIDE", + "LEFT", + "TOP", + "BOTTOM", + "RIGHT" + ], + "type": "string" + }, + "DataLabelType": { + "additionalProperties": false, + "properties": { + "DataPathLabelType": { + "$ref": "#/definitions/DataPathLabelType" + }, + "FieldLabelType": { + "$ref": "#/definitions/FieldLabelType" + }, + "MaximumLabelType": { + "$ref": "#/definitions/MaximumLabelType" + }, + "MinimumLabelType": { + "$ref": "#/definitions/MinimumLabelType" + }, + "RangeEndsLabelType": { + "$ref": "#/definitions/RangeEndsLabelType" + } + }, + "type": "object" + }, + "DataPathColor": { + "additionalProperties": false, + "properties": { + "Color": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + }, + "Element": { + "$ref": "#/definitions/DataPathValue" + }, + "TimeGranularity": { + "$ref": "#/definitions/TimeGranularity" + } + }, + "required": [ + "Color", + "Element" + ], + "type": "object" + }, + "DataPathLabelType": { + "additionalProperties": false, + "properties": { + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "FieldValue": { + "maxLength": 2048, + "minLength": 0, + "type": "string" + }, + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "DataPathSort": { + "additionalProperties": false, + "properties": { + "Direction": { + "$ref": "#/definitions/SortDirection" + }, + "SortPaths": { + "items": { + "$ref": "#/definitions/DataPathValue" + }, + "maxItems": 20, + "minItems": 0, + "type": "array" + } + }, + "required": [ + "Direction", + "SortPaths" + ], + "type": "object" + }, + "DataPathType": { + "additionalProperties": false, + "properties": { + "PivotTableDataPathType": { + "$ref": "#/definitions/PivotTableDataPathType" + } + }, + "type": "object" + }, + "DataPathValue": { + "additionalProperties": false, + "properties": { + "DataPathType": { + "$ref": "#/definitions/DataPathType" + }, + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "FieldValue": { + "maxLength": 2048, + "minLength": 0, + "type": "string" + } + }, + "type": "object" + }, + "DataSetIdentifierDeclaration": { + "additionalProperties": false, + "properties": { + "DataSetArn": { + "type": "string" + }, + "Identifier": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "DataSetArn", + "Identifier" + ], + "type": "object" + }, + "DataSetReference": { + "additionalProperties": false, + "properties": { + "DataSetArn": { + "type": "string" + }, + "DataSetPlaceholder": { + "pattern": "\\S", + "type": "string" + } + }, + "required": [ + "DataSetArn", + "DataSetPlaceholder" + ], + "type": "object" + }, + "DateAggregationFunction": { + "enum": [ + "COUNT", + "DISTINCT_COUNT", + "MIN", + "MAX" + ], + "type": "string" + }, + "DateAxisOptions": { + "additionalProperties": false, + "properties": { + "MissingDateVisibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "DateDimensionField": { + "additionalProperties": false, + "properties": { + "Column": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "DateGranularity": { + "$ref": "#/definitions/TimeGranularity" + }, + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "FormatConfiguration": { + "$ref": "#/definitions/DateTimeFormatConfiguration" + }, + "HierarchyId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Column", + "FieldId" + ], + "type": "object" + }, + "DateMeasureField": { + "additionalProperties": false, + "properties": { + "AggregationFunction": { + "$ref": "#/definitions/DateAggregationFunction" + }, + "Column": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "FormatConfiguration": { + "$ref": "#/definitions/DateTimeFormatConfiguration" + } + }, + "required": [ + "Column", + "FieldId" + ], + "type": "object" + }, + "DateTimeDefaultValues": { + "additionalProperties": false, + "properties": { + "DynamicValue": { + "$ref": "#/definitions/DynamicDefaultValue" + }, + "RollingDate": { + "$ref": "#/definitions/RollingDateConfiguration" + }, + "StaticValues": { + "items": { + "format": "date-time", + "type": "string" + }, + "maxItems": 50000, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "DateTimeFormatConfiguration": { + "additionalProperties": false, + "properties": { + "DateTimeFormat": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "NullValueFormatConfiguration": { + "$ref": "#/definitions/NullValueFormatConfiguration" + }, + "NumericFormatConfiguration": { + "$ref": "#/definitions/NumericFormatConfiguration" + } + }, + "type": "object" + }, + "DateTimeHierarchy": { + "additionalProperties": false, + "properties": { + "DrillDownFilters": { + "items": { + "$ref": "#/definitions/DrillDownFilter" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "HierarchyId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "HierarchyId" + ], + "type": "object" + }, + "DateTimeParameter": { + "additionalProperties": false, + "properties": { + "Name": { + "pattern": "\\S", + "type": "string" + }, + "Values": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "Name", + "Values" + ], + "type": "object" + }, + "DateTimeParameterDeclaration": { + "additionalProperties": false, + "properties": { + "DefaultValues": { + "$ref": "#/definitions/DateTimeDefaultValues" + }, + "MappedDataSetParameters": { + "items": { + "$ref": "#/definitions/MappedDataSetParameter" + }, + "maxItems": 150, + "minItems": 0, + "type": "array" + }, + "Name": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "TimeGranularity": { + "$ref": "#/definitions/TimeGranularity" + }, + "ValueWhenUnset": { + "$ref": "#/definitions/DateTimeValueWhenUnsetConfiguration" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "DateTimePickerControlDisplayOptions": { + "additionalProperties": false, + "properties": { + "DateTimeFormat": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "InfoIconLabelOptions": { + "$ref": "#/definitions/SheetControlInfoIconLabelOptions" + }, + "TitleOptions": { + "$ref": "#/definitions/LabelOptions" + } + }, + "type": "object" + }, + "DateTimeValueWhenUnsetConfiguration": { + "additionalProperties": false, + "properties": { + "CustomValue": { + "format": "date-time", + "type": "string" + }, + "ValueWhenUnsetOption": { + "$ref": "#/definitions/ValueWhenUnsetOption" + } + }, + "type": "object" + }, + "DayOfTheWeek": { + "enum": [ + "SUNDAY", + "MONDAY", + "TUESDAY", + "WEDNESDAY", + "THURSDAY", + "FRIDAY", + "SATURDAY" + ], + "type": "string" + }, + "DecimalDefaultValues": { + "additionalProperties": false, + "properties": { + "DynamicValue": { + "$ref": "#/definitions/DynamicDefaultValue" + }, + "StaticValues": { + "items": { + "type": "number" + }, + "maxItems": 50000, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "DecimalParameter": { + "additionalProperties": false, + "properties": { + "Name": { + "pattern": "\\S", + "type": "string" + }, + "Values": { + "items": { + "default": 0, + "type": "number" + }, + "type": "array" + } + }, + "required": [ + "Name", + "Values" + ], + "type": "object" + }, + "DecimalParameterDeclaration": { + "additionalProperties": false, + "properties": { + "DefaultValues": { + "$ref": "#/definitions/DecimalDefaultValues" + }, + "MappedDataSetParameters": { + "items": { + "$ref": "#/definitions/MappedDataSetParameter" + }, + "maxItems": 150, + "minItems": 0, + "type": "array" + }, + "Name": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "ParameterValueType": { + "$ref": "#/definitions/ParameterValueType" + }, + "ValueWhenUnset": { + "$ref": "#/definitions/DecimalValueWhenUnsetConfiguration" + } + }, + "required": [ + "Name", + "ParameterValueType" + ], + "type": "object" + }, + "DecimalPlacesConfiguration": { + "additionalProperties": false, + "properties": { + "DecimalPlaces": { + "maximum": 20, + "minimum": 0, + "type": "number" + } + }, + "required": [ + "DecimalPlaces" + ], + "type": "object" + }, + "DecimalValueWhenUnsetConfiguration": { + "additionalProperties": false, + "properties": { + "CustomValue": { + "default": null, + "type": "number" + }, + "ValueWhenUnsetOption": { + "$ref": "#/definitions/ValueWhenUnsetOption" + } + }, + "type": "object" + }, + "DefaultDateTimePickerControlOptions": { + "additionalProperties": false, + "properties": { + "CommitMode": { + "$ref": "#/definitions/CommitMode" + }, + "DisplayOptions": { + "$ref": "#/definitions/DateTimePickerControlDisplayOptions" + }, + "Type": { + "$ref": "#/definitions/SheetControlDateTimePickerType" + } + }, + "type": "object" + }, + "DefaultFilterControlConfiguration": { + "additionalProperties": false, + "properties": { + "ControlOptions": { + "$ref": "#/definitions/DefaultFilterControlOptions" + }, + "Title": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "ControlOptions", + "Title" + ], + "type": "object" + }, + "DefaultFilterControlOptions": { + "additionalProperties": false, + "properties": { + "DefaultDateTimePickerOptions": { + "$ref": "#/definitions/DefaultDateTimePickerControlOptions" + }, + "DefaultDropdownOptions": { + "$ref": "#/definitions/DefaultFilterDropDownControlOptions" + }, + "DefaultListOptions": { + "$ref": "#/definitions/DefaultFilterListControlOptions" + }, + "DefaultRelativeDateTimeOptions": { + "$ref": "#/definitions/DefaultRelativeDateTimeControlOptions" + }, + "DefaultSliderOptions": { + "$ref": "#/definitions/DefaultSliderControlOptions" + }, + "DefaultTextAreaOptions": { + "$ref": "#/definitions/DefaultTextAreaControlOptions" + }, + "DefaultTextFieldOptions": { + "$ref": "#/definitions/DefaultTextFieldControlOptions" + } + }, + "type": "object" + }, + "DefaultFilterDropDownControlOptions": { + "additionalProperties": false, + "properties": { + "CommitMode": { + "$ref": "#/definitions/CommitMode" + }, + "DisplayOptions": { + "$ref": "#/definitions/DropDownControlDisplayOptions" + }, + "SelectableValues": { + "$ref": "#/definitions/FilterSelectableValues" + }, + "Type": { + "$ref": "#/definitions/SheetControlListType" + } + }, + "type": "object" + }, + "DefaultFilterListControlOptions": { + "additionalProperties": false, + "properties": { + "DisplayOptions": { + "$ref": "#/definitions/ListControlDisplayOptions" + }, + "SelectableValues": { + "$ref": "#/definitions/FilterSelectableValues" + }, + "Type": { + "$ref": "#/definitions/SheetControlListType" + } + }, + "type": "object" + }, + "DefaultFreeFormLayoutConfiguration": { + "additionalProperties": false, + "properties": { + "CanvasSizeOptions": { + "$ref": "#/definitions/FreeFormLayoutCanvasSizeOptions" + } + }, + "required": [ + "CanvasSizeOptions" + ], + "type": "object" + }, + "DefaultGridLayoutConfiguration": { + "additionalProperties": false, + "properties": { + "CanvasSizeOptions": { + "$ref": "#/definitions/GridLayoutCanvasSizeOptions" + } + }, + "required": [ + "CanvasSizeOptions" + ], + "type": "object" + }, + "DefaultInteractiveLayoutConfiguration": { + "additionalProperties": false, + "properties": { + "FreeForm": { + "$ref": "#/definitions/DefaultFreeFormLayoutConfiguration" + }, + "Grid": { + "$ref": "#/definitions/DefaultGridLayoutConfiguration" + } + }, + "type": "object" + }, + "DefaultNewSheetConfiguration": { + "additionalProperties": false, + "properties": { + "InteractiveLayoutConfiguration": { + "$ref": "#/definitions/DefaultInteractiveLayoutConfiguration" + }, + "PaginatedLayoutConfiguration": { + "$ref": "#/definitions/DefaultPaginatedLayoutConfiguration" + }, + "SheetContentType": { + "$ref": "#/definitions/SheetContentType" + } + }, + "type": "object" + }, + "DefaultPaginatedLayoutConfiguration": { + "additionalProperties": false, + "properties": { + "SectionBased": { + "$ref": "#/definitions/DefaultSectionBasedLayoutConfiguration" + } + }, + "type": "object" + }, + "DefaultRelativeDateTimeControlOptions": { + "additionalProperties": false, + "properties": { + "CommitMode": { + "$ref": "#/definitions/CommitMode" + }, + "DisplayOptions": { + "$ref": "#/definitions/RelativeDateTimeControlDisplayOptions" + } + }, + "type": "object" + }, + "DefaultSectionBasedLayoutConfiguration": { + "additionalProperties": false, + "properties": { + "CanvasSizeOptions": { + "$ref": "#/definitions/SectionBasedLayoutCanvasSizeOptions" + } + }, + "required": [ + "CanvasSizeOptions" + ], + "type": "object" + }, + "DefaultSliderControlOptions": { + "additionalProperties": false, + "properties": { + "DisplayOptions": { + "$ref": "#/definitions/SliderControlDisplayOptions" + }, + "MaximumValue": { + "default": 0, + "type": "number" + }, + "MinimumValue": { + "default": 0, + "type": "number" + }, + "StepSize": { + "default": 0, + "type": "number" + }, + "Type": { + "$ref": "#/definitions/SheetControlSliderType" + } + }, + "required": [ + "MaximumValue", + "MinimumValue", + "StepSize" + ], + "type": "object" + }, + "DefaultTextAreaControlOptions": { + "additionalProperties": false, + "properties": { + "Delimiter": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "DisplayOptions": { + "$ref": "#/definitions/TextAreaControlDisplayOptions" + } + }, + "type": "object" + }, + "DefaultTextFieldControlOptions": { + "additionalProperties": false, + "properties": { + "DisplayOptions": { + "$ref": "#/definitions/TextFieldControlDisplayOptions" + } + }, + "type": "object" + }, + "DestinationParameterValueConfiguration": { + "additionalProperties": false, + "properties": { + "CustomValuesConfiguration": { + "$ref": "#/definitions/CustomValuesConfiguration" + }, + "SelectAllValueOptions": { + "$ref": "#/definitions/SelectAllValueOptions" + }, + "SourceColumn": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "SourceField": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "SourceParameterName": { + "type": "string" + } + }, + "type": "object" + }, + "DimensionField": { + "additionalProperties": false, + "properties": { + "CategoricalDimensionField": { + "$ref": "#/definitions/CategoricalDimensionField" + }, + "DateDimensionField": { + "$ref": "#/definitions/DateDimensionField" + }, + "NumericalDimensionField": { + "$ref": "#/definitions/NumericalDimensionField" + } + }, + "type": "object" + }, + "DonutCenterOptions": { + "additionalProperties": false, + "properties": { + "LabelVisibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "DonutOptions": { + "additionalProperties": false, + "properties": { + "ArcOptions": { + "$ref": "#/definitions/ArcOptions" + }, + "DonutCenterOptions": { + "$ref": "#/definitions/DonutCenterOptions" + } + }, + "type": "object" + }, + "DrillDownFilter": { + "additionalProperties": false, + "properties": { + "CategoryFilter": { + "$ref": "#/definitions/CategoryDrillDownFilter" + }, + "NumericEqualityFilter": { + "$ref": "#/definitions/NumericEqualityDrillDownFilter" + }, + "TimeRangeFilter": { + "$ref": "#/definitions/TimeRangeDrillDownFilter" + } + }, + "type": "object" + }, + "DropDownControlDisplayOptions": { + "additionalProperties": false, + "properties": { + "InfoIconLabelOptions": { + "$ref": "#/definitions/SheetControlInfoIconLabelOptions" + }, + "SelectAllOptions": { + "$ref": "#/definitions/ListControlSelectAllOptions" + }, + "TitleOptions": { + "$ref": "#/definitions/LabelOptions" + } + }, + "type": "object" + }, + "DynamicDefaultValue": { + "additionalProperties": false, + "properties": { + "DefaultValueColumn": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "GroupNameColumn": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "UserNameColumn": { + "$ref": "#/definitions/ColumnIdentifier" + } + }, + "required": [ + "DefaultValueColumn" + ], + "type": "object" + }, + "EmptyVisual": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/VisualCustomAction" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "DataSetIdentifier": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "VisualId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "DataSetIdentifier", + "VisualId" + ], + "type": "object" + }, + "Entity": { + "additionalProperties": false, + "properties": { + "Path": { + "pattern": "\\S", + "type": "string" + } + }, + "type": "object" + }, + "ExcludePeriodConfiguration": { + "additionalProperties": false, + "properties": { + "Amount": { + "default": null, + "type": "number" + }, + "Granularity": { + "$ref": "#/definitions/TimeGranularity" + }, + "Status": { + "$ref": "#/definitions/WidgetStatus" + } + }, + "required": [ + "Amount", + "Granularity" + ], + "type": "object" + }, + "ExplicitHierarchy": { + "additionalProperties": false, + "properties": { + "Columns": { + "items": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "maxItems": 10, + "minItems": 2, + "type": "array" + }, + "DrillDownFilters": { + "items": { + "$ref": "#/definitions/DrillDownFilter" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "HierarchyId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Columns", + "HierarchyId" + ], + "type": "object" + }, + "FieldBasedTooltip": { + "additionalProperties": false, + "properties": { + "AggregationVisibility": { + "$ref": "#/definitions/Visibility" + }, + "TooltipFields": { + "items": { + "$ref": "#/definitions/TooltipItem" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + }, + "TooltipTitleType": { + "$ref": "#/definitions/TooltipTitleType" + } + }, + "type": "object" + }, + "FieldLabelType": { + "additionalProperties": false, + "properties": { + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "FieldSeriesItem": { + "additionalProperties": false, + "properties": { + "AxisBinding": { + "$ref": "#/definitions/AxisBinding" + }, + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "Settings": { + "$ref": "#/definitions/LineChartSeriesSettings" + } + }, + "required": [ + "AxisBinding", + "FieldId" + ], + "type": "object" + }, + "FieldSort": { + "additionalProperties": false, + "properties": { + "Direction": { + "$ref": "#/definitions/SortDirection" + }, + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Direction", + "FieldId" + ], + "type": "object" + }, + "FieldSortOptions": { + "additionalProperties": false, + "properties": { + "ColumnSort": { + "$ref": "#/definitions/ColumnSort" + }, + "FieldSort": { + "$ref": "#/definitions/FieldSort" + } + }, + "type": "object" + }, + "FieldTooltipItem": { + "additionalProperties": false, + "properties": { + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "Label": { + "type": "string" + }, + "TooltipTarget": { + "$ref": "#/definitions/TooltipTarget" + }, + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "required": [ + "FieldId" + ], + "type": "object" + }, + "FilledMapAggregatedFieldWells": { + "additionalProperties": false, + "properties": { + "Geospatial": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 1, + "minItems": 0, + "type": "array" + }, + "Values": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 1, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "FilledMapConditionalFormatting": { + "additionalProperties": false, + "properties": { + "ConditionalFormattingOptions": { + "items": { + "$ref": "#/definitions/FilledMapConditionalFormattingOption" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + } + }, + "required": [ + "ConditionalFormattingOptions" + ], + "type": "object" + }, + "FilledMapConditionalFormattingOption": { + "additionalProperties": false, + "properties": { + "Shape": { + "$ref": "#/definitions/FilledMapShapeConditionalFormatting" + } + }, + "required": [ + "Shape" + ], + "type": "object" + }, + "FilledMapConfiguration": { + "additionalProperties": false, + "properties": { + "FieldWells": { + "$ref": "#/definitions/FilledMapFieldWells" + }, + "Legend": { + "$ref": "#/definitions/LegendOptions" + }, + "MapStyleOptions": { + "$ref": "#/definitions/GeospatialMapStyleOptions" + }, + "SortConfiguration": { + "$ref": "#/definitions/FilledMapSortConfiguration" + }, + "Tooltip": { + "$ref": "#/definitions/TooltipOptions" + }, + "WindowOptions": { + "$ref": "#/definitions/GeospatialWindowOptions" + } + }, + "type": "object" + }, + "FilledMapFieldWells": { + "additionalProperties": false, + "properties": { + "FilledMapAggregatedFieldWells": { + "$ref": "#/definitions/FilledMapAggregatedFieldWells" + } + }, + "type": "object" + }, + "FilledMapShapeConditionalFormatting": { + "additionalProperties": false, + "properties": { + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "Format": { + "$ref": "#/definitions/ShapeConditionalFormat" + } + }, + "required": [ + "FieldId" + ], + "type": "object" + }, + "FilledMapSortConfiguration": { + "additionalProperties": false, + "properties": { + "CategorySort": { + "items": { + "$ref": "#/definitions/FieldSortOptions" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "FilledMapVisual": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/VisualCustomAction" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "ChartConfiguration": { + "$ref": "#/definitions/FilledMapConfiguration" + }, + "ColumnHierarchies": { + "items": { + "$ref": "#/definitions/ColumnHierarchy" + }, + "maxItems": 2, + "minItems": 0, + "type": "array" + }, + "ConditionalFormatting": { + "$ref": "#/definitions/FilledMapConditionalFormatting" + }, + "Subtitle": { + "$ref": "#/definitions/VisualSubtitleLabelOptions" + }, + "Title": { + "$ref": "#/definitions/VisualTitleLabelOptions" + }, + "VisualId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "VisualId" + ], + "type": "object" + }, + "Filter": { + "additionalProperties": false, + "properties": { + "CategoryFilter": { + "$ref": "#/definitions/CategoryFilter" + }, + "NestedFilter": { + "$ref": "#/definitions/NestedFilter" + }, + "NumericEqualityFilter": { + "$ref": "#/definitions/NumericEqualityFilter" + }, + "NumericRangeFilter": { + "$ref": "#/definitions/NumericRangeFilter" + }, + "RelativeDatesFilter": { + "$ref": "#/definitions/RelativeDatesFilter" + }, + "TimeEqualityFilter": { + "$ref": "#/definitions/TimeEqualityFilter" + }, + "TimeRangeFilter": { + "$ref": "#/definitions/TimeRangeFilter" + }, + "TopBottomFilter": { + "$ref": "#/definitions/TopBottomFilter" + } + }, + "type": "object" + }, + "FilterControl": { + "additionalProperties": false, + "properties": { + "CrossSheet": { + "$ref": "#/definitions/FilterCrossSheetControl" + }, + "DateTimePicker": { + "$ref": "#/definitions/FilterDateTimePickerControl" + }, + "Dropdown": { + "$ref": "#/definitions/FilterDropDownControl" + }, + "List": { + "$ref": "#/definitions/FilterListControl" + }, + "RelativeDateTime": { + "$ref": "#/definitions/FilterRelativeDateTimeControl" + }, + "Slider": { + "$ref": "#/definitions/FilterSliderControl" + }, + "TextArea": { + "$ref": "#/definitions/FilterTextAreaControl" + }, + "TextField": { + "$ref": "#/definitions/FilterTextFieldControl" + } + }, + "type": "object" + }, + "FilterCrossSheetControl": { + "additionalProperties": false, + "properties": { + "CascadingControlConfiguration": { + "$ref": "#/definitions/CascadingControlConfiguration" + }, + "FilterControlId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "SourceFilterId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "FilterControlId", + "SourceFilterId" + ], + "type": "object" + }, + "FilterDateTimePickerControl": { + "additionalProperties": false, + "properties": { + "CommitMode": { + "$ref": "#/definitions/CommitMode" + }, + "DisplayOptions": { + "$ref": "#/definitions/DateTimePickerControlDisplayOptions" + }, + "FilterControlId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "SourceFilterId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "Title": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Type": { + "$ref": "#/definitions/SheetControlDateTimePickerType" + } + }, + "required": [ + "FilterControlId", + "SourceFilterId", + "Title" + ], + "type": "object" + }, + "FilterDropDownControl": { + "additionalProperties": false, + "properties": { + "CascadingControlConfiguration": { + "$ref": "#/definitions/CascadingControlConfiguration" + }, + "CommitMode": { + "$ref": "#/definitions/CommitMode" + }, + "DisplayOptions": { + "$ref": "#/definitions/DropDownControlDisplayOptions" + }, + "FilterControlId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "SelectableValues": { + "$ref": "#/definitions/FilterSelectableValues" + }, + "SourceFilterId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "Title": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Type": { + "$ref": "#/definitions/SheetControlListType" + } + }, + "required": [ + "FilterControlId", + "SourceFilterId", + "Title" + ], + "type": "object" + }, + "FilterGroup": { + "additionalProperties": false, + "properties": { + "CrossDataset": { + "$ref": "#/definitions/CrossDatasetTypes" + }, + "FilterGroupId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "Filters": { + "items": { + "$ref": "#/definitions/Filter" + }, + "maxItems": 20, + "minItems": 0, + "type": "array" + }, + "ScopeConfiguration": { + "$ref": "#/definitions/FilterScopeConfiguration" + }, + "Status": { + "$ref": "#/definitions/WidgetStatus" + } + }, + "required": [ + "CrossDataset", + "FilterGroupId", + "Filters", + "ScopeConfiguration" + ], + "type": "object" + }, + "FilterListConfiguration": { + "additionalProperties": false, + "properties": { + "CategoryValues": { + "items": { + "maxLength": 512, + "minLength": 0, + "type": "string" + }, + "maxItems": 100000, + "minItems": 0, + "type": "array" + }, + "MatchOperator": { + "$ref": "#/definitions/CategoryFilterMatchOperator" + }, + "NullOption": { + "$ref": "#/definitions/FilterNullOption" + }, + "SelectAllOptions": { + "$ref": "#/definitions/CategoryFilterSelectAllOptions" + } + }, + "required": [ + "MatchOperator" + ], + "type": "object" + }, + "FilterListControl": { + "additionalProperties": false, + "properties": { + "CascadingControlConfiguration": { + "$ref": "#/definitions/CascadingControlConfiguration" + }, + "DisplayOptions": { + "$ref": "#/definitions/ListControlDisplayOptions" + }, + "FilterControlId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "SelectableValues": { + "$ref": "#/definitions/FilterSelectableValues" + }, + "SourceFilterId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "Title": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Type": { + "$ref": "#/definitions/SheetControlListType" + } + }, + "required": [ + "FilterControlId", + "SourceFilterId", + "Title" + ], + "type": "object" + }, + "FilterNullOption": { + "enum": [ + "ALL_VALUES", + "NULLS_ONLY", + "NON_NULLS_ONLY" + ], + "type": "string" + }, + "FilterOperationSelectedFieldsConfiguration": { + "additionalProperties": false, + "properties": { + "SelectedColumns": { + "items": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "SelectedFieldOptions": { + "$ref": "#/definitions/SelectedFieldOptions" + }, + "SelectedFields": { + "items": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "maxItems": 20, + "minItems": 1, + "type": "array" + } + }, + "type": "object" + }, + "FilterOperationTargetVisualsConfiguration": { + "additionalProperties": false, + "properties": { + "SameSheetTargetVisualConfiguration": { + "$ref": "#/definitions/SameSheetTargetVisualConfiguration" + } + }, + "type": "object" + }, + "FilterRelativeDateTimeControl": { + "additionalProperties": false, + "properties": { + "CommitMode": { + "$ref": "#/definitions/CommitMode" + }, + "DisplayOptions": { + "$ref": "#/definitions/RelativeDateTimeControlDisplayOptions" + }, + "FilterControlId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "SourceFilterId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "Title": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "FilterControlId", + "SourceFilterId", + "Title" + ], + "type": "object" + }, + "FilterScopeConfiguration": { + "additionalProperties": false, + "properties": { + "AllSheets": { + "$ref": "#/definitions/AllSheetsFilterScopeConfiguration" + }, + "SelectedSheets": { + "$ref": "#/definitions/SelectedSheetsFilterScopeConfiguration" + } + }, + "type": "object" + }, + "FilterSelectableValues": { + "additionalProperties": false, + "properties": { + "Values": { + "items": { + "type": "string" + }, + "maxItems": 50000, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "FilterSliderControl": { + "additionalProperties": false, + "properties": { + "DisplayOptions": { + "$ref": "#/definitions/SliderControlDisplayOptions" + }, + "FilterControlId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "MaximumValue": { + "default": 0, + "type": "number" + }, + "MinimumValue": { + "default": 0, + "type": "number" + }, + "SourceFilterId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "StepSize": { + "default": 0, + "type": "number" + }, + "Title": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Type": { + "$ref": "#/definitions/SheetControlSliderType" + } + }, + "required": [ + "FilterControlId", + "MaximumValue", + "MinimumValue", + "SourceFilterId", + "StepSize", + "Title" + ], + "type": "object" + }, + "FilterTextAreaControl": { + "additionalProperties": false, + "properties": { + "Delimiter": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "DisplayOptions": { + "$ref": "#/definitions/TextAreaControlDisplayOptions" + }, + "FilterControlId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "SourceFilterId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "Title": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "FilterControlId", + "SourceFilterId", + "Title" + ], + "type": "object" + }, + "FilterTextFieldControl": { + "additionalProperties": false, + "properties": { + "DisplayOptions": { + "$ref": "#/definitions/TextFieldControlDisplayOptions" + }, + "FilterControlId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "SourceFilterId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "Title": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "FilterControlId", + "SourceFilterId", + "Title" + ], + "type": "object" + }, + "FilterVisualScope": { + "enum": [ + "ALL_VISUALS", + "SELECTED_VISUALS" + ], + "type": "string" + }, + "FontConfiguration": { + "additionalProperties": false, + "properties": { + "FontColor": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + }, + "FontDecoration": { + "$ref": "#/definitions/FontDecoration" + }, + "FontSize": { + "$ref": "#/definitions/FontSize" + }, + "FontStyle": { + "$ref": "#/definitions/FontStyle" + }, + "FontWeight": { + "$ref": "#/definitions/FontWeight" + } + }, + "type": "object" + }, + "FontDecoration": { + "enum": [ + "UNDERLINE", + "NONE" + ], + "type": "string" + }, + "FontSize": { + "additionalProperties": false, + "properties": { + "Relative": { + "$ref": "#/definitions/RelativeFontSize" + } + }, + "type": "object" + }, + "FontStyle": { + "enum": [ + "NORMAL", + "ITALIC" + ], + "type": "string" + }, + "FontWeight": { + "additionalProperties": false, + "properties": { + "Name": { + "$ref": "#/definitions/FontWeightName" + } + }, + "type": "object" + }, + "FontWeightName": { + "enum": [ + "NORMAL", + "BOLD" + ], + "type": "string" + }, + "ForecastComputation": { + "additionalProperties": false, + "properties": { + "ComputationId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "CustomSeasonalityValue": { + "default": null, + "maximum": 180, + "minimum": 1, + "type": "number" + }, + "LowerBoundary": { + "default": null, + "type": "number" + }, + "Name": { + "type": "string" + }, + "PeriodsBackward": { + "maximum": 1000, + "minimum": 0, + "type": "number" + }, + "PeriodsForward": { + "maximum": 1000, + "minimum": 1, + "type": "number" + }, + "PredictionInterval": { + "maximum": 95, + "minimum": 50, + "type": "number" + }, + "Seasonality": { + "$ref": "#/definitions/ForecastComputationSeasonality" + }, + "Time": { + "$ref": "#/definitions/DimensionField" + }, + "UpperBoundary": { + "default": null, + "type": "number" + }, + "Value": { + "$ref": "#/definitions/MeasureField" + } + }, + "required": [ + "ComputationId" + ], + "type": "object" + }, + "ForecastComputationSeasonality": { + "enum": [ + "AUTOMATIC", + "CUSTOM" + ], + "type": "string" + }, + "ForecastConfiguration": { + "additionalProperties": false, + "properties": { + "ForecastProperties": { + "$ref": "#/definitions/TimeBasedForecastProperties" + }, + "Scenario": { + "$ref": "#/definitions/ForecastScenario" + } + }, + "type": "object" + }, + "ForecastScenario": { + "additionalProperties": false, + "properties": { + "WhatIfPointScenario": { + "$ref": "#/definitions/WhatIfPointScenario" + }, + "WhatIfRangeScenario": { + "$ref": "#/definitions/WhatIfRangeScenario" + } + }, + "type": "object" + }, + "FormatConfiguration": { + "additionalProperties": false, + "properties": { + "DateTimeFormatConfiguration": { + "$ref": "#/definitions/DateTimeFormatConfiguration" + }, + "NumberFormatConfiguration": { + "$ref": "#/definitions/NumberFormatConfiguration" + }, + "StringFormatConfiguration": { + "$ref": "#/definitions/StringFormatConfiguration" + } + }, + "type": "object" + }, + "FreeFormLayoutCanvasSizeOptions": { + "additionalProperties": false, + "properties": { + "ScreenCanvasSizeOptions": { + "$ref": "#/definitions/FreeFormLayoutScreenCanvasSizeOptions" + } + }, + "type": "object" + }, + "FreeFormLayoutConfiguration": { + "additionalProperties": false, + "properties": { + "CanvasSizeOptions": { + "$ref": "#/definitions/FreeFormLayoutCanvasSizeOptions" + }, + "Elements": { + "items": { + "$ref": "#/definitions/FreeFormLayoutElement" + }, + "maxItems": 430, + "minItems": 0, + "type": "array" + } + }, + "required": [ + "Elements" + ], + "type": "object" + }, + "FreeFormLayoutElement": { + "additionalProperties": false, + "properties": { + "BackgroundStyle": { + "$ref": "#/definitions/FreeFormLayoutElementBackgroundStyle" + }, + "BorderStyle": { + "$ref": "#/definitions/FreeFormLayoutElementBorderStyle" + }, + "ElementId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "ElementType": { + "$ref": "#/definitions/LayoutElementType" + }, + "Height": { + "type": "string" + }, + "LoadingAnimation": { + "$ref": "#/definitions/LoadingAnimation" + }, + "RenderingRules": { + "items": { + "$ref": "#/definitions/SheetElementRenderingRule" + }, + "maxItems": 10000, + "minItems": 0, + "type": "array" + }, + "SelectedBorderStyle": { + "$ref": "#/definitions/FreeFormLayoutElementBorderStyle" + }, + "Visibility": { + "$ref": "#/definitions/Visibility" + }, + "Width": { + "type": "string" + }, + "XAxisLocation": { + "type": "string" + }, + "YAxisLocation": { + "type": "string" + } + }, + "required": [ + "ElementId", + "ElementType", + "Height", + "Width", + "XAxisLocation", + "YAxisLocation" + ], + "type": "object" + }, + "FreeFormLayoutElementBackgroundStyle": { + "additionalProperties": false, + "properties": { + "Color": { + "pattern": "^#[A-F0-9]{6}(?:[A-F0-9]{2})?$", + "type": "string" + }, + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "FreeFormLayoutElementBorderStyle": { + "additionalProperties": false, + "properties": { + "Color": { + "pattern": "^#[A-F0-9]{6}(?:[A-F0-9]{2})?$", + "type": "string" + }, + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "FreeFormLayoutScreenCanvasSizeOptions": { + "additionalProperties": false, + "properties": { + "OptimizedViewPortWidth": { + "type": "string" + } + }, + "required": [ + "OptimizedViewPortWidth" + ], + "type": "object" + }, + "FreeFormSectionLayoutConfiguration": { + "additionalProperties": false, + "properties": { + "Elements": { + "items": { + "$ref": "#/definitions/FreeFormLayoutElement" + }, + "maxItems": 430, + "minItems": 0, + "type": "array" + } + }, + "required": [ + "Elements" + ], + "type": "object" + }, + "FunnelChartAggregatedFieldWells": { + "additionalProperties": false, + "properties": { + "Category": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 1, + "minItems": 0, + "type": "array" + }, + "Values": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 1, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "FunnelChartConfiguration": { + "additionalProperties": false, + "properties": { + "CategoryLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "DataLabelOptions": { + "$ref": "#/definitions/FunnelChartDataLabelOptions" + }, + "FieldWells": { + "$ref": "#/definitions/FunnelChartFieldWells" + }, + "SortConfiguration": { + "$ref": "#/definitions/FunnelChartSortConfiguration" + }, + "Tooltip": { + "$ref": "#/definitions/TooltipOptions" + }, + "ValueLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "VisualPalette": { + "$ref": "#/definitions/VisualPalette" + } + }, + "type": "object" + }, + "FunnelChartDataLabelOptions": { + "additionalProperties": false, + "properties": { + "CategoryLabelVisibility": { + "$ref": "#/definitions/Visibility" + }, + "LabelColor": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + }, + "LabelFontConfiguration": { + "$ref": "#/definitions/FontConfiguration" + }, + "MeasureDataLabelStyle": { + "$ref": "#/definitions/FunnelChartMeasureDataLabelStyle" + }, + "MeasureLabelVisibility": { + "$ref": "#/definitions/Visibility" + }, + "Position": { + "$ref": "#/definitions/DataLabelPosition" + }, + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "FunnelChartFieldWells": { + "additionalProperties": false, + "properties": { + "FunnelChartAggregatedFieldWells": { + "$ref": "#/definitions/FunnelChartAggregatedFieldWells" + } + }, + "type": "object" + }, + "FunnelChartMeasureDataLabelStyle": { + "enum": [ + "VALUE_ONLY", + "PERCENTAGE_BY_FIRST_STAGE", + "PERCENTAGE_BY_PREVIOUS_STAGE", + "VALUE_AND_PERCENTAGE_BY_FIRST_STAGE", + "VALUE_AND_PERCENTAGE_BY_PREVIOUS_STAGE" + ], + "type": "string" + }, + "FunnelChartSortConfiguration": { + "additionalProperties": false, + "properties": { + "CategoryItemsLimit": { + "$ref": "#/definitions/ItemsLimitConfiguration" + }, + "CategorySort": { + "items": { + "$ref": "#/definitions/FieldSortOptions" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "FunnelChartVisual": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/VisualCustomAction" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "ChartConfiguration": { + "$ref": "#/definitions/FunnelChartConfiguration" + }, + "ColumnHierarchies": { + "items": { + "$ref": "#/definitions/ColumnHierarchy" + }, + "maxItems": 2, + "minItems": 0, + "type": "array" + }, + "Subtitle": { + "$ref": "#/definitions/VisualSubtitleLabelOptions" + }, + "Title": { + "$ref": "#/definitions/VisualTitleLabelOptions" + }, + "VisualId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "VisualId" + ], + "type": "object" + }, + "GaugeChartArcConditionalFormatting": { + "additionalProperties": false, + "properties": { + "ForegroundColor": { + "$ref": "#/definitions/ConditionalFormattingColor" + } + }, + "type": "object" + }, + "GaugeChartConditionalFormatting": { + "additionalProperties": false, + "properties": { + "ConditionalFormattingOptions": { + "items": { + "$ref": "#/definitions/GaugeChartConditionalFormattingOption" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "GaugeChartConditionalFormattingOption": { + "additionalProperties": false, + "properties": { + "Arc": { + "$ref": "#/definitions/GaugeChartArcConditionalFormatting" + }, + "PrimaryValue": { + "$ref": "#/definitions/GaugeChartPrimaryValueConditionalFormatting" + } + }, + "type": "object" + }, + "GaugeChartConfiguration": { + "additionalProperties": false, + "properties": { + "DataLabels": { + "$ref": "#/definitions/DataLabelOptions" + }, + "FieldWells": { + "$ref": "#/definitions/GaugeChartFieldWells" + }, + "GaugeChartOptions": { + "$ref": "#/definitions/GaugeChartOptions" + }, + "TooltipOptions": { + "$ref": "#/definitions/TooltipOptions" + }, + "VisualPalette": { + "$ref": "#/definitions/VisualPalette" + } + }, + "type": "object" + }, + "GaugeChartFieldWells": { + "additionalProperties": false, + "properties": { + "TargetValues": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "Values": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "GaugeChartOptions": { + "additionalProperties": false, + "properties": { + "Arc": { + "$ref": "#/definitions/ArcConfiguration" + }, + "ArcAxis": { + "$ref": "#/definitions/ArcAxisConfiguration" + }, + "Comparison": { + "$ref": "#/definitions/ComparisonConfiguration" + }, + "PrimaryValueDisplayType": { + "$ref": "#/definitions/PrimaryValueDisplayType" + }, + "PrimaryValueFontConfiguration": { + "$ref": "#/definitions/FontConfiguration" + } + }, + "type": "object" + }, + "GaugeChartPrimaryValueConditionalFormatting": { + "additionalProperties": false, + "properties": { + "Icon": { + "$ref": "#/definitions/ConditionalFormattingIcon" + }, + "TextColor": { + "$ref": "#/definitions/ConditionalFormattingColor" + } + }, + "type": "object" + }, + "GaugeChartVisual": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/VisualCustomAction" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "ChartConfiguration": { + "$ref": "#/definitions/GaugeChartConfiguration" + }, + "ConditionalFormatting": { + "$ref": "#/definitions/GaugeChartConditionalFormatting" + }, + "Subtitle": { + "$ref": "#/definitions/VisualSubtitleLabelOptions" + }, + "Title": { + "$ref": "#/definitions/VisualTitleLabelOptions" + }, + "VisualId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "VisualId" + ], + "type": "object" + }, + "GeospatialCoordinateBounds": { + "additionalProperties": false, + "properties": { + "East": { + "maximum": 1800, + "minimum": -1800, + "type": "number" + }, + "North": { + "maximum": 90, + "minimum": -90, + "type": "number" + }, + "South": { + "maximum": 90, + "minimum": -90, + "type": "number" + }, + "West": { + "maximum": 1800, + "minimum": -1800, + "type": "number" + } + }, + "required": [ + "East", + "North", + "South", + "West" + ], + "type": "object" + }, + "GeospatialHeatmapColorScale": { + "additionalProperties": false, + "properties": { + "Colors": { + "items": { + "$ref": "#/definitions/GeospatialHeatmapDataColor" + }, + "maxItems": 2, + "minItems": 2, + "type": "array" + } + }, + "type": "object" + }, + "GeospatialHeatmapConfiguration": { + "additionalProperties": false, + "properties": { + "HeatmapColor": { + "$ref": "#/definitions/GeospatialHeatmapColorScale" + } + }, + "type": "object" + }, + "GeospatialHeatmapDataColor": { + "additionalProperties": false, + "properties": { + "Color": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + } + }, + "required": [ + "Color" + ], + "type": "object" + }, + "GeospatialMapAggregatedFieldWells": { + "additionalProperties": false, + "properties": { + "Colors": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "Geospatial": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "Values": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "GeospatialMapConfiguration": { + "additionalProperties": false, + "properties": { + "FieldWells": { + "$ref": "#/definitions/GeospatialMapFieldWells" + }, + "Legend": { + "$ref": "#/definitions/LegendOptions" + }, + "MapStyleOptions": { + "$ref": "#/definitions/GeospatialMapStyleOptions" + }, + "PointStyleOptions": { + "$ref": "#/definitions/GeospatialPointStyleOptions" + }, + "Tooltip": { + "$ref": "#/definitions/TooltipOptions" + }, + "VisualPalette": { + "$ref": "#/definitions/VisualPalette" + }, + "WindowOptions": { + "$ref": "#/definitions/GeospatialWindowOptions" + } + }, + "type": "object" + }, + "GeospatialMapFieldWells": { + "additionalProperties": false, + "properties": { + "GeospatialMapAggregatedFieldWells": { + "$ref": "#/definitions/GeospatialMapAggregatedFieldWells" + } + }, + "type": "object" + }, + "GeospatialMapStyleOptions": { + "additionalProperties": false, + "properties": { + "BaseMapStyle": { + "$ref": "#/definitions/BaseMapStyleType" + } + }, + "type": "object" + }, + "GeospatialMapVisual": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/VisualCustomAction" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "ChartConfiguration": { + "$ref": "#/definitions/GeospatialMapConfiguration" + }, + "ColumnHierarchies": { + "items": { + "$ref": "#/definitions/ColumnHierarchy" + }, + "maxItems": 2, + "minItems": 0, + "type": "array" + }, + "Subtitle": { + "$ref": "#/definitions/VisualSubtitleLabelOptions" + }, + "Title": { + "$ref": "#/definitions/VisualTitleLabelOptions" + }, + "VisualId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "VisualId" + ], + "type": "object" + }, + "GeospatialPointStyleOptions": { + "additionalProperties": false, + "properties": { + "ClusterMarkerConfiguration": { + "$ref": "#/definitions/ClusterMarkerConfiguration" + }, + "HeatmapConfiguration": { + "$ref": "#/definitions/GeospatialHeatmapConfiguration" + }, + "SelectedPointStyle": { + "$ref": "#/definitions/GeospatialSelectedPointStyle" + } + }, + "type": "object" + }, + "GeospatialSelectedPointStyle": { + "enum": [ + "POINT", + "CLUSTER", + "HEATMAP" + ], + "type": "string" + }, + "GeospatialWindowOptions": { + "additionalProperties": false, + "properties": { + "Bounds": { + "$ref": "#/definitions/GeospatialCoordinateBounds" + }, + "MapZoomMode": { + "$ref": "#/definitions/MapZoomMode" + } + }, + "type": "object" + }, + "GlobalTableBorderOptions": { + "additionalProperties": false, + "properties": { + "SideSpecificBorder": { + "$ref": "#/definitions/TableSideBorderOptions" + }, + "UniformBorder": { + "$ref": "#/definitions/TableBorderOptions" + } + }, + "type": "object" + }, + "GradientColor": { + "additionalProperties": false, + "properties": { + "Stops": { + "items": { + "$ref": "#/definitions/GradientStop" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "GradientStop": { + "additionalProperties": false, + "properties": { + "Color": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + }, + "DataValue": { + "default": null, + "type": "number" + }, + "GradientOffset": { + "default": 0, + "type": "number" + } + }, + "required": [ + "GradientOffset" + ], + "type": "object" + }, + "GridLayoutCanvasSizeOptions": { + "additionalProperties": false, + "properties": { + "ScreenCanvasSizeOptions": { + "$ref": "#/definitions/GridLayoutScreenCanvasSizeOptions" + } + }, + "type": "object" + }, + "GridLayoutConfiguration": { + "additionalProperties": false, + "properties": { + "CanvasSizeOptions": { + "$ref": "#/definitions/GridLayoutCanvasSizeOptions" + }, + "Elements": { + "items": { + "$ref": "#/definitions/GridLayoutElement" + }, + "maxItems": 430, + "minItems": 0, + "type": "array" + } + }, + "required": [ + "Elements" + ], + "type": "object" + }, + "GridLayoutElement": { + "additionalProperties": false, + "properties": { + "ColumnIndex": { + "maximum": 35, + "minimum": 0, + "type": "number" + }, + "ColumnSpan": { + "maximum": 36, + "minimum": 1, + "type": "number" + }, + "ElementId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "ElementType": { + "$ref": "#/definitions/LayoutElementType" + }, + "RowIndex": { + "maximum": 9009, + "minimum": 0, + "type": "number" + }, + "RowSpan": { + "maximum": 21, + "minimum": 1, + "type": "number" + } + }, + "required": [ + "ColumnSpan", + "ElementId", + "ElementType", + "RowSpan" + ], + "type": "object" + }, + "GridLayoutScreenCanvasSizeOptions": { + "additionalProperties": false, + "properties": { + "OptimizedViewPortWidth": { + "type": "string" + }, + "ResizeOption": { + "$ref": "#/definitions/ResizeOption" + } + }, + "required": [ + "ResizeOption" + ], + "type": "object" + }, + "GrowthRateComputation": { + "additionalProperties": false, + "properties": { + "ComputationId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "Name": { + "type": "string" + }, + "PeriodSize": { + "default": 0, + "maximum": 52, + "minimum": 2, + "type": "number" + }, + "Time": { + "$ref": "#/definitions/DimensionField" + }, + "Value": { + "$ref": "#/definitions/MeasureField" + } + }, + "required": [ + "ComputationId" + ], + "type": "object" + }, + "HeaderFooterSectionConfiguration": { + "additionalProperties": false, + "properties": { + "Layout": { + "$ref": "#/definitions/SectionLayoutConfiguration" + }, + "SectionId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "Style": { + "$ref": "#/definitions/SectionStyle" + } + }, + "required": [ + "Layout", + "SectionId" + ], + "type": "object" + }, + "HeatMapAggregatedFieldWells": { + "additionalProperties": false, + "properties": { + "Columns": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 1, + "minItems": 0, + "type": "array" + }, + "Rows": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 1, + "minItems": 0, + "type": "array" + }, + "Values": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 1, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "HeatMapConfiguration": { + "additionalProperties": false, + "properties": { + "ColorScale": { + "$ref": "#/definitions/ColorScale" + }, + "ColumnLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "DataLabels": { + "$ref": "#/definitions/DataLabelOptions" + }, + "FieldWells": { + "$ref": "#/definitions/HeatMapFieldWells" + }, + "Legend": { + "$ref": "#/definitions/LegendOptions" + }, + "RowLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "SortConfiguration": { + "$ref": "#/definitions/HeatMapSortConfiguration" + }, + "Tooltip": { + "$ref": "#/definitions/TooltipOptions" + } + }, + "type": "object" + }, + "HeatMapFieldWells": { + "additionalProperties": false, + "properties": { + "HeatMapAggregatedFieldWells": { + "$ref": "#/definitions/HeatMapAggregatedFieldWells" + } + }, + "type": "object" + }, + "HeatMapSortConfiguration": { + "additionalProperties": false, + "properties": { + "HeatMapColumnItemsLimitConfiguration": { + "$ref": "#/definitions/ItemsLimitConfiguration" + }, + "HeatMapColumnSort": { + "items": { + "$ref": "#/definitions/FieldSortOptions" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + }, + "HeatMapRowItemsLimitConfiguration": { + "$ref": "#/definitions/ItemsLimitConfiguration" + }, + "HeatMapRowSort": { + "items": { + "$ref": "#/definitions/FieldSortOptions" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "HeatMapVisual": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/VisualCustomAction" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "ChartConfiguration": { + "$ref": "#/definitions/HeatMapConfiguration" + }, + "ColumnHierarchies": { + "items": { + "$ref": "#/definitions/ColumnHierarchy" + }, + "maxItems": 2, + "minItems": 0, + "type": "array" + }, + "Subtitle": { + "$ref": "#/definitions/VisualSubtitleLabelOptions" + }, + "Title": { + "$ref": "#/definitions/VisualTitleLabelOptions" + }, + "VisualId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "VisualId" + ], + "type": "object" + }, + "HistogramAggregatedFieldWells": { + "additionalProperties": false, + "properties": { + "Values": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 1, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "HistogramBinOptions": { + "additionalProperties": false, + "properties": { + "BinCount": { + "$ref": "#/definitions/BinCountOptions" + }, + "BinWidth": { + "$ref": "#/definitions/BinWidthOptions" + }, + "SelectedBinType": { + "$ref": "#/definitions/HistogramBinType" + }, + "StartValue": { + "default": null, + "type": "number" + } + }, + "type": "object" + }, + "HistogramBinType": { + "enum": [ + "BIN_COUNT", + "BIN_WIDTH" + ], + "type": "string" + }, + "HistogramConfiguration": { + "additionalProperties": false, + "properties": { + "BinOptions": { + "$ref": "#/definitions/HistogramBinOptions" + }, + "DataLabels": { + "$ref": "#/definitions/DataLabelOptions" + }, + "FieldWells": { + "$ref": "#/definitions/HistogramFieldWells" + }, + "Tooltip": { + "$ref": "#/definitions/TooltipOptions" + }, + "VisualPalette": { + "$ref": "#/definitions/VisualPalette" + }, + "XAxisDisplayOptions": { + "$ref": "#/definitions/AxisDisplayOptions" + }, + "XAxisLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "YAxisDisplayOptions": { + "$ref": "#/definitions/AxisDisplayOptions" + } + }, + "type": "object" + }, + "HistogramFieldWells": { + "additionalProperties": false, + "properties": { + "HistogramAggregatedFieldWells": { + "$ref": "#/definitions/HistogramAggregatedFieldWells" + } + }, + "type": "object" + }, + "HistogramVisual": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/VisualCustomAction" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "ChartConfiguration": { + "$ref": "#/definitions/HistogramConfiguration" + }, + "Subtitle": { + "$ref": "#/definitions/VisualSubtitleLabelOptions" + }, + "Title": { + "$ref": "#/definitions/VisualTitleLabelOptions" + }, + "VisualId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "VisualId" + ], + "type": "object" + }, + "HorizontalTextAlignment": { + "enum": [ + "LEFT", + "CENTER", + "RIGHT", + "AUTO" + ], + "type": "string" + }, + "Icon": { + "enum": [ + "CARET_UP", + "CARET_DOWN", + "PLUS", + "MINUS", + "ARROW_UP", + "ARROW_DOWN", + "ARROW_LEFT", + "ARROW_UP_LEFT", + "ARROW_DOWN_LEFT", + "ARROW_RIGHT", + "ARROW_UP_RIGHT", + "ARROW_DOWN_RIGHT", + "FACE_UP", + "FACE_DOWN", + "FACE_FLAT", + "ONE_BAR", + "TWO_BAR", + "THREE_BAR", + "CIRCLE", + "TRIANGLE", + "SQUARE", + "FLAG", + "THUMBS_UP", + "THUMBS_DOWN", + "CHECKMARK", + "X" + ], + "type": "string" + }, + "InnerFilter": { + "additionalProperties": false, + "properties": { + "CategoryInnerFilter": { + "$ref": "#/definitions/CategoryInnerFilter" + } + }, + "type": "object" + }, + "InsightConfiguration": { + "additionalProperties": false, + "properties": { + "Computations": { + "items": { + "$ref": "#/definitions/Computation" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + }, + "CustomNarrative": { + "$ref": "#/definitions/CustomNarrativeOptions" + } + }, + "type": "object" + }, + "InsightVisual": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/VisualCustomAction" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "DataSetIdentifier": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "InsightConfiguration": { + "$ref": "#/definitions/InsightConfiguration" + }, + "Subtitle": { + "$ref": "#/definitions/VisualSubtitleLabelOptions" + }, + "Title": { + "$ref": "#/definitions/VisualTitleLabelOptions" + }, + "VisualId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "DataSetIdentifier", + "VisualId" + ], + "type": "object" + }, + "IntegerDefaultValues": { + "additionalProperties": false, + "properties": { + "DynamicValue": { + "$ref": "#/definitions/DynamicDefaultValue" + }, + "StaticValues": { + "items": { + "type": "number" + }, + "maxItems": 50000, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "IntegerParameter": { + "additionalProperties": false, + "properties": { + "Name": { + "pattern": "\\S", + "type": "string" + }, + "Values": { + "items": { + "default": 0, + "type": "number" + }, + "type": "array" + } + }, + "required": [ + "Name", + "Values" + ], + "type": "object" + }, + "IntegerParameterDeclaration": { + "additionalProperties": false, + "properties": { + "DefaultValues": { + "$ref": "#/definitions/IntegerDefaultValues" + }, + "MappedDataSetParameters": { + "items": { + "$ref": "#/definitions/MappedDataSetParameter" + }, + "maxItems": 150, + "minItems": 0, + "type": "array" + }, + "Name": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "ParameterValueType": { + "$ref": "#/definitions/ParameterValueType" + }, + "ValueWhenUnset": { + "$ref": "#/definitions/IntegerValueWhenUnsetConfiguration" + } + }, + "required": [ + "Name", + "ParameterValueType" + ], + "type": "object" + }, + "IntegerValueWhenUnsetConfiguration": { + "additionalProperties": false, + "properties": { + "CustomValue": { + "default": null, + "type": "number" + }, + "ValueWhenUnsetOption": { + "$ref": "#/definitions/ValueWhenUnsetOption" + } + }, + "type": "object" + }, + "ItemsLimitConfiguration": { + "additionalProperties": false, + "properties": { + "ItemsLimit": { + "default": null, + "type": "number" + }, + "OtherCategories": { + "$ref": "#/definitions/OtherCategories" + } + }, + "type": "object" + }, + "KPIActualValueConditionalFormatting": { + "additionalProperties": false, + "properties": { + "Icon": { + "$ref": "#/definitions/ConditionalFormattingIcon" + }, + "TextColor": { + "$ref": "#/definitions/ConditionalFormattingColor" + } + }, + "type": "object" + }, + "KPIComparisonValueConditionalFormatting": { + "additionalProperties": false, + "properties": { + "Icon": { + "$ref": "#/definitions/ConditionalFormattingIcon" + }, + "TextColor": { + "$ref": "#/definitions/ConditionalFormattingColor" + } + }, + "type": "object" + }, + "KPIConditionalFormatting": { + "additionalProperties": false, + "properties": { + "ConditionalFormattingOptions": { + "items": { + "$ref": "#/definitions/KPIConditionalFormattingOption" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "KPIConditionalFormattingOption": { + "additionalProperties": false, + "properties": { + "ActualValue": { + "$ref": "#/definitions/KPIActualValueConditionalFormatting" + }, + "ComparisonValue": { + "$ref": "#/definitions/KPIComparisonValueConditionalFormatting" + }, + "PrimaryValue": { + "$ref": "#/definitions/KPIPrimaryValueConditionalFormatting" + }, + "ProgressBar": { + "$ref": "#/definitions/KPIProgressBarConditionalFormatting" + } + }, + "type": "object" + }, + "KPIConfiguration": { + "additionalProperties": false, + "properties": { + "FieldWells": { + "$ref": "#/definitions/KPIFieldWells" + }, + "KPIOptions": { + "$ref": "#/definitions/KPIOptions" + }, + "SortConfiguration": { + "$ref": "#/definitions/KPISortConfiguration" + } + }, + "type": "object" + }, + "KPIFieldWells": { + "additionalProperties": false, + "properties": { + "TargetValues": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "TrendGroups": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "Values": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "KPIOptions": { + "additionalProperties": false, + "properties": { + "Comparison": { + "$ref": "#/definitions/ComparisonConfiguration" + }, + "PrimaryValueDisplayType": { + "$ref": "#/definitions/PrimaryValueDisplayType" + }, + "PrimaryValueFontConfiguration": { + "$ref": "#/definitions/FontConfiguration" + }, + "ProgressBar": { + "$ref": "#/definitions/ProgressBarOptions" + }, + "SecondaryValue": { + "$ref": "#/definitions/SecondaryValueOptions" + }, + "SecondaryValueFontConfiguration": { + "$ref": "#/definitions/FontConfiguration" + }, + "Sparkline": { + "$ref": "#/definitions/KPISparklineOptions" + }, + "TrendArrows": { + "$ref": "#/definitions/TrendArrowOptions" + }, + "VisualLayoutOptions": { + "$ref": "#/definitions/KPIVisualLayoutOptions" + } + }, + "type": "object" + }, + "KPIPrimaryValueConditionalFormatting": { + "additionalProperties": false, + "properties": { + "Icon": { + "$ref": "#/definitions/ConditionalFormattingIcon" + }, + "TextColor": { + "$ref": "#/definitions/ConditionalFormattingColor" + } + }, + "type": "object" + }, + "KPIProgressBarConditionalFormatting": { + "additionalProperties": false, + "properties": { + "ForegroundColor": { + "$ref": "#/definitions/ConditionalFormattingColor" + } + }, + "type": "object" + }, + "KPISortConfiguration": { + "additionalProperties": false, + "properties": { + "TrendGroupSort": { + "items": { + "$ref": "#/definitions/FieldSortOptions" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "KPISparklineOptions": { + "additionalProperties": false, + "properties": { + "Color": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + }, + "TooltipVisibility": { + "$ref": "#/definitions/Visibility" + }, + "Type": { + "$ref": "#/definitions/KPISparklineType" + }, + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "KPISparklineType": { + "enum": [ + "LINE", + "AREA" + ], + "type": "string" + }, + "KPIVisual": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/VisualCustomAction" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "ChartConfiguration": { + "$ref": "#/definitions/KPIConfiguration" + }, + "ColumnHierarchies": { + "items": { + "$ref": "#/definitions/ColumnHierarchy" + }, + "maxItems": 2, + "minItems": 0, + "type": "array" + }, + "ConditionalFormatting": { + "$ref": "#/definitions/KPIConditionalFormatting" + }, + "Subtitle": { + "$ref": "#/definitions/VisualSubtitleLabelOptions" + }, + "Title": { + "$ref": "#/definitions/VisualTitleLabelOptions" + }, + "VisualId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "VisualId" + ], + "type": "object" + }, + "KPIVisualLayoutOptions": { + "additionalProperties": false, + "properties": { + "StandardLayout": { + "$ref": "#/definitions/KPIVisualStandardLayout" + } + }, + "type": "object" + }, + "KPIVisualStandardLayout": { + "additionalProperties": false, + "properties": { + "Type": { + "$ref": "#/definitions/KPIVisualStandardLayoutType" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "KPIVisualStandardLayoutType": { + "enum": [ + "CLASSIC", + "VERTICAL" + ], + "type": "string" + }, + "LabelOptions": { + "additionalProperties": false, + "properties": { + "CustomLabel": { + "type": "string" + }, + "FontConfiguration": { + "$ref": "#/definitions/FontConfiguration" + }, + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "Layout": { + "additionalProperties": false, + "properties": { + "Configuration": { + "$ref": "#/definitions/LayoutConfiguration" + } + }, + "required": [ + "Configuration" + ], + "type": "object" + }, + "LayoutConfiguration": { + "additionalProperties": false, + "properties": { + "FreeFormLayout": { + "$ref": "#/definitions/FreeFormLayoutConfiguration" + }, + "GridLayout": { + "$ref": "#/definitions/GridLayoutConfiguration" + }, + "SectionBasedLayout": { + "$ref": "#/definitions/SectionBasedLayoutConfiguration" + } + }, + "type": "object" + }, + "LayoutElementType": { + "enum": [ + "VISUAL", + "FILTER_CONTROL", + "PARAMETER_CONTROL", + "TEXT_BOX" + ], + "type": "string" + }, + "LegendOptions": { + "additionalProperties": false, + "properties": { + "Height": { + "type": "string" + }, + "Position": { + "$ref": "#/definitions/LegendPosition" + }, + "Title": { + "$ref": "#/definitions/LabelOptions" + }, + "Visibility": { + "$ref": "#/definitions/Visibility" + }, + "Width": { + "type": "string" + } + }, + "type": "object" + }, + "LegendPosition": { + "enum": [ + "AUTO", + "RIGHT", + "BOTTOM", + "TOP" + ], + "type": "string" + }, + "LineChartAggregatedFieldWells": { + "additionalProperties": false, + "properties": { + "Category": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "Colors": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "SmallMultiples": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 1, + "minItems": 0, + "type": "array" + }, + "Values": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "LineChartConfiguration": { + "additionalProperties": false, + "properties": { + "ContributionAnalysisDefaults": { + "items": { + "$ref": "#/definitions/ContributionAnalysisDefault" + }, + "maxItems": 200, + "minItems": 1, + "type": "array" + }, + "DataLabels": { + "$ref": "#/definitions/DataLabelOptions" + }, + "DefaultSeriesSettings": { + "$ref": "#/definitions/LineChartDefaultSeriesSettings" + }, + "FieldWells": { + "$ref": "#/definitions/LineChartFieldWells" + }, + "ForecastConfigurations": { + "items": { + "$ref": "#/definitions/ForecastConfiguration" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "Legend": { + "$ref": "#/definitions/LegendOptions" + }, + "PrimaryYAxisDisplayOptions": { + "$ref": "#/definitions/LineSeriesAxisDisplayOptions" + }, + "PrimaryYAxisLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "ReferenceLines": { + "items": { + "$ref": "#/definitions/ReferenceLine" + }, + "maxItems": 20, + "minItems": 0, + "type": "array" + }, + "SecondaryYAxisDisplayOptions": { + "$ref": "#/definitions/LineSeriesAxisDisplayOptions" + }, + "SecondaryYAxisLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "Series": { + "items": { + "$ref": "#/definitions/SeriesItem" + }, + "maxItems": 2000, + "minItems": 0, + "type": "array" + }, + "SingleAxisOptions": { + "$ref": "#/definitions/SingleAxisOptions" + }, + "SmallMultiplesOptions": { + "$ref": "#/definitions/SmallMultiplesOptions" + }, + "SortConfiguration": { + "$ref": "#/definitions/LineChartSortConfiguration" + }, + "Tooltip": { + "$ref": "#/definitions/TooltipOptions" + }, + "Type": { + "$ref": "#/definitions/LineChartType" + }, + "VisualPalette": { + "$ref": "#/definitions/VisualPalette" + }, + "XAxisDisplayOptions": { + "$ref": "#/definitions/AxisDisplayOptions" + }, + "XAxisLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + } + }, + "type": "object" + }, + "LineChartDefaultSeriesSettings": { + "additionalProperties": false, + "properties": { + "AxisBinding": { + "$ref": "#/definitions/AxisBinding" + }, + "LineStyleSettings": { + "$ref": "#/definitions/LineChartLineStyleSettings" + }, + "MarkerStyleSettings": { + "$ref": "#/definitions/LineChartMarkerStyleSettings" + } + }, + "type": "object" + }, + "LineChartFieldWells": { + "additionalProperties": false, + "properties": { + "LineChartAggregatedFieldWells": { + "$ref": "#/definitions/LineChartAggregatedFieldWells" + } + }, + "type": "object" + }, + "LineChartLineStyle": { + "enum": [ + "SOLID", + "DOTTED", + "DASHED" + ], + "type": "string" + }, + "LineChartLineStyleSettings": { + "additionalProperties": false, + "properties": { + "LineInterpolation": { + "$ref": "#/definitions/LineInterpolation" + }, + "LineStyle": { + "$ref": "#/definitions/LineChartLineStyle" + }, + "LineVisibility": { + "$ref": "#/definitions/Visibility" + }, + "LineWidth": { + "type": "string" + } + }, + "type": "object" + }, + "LineChartMarkerShape": { + "enum": [ + "CIRCLE", + "TRIANGLE", + "SQUARE", + "DIAMOND", + "ROUNDED_SQUARE" + ], + "type": "string" + }, + "LineChartMarkerStyleSettings": { + "additionalProperties": false, + "properties": { + "MarkerColor": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + }, + "MarkerShape": { + "$ref": "#/definitions/LineChartMarkerShape" + }, + "MarkerSize": { + "type": "string" + }, + "MarkerVisibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "LineChartSeriesSettings": { + "additionalProperties": false, + "properties": { + "LineStyleSettings": { + "$ref": "#/definitions/LineChartLineStyleSettings" + }, + "MarkerStyleSettings": { + "$ref": "#/definitions/LineChartMarkerStyleSettings" + } + }, + "type": "object" + }, + "LineChartSortConfiguration": { + "additionalProperties": false, + "properties": { + "CategoryItemsLimitConfiguration": { + "$ref": "#/definitions/ItemsLimitConfiguration" + }, + "CategorySort": { + "items": { + "$ref": "#/definitions/FieldSortOptions" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + }, + "ColorItemsLimitConfiguration": { + "$ref": "#/definitions/ItemsLimitConfiguration" + }, + "SmallMultiplesLimitConfiguration": { + "$ref": "#/definitions/ItemsLimitConfiguration" + }, + "SmallMultiplesSort": { + "items": { + "$ref": "#/definitions/FieldSortOptions" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "LineChartType": { + "enum": [ + "LINE", + "AREA", + "STACKED_AREA" + ], + "type": "string" + }, + "LineChartVisual": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/VisualCustomAction" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "ChartConfiguration": { + "$ref": "#/definitions/LineChartConfiguration" + }, + "ColumnHierarchies": { + "items": { + "$ref": "#/definitions/ColumnHierarchy" + }, + "maxItems": 2, + "minItems": 0, + "type": "array" + }, + "Subtitle": { + "$ref": "#/definitions/VisualSubtitleLabelOptions" + }, + "Title": { + "$ref": "#/definitions/VisualTitleLabelOptions" + }, + "VisualId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "VisualId" + ], + "type": "object" + }, + "LineInterpolation": { + "enum": [ + "LINEAR", + "SMOOTH", + "STEPPED" + ], + "type": "string" + }, + "LineSeriesAxisDisplayOptions": { + "additionalProperties": false, + "properties": { + "AxisOptions": { + "$ref": "#/definitions/AxisDisplayOptions" + }, + "MissingDataConfigurations": { + "items": { + "$ref": "#/definitions/MissingDataConfiguration" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "ListControlDisplayOptions": { + "additionalProperties": false, + "properties": { + "InfoIconLabelOptions": { + "$ref": "#/definitions/SheetControlInfoIconLabelOptions" + }, + "SearchOptions": { + "$ref": "#/definitions/ListControlSearchOptions" + }, + "SelectAllOptions": { + "$ref": "#/definitions/ListControlSelectAllOptions" + }, + "TitleOptions": { + "$ref": "#/definitions/LabelOptions" + } + }, + "type": "object" + }, + "ListControlSearchOptions": { + "additionalProperties": false, + "properties": { + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "ListControlSelectAllOptions": { + "additionalProperties": false, + "properties": { + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "LoadingAnimation": { + "additionalProperties": false, + "properties": { + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "LocalNavigationConfiguration": { + "additionalProperties": false, + "properties": { + "TargetSheetId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "TargetSheetId" + ], + "type": "object" + }, + "LongFormatText": { + "additionalProperties": false, + "properties": { + "PlainText": { + "maxLength": 1024, + "minLength": 1, + "type": "string" + }, + "RichText": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "MapZoomMode": { + "enum": [ + "AUTO", + "MANUAL" + ], + "type": "string" + }, + "MappedDataSetParameter": { + "additionalProperties": false, + "properties": { + "DataSetIdentifier": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "DataSetParameterName": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + } + }, + "required": [ + "DataSetIdentifier", + "DataSetParameterName" + ], + "type": "object" + }, + "MaximumLabelType": { + "additionalProperties": false, + "properties": { + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "MaximumMinimumComputation": { + "additionalProperties": false, + "properties": { + "ComputationId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "Name": { + "type": "string" + }, + "Time": { + "$ref": "#/definitions/DimensionField" + }, + "Type": { + "$ref": "#/definitions/MaximumMinimumComputationType" + }, + "Value": { + "$ref": "#/definitions/MeasureField" + } + }, + "required": [ + "ComputationId", + "Type" + ], + "type": "object" + }, + "MaximumMinimumComputationType": { + "enum": [ + "MAXIMUM", + "MINIMUM" + ], + "type": "string" + }, + "MeasureField": { + "additionalProperties": false, + "properties": { + "CalculatedMeasureField": { + "$ref": "#/definitions/CalculatedMeasureField" + }, + "CategoricalMeasureField": { + "$ref": "#/definitions/CategoricalMeasureField" + }, + "DateMeasureField": { + "$ref": "#/definitions/DateMeasureField" + }, + "NumericalMeasureField": { + "$ref": "#/definitions/NumericalMeasureField" + } + }, + "type": "object" + }, + "MetricComparisonComputation": { + "additionalProperties": false, + "properties": { + "ComputationId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "FromValue": { + "$ref": "#/definitions/MeasureField" + }, + "Name": { + "type": "string" + }, + "TargetValue": { + "$ref": "#/definitions/MeasureField" + }, + "Time": { + "$ref": "#/definitions/DimensionField" + } + }, + "required": [ + "ComputationId" + ], + "type": "object" + }, + "MinimumLabelType": { + "additionalProperties": false, + "properties": { + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "MissingDataConfiguration": { + "additionalProperties": false, + "properties": { + "TreatmentOption": { + "$ref": "#/definitions/MissingDataTreatmentOption" + } + }, + "type": "object" + }, + "MissingDataTreatmentOption": { + "enum": [ + "INTERPOLATE", + "SHOW_AS_ZERO", + "SHOW_AS_BLANK" + ], + "type": "string" + }, + "NegativeValueConfiguration": { + "additionalProperties": false, + "properties": { + "DisplayMode": { + "$ref": "#/definitions/NegativeValueDisplayMode" + } + }, + "required": [ + "DisplayMode" + ], + "type": "object" + }, + "NegativeValueDisplayMode": { + "enum": [ + "POSITIVE", + "NEGATIVE" + ], + "type": "string" + }, + "NestedFilter": { + "additionalProperties": false, + "properties": { + "Column": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "FilterId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "IncludeInnerSet": { + "default": false, + "type": "boolean" + }, + "InnerFilter": { + "$ref": "#/definitions/InnerFilter" + } + }, + "required": [ + "Column", + "FilterId", + "IncludeInnerSet", + "InnerFilter" + ], + "type": "object" + }, + "NullValueFormatConfiguration": { + "additionalProperties": false, + "properties": { + "NullString": { + "maxLength": 128, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "NullString" + ], + "type": "object" + }, + "NumberDisplayFormatConfiguration": { + "additionalProperties": false, + "properties": { + "DecimalPlacesConfiguration": { + "$ref": "#/definitions/DecimalPlacesConfiguration" + }, + "NegativeValueConfiguration": { + "$ref": "#/definitions/NegativeValueConfiguration" + }, + "NullValueFormatConfiguration": { + "$ref": "#/definitions/NullValueFormatConfiguration" + }, + "NumberScale": { + "$ref": "#/definitions/NumberScale" + }, + "Prefix": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "SeparatorConfiguration": { + "$ref": "#/definitions/NumericSeparatorConfiguration" + }, + "Suffix": { + "maxLength": 128, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "NumberFormatConfiguration": { + "additionalProperties": false, + "properties": { + "FormatConfiguration": { + "$ref": "#/definitions/NumericFormatConfiguration" + } + }, + "type": "object" + }, + "NumberScale": { + "enum": [ + "NONE", + "AUTO", + "THOUSANDS", + "MILLIONS", + "BILLIONS", + "TRILLIONS" + ], + "type": "string" + }, + "NumericAxisOptions": { + "additionalProperties": false, + "properties": { + "Range": { + "$ref": "#/definitions/AxisDisplayRange" + }, + "Scale": { + "$ref": "#/definitions/AxisScale" + } + }, + "type": "object" + }, + "NumericEqualityDrillDownFilter": { + "additionalProperties": false, + "properties": { + "Column": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "Value": { + "default": 0, + "type": "number" + } + }, + "required": [ + "Column", + "Value" + ], + "type": "object" + }, + "NumericEqualityFilter": { + "additionalProperties": false, + "properties": { + "AggregationFunction": { + "$ref": "#/definitions/AggregationFunction" + }, + "Column": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "DefaultFilterControlConfiguration": { + "$ref": "#/definitions/DefaultFilterControlConfiguration" + }, + "FilterId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "MatchOperator": { + "$ref": "#/definitions/NumericEqualityMatchOperator" + }, + "NullOption": { + "$ref": "#/definitions/FilterNullOption" + }, + "ParameterName": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "SelectAllOptions": { + "$ref": "#/definitions/NumericFilterSelectAllOptions" + }, + "Value": { + "default": null, + "type": "number" + } + }, + "required": [ + "Column", + "FilterId", + "MatchOperator", + "NullOption" + ], + "type": "object" + }, + "NumericEqualityMatchOperator": { + "enum": [ + "EQUALS", + "DOES_NOT_EQUAL" + ], + "type": "string" + }, + "NumericFilterSelectAllOptions": { + "enum": [ + "FILTER_ALL_VALUES" + ], + "type": "string" + }, + "NumericFormatConfiguration": { + "additionalProperties": false, + "properties": { + "CurrencyDisplayFormatConfiguration": { + "$ref": "#/definitions/CurrencyDisplayFormatConfiguration" + }, + "NumberDisplayFormatConfiguration": { + "$ref": "#/definitions/NumberDisplayFormatConfiguration" + }, + "PercentageDisplayFormatConfiguration": { + "$ref": "#/definitions/PercentageDisplayFormatConfiguration" + } + }, + "type": "object" + }, + "NumericRangeFilter": { + "additionalProperties": false, + "properties": { + "AggregationFunction": { + "$ref": "#/definitions/AggregationFunction" + }, + "Column": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "DefaultFilterControlConfiguration": { + "$ref": "#/definitions/DefaultFilterControlConfiguration" + }, + "FilterId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "IncludeMaximum": { + "default": null, + "type": "boolean" + }, + "IncludeMinimum": { + "default": null, + "type": "boolean" + }, + "NullOption": { + "$ref": "#/definitions/FilterNullOption" + }, + "RangeMaximum": { + "$ref": "#/definitions/NumericRangeFilterValue" + }, + "RangeMinimum": { + "$ref": "#/definitions/NumericRangeFilterValue" + }, + "SelectAllOptions": { + "$ref": "#/definitions/NumericFilterSelectAllOptions" + } + }, + "required": [ + "Column", + "FilterId", + "NullOption" + ], + "type": "object" + }, + "NumericRangeFilterValue": { + "additionalProperties": false, + "properties": { + "Parameter": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "StaticValue": { + "default": null, + "type": "number" + } + }, + "type": "object" + }, + "NumericSeparatorConfiguration": { + "additionalProperties": false, + "properties": { + "DecimalSeparator": { + "$ref": "#/definitions/NumericSeparatorSymbol" + }, + "ThousandsSeparator": { + "$ref": "#/definitions/ThousandSeparatorOptions" + } + }, + "type": "object" + }, + "NumericSeparatorSymbol": { + "enum": [ + "COMMA", + "DOT", + "SPACE" + ], + "type": "string" + }, + "NumericalAggregationFunction": { + "additionalProperties": false, + "properties": { + "PercentileAggregation": { + "$ref": "#/definitions/PercentileAggregation" + }, + "SimpleNumericalAggregation": { + "$ref": "#/definitions/SimpleNumericalAggregationFunction" + } + }, + "type": "object" + }, + "NumericalDimensionField": { + "additionalProperties": false, + "properties": { + "Column": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "FormatConfiguration": { + "$ref": "#/definitions/NumberFormatConfiguration" + }, + "HierarchyId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Column", + "FieldId" + ], + "type": "object" + }, + "NumericalMeasureField": { + "additionalProperties": false, + "properties": { + "AggregationFunction": { + "$ref": "#/definitions/NumericalAggregationFunction" + }, + "Column": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "FormatConfiguration": { + "$ref": "#/definitions/NumberFormatConfiguration" + } + }, + "required": [ + "Column", + "FieldId" + ], + "type": "object" + }, + "OtherCategories": { + "enum": [ + "INCLUDE", + "EXCLUDE" + ], + "type": "string" + }, + "PaginationConfiguration": { + "additionalProperties": false, + "properties": { + "PageNumber": { + "minimum": 0, + "type": "number" + }, + "PageSize": { + "default": null, + "type": "number" + } + }, + "required": [ + "PageNumber", + "PageSize" + ], + "type": "object" + }, + "PanelBorderStyle": { + "enum": [ + "SOLID", + "DASHED", + "DOTTED" + ], + "type": "string" + }, + "PanelConfiguration": { + "additionalProperties": false, + "properties": { + "BackgroundColor": { + "pattern": "^#[A-F0-9]{6}(?:[A-F0-9]{2})?$", + "type": "string" + }, + "BackgroundVisibility": { + "$ref": "#/definitions/Visibility" + }, + "BorderColor": { + "pattern": "^#[A-F0-9]{6}(?:[A-F0-9]{2})?$", + "type": "string" + }, + "BorderStyle": { + "$ref": "#/definitions/PanelBorderStyle" + }, + "BorderThickness": { + "type": "string" + }, + "BorderVisibility": { + "$ref": "#/definitions/Visibility" + }, + "GutterSpacing": { + "type": "string" + }, + "GutterVisibility": { + "$ref": "#/definitions/Visibility" + }, + "Title": { + "$ref": "#/definitions/PanelTitleOptions" + } + }, + "type": "object" + }, + "PanelTitleOptions": { + "additionalProperties": false, + "properties": { + "FontConfiguration": { + "$ref": "#/definitions/FontConfiguration" + }, + "HorizontalTextAlignment": { + "$ref": "#/definitions/HorizontalTextAlignment" + }, + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "PaperOrientation": { + "enum": [ + "PORTRAIT", + "LANDSCAPE" + ], + "type": "string" + }, + "PaperSize": { + "enum": [ + "US_LETTER", + "US_LEGAL", + "US_TABLOID_LEDGER", + "A0", + "A1", + "A2", + "A3", + "A4", + "A5", + "JIS_B4", + "JIS_B5" + ], + "type": "string" + }, + "ParameterControl": { + "additionalProperties": false, + "properties": { + "DateTimePicker": { + "$ref": "#/definitions/ParameterDateTimePickerControl" + }, + "Dropdown": { + "$ref": "#/definitions/ParameterDropDownControl" + }, + "List": { + "$ref": "#/definitions/ParameterListControl" + }, + "Slider": { + "$ref": "#/definitions/ParameterSliderControl" + }, + "TextArea": { + "$ref": "#/definitions/ParameterTextAreaControl" + }, + "TextField": { + "$ref": "#/definitions/ParameterTextFieldControl" + } + }, + "type": "object" + }, + "ParameterDateTimePickerControl": { + "additionalProperties": false, + "properties": { + "DisplayOptions": { + "$ref": "#/definitions/DateTimePickerControlDisplayOptions" + }, + "ParameterControlId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "SourceParameterName": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "Title": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "ParameterControlId", + "SourceParameterName", + "Title" + ], + "type": "object" + }, + "ParameterDeclaration": { + "additionalProperties": false, + "properties": { + "DateTimeParameterDeclaration": { + "$ref": "#/definitions/DateTimeParameterDeclaration" + }, + "DecimalParameterDeclaration": { + "$ref": "#/definitions/DecimalParameterDeclaration" + }, + "IntegerParameterDeclaration": { + "$ref": "#/definitions/IntegerParameterDeclaration" + }, + "StringParameterDeclaration": { + "$ref": "#/definitions/StringParameterDeclaration" + } + }, + "type": "object" + }, + "ParameterDropDownControl": { + "additionalProperties": false, + "properties": { + "CascadingControlConfiguration": { + "$ref": "#/definitions/CascadingControlConfiguration" + }, + "CommitMode": { + "$ref": "#/definitions/CommitMode" + }, + "DisplayOptions": { + "$ref": "#/definitions/DropDownControlDisplayOptions" + }, + "ParameterControlId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "SelectableValues": { + "$ref": "#/definitions/ParameterSelectableValues" + }, + "SourceParameterName": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "Title": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Type": { + "$ref": "#/definitions/SheetControlListType" + } + }, + "required": [ + "ParameterControlId", + "SourceParameterName", + "Title" + ], + "type": "object" + }, + "ParameterListControl": { + "additionalProperties": false, + "properties": { + "CascadingControlConfiguration": { + "$ref": "#/definitions/CascadingControlConfiguration" + }, + "DisplayOptions": { + "$ref": "#/definitions/ListControlDisplayOptions" + }, + "ParameterControlId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "SelectableValues": { + "$ref": "#/definitions/ParameterSelectableValues" + }, + "SourceParameterName": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "Title": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Type": { + "$ref": "#/definitions/SheetControlListType" + } + }, + "required": [ + "ParameterControlId", + "SourceParameterName", + "Title" + ], + "type": "object" + }, + "ParameterSelectableValues": { + "additionalProperties": false, + "properties": { + "LinkToDataSetColumn": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "Values": { + "items": { + "type": "string" + }, + "maxItems": 50000, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "ParameterSliderControl": { + "additionalProperties": false, + "properties": { + "DisplayOptions": { + "$ref": "#/definitions/SliderControlDisplayOptions" + }, + "MaximumValue": { + "default": 0, + "type": "number" + }, + "MinimumValue": { + "default": 0, + "type": "number" + }, + "ParameterControlId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "SourceParameterName": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "StepSize": { + "default": 0, + "type": "number" + }, + "Title": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "MaximumValue", + "MinimumValue", + "ParameterControlId", + "SourceParameterName", + "StepSize", + "Title" + ], + "type": "object" + }, + "ParameterTextAreaControl": { + "additionalProperties": false, + "properties": { + "Delimiter": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "DisplayOptions": { + "$ref": "#/definitions/TextAreaControlDisplayOptions" + }, + "ParameterControlId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "SourceParameterName": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "Title": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "ParameterControlId", + "SourceParameterName", + "Title" + ], + "type": "object" + }, + "ParameterTextFieldControl": { + "additionalProperties": false, + "properties": { + "DisplayOptions": { + "$ref": "#/definitions/TextFieldControlDisplayOptions" + }, + "ParameterControlId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "SourceParameterName": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "Title": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "ParameterControlId", + "SourceParameterName", + "Title" + ], + "type": "object" + }, + "ParameterValueType": { + "enum": [ + "MULTI_VALUED", + "SINGLE_VALUED" + ], + "type": "string" + }, + "Parameters": { + "additionalProperties": false, + "properties": { + "DateTimeParameters": { + "items": { + "$ref": "#/definitions/DateTimeParameter" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + }, + "DecimalParameters": { + "items": { + "$ref": "#/definitions/DecimalParameter" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + }, + "IntegerParameters": { + "items": { + "$ref": "#/definitions/IntegerParameter" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + }, + "StringParameters": { + "items": { + "$ref": "#/definitions/StringParameter" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "PercentVisibleRange": { + "additionalProperties": false, + "properties": { + "From": { + "default": null, + "maximum": 100, + "minimum": 0, + "type": "number" + }, + "To": { + "default": null, + "maximum": 100, + "minimum": 0, + "type": "number" + } + }, + "type": "object" + }, + "PercentageDisplayFormatConfiguration": { + "additionalProperties": false, + "properties": { + "DecimalPlacesConfiguration": { + "$ref": "#/definitions/DecimalPlacesConfiguration" + }, + "NegativeValueConfiguration": { + "$ref": "#/definitions/NegativeValueConfiguration" + }, + "NullValueFormatConfiguration": { + "$ref": "#/definitions/NullValueFormatConfiguration" + }, + "Prefix": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "SeparatorConfiguration": { + "$ref": "#/definitions/NumericSeparatorConfiguration" + }, + "Suffix": { + "maxLength": 128, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "PercentileAggregation": { + "additionalProperties": false, + "properties": { + "PercentileValue": { + "maximum": 100, + "minimum": 0, + "type": "number" + } + }, + "type": "object" + }, + "PeriodOverPeriodComputation": { + "additionalProperties": false, + "properties": { + "ComputationId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "Name": { + "type": "string" + }, + "Time": { + "$ref": "#/definitions/DimensionField" + }, + "Value": { + "$ref": "#/definitions/MeasureField" + } + }, + "required": [ + "ComputationId" + ], + "type": "object" + }, + "PeriodToDateComputation": { + "additionalProperties": false, + "properties": { + "ComputationId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "Name": { + "type": "string" + }, + "PeriodTimeGranularity": { + "$ref": "#/definitions/TimeGranularity" + }, + "Time": { + "$ref": "#/definitions/DimensionField" + }, + "Value": { + "$ref": "#/definitions/MeasureField" + } + }, + "required": [ + "ComputationId" + ], + "type": "object" + }, + "PieChartAggregatedFieldWells": { + "additionalProperties": false, + "properties": { + "Category": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "SmallMultiples": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 1, + "minItems": 0, + "type": "array" + }, + "Values": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "PieChartConfiguration": { + "additionalProperties": false, + "properties": { + "CategoryLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "ContributionAnalysisDefaults": { + "items": { + "$ref": "#/definitions/ContributionAnalysisDefault" + }, + "maxItems": 200, + "minItems": 1, + "type": "array" + }, + "DataLabels": { + "$ref": "#/definitions/DataLabelOptions" + }, + "DonutOptions": { + "$ref": "#/definitions/DonutOptions" + }, + "FieldWells": { + "$ref": "#/definitions/PieChartFieldWells" + }, + "Legend": { + "$ref": "#/definitions/LegendOptions" + }, + "SmallMultiplesOptions": { + "$ref": "#/definitions/SmallMultiplesOptions" + }, + "SortConfiguration": { + "$ref": "#/definitions/PieChartSortConfiguration" + }, + "Tooltip": { + "$ref": "#/definitions/TooltipOptions" + }, + "ValueLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "VisualPalette": { + "$ref": "#/definitions/VisualPalette" + } + }, + "type": "object" + }, + "PieChartFieldWells": { + "additionalProperties": false, + "properties": { + "PieChartAggregatedFieldWells": { + "$ref": "#/definitions/PieChartAggregatedFieldWells" + } + }, + "type": "object" + }, + "PieChartSortConfiguration": { + "additionalProperties": false, + "properties": { + "CategoryItemsLimit": { + "$ref": "#/definitions/ItemsLimitConfiguration" + }, + "CategorySort": { + "items": { + "$ref": "#/definitions/FieldSortOptions" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + }, + "SmallMultiplesLimitConfiguration": { + "$ref": "#/definitions/ItemsLimitConfiguration" + }, + "SmallMultiplesSort": { + "items": { + "$ref": "#/definitions/FieldSortOptions" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "PieChartVisual": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/VisualCustomAction" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "ChartConfiguration": { + "$ref": "#/definitions/PieChartConfiguration" + }, + "ColumnHierarchies": { + "items": { + "$ref": "#/definitions/ColumnHierarchy" + }, + "maxItems": 2, + "minItems": 0, + "type": "array" + }, + "Subtitle": { + "$ref": "#/definitions/VisualSubtitleLabelOptions" + }, + "Title": { + "$ref": "#/definitions/VisualTitleLabelOptions" + }, + "VisualId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "VisualId" + ], + "type": "object" + }, + "PivotFieldSortOptions": { + "additionalProperties": false, + "properties": { + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "SortBy": { + "$ref": "#/definitions/PivotTableSortBy" + } + }, + "required": [ + "FieldId", + "SortBy" + ], + "type": "object" + }, + "PivotTableAggregatedFieldWells": { + "additionalProperties": false, + "properties": { + "Columns": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 40, + "minItems": 0, + "type": "array" + }, + "Rows": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 40, + "minItems": 0, + "type": "array" + }, + "Values": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 40, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "PivotTableCellConditionalFormatting": { + "additionalProperties": false, + "properties": { + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "Scope": { + "$ref": "#/definitions/PivotTableConditionalFormattingScope" + }, + "Scopes": { + "items": { + "$ref": "#/definitions/PivotTableConditionalFormattingScope" + }, + "maxItems": 3, + "minItems": 0, + "type": "array" + }, + "TextFormat": { + "$ref": "#/definitions/TextConditionalFormat" + } + }, + "required": [ + "FieldId" + ], + "type": "object" + }, + "PivotTableConditionalFormatting": { + "additionalProperties": false, + "properties": { + "ConditionalFormattingOptions": { + "items": { + "$ref": "#/definitions/PivotTableConditionalFormattingOption" + }, + "maxItems": 500, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "PivotTableConditionalFormattingOption": { + "additionalProperties": false, + "properties": { + "Cell": { + "$ref": "#/definitions/PivotTableCellConditionalFormatting" + } + }, + "type": "object" + }, + "PivotTableConditionalFormattingScope": { + "additionalProperties": false, + "properties": { + "Role": { + "$ref": "#/definitions/PivotTableConditionalFormattingScopeRole" + } + }, + "type": "object" + }, + "PivotTableConditionalFormattingScopeRole": { + "enum": [ + "FIELD", + "FIELD_TOTAL", + "GRAND_TOTAL" + ], + "type": "string" + }, + "PivotTableConfiguration": { + "additionalProperties": false, + "properties": { + "FieldOptions": { + "$ref": "#/definitions/PivotTableFieldOptions" + }, + "FieldWells": { + "$ref": "#/definitions/PivotTableFieldWells" + }, + "PaginatedReportOptions": { + "$ref": "#/definitions/PivotTablePaginatedReportOptions" + }, + "SortConfiguration": { + "$ref": "#/definitions/PivotTableSortConfiguration" + }, + "TableOptions": { + "$ref": "#/definitions/PivotTableOptions" + }, + "TotalOptions": { + "$ref": "#/definitions/PivotTableTotalOptions" + } + }, + "type": "object" + }, + "PivotTableDataPathOption": { + "additionalProperties": false, + "properties": { + "DataPathList": { + "items": { + "$ref": "#/definitions/DataPathValue" + }, + "maxItems": 20, + "minItems": 0, + "type": "array" + }, + "Width": { + "type": "string" + } + }, + "required": [ + "DataPathList" + ], + "type": "object" + }, + "PivotTableDataPathType": { + "enum": [ + "HIERARCHY_ROWS_LAYOUT_COLUMN", + "MULTIPLE_ROW_METRICS_COLUMN", + "EMPTY_COLUMN_HEADER", + "COUNT_METRIC_COLUMN" + ], + "type": "string" + }, + "PivotTableFieldCollapseState": { + "enum": [ + "COLLAPSED", + "EXPANDED" + ], + "type": "string" + }, + "PivotTableFieldCollapseStateOption": { + "additionalProperties": false, + "properties": { + "State": { + "$ref": "#/definitions/PivotTableFieldCollapseState" + }, + "Target": { + "$ref": "#/definitions/PivotTableFieldCollapseStateTarget" + } + }, + "required": [ + "Target" + ], + "type": "object" + }, + "PivotTableFieldCollapseStateTarget": { + "additionalProperties": false, + "properties": { + "FieldDataPathValues": { + "items": { + "$ref": "#/definitions/DataPathValue" + }, + "maxItems": 20, + "minItems": 0, + "type": "array" + }, + "FieldId": { + "type": "string" + } + }, + "type": "object" + }, + "PivotTableFieldOption": { + "additionalProperties": false, + "properties": { + "CustomLabel": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "required": [ + "FieldId" + ], + "type": "object" + }, + "PivotTableFieldOptions": { + "additionalProperties": false, + "properties": { + "CollapseStateOptions": { + "items": { + "$ref": "#/definitions/PivotTableFieldCollapseStateOption" + }, + "type": "array" + }, + "DataPathOptions": { + "items": { + "$ref": "#/definitions/PivotTableDataPathOption" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + }, + "SelectedFieldOptions": { + "items": { + "$ref": "#/definitions/PivotTableFieldOption" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "PivotTableFieldSubtotalOptions": { + "additionalProperties": false, + "properties": { + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "PivotTableFieldWells": { + "additionalProperties": false, + "properties": { + "PivotTableAggregatedFieldWells": { + "$ref": "#/definitions/PivotTableAggregatedFieldWells" + } + }, + "type": "object" + }, + "PivotTableMetricPlacement": { + "enum": [ + "ROW", + "COLUMN" + ], + "type": "string" + }, + "PivotTableOptions": { + "additionalProperties": false, + "properties": { + "CellStyle": { + "$ref": "#/definitions/TableCellStyle" + }, + "CollapsedRowDimensionsVisibility": { + "$ref": "#/definitions/Visibility" + }, + "ColumnHeaderStyle": { + "$ref": "#/definitions/TableCellStyle" + }, + "ColumnNamesVisibility": { + "$ref": "#/definitions/Visibility" + }, + "DefaultCellWidth": { + "type": "string" + }, + "MetricPlacement": { + "$ref": "#/definitions/PivotTableMetricPlacement" + }, + "RowAlternateColorOptions": { + "$ref": "#/definitions/RowAlternateColorOptions" + }, + "RowFieldNamesStyle": { + "$ref": "#/definitions/TableCellStyle" + }, + "RowHeaderStyle": { + "$ref": "#/definitions/TableCellStyle" + }, + "RowsLabelOptions": { + "$ref": "#/definitions/PivotTableRowsLabelOptions" + }, + "RowsLayout": { + "$ref": "#/definitions/PivotTableRowsLayout" + }, + "SingleMetricVisibility": { + "$ref": "#/definitions/Visibility" + }, + "ToggleButtonsVisibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "PivotTablePaginatedReportOptions": { + "additionalProperties": false, + "properties": { + "OverflowColumnHeaderVisibility": { + "$ref": "#/definitions/Visibility" + }, + "VerticalOverflowVisibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "PivotTableRowsLabelOptions": { + "additionalProperties": false, + "properties": { + "CustomLabel": { + "maxLength": 1024, + "minLength": 1, + "type": "string" + }, + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "PivotTableRowsLayout": { + "enum": [ + "TABULAR", + "HIERARCHY" + ], + "type": "string" + }, + "PivotTableSortBy": { + "additionalProperties": false, + "properties": { + "Column": { + "$ref": "#/definitions/ColumnSort" + }, + "DataPath": { + "$ref": "#/definitions/DataPathSort" + }, + "Field": { + "$ref": "#/definitions/FieldSort" + } + }, + "type": "object" + }, + "PivotTableSortConfiguration": { + "additionalProperties": false, + "properties": { + "FieldSortOptions": { + "items": { + "$ref": "#/definitions/PivotFieldSortOptions" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "PivotTableSubtotalLevel": { + "enum": [ + "ALL", + "CUSTOM", + "LAST" + ], + "type": "string" + }, + "PivotTableTotalOptions": { + "additionalProperties": false, + "properties": { + "ColumnSubtotalOptions": { + "$ref": "#/definitions/SubtotalOptions" + }, + "ColumnTotalOptions": { + "$ref": "#/definitions/PivotTotalOptions" + }, + "RowSubtotalOptions": { + "$ref": "#/definitions/SubtotalOptions" + }, + "RowTotalOptions": { + "$ref": "#/definitions/PivotTotalOptions" + } + }, + "type": "object" + }, + "PivotTableVisual": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/VisualCustomAction" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "ChartConfiguration": { + "$ref": "#/definitions/PivotTableConfiguration" + }, + "ConditionalFormatting": { + "$ref": "#/definitions/PivotTableConditionalFormatting" + }, + "Subtitle": { + "$ref": "#/definitions/VisualSubtitleLabelOptions" + }, + "Title": { + "$ref": "#/definitions/VisualTitleLabelOptions" + }, + "VisualId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "VisualId" + ], + "type": "object" + }, + "PivotTotalOptions": { + "additionalProperties": false, + "properties": { + "CustomLabel": { + "type": "string" + }, + "MetricHeaderCellStyle": { + "$ref": "#/definitions/TableCellStyle" + }, + "Placement": { + "$ref": "#/definitions/TableTotalsPlacement" + }, + "ScrollStatus": { + "$ref": "#/definitions/TableTotalsScrollStatus" + }, + "TotalAggregationOptions": { + "items": { + "$ref": "#/definitions/TotalAggregationOption" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "TotalCellStyle": { + "$ref": "#/definitions/TableCellStyle" + }, + "TotalsVisibility": { + "$ref": "#/definitions/Visibility" + }, + "ValueCellStyle": { + "$ref": "#/definitions/TableCellStyle" + } + }, + "type": "object" + }, + "PredefinedHierarchy": { + "additionalProperties": false, + "properties": { + "Columns": { + "items": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "maxItems": 10, + "minItems": 1, + "type": "array" + }, + "DrillDownFilters": { + "items": { + "$ref": "#/definitions/DrillDownFilter" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "HierarchyId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Columns", + "HierarchyId" + ], + "type": "object" + }, + "PrimaryValueDisplayType": { + "enum": [ + "HIDDEN", + "COMPARISON", + "ACTUAL" + ], + "type": "string" + }, + "ProgressBarOptions": { + "additionalProperties": false, + "properties": { + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "QueryExecutionMode": { + "enum": [ + "AUTO", + "MANUAL" + ], + "type": "string" + }, + "QueryExecutionOptions": { + "additionalProperties": false, + "properties": { + "QueryExecutionMode": { + "$ref": "#/definitions/QueryExecutionMode" + } + }, + "type": "object" + }, + "RadarChartAggregatedFieldWells": { + "additionalProperties": false, + "properties": { + "Category": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 1, + "minItems": 0, + "type": "array" + }, + "Color": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 1, + "minItems": 0, + "type": "array" + }, + "Values": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 20, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "RadarChartAreaStyleSettings": { + "additionalProperties": false, + "properties": { + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "RadarChartAxesRangeScale": { + "enum": [ + "AUTO", + "INDEPENDENT", + "SHARED" + ], + "type": "string" + }, + "RadarChartConfiguration": { + "additionalProperties": false, + "properties": { + "AlternateBandColorsVisibility": { + "$ref": "#/definitions/Visibility" + }, + "AlternateBandEvenColor": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + }, + "AlternateBandOddColor": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + }, + "AxesRangeScale": { + "$ref": "#/definitions/RadarChartAxesRangeScale" + }, + "BaseSeriesSettings": { + "$ref": "#/definitions/RadarChartSeriesSettings" + }, + "CategoryAxis": { + "$ref": "#/definitions/AxisDisplayOptions" + }, + "CategoryLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "ColorAxis": { + "$ref": "#/definitions/AxisDisplayOptions" + }, + "ColorLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "FieldWells": { + "$ref": "#/definitions/RadarChartFieldWells" + }, + "Legend": { + "$ref": "#/definitions/LegendOptions" + }, + "Shape": { + "$ref": "#/definitions/RadarChartShape" + }, + "SortConfiguration": { + "$ref": "#/definitions/RadarChartSortConfiguration" + }, + "StartAngle": { + "maximum": 360, + "minimum": -360, + "type": "number" + }, + "VisualPalette": { + "$ref": "#/definitions/VisualPalette" + } + }, + "type": "object" + }, + "RadarChartFieldWells": { + "additionalProperties": false, + "properties": { + "RadarChartAggregatedFieldWells": { + "$ref": "#/definitions/RadarChartAggregatedFieldWells" + } + }, + "type": "object" + }, + "RadarChartSeriesSettings": { + "additionalProperties": false, + "properties": { + "AreaStyleSettings": { + "$ref": "#/definitions/RadarChartAreaStyleSettings" + } + }, + "type": "object" + }, + "RadarChartShape": { + "enum": [ + "CIRCLE", + "POLYGON" + ], + "type": "string" + }, + "RadarChartSortConfiguration": { + "additionalProperties": false, + "properties": { + "CategoryItemsLimit": { + "$ref": "#/definitions/ItemsLimitConfiguration" + }, + "CategorySort": { + "items": { + "$ref": "#/definitions/FieldSortOptions" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + }, + "ColorItemsLimit": { + "$ref": "#/definitions/ItemsLimitConfiguration" + }, + "ColorSort": { + "items": { + "$ref": "#/definitions/FieldSortOptions" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "RadarChartVisual": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/VisualCustomAction" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "ChartConfiguration": { + "$ref": "#/definitions/RadarChartConfiguration" + }, + "ColumnHierarchies": { + "items": { + "$ref": "#/definitions/ColumnHierarchy" + }, + "maxItems": 2, + "minItems": 0, + "type": "array" + }, + "Subtitle": { + "$ref": "#/definitions/VisualSubtitleLabelOptions" + }, + "Title": { + "$ref": "#/definitions/VisualTitleLabelOptions" + }, + "VisualId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "VisualId" + ], + "type": "object" + }, + "RangeEndsLabelType": { + "additionalProperties": false, + "properties": { + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "ReferenceLine": { + "additionalProperties": false, + "properties": { + "DataConfiguration": { + "$ref": "#/definitions/ReferenceLineDataConfiguration" + }, + "LabelConfiguration": { + "$ref": "#/definitions/ReferenceLineLabelConfiguration" + }, + "Status": { + "$ref": "#/definitions/WidgetStatus" + }, + "StyleConfiguration": { + "$ref": "#/definitions/ReferenceLineStyleConfiguration" + } + }, + "required": [ + "DataConfiguration" + ], + "type": "object" + }, + "ReferenceLineCustomLabelConfiguration": { + "additionalProperties": false, + "properties": { + "CustomLabel": { + "pattern": "\\S", + "type": "string" + } + }, + "required": [ + "CustomLabel" + ], + "type": "object" + }, + "ReferenceLineDataConfiguration": { + "additionalProperties": false, + "properties": { + "AxisBinding": { + "$ref": "#/definitions/AxisBinding" + }, + "DynamicConfiguration": { + "$ref": "#/definitions/ReferenceLineDynamicDataConfiguration" + }, + "SeriesType": { + "$ref": "#/definitions/ReferenceLineSeriesType" + }, + "StaticConfiguration": { + "$ref": "#/definitions/ReferenceLineStaticDataConfiguration" + } + }, + "type": "object" + }, + "ReferenceLineDynamicDataConfiguration": { + "additionalProperties": false, + "properties": { + "Calculation": { + "$ref": "#/definitions/NumericalAggregationFunction" + }, + "Column": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "MeasureAggregationFunction": { + "$ref": "#/definitions/AggregationFunction" + } + }, + "required": [ + "Calculation", + "Column" + ], + "type": "object" + }, + "ReferenceLineLabelConfiguration": { + "additionalProperties": false, + "properties": { + "CustomLabelConfiguration": { + "$ref": "#/definitions/ReferenceLineCustomLabelConfiguration" + }, + "FontColor": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + }, + "FontConfiguration": { + "$ref": "#/definitions/FontConfiguration" + }, + "HorizontalPosition": { + "$ref": "#/definitions/ReferenceLineLabelHorizontalPosition" + }, + "ValueLabelConfiguration": { + "$ref": "#/definitions/ReferenceLineValueLabelConfiguration" + }, + "VerticalPosition": { + "$ref": "#/definitions/ReferenceLineLabelVerticalPosition" + } + }, + "type": "object" + }, + "ReferenceLineLabelHorizontalPosition": { + "enum": [ + "LEFT", + "CENTER", + "RIGHT" + ], + "type": "string" + }, + "ReferenceLineLabelVerticalPosition": { + "enum": [ + "ABOVE", + "BELOW" + ], + "type": "string" + }, + "ReferenceLinePatternType": { + "enum": [ + "SOLID", + "DASHED", + "DOTTED" + ], + "type": "string" + }, + "ReferenceLineSeriesType": { + "enum": [ + "BAR", + "LINE" + ], + "type": "string" + }, + "ReferenceLineStaticDataConfiguration": { + "additionalProperties": false, + "properties": { + "Value": { + "default": 0, + "type": "number" + } + }, + "required": [ + "Value" + ], + "type": "object" + }, + "ReferenceLineStyleConfiguration": { + "additionalProperties": false, + "properties": { + "Color": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + }, + "Pattern": { + "$ref": "#/definitions/ReferenceLinePatternType" + } + }, + "type": "object" + }, + "ReferenceLineValueLabelConfiguration": { + "additionalProperties": false, + "properties": { + "FormatConfiguration": { + "$ref": "#/definitions/NumericFormatConfiguration" + }, + "RelativePosition": { + "$ref": "#/definitions/ReferenceLineValueLabelRelativePosition" + } + }, + "type": "object" + }, + "ReferenceLineValueLabelRelativePosition": { + "enum": [ + "BEFORE_CUSTOM_LABEL", + "AFTER_CUSTOM_LABEL" + ], + "type": "string" + }, + "RelativeDateTimeControlDisplayOptions": { + "additionalProperties": false, + "properties": { + "DateTimeFormat": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "InfoIconLabelOptions": { + "$ref": "#/definitions/SheetControlInfoIconLabelOptions" + }, + "TitleOptions": { + "$ref": "#/definitions/LabelOptions" + } + }, + "type": "object" + }, + "RelativeDateType": { + "enum": [ + "PREVIOUS", + "THIS", + "LAST", + "NOW", + "NEXT" + ], + "type": "string" + }, + "RelativeDatesFilter": { + "additionalProperties": false, + "properties": { + "AnchorDateConfiguration": { + "$ref": "#/definitions/AnchorDateConfiguration" + }, + "Column": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "DefaultFilterControlConfiguration": { + "$ref": "#/definitions/DefaultFilterControlConfiguration" + }, + "ExcludePeriodConfiguration": { + "$ref": "#/definitions/ExcludePeriodConfiguration" + }, + "FilterId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "MinimumGranularity": { + "$ref": "#/definitions/TimeGranularity" + }, + "NullOption": { + "$ref": "#/definitions/FilterNullOption" + }, + "ParameterName": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "RelativeDateType": { + "$ref": "#/definitions/RelativeDateType" + }, + "RelativeDateValue": { + "default": null, + "type": "number" + }, + "TimeGranularity": { + "$ref": "#/definitions/TimeGranularity" + } + }, + "required": [ + "AnchorDateConfiguration", + "Column", + "FilterId", + "NullOption", + "RelativeDateType", + "TimeGranularity" + ], + "type": "object" + }, + "RelativeFontSize": { + "enum": [ + "EXTRA_SMALL", + "SMALL", + "MEDIUM", + "LARGE", + "EXTRA_LARGE" + ], + "type": "string" + }, + "ResizeOption": { + "enum": [ + "FIXED", + "RESPONSIVE" + ], + "type": "string" + }, + "ResourcePermission": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "type": "string" + }, + "maxItems": 20, + "minItems": 1, + "type": "array" + }, + "Principal": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Actions", + "Principal" + ], + "type": "object" + }, + "ResourceStatus": { + "enum": [ + "CREATION_IN_PROGRESS", + "CREATION_SUCCESSFUL", + "CREATION_FAILED", + "UPDATE_IN_PROGRESS", + "UPDATE_SUCCESSFUL", + "UPDATE_FAILED", + "DELETED" + ], + "type": "string" + }, + "RollingDateConfiguration": { + "additionalProperties": false, + "properties": { + "DataSetIdentifier": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Expression": { + "maxLength": 4096, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Expression" + ], + "type": "object" + }, + "RowAlternateColorOptions": { + "additionalProperties": false, + "properties": { + "RowAlternateColors": { + "items": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + }, + "maxItems": 1, + "minItems": 0, + "type": "array" + }, + "Status": { + "$ref": "#/definitions/WidgetStatus" + }, + "UsePrimaryBackgroundColor": { + "$ref": "#/definitions/WidgetStatus" + } + }, + "type": "object" + }, + "SameSheetTargetVisualConfiguration": { + "additionalProperties": false, + "properties": { + "TargetVisualOptions": { + "$ref": "#/definitions/TargetVisualOptions" + }, + "TargetVisuals": { + "items": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "maxItems": 50, + "minItems": 1, + "type": "array" + } + }, + "type": "object" + }, + "SankeyDiagramAggregatedFieldWells": { + "additionalProperties": false, + "properties": { + "Destination": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "Source": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "Weight": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "SankeyDiagramChartConfiguration": { + "additionalProperties": false, + "properties": { + "DataLabels": { + "$ref": "#/definitions/DataLabelOptions" + }, + "FieldWells": { + "$ref": "#/definitions/SankeyDiagramFieldWells" + }, + "SortConfiguration": { + "$ref": "#/definitions/SankeyDiagramSortConfiguration" + } + }, + "type": "object" + }, + "SankeyDiagramFieldWells": { + "additionalProperties": false, + "properties": { + "SankeyDiagramAggregatedFieldWells": { + "$ref": "#/definitions/SankeyDiagramAggregatedFieldWells" + } + }, + "type": "object" + }, + "SankeyDiagramSortConfiguration": { + "additionalProperties": false, + "properties": { + "DestinationItemsLimit": { + "$ref": "#/definitions/ItemsLimitConfiguration" + }, + "SourceItemsLimit": { + "$ref": "#/definitions/ItemsLimitConfiguration" + }, + "WeightSort": { + "items": { + "$ref": "#/definitions/FieldSortOptions" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "SankeyDiagramVisual": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/VisualCustomAction" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "ChartConfiguration": { + "$ref": "#/definitions/SankeyDiagramChartConfiguration" + }, + "Subtitle": { + "$ref": "#/definitions/VisualSubtitleLabelOptions" + }, + "Title": { + "$ref": "#/definitions/VisualTitleLabelOptions" + }, + "VisualId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "VisualId" + ], + "type": "object" + }, + "ScatterPlotCategoricallyAggregatedFieldWells": { + "additionalProperties": false, + "properties": { + "Category": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "Label": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "Size": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "XAxis": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "YAxis": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "ScatterPlotConfiguration": { + "additionalProperties": false, + "properties": { + "DataLabels": { + "$ref": "#/definitions/DataLabelOptions" + }, + "FieldWells": { + "$ref": "#/definitions/ScatterPlotFieldWells" + }, + "Legend": { + "$ref": "#/definitions/LegendOptions" + }, + "Tooltip": { + "$ref": "#/definitions/TooltipOptions" + }, + "VisualPalette": { + "$ref": "#/definitions/VisualPalette" + }, + "XAxisDisplayOptions": { + "$ref": "#/definitions/AxisDisplayOptions" + }, + "XAxisLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "YAxisDisplayOptions": { + "$ref": "#/definitions/AxisDisplayOptions" + }, + "YAxisLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + } + }, + "type": "object" + }, + "ScatterPlotFieldWells": { + "additionalProperties": false, + "properties": { + "ScatterPlotCategoricallyAggregatedFieldWells": { + "$ref": "#/definitions/ScatterPlotCategoricallyAggregatedFieldWells" + }, + "ScatterPlotUnaggregatedFieldWells": { + "$ref": "#/definitions/ScatterPlotUnaggregatedFieldWells" + } + }, + "type": "object" + }, + "ScatterPlotUnaggregatedFieldWells": { + "additionalProperties": false, + "properties": { + "Category": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "Label": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "Size": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "XAxis": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "YAxis": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "ScatterPlotVisual": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/VisualCustomAction" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "ChartConfiguration": { + "$ref": "#/definitions/ScatterPlotConfiguration" + }, + "ColumnHierarchies": { + "items": { + "$ref": "#/definitions/ColumnHierarchy" + }, + "maxItems": 2, + "minItems": 0, + "type": "array" + }, + "Subtitle": { + "$ref": "#/definitions/VisualSubtitleLabelOptions" + }, + "Title": { + "$ref": "#/definitions/VisualTitleLabelOptions" + }, + "VisualId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "VisualId" + ], + "type": "object" + }, + "ScrollBarOptions": { + "additionalProperties": false, + "properties": { + "Visibility": { + "$ref": "#/definitions/Visibility" + }, + "VisibleRange": { + "$ref": "#/definitions/VisibleRangeOptions" + } + }, + "type": "object" + }, + "SecondaryValueOptions": { + "additionalProperties": false, + "properties": { + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "SectionAfterPageBreak": { + "additionalProperties": false, + "properties": { + "Status": { + "$ref": "#/definitions/SectionPageBreakStatus" + } + }, + "type": "object" + }, + "SectionBasedLayoutCanvasSizeOptions": { + "additionalProperties": false, + "properties": { + "PaperCanvasSizeOptions": { + "$ref": "#/definitions/SectionBasedLayoutPaperCanvasSizeOptions" + } + }, + "type": "object" + }, + "SectionBasedLayoutConfiguration": { + "additionalProperties": false, + "properties": { + "BodySections": { + "items": { + "$ref": "#/definitions/BodySectionConfiguration" + }, + "maxItems": 28, + "minItems": 0, + "type": "array" + }, + "CanvasSizeOptions": { + "$ref": "#/definitions/SectionBasedLayoutCanvasSizeOptions" + }, + "FooterSections": { + "items": { + "$ref": "#/definitions/HeaderFooterSectionConfiguration" + }, + "maxItems": 1, + "minItems": 0, + "type": "array" + }, + "HeaderSections": { + "items": { + "$ref": "#/definitions/HeaderFooterSectionConfiguration" + }, + "maxItems": 1, + "minItems": 0, + "type": "array" + } + }, + "required": [ + "BodySections", + "CanvasSizeOptions", + "FooterSections", + "HeaderSections" + ], + "type": "object" + }, + "SectionBasedLayoutPaperCanvasSizeOptions": { + "additionalProperties": false, + "properties": { + "PaperMargin": { + "$ref": "#/definitions/Spacing" + }, + "PaperOrientation": { + "$ref": "#/definitions/PaperOrientation" + }, + "PaperSize": { + "$ref": "#/definitions/PaperSize" + } + }, + "type": "object" + }, + "SectionLayoutConfiguration": { + "additionalProperties": false, + "properties": { + "FreeFormLayout": { + "$ref": "#/definitions/FreeFormSectionLayoutConfiguration" + } + }, + "required": [ + "FreeFormLayout" + ], + "type": "object" + }, + "SectionPageBreakConfiguration": { + "additionalProperties": false, + "properties": { + "After": { + "$ref": "#/definitions/SectionAfterPageBreak" + } + }, + "type": "object" + }, + "SectionPageBreakStatus": { + "enum": [ + "ENABLED", + "DISABLED" + ], + "type": "string" + }, + "SectionStyle": { + "additionalProperties": false, + "properties": { + "Height": { + "type": "string" + }, + "Padding": { + "$ref": "#/definitions/Spacing" + } + }, + "type": "object" + }, + "SelectAllValueOptions": { + "enum": [ + "ALL_VALUES" + ], + "type": "string" + }, + "SelectedFieldOptions": { + "enum": [ + "ALL_FIELDS" + ], + "type": "string" + }, + "SelectedSheetsFilterScopeConfiguration": { + "additionalProperties": false, + "properties": { + "SheetVisualScopingConfigurations": { + "items": { + "$ref": "#/definitions/SheetVisualScopingConfiguration" + }, + "maxItems": 50, + "minItems": 1, + "type": "array" + } + }, + "type": "object" + }, + "SelectedTooltipType": { + "enum": [ + "BASIC", + "DETAILED" + ], + "type": "string" + }, + "SeriesItem": { + "additionalProperties": false, + "properties": { + "DataFieldSeriesItem": { + "$ref": "#/definitions/DataFieldSeriesItem" + }, + "FieldSeriesItem": { + "$ref": "#/definitions/FieldSeriesItem" + } + }, + "type": "object" + }, + "SetParameterValueConfiguration": { + "additionalProperties": false, + "properties": { + "DestinationParameterName": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "Value": { + "$ref": "#/definitions/DestinationParameterValueConfiguration" + } + }, + "required": [ + "DestinationParameterName", + "Value" + ], + "type": "object" + }, + "ShapeConditionalFormat": { + "additionalProperties": false, + "properties": { + "BackgroundColor": { + "$ref": "#/definitions/ConditionalFormattingColor" + } + }, + "required": [ + "BackgroundColor" + ], + "type": "object" + }, + "Sheet": { + "additionalProperties": false, + "properties": { + "Name": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "SheetId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "type": "object" + }, + "SheetContentType": { + "enum": [ + "PAGINATED", + "INTERACTIVE" + ], + "type": "string" + }, + "SheetControlDateTimePickerType": { + "enum": [ + "SINGLE_VALUED", + "DATE_RANGE" + ], + "type": "string" + }, + "SheetControlInfoIconLabelOptions": { + "additionalProperties": false, + "properties": { + "InfoIconText": { + "maxLength": 100, + "minLength": 1, + "type": "string" + }, + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "SheetControlLayout": { + "additionalProperties": false, + "properties": { + "Configuration": { + "$ref": "#/definitions/SheetControlLayoutConfiguration" + } + }, + "required": [ + "Configuration" + ], + "type": "object" + }, + "SheetControlLayoutConfiguration": { + "additionalProperties": false, + "properties": { + "GridLayout": { + "$ref": "#/definitions/GridLayoutConfiguration" + } + }, + "type": "object" + }, + "SheetControlListType": { + "enum": [ + "MULTI_SELECT", + "SINGLE_SELECT" + ], + "type": "string" + }, + "SheetControlSliderType": { + "enum": [ + "SINGLE_POINT", + "RANGE" + ], + "type": "string" + }, + "SheetDefinition": { + "additionalProperties": false, + "properties": { + "ContentType": { + "$ref": "#/definitions/SheetContentType" + }, + "Description": { + "maxLength": 1024, + "minLength": 1, + "type": "string" + }, + "FilterControls": { + "items": { + "$ref": "#/definitions/FilterControl" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "Layouts": { + "items": { + "$ref": "#/definitions/Layout" + }, + "maxItems": 1, + "minItems": 1, + "type": "array" + }, + "Name": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "ParameterControls": { + "items": { + "$ref": "#/definitions/ParameterControl" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "SheetControlLayouts": { + "items": { + "$ref": "#/definitions/SheetControlLayout" + }, + "maxItems": 1, + "minItems": 0, + "type": "array" + }, + "SheetId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "TextBoxes": { + "items": { + "$ref": "#/definitions/SheetTextBox" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + }, + "Title": { + "maxLength": 1024, + "minLength": 1, + "type": "string" + }, + "Visuals": { + "items": { + "$ref": "#/definitions/Visual" + }, + "maxItems": 50, + "minItems": 0, + "type": "array" + } + }, + "required": [ + "SheetId" + ], + "type": "object" + }, + "SheetElementConfigurationOverrides": { + "additionalProperties": false, + "properties": { + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "SheetElementRenderingRule": { + "additionalProperties": false, + "properties": { + "ConfigurationOverrides": { + "$ref": "#/definitions/SheetElementConfigurationOverrides" + }, + "Expression": { + "maxLength": 4096, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "ConfigurationOverrides", + "Expression" + ], + "type": "object" + }, + "SheetTextBox": { + "additionalProperties": false, + "properties": { + "Content": { + "maxLength": 150000, + "minLength": 0, + "type": "string" + }, + "SheetTextBoxId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "SheetTextBoxId" + ], + "type": "object" + }, + "SheetVisualScopingConfiguration": { + "additionalProperties": false, + "properties": { + "Scope": { + "$ref": "#/definitions/FilterVisualScope" + }, + "SheetId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "VisualIds": { + "items": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "maxItems": 50, + "minItems": 0, + "type": "array" + } + }, + "required": [ + "Scope", + "SheetId" + ], + "type": "object" + }, + "ShortFormatText": { + "additionalProperties": false, + "properties": { + "PlainText": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "RichText": { + "maxLength": 1024, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "SimpleAttributeAggregationFunction": { + "enum": [ + "UNIQUE_VALUE" + ], + "type": "string" + }, + "SimpleClusterMarker": { + "additionalProperties": false, + "properties": { + "Color": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + } + }, + "type": "object" + }, + "SimpleNumericalAggregationFunction": { + "enum": [ + "SUM", + "AVERAGE", + "MIN", + "MAX", + "COUNT", + "DISTINCT_COUNT", + "VAR", + "VARP", + "STDEV", + "STDEVP", + "MEDIAN" + ], + "type": "string" + }, + "SimpleTotalAggregationFunction": { + "enum": [ + "DEFAULT", + "SUM", + "AVERAGE", + "MIN", + "MAX", + "NONE" + ], + "type": "string" + }, + "SingleAxisOptions": { + "additionalProperties": false, + "properties": { + "YAxisOptions": { + "properties": { + "YAxis": { + "$ref": "#/definitions/SingleYAxisOption" + } + } + } + }, + "type": "object" + }, + "SingleYAxisOption": { + "enum": [ + "PRIMARY_Y_AXIS" + ], + "type": "string" + }, + "SliderControlDisplayOptions": { + "additionalProperties": false, + "properties": { + "InfoIconLabelOptions": { + "$ref": "#/definitions/SheetControlInfoIconLabelOptions" + }, + "TitleOptions": { + "$ref": "#/definitions/LabelOptions" + } + }, + "type": "object" + }, + "SmallMultiplesAxisPlacement": { + "enum": [ + "OUTSIDE", + "INSIDE" + ], + "type": "string" + }, + "SmallMultiplesAxisProperties": { + "additionalProperties": false, + "properties": { + "Placement": { + "$ref": "#/definitions/SmallMultiplesAxisPlacement" + }, + "Scale": { + "$ref": "#/definitions/SmallMultiplesAxisScale" + } + }, + "type": "object" + }, + "SmallMultiplesAxisScale": { + "enum": [ + "SHARED", + "INDEPENDENT" + ], + "type": "string" + }, + "SmallMultiplesOptions": { + "additionalProperties": false, + "properties": { + "MaxVisibleColumns": { + "maximum": 10, + "minimum": 1, + "type": "number" + }, + "MaxVisibleRows": { + "maximum": 10, + "minimum": 1, + "type": "number" + }, + "PanelConfiguration": { + "$ref": "#/definitions/PanelConfiguration" + }, + "XAxis": { + "$ref": "#/definitions/SmallMultiplesAxisProperties" + }, + "YAxis": { + "$ref": "#/definitions/SmallMultiplesAxisProperties" + } + }, + "type": "object" + }, + "SortDirection": { + "enum": [ + "ASC", + "DESC" + ], + "type": "string" + }, + "Spacing": { + "additionalProperties": false, + "properties": { + "Bottom": { + "type": "string" + }, + "Left": { + "type": "string" + }, + "Right": { + "type": "string" + }, + "Top": { + "type": "string" + } + }, + "type": "object" + }, + "SpecialValue": { + "enum": [ + "EMPTY", + "NULL", + "OTHER" + ], + "type": "string" + }, + "StringDefaultValues": { + "additionalProperties": false, + "properties": { + "DynamicValue": { + "$ref": "#/definitions/DynamicDefaultValue" + }, + "StaticValues": { + "items": { + "type": "string" + }, + "maxItems": 50000, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "StringFormatConfiguration": { + "additionalProperties": false, + "properties": { + "NullValueFormatConfiguration": { + "$ref": "#/definitions/NullValueFormatConfiguration" + }, + "NumericFormatConfiguration": { + "$ref": "#/definitions/NumericFormatConfiguration" + } + }, + "type": "object" + }, + "StringParameter": { + "additionalProperties": false, + "properties": { + "Name": { + "pattern": "\\S", + "type": "string" + }, + "Values": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "Name", + "Values" + ], + "type": "object" + }, + "StringParameterDeclaration": { + "additionalProperties": false, + "properties": { + "DefaultValues": { + "$ref": "#/definitions/StringDefaultValues" + }, + "MappedDataSetParameters": { + "items": { + "$ref": "#/definitions/MappedDataSetParameter" + }, + "maxItems": 150, + "minItems": 0, + "type": "array" + }, + "Name": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "ParameterValueType": { + "$ref": "#/definitions/ParameterValueType" + }, + "ValueWhenUnset": { + "$ref": "#/definitions/StringValueWhenUnsetConfiguration" + } + }, + "required": [ + "Name", + "ParameterValueType" + ], + "type": "object" + }, + "StringValueWhenUnsetConfiguration": { + "additionalProperties": false, + "properties": { + "CustomValue": { + "type": "string" + }, + "ValueWhenUnsetOption": { + "$ref": "#/definitions/ValueWhenUnsetOption" + } + }, + "type": "object" + }, + "StyledCellType": { + "enum": [ + "TOTAL", + "METRIC_HEADER", + "VALUE" + ], + "type": "string" + }, + "SubtotalOptions": { + "additionalProperties": false, + "properties": { + "CustomLabel": { + "type": "string" + }, + "FieldLevel": { + "$ref": "#/definitions/PivotTableSubtotalLevel" + }, + "FieldLevelOptions": { + "items": { + "$ref": "#/definitions/PivotTableFieldSubtotalOptions" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + }, + "MetricHeaderCellStyle": { + "$ref": "#/definitions/TableCellStyle" + }, + "StyleTargets": { + "items": { + "$ref": "#/definitions/TableStyleTarget" + }, + "maxItems": 3, + "minItems": 0, + "type": "array" + }, + "TotalCellStyle": { + "$ref": "#/definitions/TableCellStyle" + }, + "TotalsVisibility": { + "$ref": "#/definitions/Visibility" + }, + "ValueCellStyle": { + "$ref": "#/definitions/TableCellStyle" + } + }, + "type": "object" + }, + "TableAggregatedFieldWells": { + "additionalProperties": false, + "properties": { + "GroupBy": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "Values": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "TableBorderOptions": { + "additionalProperties": false, + "properties": { + "Color": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + }, + "Style": { + "$ref": "#/definitions/TableBorderStyle" + }, + "Thickness": { + "maximum": 4, + "minimum": 1, + "type": "number" + } + }, + "type": "object" + }, + "TableBorderStyle": { + "enum": [ + "NONE", + "SOLID" + ], + "type": "string" + }, + "TableCellConditionalFormatting": { + "additionalProperties": false, + "properties": { + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "TextFormat": { + "$ref": "#/definitions/TextConditionalFormat" + } + }, + "required": [ + "FieldId" + ], + "type": "object" + }, + "TableCellImageScalingConfiguration": { + "enum": [ + "FIT_TO_CELL_HEIGHT", + "FIT_TO_CELL_WIDTH", + "DO_NOT_SCALE" + ], + "type": "string" + }, + "TableCellImageSizingConfiguration": { + "additionalProperties": false, + "properties": { + "TableCellImageScalingConfiguration": { + "$ref": "#/definitions/TableCellImageScalingConfiguration" + } + }, + "type": "object" + }, + "TableCellStyle": { + "additionalProperties": false, + "properties": { + "BackgroundColor": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + }, + "Border": { + "$ref": "#/definitions/GlobalTableBorderOptions" + }, + "FontConfiguration": { + "$ref": "#/definitions/FontConfiguration" + }, + "Height": { + "maximum": 500, + "minimum": 8, + "type": "number" + }, + "HorizontalTextAlignment": { + "$ref": "#/definitions/HorizontalTextAlignment" + }, + "TextWrap": { + "$ref": "#/definitions/TextWrap" + }, + "VerticalTextAlignment": { + "$ref": "#/definitions/VerticalTextAlignment" + }, + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "TableConditionalFormatting": { + "additionalProperties": false, + "properties": { + "ConditionalFormattingOptions": { + "items": { + "$ref": "#/definitions/TableConditionalFormattingOption" + }, + "maxItems": 500, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "TableConditionalFormattingOption": { + "additionalProperties": false, + "properties": { + "Cell": { + "$ref": "#/definitions/TableCellConditionalFormatting" + }, + "Row": { + "$ref": "#/definitions/TableRowConditionalFormatting" + } + }, + "type": "object" + }, + "TableConfiguration": { + "additionalProperties": false, + "properties": { + "FieldOptions": { + "$ref": "#/definitions/TableFieldOptions" + }, + "FieldWells": { + "$ref": "#/definitions/TableFieldWells" + }, + "PaginatedReportOptions": { + "$ref": "#/definitions/TablePaginatedReportOptions" + }, + "SortConfiguration": { + "$ref": "#/definitions/TableSortConfiguration" + }, + "TableInlineVisualizations": { + "items": { + "$ref": "#/definitions/TableInlineVisualization" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "TableOptions": { + "$ref": "#/definitions/TableOptions" + }, + "TotalOptions": { + "$ref": "#/definitions/TotalOptions" + } + }, + "type": "object" + }, + "TableFieldCustomIconContent": { + "additionalProperties": false, + "properties": { + "Icon": { + "$ref": "#/definitions/TableFieldIconSetType" + } + }, + "type": "object" + }, + "TableFieldCustomTextContent": { + "additionalProperties": false, + "properties": { + "FontConfiguration": { + "$ref": "#/definitions/FontConfiguration" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "FontConfiguration" + ], + "type": "object" + }, + "TableFieldIconSetType": { + "enum": [ + "LINK" + ], + "type": "string" + }, + "TableFieldImageConfiguration": { + "additionalProperties": false, + "properties": { + "SizingOptions": { + "$ref": "#/definitions/TableCellImageSizingConfiguration" + } + }, + "type": "object" + }, + "TableFieldLinkConfiguration": { + "additionalProperties": false, + "properties": { + "Content": { + "$ref": "#/definitions/TableFieldLinkContentConfiguration" + }, + "Target": { + "$ref": "#/definitions/URLTargetConfiguration" + } + }, + "required": [ + "Content", + "Target" + ], + "type": "object" + }, + "TableFieldLinkContentConfiguration": { + "additionalProperties": false, + "properties": { + "CustomIconContent": { + "$ref": "#/definitions/TableFieldCustomIconContent" + }, + "CustomTextContent": { + "$ref": "#/definitions/TableFieldCustomTextContent" + } + }, + "type": "object" + }, + "TableFieldOption": { + "additionalProperties": false, + "properties": { + "CustomLabel": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "URLStyling": { + "$ref": "#/definitions/TableFieldURLConfiguration" + }, + "Visibility": { + "$ref": "#/definitions/Visibility" + }, + "Width": { + "type": "string" + } + }, + "required": [ + "FieldId" + ], + "type": "object" + }, + "TableFieldOptions": { + "additionalProperties": false, + "properties": { + "Order": { + "items": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "PinnedFieldOptions": { + "$ref": "#/definitions/TablePinnedFieldOptions" + }, + "SelectedFieldOptions": { + "items": { + "$ref": "#/definitions/TableFieldOption" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "TableFieldURLConfiguration": { + "additionalProperties": false, + "properties": { + "ImageConfiguration": { + "$ref": "#/definitions/TableFieldImageConfiguration" + }, + "LinkConfiguration": { + "$ref": "#/definitions/TableFieldLinkConfiguration" + } + }, + "type": "object" + }, + "TableFieldWells": { + "additionalProperties": false, + "properties": { + "TableAggregatedFieldWells": { + "$ref": "#/definitions/TableAggregatedFieldWells" + }, + "TableUnaggregatedFieldWells": { + "$ref": "#/definitions/TableUnaggregatedFieldWells" + } + }, + "type": "object" + }, + "TableInlineVisualization": { + "additionalProperties": false, + "properties": { + "DataBars": { + "$ref": "#/definitions/DataBarsOptions" + } + }, + "type": "object" + }, + "TableOptions": { + "additionalProperties": false, + "properties": { + "CellStyle": { + "$ref": "#/definitions/TableCellStyle" + }, + "HeaderStyle": { + "$ref": "#/definitions/TableCellStyle" + }, + "Orientation": { + "$ref": "#/definitions/TableOrientation" + }, + "RowAlternateColorOptions": { + "$ref": "#/definitions/RowAlternateColorOptions" + } + }, + "type": "object" + }, + "TableOrientation": { + "enum": [ + "VERTICAL", + "HORIZONTAL" + ], + "type": "string" + }, + "TablePaginatedReportOptions": { + "additionalProperties": false, + "properties": { + "OverflowColumnHeaderVisibility": { + "$ref": "#/definitions/Visibility" + }, + "VerticalOverflowVisibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "TablePinnedFieldOptions": { + "additionalProperties": false, + "properties": { + "PinnedLeftFields": { + "items": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "maxItems": 201, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "TableRowConditionalFormatting": { + "additionalProperties": false, + "properties": { + "BackgroundColor": { + "$ref": "#/definitions/ConditionalFormattingColor" + }, + "TextColor": { + "$ref": "#/definitions/ConditionalFormattingColor" + } + }, + "type": "object" + }, + "TableSideBorderOptions": { + "additionalProperties": false, + "properties": { + "Bottom": { + "$ref": "#/definitions/TableBorderOptions" + }, + "InnerHorizontal": { + "$ref": "#/definitions/TableBorderOptions" + }, + "InnerVertical": { + "$ref": "#/definitions/TableBorderOptions" + }, + "Left": { + "$ref": "#/definitions/TableBorderOptions" + }, + "Right": { + "$ref": "#/definitions/TableBorderOptions" + }, + "Top": { + "$ref": "#/definitions/TableBorderOptions" + } + }, + "type": "object" + }, + "TableSortConfiguration": { + "additionalProperties": false, + "properties": { + "PaginationConfiguration": { + "$ref": "#/definitions/PaginationConfiguration" + }, + "RowSort": { + "items": { + "$ref": "#/definitions/FieldSortOptions" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "TableStyleTarget": { + "additionalProperties": false, + "properties": { + "CellType": { + "$ref": "#/definitions/StyledCellType" + } + }, + "required": [ + "CellType" + ], + "type": "object" + }, + "TableTotalsPlacement": { + "enum": [ + "START", + "END", + "AUTO" + ], + "type": "string" + }, + "TableTotalsScrollStatus": { + "enum": [ + "PINNED", + "SCROLLED" + ], + "type": "string" + }, + "TableUnaggregatedFieldWells": { + "additionalProperties": false, + "properties": { + "Values": { + "items": { + "$ref": "#/definitions/UnaggregatedField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "TableVisual": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/VisualCustomAction" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "ChartConfiguration": { + "$ref": "#/definitions/TableConfiguration" + }, + "ConditionalFormatting": { + "$ref": "#/definitions/TableConditionalFormatting" + }, + "Subtitle": { + "$ref": "#/definitions/VisualSubtitleLabelOptions" + }, + "Title": { + "$ref": "#/definitions/VisualTitleLabelOptions" + }, + "VisualId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "VisualId" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "TargetVisualOptions": { + "enum": [ + "ALL_VISUALS" + ], + "type": "string" + }, + "TextAreaControlDisplayOptions": { + "additionalProperties": false, + "properties": { + "InfoIconLabelOptions": { + "$ref": "#/definitions/SheetControlInfoIconLabelOptions" + }, + "PlaceholderOptions": { + "$ref": "#/definitions/TextControlPlaceholderOptions" + }, + "TitleOptions": { + "$ref": "#/definitions/LabelOptions" + } + }, + "type": "object" + }, + "TextConditionalFormat": { + "additionalProperties": false, + "properties": { + "BackgroundColor": { + "$ref": "#/definitions/ConditionalFormattingColor" + }, + "Icon": { + "$ref": "#/definitions/ConditionalFormattingIcon" + }, + "TextColor": { + "$ref": "#/definitions/ConditionalFormattingColor" + } + }, + "type": "object" + }, + "TextControlPlaceholderOptions": { + "additionalProperties": false, + "properties": { + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "TextFieldControlDisplayOptions": { + "additionalProperties": false, + "properties": { + "InfoIconLabelOptions": { + "$ref": "#/definitions/SheetControlInfoIconLabelOptions" + }, + "PlaceholderOptions": { + "$ref": "#/definitions/TextControlPlaceholderOptions" + }, + "TitleOptions": { + "$ref": "#/definitions/LabelOptions" + } + }, + "type": "object" + }, + "TextWrap": { + "enum": [ + "NONE", + "WRAP" + ], + "type": "string" + }, + "ThousandSeparatorOptions": { + "additionalProperties": false, + "properties": { + "Symbol": { + "$ref": "#/definitions/NumericSeparatorSymbol" + }, + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "TimeBasedForecastProperties": { + "additionalProperties": false, + "properties": { + "LowerBoundary": { + "default": null, + "type": "number" + }, + "PeriodsBackward": { + "maximum": 1000, + "minimum": 0, + "type": "number" + }, + "PeriodsForward": { + "maximum": 1000, + "minimum": 1, + "type": "number" + }, + "PredictionInterval": { + "maximum": 95, + "minimum": 50, + "type": "number" + }, + "Seasonality": { + "maximum": 180, + "minimum": 1, + "type": "number" + }, + "UpperBoundary": { + "default": null, + "type": "number" + } + }, + "type": "object" + }, + "TimeEqualityFilter": { + "additionalProperties": false, + "properties": { + "Column": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "DefaultFilterControlConfiguration": { + "$ref": "#/definitions/DefaultFilterControlConfiguration" + }, + "FilterId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "ParameterName": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "RollingDate": { + "$ref": "#/definitions/RollingDateConfiguration" + }, + "TimeGranularity": { + "$ref": "#/definitions/TimeGranularity" + }, + "Value": { + "format": "date-time", + "type": "string" + } + }, + "required": [ + "Column", + "FilterId" + ], + "type": "object" + }, + "TimeGranularity": { + "enum": [ + "YEAR", + "QUARTER", + "MONTH", + "WEEK", + "DAY", + "HOUR", + "MINUTE", + "SECOND", + "MILLISECOND" + ], + "type": "string" + }, + "TimeRangeDrillDownFilter": { + "additionalProperties": false, + "properties": { + "Column": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "RangeMaximum": { + "format": "date-time", + "type": "string" + }, + "RangeMinimum": { + "format": "date-time", + "type": "string" + }, + "TimeGranularity": { + "$ref": "#/definitions/TimeGranularity" + } + }, + "required": [ + "Column", + "RangeMaximum", + "RangeMinimum", + "TimeGranularity" + ], + "type": "object" + }, + "TimeRangeFilter": { + "additionalProperties": false, + "properties": { + "Column": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "DefaultFilterControlConfiguration": { + "$ref": "#/definitions/DefaultFilterControlConfiguration" + }, + "ExcludePeriodConfiguration": { + "$ref": "#/definitions/ExcludePeriodConfiguration" + }, + "FilterId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "IncludeMaximum": { + "default": null, + "type": "boolean" + }, + "IncludeMinimum": { + "default": null, + "type": "boolean" + }, + "NullOption": { + "$ref": "#/definitions/FilterNullOption" + }, + "RangeMaximumValue": { + "$ref": "#/definitions/TimeRangeFilterValue" + }, + "RangeMinimumValue": { + "$ref": "#/definitions/TimeRangeFilterValue" + }, + "TimeGranularity": { + "$ref": "#/definitions/TimeGranularity" + } + }, + "required": [ + "Column", + "FilterId", + "NullOption" + ], + "type": "object" + }, + "TimeRangeFilterValue": { + "additionalProperties": false, + "properties": { + "Parameter": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "RollingDate": { + "$ref": "#/definitions/RollingDateConfiguration" + }, + "StaticValue": { + "format": "date-time", + "type": "string" + } + }, + "type": "object" + }, + "TooltipItem": { + "additionalProperties": false, + "properties": { + "ColumnTooltipItem": { + "$ref": "#/definitions/ColumnTooltipItem" + }, + "FieldTooltipItem": { + "$ref": "#/definitions/FieldTooltipItem" + } + }, + "type": "object" + }, + "TooltipOptions": { + "additionalProperties": false, + "properties": { + "FieldBasedTooltip": { + "$ref": "#/definitions/FieldBasedTooltip" + }, + "SelectedTooltipType": { + "$ref": "#/definitions/SelectedTooltipType" + }, + "TooltipVisibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "TooltipTarget": { + "enum": [ + "BOTH", + "BAR", + "LINE" + ], + "type": "string" + }, + "TooltipTitleType": { + "enum": [ + "NONE", + "PRIMARY_VALUE" + ], + "type": "string" + }, + "TopBottomComputationType": { + "enum": [ + "TOP", + "BOTTOM" + ], + "type": "string" + }, + "TopBottomFilter": { + "additionalProperties": false, + "properties": { + "AggregationSortConfigurations": { + "items": { + "$ref": "#/definitions/AggregationSortConfiguration" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + }, + "Column": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "DefaultFilterControlConfiguration": { + "$ref": "#/definitions/DefaultFilterControlConfiguration" + }, + "FilterId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "Limit": { + "default": null, + "type": "number" + }, + "ParameterName": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "TimeGranularity": { + "$ref": "#/definitions/TimeGranularity" + } + }, + "required": [ + "AggregationSortConfigurations", + "Column", + "FilterId" + ], + "type": "object" + }, + "TopBottomMoversComputation": { + "additionalProperties": false, + "properties": { + "Category": { + "$ref": "#/definitions/DimensionField" + }, + "ComputationId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "MoverSize": { + "default": 0, + "maximum": 20, + "minimum": 1, + "type": "number" + }, + "Name": { + "type": "string" + }, + "SortOrder": { + "$ref": "#/definitions/TopBottomSortOrder" + }, + "Time": { + "$ref": "#/definitions/DimensionField" + }, + "Type": { + "$ref": "#/definitions/TopBottomComputationType" + }, + "Value": { + "$ref": "#/definitions/MeasureField" + } + }, + "required": [ + "ComputationId", + "Type" + ], + "type": "object" + }, + "TopBottomRankedComputation": { + "additionalProperties": false, + "properties": { + "Category": { + "$ref": "#/definitions/DimensionField" + }, + "ComputationId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "Name": { + "type": "string" + }, + "ResultSize": { + "default": 0, + "maximum": 20, + "minimum": 1, + "type": "number" + }, + "Type": { + "$ref": "#/definitions/TopBottomComputationType" + }, + "Value": { + "$ref": "#/definitions/MeasureField" + } + }, + "required": [ + "ComputationId", + "Type" + ], + "type": "object" + }, + "TopBottomSortOrder": { + "enum": [ + "PERCENT_DIFFERENCE", + "ABSOLUTE_DIFFERENCE" + ], + "type": "string" + }, + "TotalAggregationComputation": { + "additionalProperties": false, + "properties": { + "ComputationId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "Name": { + "type": "string" + }, + "Value": { + "$ref": "#/definitions/MeasureField" + } + }, + "required": [ + "ComputationId" + ], + "type": "object" + }, + "TotalAggregationFunction": { + "additionalProperties": false, + "properties": { + "SimpleTotalAggregationFunction": { + "$ref": "#/definitions/SimpleTotalAggregationFunction" + } + }, + "type": "object" + }, + "TotalAggregationOption": { + "additionalProperties": false, + "properties": { + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "TotalAggregationFunction": { + "$ref": "#/definitions/TotalAggregationFunction" + } + }, + "required": [ + "FieldId", + "TotalAggregationFunction" + ], + "type": "object" + }, + "TotalOptions": { + "additionalProperties": false, + "properties": { + "CustomLabel": { + "type": "string" + }, + "Placement": { + "$ref": "#/definitions/TableTotalsPlacement" + }, + "ScrollStatus": { + "$ref": "#/definitions/TableTotalsScrollStatus" + }, + "TotalAggregationOptions": { + "items": { + "$ref": "#/definitions/TotalAggregationOption" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "TotalCellStyle": { + "$ref": "#/definitions/TableCellStyle" + }, + "TotalsVisibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "TreeMapAggregatedFieldWells": { + "additionalProperties": false, + "properties": { + "Colors": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 1, + "minItems": 0, + "type": "array" + }, + "Groups": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 1, + "minItems": 0, + "type": "array" + }, + "Sizes": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 1, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "TreeMapConfiguration": { + "additionalProperties": false, + "properties": { + "ColorLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "ColorScale": { + "$ref": "#/definitions/ColorScale" + }, + "DataLabels": { + "$ref": "#/definitions/DataLabelOptions" + }, + "FieldWells": { + "$ref": "#/definitions/TreeMapFieldWells" + }, + "GroupLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "Legend": { + "$ref": "#/definitions/LegendOptions" + }, + "SizeLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "SortConfiguration": { + "$ref": "#/definitions/TreeMapSortConfiguration" + }, + "Tooltip": { + "$ref": "#/definitions/TooltipOptions" + } + }, + "type": "object" + }, + "TreeMapFieldWells": { + "additionalProperties": false, + "properties": { + "TreeMapAggregatedFieldWells": { + "$ref": "#/definitions/TreeMapAggregatedFieldWells" + } + }, + "type": "object" + }, + "TreeMapSortConfiguration": { + "additionalProperties": false, + "properties": { + "TreeMapGroupItemsLimitConfiguration": { + "$ref": "#/definitions/ItemsLimitConfiguration" + }, + "TreeMapSort": { + "items": { + "$ref": "#/definitions/FieldSortOptions" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "TreeMapVisual": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/VisualCustomAction" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "ChartConfiguration": { + "$ref": "#/definitions/TreeMapConfiguration" + }, + "ColumnHierarchies": { + "items": { + "$ref": "#/definitions/ColumnHierarchy" + }, + "maxItems": 2, + "minItems": 0, + "type": "array" + }, + "Subtitle": { + "$ref": "#/definitions/VisualSubtitleLabelOptions" + }, + "Title": { + "$ref": "#/definitions/VisualTitleLabelOptions" + }, + "VisualId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "VisualId" + ], + "type": "object" + }, + "TrendArrowOptions": { + "additionalProperties": false, + "properties": { + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "URLTargetConfiguration": { + "enum": [ + "NEW_TAB", + "NEW_WINDOW", + "SAME_TAB" + ], + "type": "string" + }, + "UnaggregatedField": { + "additionalProperties": false, + "properties": { + "Column": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "FormatConfiguration": { + "$ref": "#/definitions/FormatConfiguration" + } + }, + "required": [ + "Column", + "FieldId" + ], + "type": "object" + }, + "UniqueValuesComputation": { + "additionalProperties": false, + "properties": { + "Category": { + "$ref": "#/definitions/DimensionField" + }, + "ComputationId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "Name": { + "type": "string" + } + }, + "required": [ + "ComputationId" + ], + "type": "object" + }, + "ValidationStrategy": { + "additionalProperties": false, + "properties": { + "Mode": { + "$ref": "#/definitions/ValidationStrategyMode" + } + }, + "required": [ + "Mode" + ], + "type": "object" + }, + "ValidationStrategyMode": { + "enum": [ + "STRICT", + "LENIENT" + ], + "type": "string" + }, + "ValueWhenUnsetOption": { + "enum": [ + "RECOMMENDED_VALUE", + "NULL" + ], + "type": "string" + }, + "VerticalTextAlignment": { + "enum": [ + "TOP", + "MIDDLE", + "BOTTOM", + "AUTO" + ], + "type": "string" + }, + "Visibility": { + "enum": [ + "HIDDEN", + "VISIBLE" + ], + "type": "string" + }, + "VisibleRangeOptions": { + "additionalProperties": false, + "properties": { + "PercentRange": { + "$ref": "#/definitions/PercentVisibleRange" + } + }, + "type": "object" + }, + "Visual": { + "additionalProperties": false, + "properties": { + "BarChartVisual": { + "$ref": "#/definitions/BarChartVisual" + }, + "BoxPlotVisual": { + "$ref": "#/definitions/BoxPlotVisual" + }, + "ComboChartVisual": { + "$ref": "#/definitions/ComboChartVisual" + }, + "CustomContentVisual": { + "$ref": "#/definitions/CustomContentVisual" + }, + "EmptyVisual": { + "$ref": "#/definitions/EmptyVisual" + }, + "FilledMapVisual": { + "$ref": "#/definitions/FilledMapVisual" + }, + "FunnelChartVisual": { + "$ref": "#/definitions/FunnelChartVisual" + }, + "GaugeChartVisual": { + "$ref": "#/definitions/GaugeChartVisual" + }, + "GeospatialMapVisual": { + "$ref": "#/definitions/GeospatialMapVisual" + }, + "HeatMapVisual": { + "$ref": "#/definitions/HeatMapVisual" + }, + "HistogramVisual": { + "$ref": "#/definitions/HistogramVisual" + }, + "InsightVisual": { + "$ref": "#/definitions/InsightVisual" + }, + "KPIVisual": { + "$ref": "#/definitions/KPIVisual" + }, + "LineChartVisual": { + "$ref": "#/definitions/LineChartVisual" + }, + "PieChartVisual": { + "$ref": "#/definitions/PieChartVisual" + }, + "PivotTableVisual": { + "$ref": "#/definitions/PivotTableVisual" + }, + "RadarChartVisual": { + "$ref": "#/definitions/RadarChartVisual" + }, + "SankeyDiagramVisual": { + "$ref": "#/definitions/SankeyDiagramVisual" + }, + "ScatterPlotVisual": { + "$ref": "#/definitions/ScatterPlotVisual" + }, + "TableVisual": { + "$ref": "#/definitions/TableVisual" + }, + "TreeMapVisual": { + "$ref": "#/definitions/TreeMapVisual" + }, + "WaterfallVisual": { + "$ref": "#/definitions/WaterfallVisual" + }, + "WordCloudVisual": { + "$ref": "#/definitions/WordCloudVisual" + } + }, + "type": "object" + }, + "VisualCustomAction": { + "additionalProperties": false, + "properties": { + "ActionOperations": { + "items": { + "$ref": "#/definitions/VisualCustomActionOperation" + }, + "maxItems": 2, + "minItems": 1, + "type": "array" + }, + "CustomActionId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "Name": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "Status": { + "$ref": "#/definitions/WidgetStatus" + }, + "Trigger": { + "$ref": "#/definitions/VisualCustomActionTrigger" + } + }, + "required": [ + "ActionOperations", + "CustomActionId", + "Name", + "Trigger" + ], + "type": "object" + }, + "VisualCustomActionOperation": { + "additionalProperties": false, + "properties": { + "FilterOperation": { + "$ref": "#/definitions/CustomActionFilterOperation" + }, + "NavigationOperation": { + "$ref": "#/definitions/CustomActionNavigationOperation" + }, + "SetParametersOperation": { + "$ref": "#/definitions/CustomActionSetParametersOperation" + }, + "URLOperation": { + "$ref": "#/definitions/CustomActionURLOperation" + } + }, + "type": "object" + }, + "VisualCustomActionTrigger": { + "enum": [ + "DATA_POINT_CLICK", + "DATA_POINT_MENU" + ], + "type": "string" + }, + "VisualPalette": { + "additionalProperties": false, + "properties": { + "ChartColor": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + }, + "ColorMap": { + "items": { + "$ref": "#/definitions/DataPathColor" + }, + "maxItems": 5000, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "VisualSubtitleLabelOptions": { + "additionalProperties": false, + "properties": { + "FormatText": { + "$ref": "#/definitions/LongFormatText" + }, + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "VisualTitleLabelOptions": { + "additionalProperties": false, + "properties": { + "FormatText": { + "$ref": "#/definitions/ShortFormatText" + }, + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "WaterfallChartAggregatedFieldWells": { + "additionalProperties": false, + "properties": { + "Breakdowns": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "Categories": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "Values": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "WaterfallChartColorConfiguration": { + "additionalProperties": false, + "properties": { + "GroupColorConfiguration": { + "$ref": "#/definitions/WaterfallChartGroupColorConfiguration" + } + }, + "type": "object" + }, + "WaterfallChartConfiguration": { + "additionalProperties": false, + "properties": { + "CategoryAxisDisplayOptions": { + "$ref": "#/definitions/AxisDisplayOptions" + }, + "CategoryAxisLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "ColorConfiguration": { + "$ref": "#/definitions/WaterfallChartColorConfiguration" + }, + "DataLabels": { + "$ref": "#/definitions/DataLabelOptions" + }, + "FieldWells": { + "$ref": "#/definitions/WaterfallChartFieldWells" + }, + "Legend": { + "$ref": "#/definitions/LegendOptions" + }, + "PrimaryYAxisDisplayOptions": { + "$ref": "#/definitions/AxisDisplayOptions" + }, + "PrimaryYAxisLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "SortConfiguration": { + "$ref": "#/definitions/WaterfallChartSortConfiguration" + }, + "VisualPalette": { + "$ref": "#/definitions/VisualPalette" + }, + "WaterfallChartOptions": { + "$ref": "#/definitions/WaterfallChartOptions" + } + }, + "type": "object" + }, + "WaterfallChartFieldWells": { + "additionalProperties": false, + "properties": { + "WaterfallChartAggregatedFieldWells": { + "$ref": "#/definitions/WaterfallChartAggregatedFieldWells" + } + }, + "type": "object" + }, + "WaterfallChartGroupColorConfiguration": { + "additionalProperties": false, + "properties": { + "NegativeBarColor": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + }, + "PositiveBarColor": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + }, + "TotalBarColor": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + } + }, + "type": "object" + }, + "WaterfallChartOptions": { + "additionalProperties": false, + "properties": { + "TotalBarLabel": { + "type": "string" + } + }, + "type": "object" + }, + "WaterfallChartSortConfiguration": { + "additionalProperties": false, + "properties": { + "BreakdownItemsLimit": { + "$ref": "#/definitions/ItemsLimitConfiguration" + }, + "CategorySort": { + "items": { + "$ref": "#/definitions/FieldSortOptions" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "WaterfallVisual": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/VisualCustomAction" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "ChartConfiguration": { + "$ref": "#/definitions/WaterfallChartConfiguration" + }, + "ColumnHierarchies": { + "items": { + "$ref": "#/definitions/ColumnHierarchy" + }, + "maxItems": 2, + "minItems": 0, + "type": "array" + }, + "Subtitle": { + "$ref": "#/definitions/VisualSubtitleLabelOptions" + }, + "Title": { + "$ref": "#/definitions/VisualTitleLabelOptions" + }, + "VisualId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "VisualId" + ], + "type": "object" + }, + "WhatIfPointScenario": { + "additionalProperties": false, + "properties": { + "Date": { + "format": "date-time", + "type": "string" + }, + "Value": { + "default": 0, + "type": "number" + } + }, + "required": [ + "Date", + "Value" + ], + "type": "object" + }, + "WhatIfRangeScenario": { + "additionalProperties": false, + "properties": { + "EndDate": { + "format": "date-time", + "type": "string" + }, + "StartDate": { + "format": "date-time", + "type": "string" + }, + "Value": { + "default": 0, + "type": "number" + } + }, + "required": [ + "EndDate", + "StartDate", + "Value" + ], + "type": "object" + }, + "WidgetStatus": { + "enum": [ + "ENABLED", + "DISABLED" + ], + "type": "string" + }, + "WordCloudAggregatedFieldWells": { + "additionalProperties": false, + "properties": { + "GroupBy": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "Size": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 1, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "WordCloudChartConfiguration": { + "additionalProperties": false, + "properties": { + "CategoryLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "FieldWells": { + "$ref": "#/definitions/WordCloudFieldWells" + }, + "SortConfiguration": { + "$ref": "#/definitions/WordCloudSortConfiguration" + }, + "WordCloudOptions": { + "$ref": "#/definitions/WordCloudOptions" + } + }, + "type": "object" + }, + "WordCloudCloudLayout": { + "enum": [ + "FLUID", + "NORMAL" + ], + "type": "string" + }, + "WordCloudFieldWells": { + "additionalProperties": false, + "properties": { + "WordCloudAggregatedFieldWells": { + "$ref": "#/definitions/WordCloudAggregatedFieldWells" + } + }, + "type": "object" + }, + "WordCloudOptions": { + "additionalProperties": false, + "properties": { + "CloudLayout": { + "$ref": "#/definitions/WordCloudCloudLayout" + }, + "MaximumStringLength": { + "maximum": 100, + "minimum": 1, + "type": "number" + }, + "WordCasing": { + "$ref": "#/definitions/WordCloudWordCasing" + }, + "WordOrientation": { + "$ref": "#/definitions/WordCloudWordOrientation" + }, + "WordPadding": { + "$ref": "#/definitions/WordCloudWordPadding" + }, + "WordScaling": { + "$ref": "#/definitions/WordCloudWordScaling" + } + }, + "type": "object" + }, + "WordCloudSortConfiguration": { + "additionalProperties": false, + "properties": { + "CategoryItemsLimit": { + "$ref": "#/definitions/ItemsLimitConfiguration" + }, + "CategorySort": { + "items": { + "$ref": "#/definitions/FieldSortOptions" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "WordCloudVisual": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/VisualCustomAction" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "ChartConfiguration": { + "$ref": "#/definitions/WordCloudChartConfiguration" + }, + "ColumnHierarchies": { + "items": { + "$ref": "#/definitions/ColumnHierarchy" + }, + "maxItems": 2, + "minItems": 0, + "type": "array" + }, + "Subtitle": { + "$ref": "#/definitions/VisualSubtitleLabelOptions" + }, + "Title": { + "$ref": "#/definitions/VisualTitleLabelOptions" + }, + "VisualId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "VisualId" + ], + "type": "object" + }, + "WordCloudWordCasing": { + "enum": [ + "LOWER_CASE", + "EXISTING_CASE" + ], + "type": "string" + }, + "WordCloudWordOrientation": { + "enum": [ + "HORIZONTAL", + "HORIZONTAL_AND_VERTICAL" + ], + "type": "string" + }, + "WordCloudWordPadding": { + "enum": [ + "NONE", + "SMALL", + "MEDIUM", + "LARGE" + ], + "type": "string" + }, + "WordCloudWordScaling": { + "enum": [ + "EMPHASIZE", + "NORMAL" + ], + "type": "string" + }, + "YAxisOptions": { + "additionalProperties": false, + "properties": { + "YAxis": { + "$ref": "#/definitions/SingleYAxisOption" + } + }, + "required": [ + "YAxis" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/AnalysisId", + "/properties/AwsAccountId" + ], + "properties": { + "AnalysisId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "Arn": { + "type": "string" + }, + "AwsAccountId": { + "maxLength": 12, + "minLength": 12, + "pattern": "^[0-9]{12}$", + "type": "string" + }, + "CreatedTime": { + "format": "date-time", + "type": "string" + }, + "DataSetArns": { + "items": { + "type": "string" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + }, + "Definition": { + "$ref": "#/definitions/AnalysisDefinition" + }, + "Errors": { + "items": { + "$ref": "#/definitions/AnalysisError" + }, + "minItems": 1, + "type": "array" + }, + "FolderArns": { + "items": { + "type": "string" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "LastUpdatedTime": { + "format": "date-time", + "type": "string" + }, + "Name": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Parameters": { + "$ref": "#/definitions/Parameters" + }, + "Permissions": { + "items": { + "$ref": "#/definitions/ResourcePermission" + }, + "maxItems": 64, + "minItems": 1, + "type": "array" + }, + "Sheets": { + "items": { + "$ref": "#/definitions/Sheet" + }, + "maxItems": 20, + "minItems": 0, + "type": "array" + }, + "SourceEntity": { + "$ref": "#/definitions/AnalysisSourceEntity" + }, + "Status": { + "$ref": "#/definitions/ResourceStatus" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 200, + "minItems": 1, + "type": "array" + }, + "ThemeArn": { + "type": "string" + }, + "ValidationStrategy": { + "$ref": "#/definitions/ValidationStrategy" + } + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/CreatedTime", + "/properties/DataSetArns", + "/properties/LastUpdatedTime" + ], + "required": [ + "AwsAccountId", + "AnalysisId", + "Name" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-quicksight", + "typeName": "AWS::QuickSight::Analysis", + "writeOnlyProperties": [ + "/properties/Definition", + "/properties/Parameters", + "/properties/SourceEntity", + "/properties/Status", + "/properties/ValidationStrategy", + "/properties/FolderArns" + ] +} diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/aws-quicksight-dashboard.json b/src/cfnlint/data/schemas/providers/eu_central_1/aws-quicksight-dashboard.json new file mode 100644 index 0000000000..4a1d1d99be --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_1/aws-quicksight-dashboard.json @@ -0,0 +1,11598 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/AwsAccountId", + "/properties/DashboardId" + ], + "definitions": { + "AdHocFilteringOption": { + "additionalProperties": false, + "properties": { + "AvailabilityStatus": { + "$ref": "#/definitions/DashboardBehavior" + } + }, + "type": "object" + }, + "AggregationFunction": { + "additionalProperties": false, + "properties": { + "AttributeAggregationFunction": { + "$ref": "#/definitions/AttributeAggregationFunction" + }, + "CategoricalAggregationFunction": { + "$ref": "#/definitions/CategoricalAggregationFunction" + }, + "DateAggregationFunction": { + "$ref": "#/definitions/DateAggregationFunction" + }, + "NumericalAggregationFunction": { + "$ref": "#/definitions/NumericalAggregationFunction" + } + }, + "type": "object" + }, + "AggregationSortConfiguration": { + "additionalProperties": false, + "properties": { + "AggregationFunction": { + "$ref": "#/definitions/AggregationFunction" + }, + "Column": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "SortDirection": { + "$ref": "#/definitions/SortDirection" + } + }, + "required": [ + "Column", + "SortDirection" + ], + "type": "object" + }, + "AllSheetsFilterScopeConfiguration": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "AnalysisDefaults": { + "additionalProperties": false, + "properties": { + "DefaultNewSheetConfiguration": { + "$ref": "#/definitions/DefaultNewSheetConfiguration" + } + }, + "required": [ + "DefaultNewSheetConfiguration" + ], + "type": "object" + }, + "AnchorDateConfiguration": { + "additionalProperties": false, + "properties": { + "AnchorOption": { + "$ref": "#/definitions/AnchorOption" + }, + "ParameterName": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + } + }, + "type": "object" + }, + "AnchorOption": { + "enum": [ + "NOW" + ], + "type": "string" + }, + "ArcAxisConfiguration": { + "additionalProperties": false, + "properties": { + "Range": { + "$ref": "#/definitions/ArcAxisDisplayRange" + }, + "ReserveRange": { + "default": 0, + "type": "number" + } + }, + "type": "object" + }, + "ArcAxisDisplayRange": { + "additionalProperties": false, + "properties": { + "Max": { + "default": null, + "type": "number" + }, + "Min": { + "default": null, + "type": "number" + } + }, + "type": "object" + }, + "ArcConfiguration": { + "additionalProperties": false, + "properties": { + "ArcAngle": { + "default": null, + "type": "number" + }, + "ArcThickness": { + "$ref": "#/definitions/ArcThicknessOptions" + } + }, + "type": "object" + }, + "ArcOptions": { + "additionalProperties": false, + "properties": { + "ArcThickness": { + "$ref": "#/definitions/ArcThickness" + } + }, + "type": "object" + }, + "ArcThickness": { + "enum": [ + "SMALL", + "MEDIUM", + "LARGE", + "WHOLE" + ], + "type": "string" + }, + "ArcThicknessOptions": { + "enum": [ + "SMALL", + "MEDIUM", + "LARGE" + ], + "type": "string" + }, + "AssetOptions": { + "additionalProperties": false, + "properties": { + "Timezone": { + "type": "string" + }, + "WeekStart": { + "$ref": "#/definitions/DayOfTheWeek" + } + }, + "type": "object" + }, + "AttributeAggregationFunction": { + "additionalProperties": false, + "properties": { + "SimpleAttributeAggregation": { + "$ref": "#/definitions/SimpleAttributeAggregationFunction" + }, + "ValueForMultipleValues": { + "type": "string" + } + }, + "type": "object" + }, + "AxisBinding": { + "enum": [ + "PRIMARY_YAXIS", + "SECONDARY_YAXIS" + ], + "type": "string" + }, + "AxisDataOptions": { + "additionalProperties": false, + "properties": { + "DateAxisOptions": { + "$ref": "#/definitions/DateAxisOptions" + }, + "NumericAxisOptions": { + "$ref": "#/definitions/NumericAxisOptions" + } + }, + "type": "object" + }, + "AxisDisplayDataDrivenRange": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "AxisDisplayMinMaxRange": { + "additionalProperties": false, + "properties": { + "Maximum": { + "default": null, + "type": "number" + }, + "Minimum": { + "default": null, + "type": "number" + } + }, + "type": "object" + }, + "AxisDisplayOptions": { + "additionalProperties": false, + "properties": { + "AxisLineVisibility": { + "$ref": "#/definitions/Visibility" + }, + "AxisOffset": { + "type": "string" + }, + "DataOptions": { + "$ref": "#/definitions/AxisDataOptions" + }, + "GridLineVisibility": { + "$ref": "#/definitions/Visibility" + }, + "ScrollbarOptions": { + "$ref": "#/definitions/ScrollBarOptions" + }, + "TickLabelOptions": { + "$ref": "#/definitions/AxisTickLabelOptions" + } + }, + "type": "object" + }, + "AxisDisplayRange": { + "additionalProperties": false, + "properties": { + "DataDriven": { + "$ref": "#/definitions/AxisDisplayDataDrivenRange" + }, + "MinMax": { + "$ref": "#/definitions/AxisDisplayMinMaxRange" + } + }, + "type": "object" + }, + "AxisLabelOptions": { + "additionalProperties": false, + "properties": { + "ApplyTo": { + "$ref": "#/definitions/AxisLabelReferenceOptions" + }, + "CustomLabel": { + "type": "string" + }, + "FontConfiguration": { + "$ref": "#/definitions/FontConfiguration" + } + }, + "type": "object" + }, + "AxisLabelReferenceOptions": { + "additionalProperties": false, + "properties": { + "Column": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Column", + "FieldId" + ], + "type": "object" + }, + "AxisLinearScale": { + "additionalProperties": false, + "properties": { + "StepCount": { + "default": null, + "type": "number" + }, + "StepSize": { + "default": null, + "type": "number" + } + }, + "type": "object" + }, + "AxisLogarithmicScale": { + "additionalProperties": false, + "properties": { + "Base": { + "default": null, + "type": "number" + } + }, + "type": "object" + }, + "AxisScale": { + "additionalProperties": false, + "properties": { + "Linear": { + "$ref": "#/definitions/AxisLinearScale" + }, + "Logarithmic": { + "$ref": "#/definitions/AxisLogarithmicScale" + } + }, + "type": "object" + }, + "AxisTickLabelOptions": { + "additionalProperties": false, + "properties": { + "LabelOptions": { + "$ref": "#/definitions/LabelOptions" + }, + "RotationAngle": { + "default": null, + "type": "number" + } + }, + "type": "object" + }, + "BarChartAggregatedFieldWells": { + "additionalProperties": false, + "properties": { + "Category": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "Colors": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "SmallMultiples": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 1, + "minItems": 0, + "type": "array" + }, + "Values": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "BarChartConfiguration": { + "additionalProperties": false, + "properties": { + "BarsArrangement": { + "$ref": "#/definitions/BarsArrangement" + }, + "CategoryAxis": { + "$ref": "#/definitions/AxisDisplayOptions" + }, + "CategoryLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "ColorLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "ContributionAnalysisDefaults": { + "items": { + "$ref": "#/definitions/ContributionAnalysisDefault" + }, + "maxItems": 200, + "minItems": 1, + "type": "array" + }, + "DataLabels": { + "$ref": "#/definitions/DataLabelOptions" + }, + "FieldWells": { + "$ref": "#/definitions/BarChartFieldWells" + }, + "Legend": { + "$ref": "#/definitions/LegendOptions" + }, + "Orientation": { + "$ref": "#/definitions/BarChartOrientation" + }, + "ReferenceLines": { + "items": { + "$ref": "#/definitions/ReferenceLine" + }, + "maxItems": 20, + "minItems": 0, + "type": "array" + }, + "SmallMultiplesOptions": { + "$ref": "#/definitions/SmallMultiplesOptions" + }, + "SortConfiguration": { + "$ref": "#/definitions/BarChartSortConfiguration" + }, + "Tooltip": { + "$ref": "#/definitions/TooltipOptions" + }, + "ValueAxis": { + "$ref": "#/definitions/AxisDisplayOptions" + }, + "ValueLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "VisualPalette": { + "$ref": "#/definitions/VisualPalette" + } + }, + "type": "object" + }, + "BarChartFieldWells": { + "additionalProperties": false, + "properties": { + "BarChartAggregatedFieldWells": { + "$ref": "#/definitions/BarChartAggregatedFieldWells" + } + }, + "type": "object" + }, + "BarChartOrientation": { + "enum": [ + "HORIZONTAL", + "VERTICAL" + ], + "type": "string" + }, + "BarChartSortConfiguration": { + "additionalProperties": false, + "properties": { + "CategoryItemsLimit": { + "$ref": "#/definitions/ItemsLimitConfiguration" + }, + "CategorySort": { + "items": { + "$ref": "#/definitions/FieldSortOptions" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + }, + "ColorItemsLimit": { + "$ref": "#/definitions/ItemsLimitConfiguration" + }, + "ColorSort": { + "items": { + "$ref": "#/definitions/FieldSortOptions" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + }, + "SmallMultiplesLimitConfiguration": { + "$ref": "#/definitions/ItemsLimitConfiguration" + }, + "SmallMultiplesSort": { + "items": { + "$ref": "#/definitions/FieldSortOptions" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "BarChartVisual": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/VisualCustomAction" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "ChartConfiguration": { + "$ref": "#/definitions/BarChartConfiguration" + }, + "ColumnHierarchies": { + "items": { + "$ref": "#/definitions/ColumnHierarchy" + }, + "maxItems": 2, + "minItems": 0, + "type": "array" + }, + "Subtitle": { + "$ref": "#/definitions/VisualSubtitleLabelOptions" + }, + "Title": { + "$ref": "#/definitions/VisualTitleLabelOptions" + }, + "VisualId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "VisualId" + ], + "type": "object" + }, + "BarsArrangement": { + "enum": [ + "CLUSTERED", + "STACKED", + "STACKED_PERCENT" + ], + "type": "string" + }, + "BaseMapStyleType": { + "enum": [ + "LIGHT_GRAY", + "DARK_GRAY", + "STREET", + "IMAGERY" + ], + "type": "string" + }, + "BinCountOptions": { + "additionalProperties": false, + "properties": { + "Value": { + "minimum": 0, + "type": "number" + } + }, + "type": "object" + }, + "BinWidthOptions": { + "additionalProperties": false, + "properties": { + "BinCountLimit": { + "maximum": 1000, + "minimum": 0, + "type": "number" + }, + "Value": { + "minimum": 0, + "type": "number" + } + }, + "type": "object" + }, + "BodySectionConfiguration": { + "additionalProperties": false, + "properties": { + "Content": { + "$ref": "#/definitions/BodySectionContent" + }, + "PageBreakConfiguration": { + "$ref": "#/definitions/SectionPageBreakConfiguration" + }, + "SectionId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "Style": { + "$ref": "#/definitions/SectionStyle" + } + }, + "required": [ + "Content", + "SectionId" + ], + "type": "object" + }, + "BodySectionContent": { + "additionalProperties": false, + "properties": { + "Layout": { + "$ref": "#/definitions/SectionLayoutConfiguration" + } + }, + "type": "object" + }, + "BoxPlotAggregatedFieldWells": { + "additionalProperties": false, + "properties": { + "GroupBy": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 1, + "minItems": 0, + "type": "array" + }, + "Values": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 5, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "BoxPlotChartConfiguration": { + "additionalProperties": false, + "properties": { + "BoxPlotOptions": { + "$ref": "#/definitions/BoxPlotOptions" + }, + "CategoryAxis": { + "$ref": "#/definitions/AxisDisplayOptions" + }, + "CategoryLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "FieldWells": { + "$ref": "#/definitions/BoxPlotFieldWells" + }, + "Legend": { + "$ref": "#/definitions/LegendOptions" + }, + "PrimaryYAxisDisplayOptions": { + "$ref": "#/definitions/AxisDisplayOptions" + }, + "PrimaryYAxisLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "ReferenceLines": { + "items": { + "$ref": "#/definitions/ReferenceLine" + }, + "maxItems": 20, + "minItems": 0, + "type": "array" + }, + "SortConfiguration": { + "$ref": "#/definitions/BoxPlotSortConfiguration" + }, + "Tooltip": { + "$ref": "#/definitions/TooltipOptions" + }, + "VisualPalette": { + "$ref": "#/definitions/VisualPalette" + } + }, + "type": "object" + }, + "BoxPlotFieldWells": { + "additionalProperties": false, + "properties": { + "BoxPlotAggregatedFieldWells": { + "$ref": "#/definitions/BoxPlotAggregatedFieldWells" + } + }, + "type": "object" + }, + "BoxPlotFillStyle": { + "enum": [ + "SOLID", + "TRANSPARENT" + ], + "type": "string" + }, + "BoxPlotOptions": { + "additionalProperties": false, + "properties": { + "AllDataPointsVisibility": { + "$ref": "#/definitions/Visibility" + }, + "OutlierVisibility": { + "$ref": "#/definitions/Visibility" + }, + "StyleOptions": { + "$ref": "#/definitions/BoxPlotStyleOptions" + } + }, + "type": "object" + }, + "BoxPlotSortConfiguration": { + "additionalProperties": false, + "properties": { + "CategorySort": { + "items": { + "$ref": "#/definitions/FieldSortOptions" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + }, + "PaginationConfiguration": { + "$ref": "#/definitions/PaginationConfiguration" + } + }, + "type": "object" + }, + "BoxPlotStyleOptions": { + "additionalProperties": false, + "properties": { + "FillStyle": { + "$ref": "#/definitions/BoxPlotFillStyle" + } + }, + "type": "object" + }, + "BoxPlotVisual": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/VisualCustomAction" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "ChartConfiguration": { + "$ref": "#/definitions/BoxPlotChartConfiguration" + }, + "ColumnHierarchies": { + "items": { + "$ref": "#/definitions/ColumnHierarchy" + }, + "maxItems": 2, + "minItems": 0, + "type": "array" + }, + "Subtitle": { + "$ref": "#/definitions/VisualSubtitleLabelOptions" + }, + "Title": { + "$ref": "#/definitions/VisualTitleLabelOptions" + }, + "VisualId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "VisualId" + ], + "type": "object" + }, + "CalculatedField": { + "additionalProperties": false, + "properties": { + "DataSetIdentifier": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Expression": { + "maxLength": 32000, + "minLength": 1, + "type": "string" + }, + "Name": { + "maxLength": 127, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "DataSetIdentifier", + "Expression", + "Name" + ], + "type": "object" + }, + "CalculatedMeasureField": { + "additionalProperties": false, + "properties": { + "Expression": { + "maxLength": 4096, + "minLength": 1, + "type": "string" + }, + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Expression", + "FieldId" + ], + "type": "object" + }, + "CascadingControlConfiguration": { + "additionalProperties": false, + "properties": { + "SourceControls": { + "items": { + "$ref": "#/definitions/CascadingControlSource" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "CascadingControlSource": { + "additionalProperties": false, + "properties": { + "ColumnToMatch": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "SourceSheetControlId": { + "type": "string" + } + }, + "type": "object" + }, + "CategoricalAggregationFunction": { + "enum": [ + "COUNT", + "DISTINCT_COUNT" + ], + "type": "string" + }, + "CategoricalDimensionField": { + "additionalProperties": false, + "properties": { + "Column": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "FormatConfiguration": { + "$ref": "#/definitions/StringFormatConfiguration" + }, + "HierarchyId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Column", + "FieldId" + ], + "type": "object" + }, + "CategoricalMeasureField": { + "additionalProperties": false, + "properties": { + "AggregationFunction": { + "$ref": "#/definitions/CategoricalAggregationFunction" + }, + "Column": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "FormatConfiguration": { + "$ref": "#/definitions/StringFormatConfiguration" + } + }, + "required": [ + "Column", + "FieldId" + ], + "type": "object" + }, + "CategoryDrillDownFilter": { + "additionalProperties": false, + "properties": { + "CategoryValues": { + "items": { + "maxLength": 512, + "minLength": 0, + "type": "string" + }, + "maxItems": 100000, + "minItems": 0, + "type": "array" + }, + "Column": { + "$ref": "#/definitions/ColumnIdentifier" + } + }, + "required": [ + "CategoryValues", + "Column" + ], + "type": "object" + }, + "CategoryFilter": { + "additionalProperties": false, + "properties": { + "Column": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "Configuration": { + "$ref": "#/definitions/CategoryFilterConfiguration" + }, + "DefaultFilterControlConfiguration": { + "$ref": "#/definitions/DefaultFilterControlConfiguration" + }, + "FilterId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "Column", + "Configuration", + "FilterId" + ], + "type": "object" + }, + "CategoryFilterConfiguration": { + "additionalProperties": false, + "properties": { + "CustomFilterConfiguration": { + "$ref": "#/definitions/CustomFilterConfiguration" + }, + "CustomFilterListConfiguration": { + "$ref": "#/definitions/CustomFilterListConfiguration" + }, + "FilterListConfiguration": { + "$ref": "#/definitions/FilterListConfiguration" + } + }, + "type": "object" + }, + "CategoryFilterMatchOperator": { + "enum": [ + "EQUALS", + "DOES_NOT_EQUAL", + "CONTAINS", + "DOES_NOT_CONTAIN", + "STARTS_WITH", + "ENDS_WITH" + ], + "type": "string" + }, + "CategoryFilterSelectAllOptions": { + "enum": [ + "FILTER_ALL_VALUES" + ], + "type": "string" + }, + "CategoryInnerFilter": { + "additionalProperties": false, + "properties": { + "Column": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "Configuration": { + "$ref": "#/definitions/CategoryFilterConfiguration" + }, + "DefaultFilterControlConfiguration": { + "$ref": "#/definitions/DefaultFilterControlConfiguration" + } + }, + "required": [ + "Column", + "Configuration" + ], + "type": "object" + }, + "ChartAxisLabelOptions": { + "additionalProperties": false, + "properties": { + "AxisLabelOptions": { + "items": { + "$ref": "#/definitions/AxisLabelOptions" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + }, + "SortIconVisibility": { + "$ref": "#/definitions/Visibility" + }, + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "ClusterMarker": { + "additionalProperties": false, + "properties": { + "SimpleClusterMarker": { + "$ref": "#/definitions/SimpleClusterMarker" + } + }, + "type": "object" + }, + "ClusterMarkerConfiguration": { + "additionalProperties": false, + "properties": { + "ClusterMarker": { + "$ref": "#/definitions/ClusterMarker" + } + }, + "type": "object" + }, + "ColorFillType": { + "enum": [ + "DISCRETE", + "GRADIENT" + ], + "type": "string" + }, + "ColorScale": { + "additionalProperties": false, + "properties": { + "ColorFillType": { + "$ref": "#/definitions/ColorFillType" + }, + "Colors": { + "items": { + "$ref": "#/definitions/DataColor" + }, + "maxItems": 3, + "minItems": 2, + "type": "array" + }, + "NullValueColor": { + "$ref": "#/definitions/DataColor" + } + }, + "required": [ + "ColorFillType", + "Colors" + ], + "type": "object" + }, + "ColorsConfiguration": { + "additionalProperties": false, + "properties": { + "CustomColors": { + "items": { + "$ref": "#/definitions/CustomColor" + }, + "maxItems": 50, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "ColumnConfiguration": { + "additionalProperties": false, + "properties": { + "ColorsConfiguration": { + "$ref": "#/definitions/ColorsConfiguration" + }, + "Column": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "FormatConfiguration": { + "$ref": "#/definitions/FormatConfiguration" + }, + "Role": { + "$ref": "#/definitions/ColumnRole" + } + }, + "required": [ + "Column" + ], + "type": "object" + }, + "ColumnHierarchy": { + "additionalProperties": false, + "properties": { + "DateTimeHierarchy": { + "$ref": "#/definitions/DateTimeHierarchy" + }, + "ExplicitHierarchy": { + "$ref": "#/definitions/ExplicitHierarchy" + }, + "PredefinedHierarchy": { + "$ref": "#/definitions/PredefinedHierarchy" + } + }, + "type": "object" + }, + "ColumnIdentifier": { + "additionalProperties": false, + "properties": { + "ColumnName": { + "maxLength": 127, + "minLength": 1, + "type": "string" + }, + "DataSetIdentifier": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "ColumnName", + "DataSetIdentifier" + ], + "type": "object" + }, + "ColumnRole": { + "enum": [ + "DIMENSION", + "MEASURE" + ], + "type": "string" + }, + "ColumnSort": { + "additionalProperties": false, + "properties": { + "AggregationFunction": { + "$ref": "#/definitions/AggregationFunction" + }, + "Direction": { + "$ref": "#/definitions/SortDirection" + }, + "SortBy": { + "$ref": "#/definitions/ColumnIdentifier" + } + }, + "required": [ + "Direction", + "SortBy" + ], + "type": "object" + }, + "ColumnTooltipItem": { + "additionalProperties": false, + "properties": { + "Aggregation": { + "$ref": "#/definitions/AggregationFunction" + }, + "Column": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "Label": { + "type": "string" + }, + "TooltipTarget": { + "$ref": "#/definitions/TooltipTarget" + }, + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "required": [ + "Column" + ], + "type": "object" + }, + "ComboChartAggregatedFieldWells": { + "additionalProperties": false, + "properties": { + "BarValues": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "Category": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "Colors": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "LineValues": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "ComboChartConfiguration": { + "additionalProperties": false, + "properties": { + "BarDataLabels": { + "$ref": "#/definitions/DataLabelOptions" + }, + "BarsArrangement": { + "$ref": "#/definitions/BarsArrangement" + }, + "CategoryAxis": { + "$ref": "#/definitions/AxisDisplayOptions" + }, + "CategoryLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "ColorLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "FieldWells": { + "$ref": "#/definitions/ComboChartFieldWells" + }, + "Legend": { + "$ref": "#/definitions/LegendOptions" + }, + "LineDataLabels": { + "$ref": "#/definitions/DataLabelOptions" + }, + "PrimaryYAxisDisplayOptions": { + "$ref": "#/definitions/AxisDisplayOptions" + }, + "PrimaryYAxisLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "ReferenceLines": { + "items": { + "$ref": "#/definitions/ReferenceLine" + }, + "maxItems": 20, + "minItems": 0, + "type": "array" + }, + "SecondaryYAxisDisplayOptions": { + "$ref": "#/definitions/AxisDisplayOptions" + }, + "SecondaryYAxisLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "SingleAxisOptions": { + "$ref": "#/definitions/SingleAxisOptions" + }, + "SortConfiguration": { + "$ref": "#/definitions/ComboChartSortConfiguration" + }, + "Tooltip": { + "$ref": "#/definitions/TooltipOptions" + }, + "VisualPalette": { + "$ref": "#/definitions/VisualPalette" + } + }, + "type": "object" + }, + "ComboChartFieldWells": { + "additionalProperties": false, + "properties": { + "ComboChartAggregatedFieldWells": { + "$ref": "#/definitions/ComboChartAggregatedFieldWells" + } + }, + "type": "object" + }, + "ComboChartSortConfiguration": { + "additionalProperties": false, + "properties": { + "CategoryItemsLimit": { + "$ref": "#/definitions/ItemsLimitConfiguration" + }, + "CategorySort": { + "items": { + "$ref": "#/definitions/FieldSortOptions" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + }, + "ColorItemsLimit": { + "$ref": "#/definitions/ItemsLimitConfiguration" + }, + "ColorSort": { + "items": { + "$ref": "#/definitions/FieldSortOptions" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "ComboChartVisual": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/VisualCustomAction" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "ChartConfiguration": { + "$ref": "#/definitions/ComboChartConfiguration" + }, + "ColumnHierarchies": { + "items": { + "$ref": "#/definitions/ColumnHierarchy" + }, + "maxItems": 2, + "minItems": 0, + "type": "array" + }, + "Subtitle": { + "$ref": "#/definitions/VisualSubtitleLabelOptions" + }, + "Title": { + "$ref": "#/definitions/VisualTitleLabelOptions" + }, + "VisualId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "VisualId" + ], + "type": "object" + }, + "CommitMode": { + "enum": [ + "AUTO", + "MANUAL" + ], + "type": "string" + }, + "ComparisonConfiguration": { + "additionalProperties": false, + "properties": { + "ComparisonFormat": { + "$ref": "#/definitions/ComparisonFormatConfiguration" + }, + "ComparisonMethod": { + "$ref": "#/definitions/ComparisonMethod" + } + }, + "type": "object" + }, + "ComparisonFormatConfiguration": { + "additionalProperties": false, + "properties": { + "NumberDisplayFormatConfiguration": { + "$ref": "#/definitions/NumberDisplayFormatConfiguration" + }, + "PercentageDisplayFormatConfiguration": { + "$ref": "#/definitions/PercentageDisplayFormatConfiguration" + } + }, + "type": "object" + }, + "ComparisonMethod": { + "enum": [ + "DIFFERENCE", + "PERCENT_DIFFERENCE", + "PERCENT" + ], + "type": "string" + }, + "Computation": { + "additionalProperties": false, + "properties": { + "Forecast": { + "$ref": "#/definitions/ForecastComputation" + }, + "GrowthRate": { + "$ref": "#/definitions/GrowthRateComputation" + }, + "MaximumMinimum": { + "$ref": "#/definitions/MaximumMinimumComputation" + }, + "MetricComparison": { + "$ref": "#/definitions/MetricComparisonComputation" + }, + "PeriodOverPeriod": { + "$ref": "#/definitions/PeriodOverPeriodComputation" + }, + "PeriodToDate": { + "$ref": "#/definitions/PeriodToDateComputation" + }, + "TopBottomMovers": { + "$ref": "#/definitions/TopBottomMoversComputation" + }, + "TopBottomRanked": { + "$ref": "#/definitions/TopBottomRankedComputation" + }, + "TotalAggregation": { + "$ref": "#/definitions/TotalAggregationComputation" + }, + "UniqueValues": { + "$ref": "#/definitions/UniqueValuesComputation" + } + }, + "type": "object" + }, + "ConditionalFormattingColor": { + "additionalProperties": false, + "properties": { + "Gradient": { + "$ref": "#/definitions/ConditionalFormattingGradientColor" + }, + "Solid": { + "$ref": "#/definitions/ConditionalFormattingSolidColor" + } + }, + "type": "object" + }, + "ConditionalFormattingCustomIconCondition": { + "additionalProperties": false, + "properties": { + "Color": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + }, + "DisplayConfiguration": { + "$ref": "#/definitions/ConditionalFormattingIconDisplayConfiguration" + }, + "Expression": { + "maxLength": 4096, + "minLength": 1, + "type": "string" + }, + "IconOptions": { + "$ref": "#/definitions/ConditionalFormattingCustomIconOptions" + } + }, + "required": [ + "Expression", + "IconOptions" + ], + "type": "object" + }, + "ConditionalFormattingCustomIconOptions": { + "additionalProperties": false, + "properties": { + "Icon": { + "$ref": "#/definitions/Icon" + }, + "UnicodeIcon": { + "pattern": "^[^\\u0000-\\u00FF]$", + "type": "string" + } + }, + "type": "object" + }, + "ConditionalFormattingGradientColor": { + "additionalProperties": false, + "properties": { + "Color": { + "$ref": "#/definitions/GradientColor" + }, + "Expression": { + "maxLength": 4096, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Color", + "Expression" + ], + "type": "object" + }, + "ConditionalFormattingIcon": { + "additionalProperties": false, + "properties": { + "CustomCondition": { + "$ref": "#/definitions/ConditionalFormattingCustomIconCondition" + }, + "IconSet": { + "$ref": "#/definitions/ConditionalFormattingIconSet" + } + }, + "type": "object" + }, + "ConditionalFormattingIconDisplayConfiguration": { + "additionalProperties": false, + "properties": { + "IconDisplayOption": { + "$ref": "#/definitions/ConditionalFormattingIconDisplayOption" + } + }, + "type": "object" + }, + "ConditionalFormattingIconDisplayOption": { + "enum": [ + "ICON_ONLY" + ], + "type": "string" + }, + "ConditionalFormattingIconSet": { + "additionalProperties": false, + "properties": { + "Expression": { + "maxLength": 4096, + "minLength": 1, + "type": "string" + }, + "IconSetType": { + "$ref": "#/definitions/ConditionalFormattingIconSetType" + } + }, + "required": [ + "Expression" + ], + "type": "object" + }, + "ConditionalFormattingIconSetType": { + "enum": [ + "PLUS_MINUS", + "CHECK_X", + "THREE_COLOR_ARROW", + "THREE_GRAY_ARROW", + "CARET_UP_MINUS_DOWN", + "THREE_SHAPE", + "THREE_CIRCLE", + "FLAGS", + "BARS", + "FOUR_COLOR_ARROW", + "FOUR_GRAY_ARROW" + ], + "type": "string" + }, + "ConditionalFormattingSolidColor": { + "additionalProperties": false, + "properties": { + "Color": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + }, + "Expression": { + "maxLength": 4096, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Expression" + ], + "type": "object" + }, + "ContributionAnalysisDefault": { + "additionalProperties": false, + "properties": { + "ContributorDimensions": { + "items": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "maxItems": 4, + "minItems": 1, + "type": "array" + }, + "MeasureFieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "ContributorDimensions", + "MeasureFieldId" + ], + "type": "object" + }, + "CrossDatasetTypes": { + "enum": [ + "ALL_DATASETS", + "SINGLE_DATASET" + ], + "type": "string" + }, + "CurrencyDisplayFormatConfiguration": { + "additionalProperties": false, + "properties": { + "DecimalPlacesConfiguration": { + "$ref": "#/definitions/DecimalPlacesConfiguration" + }, + "NegativeValueConfiguration": { + "$ref": "#/definitions/NegativeValueConfiguration" + }, + "NullValueFormatConfiguration": { + "$ref": "#/definitions/NullValueFormatConfiguration" + }, + "NumberScale": { + "$ref": "#/definitions/NumberScale" + }, + "Prefix": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "SeparatorConfiguration": { + "$ref": "#/definitions/NumericSeparatorConfiguration" + }, + "Suffix": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Symbol": { + "pattern": "^[A-Z]{3}$", + "type": "string" + } + }, + "type": "object" + }, + "CustomActionFilterOperation": { + "additionalProperties": false, + "properties": { + "SelectedFieldsConfiguration": { + "$ref": "#/definitions/FilterOperationSelectedFieldsConfiguration" + }, + "TargetVisualsConfiguration": { + "$ref": "#/definitions/FilterOperationTargetVisualsConfiguration" + } + }, + "required": [ + "SelectedFieldsConfiguration", + "TargetVisualsConfiguration" + ], + "type": "object" + }, + "CustomActionNavigationOperation": { + "additionalProperties": false, + "properties": { + "LocalNavigationConfiguration": { + "$ref": "#/definitions/LocalNavigationConfiguration" + } + }, + "type": "object" + }, + "CustomActionSetParametersOperation": { + "additionalProperties": false, + "properties": { + "ParameterValueConfigurations": { + "items": { + "$ref": "#/definitions/SetParameterValueConfiguration" + }, + "maxItems": 200, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "ParameterValueConfigurations" + ], + "type": "object" + }, + "CustomActionURLOperation": { + "additionalProperties": false, + "properties": { + "URLTarget": { + "$ref": "#/definitions/URLTargetConfiguration" + }, + "URLTemplate": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "URLTarget", + "URLTemplate" + ], + "type": "object" + }, + "CustomColor": { + "additionalProperties": false, + "properties": { + "Color": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + }, + "FieldValue": { + "maxLength": 2048, + "minLength": 0, + "type": "string" + }, + "SpecialValue": { + "$ref": "#/definitions/SpecialValue" + } + }, + "required": [ + "Color" + ], + "type": "object" + }, + "CustomContentConfiguration": { + "additionalProperties": false, + "properties": { + "ContentType": { + "$ref": "#/definitions/CustomContentType" + }, + "ContentUrl": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "ImageScaling": { + "$ref": "#/definitions/CustomContentImageScalingConfiguration" + } + }, + "type": "object" + }, + "CustomContentImageScalingConfiguration": { + "enum": [ + "FIT_TO_HEIGHT", + "FIT_TO_WIDTH", + "DO_NOT_SCALE", + "SCALE_TO_VISUAL" + ], + "type": "string" + }, + "CustomContentType": { + "enum": [ + "IMAGE", + "OTHER_EMBEDDED_CONTENT" + ], + "type": "string" + }, + "CustomContentVisual": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/VisualCustomAction" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "ChartConfiguration": { + "$ref": "#/definitions/CustomContentConfiguration" + }, + "DataSetIdentifier": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Subtitle": { + "$ref": "#/definitions/VisualSubtitleLabelOptions" + }, + "Title": { + "$ref": "#/definitions/VisualTitleLabelOptions" + }, + "VisualId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "DataSetIdentifier", + "VisualId" + ], + "type": "object" + }, + "CustomFilterConfiguration": { + "additionalProperties": false, + "properties": { + "CategoryValue": { + "maxLength": 512, + "minLength": 0, + "type": "string" + }, + "MatchOperator": { + "$ref": "#/definitions/CategoryFilterMatchOperator" + }, + "NullOption": { + "$ref": "#/definitions/FilterNullOption" + }, + "ParameterName": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "SelectAllOptions": { + "$ref": "#/definitions/CategoryFilterSelectAllOptions" + } + }, + "required": [ + "MatchOperator", + "NullOption" + ], + "type": "object" + }, + "CustomFilterListConfiguration": { + "additionalProperties": false, + "properties": { + "CategoryValues": { + "items": { + "maxLength": 512, + "minLength": 0, + "type": "string" + }, + "maxItems": 100000, + "minItems": 0, + "type": "array" + }, + "MatchOperator": { + "$ref": "#/definitions/CategoryFilterMatchOperator" + }, + "NullOption": { + "$ref": "#/definitions/FilterNullOption" + }, + "SelectAllOptions": { + "$ref": "#/definitions/CategoryFilterSelectAllOptions" + } + }, + "required": [ + "MatchOperator", + "NullOption" + ], + "type": "object" + }, + "CustomNarrativeOptions": { + "additionalProperties": false, + "properties": { + "Narrative": { + "maxLength": 150000, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Narrative" + ], + "type": "object" + }, + "CustomParameterValues": { + "additionalProperties": false, + "properties": { + "DateTimeValues": { + "items": { + "format": "date-time", + "type": "string" + }, + "maxItems": 50000, + "minItems": 0, + "type": "array" + }, + "DecimalValues": { + "items": { + "type": "number" + }, + "maxItems": 50000, + "minItems": 0, + "type": "array" + }, + "IntegerValues": { + "items": { + "type": "number" + }, + "maxItems": 50000, + "minItems": 0, + "type": "array" + }, + "StringValues": { + "items": { + "type": "string" + }, + "maxItems": 50000, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "CustomValuesConfiguration": { + "additionalProperties": false, + "properties": { + "CustomValues": { + "$ref": "#/definitions/CustomParameterValues" + }, + "IncludeNullValue": { + "type": "boolean" + } + }, + "required": [ + "CustomValues" + ], + "type": "object" + }, + "DashboardBehavior": { + "enum": [ + "ENABLED", + "DISABLED" + ], + "type": "string" + }, + "DashboardError": { + "additionalProperties": false, + "properties": { + "Message": { + "pattern": "\\S", + "type": "string" + }, + "Type": { + "$ref": "#/definitions/DashboardErrorType" + }, + "ViolatedEntities": { + "items": { + "$ref": "#/definitions/Entity" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "DashboardErrorType": { + "enum": [ + "ACCESS_DENIED", + "SOURCE_NOT_FOUND", + "DATA_SET_NOT_FOUND", + "INTERNAL_FAILURE", + "PARAMETER_VALUE_INCOMPATIBLE", + "PARAMETER_TYPE_INVALID", + "PARAMETER_NOT_FOUND", + "COLUMN_TYPE_MISMATCH", + "COLUMN_GEOGRAPHIC_ROLE_MISMATCH", + "COLUMN_REPLACEMENT_MISSING" + ], + "type": "string" + }, + "DashboardPublishOptions": { + "additionalProperties": false, + "properties": { + "AdHocFilteringOption": { + "$ref": "#/definitions/AdHocFilteringOption" + }, + "DataPointDrillUpDownOption": { + "$ref": "#/definitions/DataPointDrillUpDownOption" + }, + "DataPointMenuLabelOption": { + "$ref": "#/definitions/DataPointMenuLabelOption" + }, + "DataPointTooltipOption": { + "$ref": "#/definitions/DataPointTooltipOption" + }, + "ExportToCSVOption": { + "$ref": "#/definitions/ExportToCSVOption" + }, + "ExportWithHiddenFieldsOption": { + "$ref": "#/definitions/ExportWithHiddenFieldsOption" + }, + "SheetControlsOption": { + "$ref": "#/definitions/SheetControlsOption" + }, + "SheetLayoutElementMaximizationOption": { + "$ref": "#/definitions/SheetLayoutElementMaximizationOption" + }, + "VisualAxisSortOption": { + "$ref": "#/definitions/VisualAxisSortOption" + }, + "VisualMenuOption": { + "$ref": "#/definitions/VisualMenuOption" + }, + "VisualPublishOptions": { + "$ref": "#/definitions/DashboardVisualPublishOptions" + } + }, + "type": "object" + }, + "DashboardSourceEntity": { + "additionalProperties": false, + "properties": { + "SourceTemplate": { + "$ref": "#/definitions/DashboardSourceTemplate" + } + }, + "type": "object" + }, + "DashboardSourceTemplate": { + "additionalProperties": false, + "properties": { + "Arn": { + "type": "string" + }, + "DataSetReferences": { + "items": { + "$ref": "#/definitions/DataSetReference" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "Arn", + "DataSetReferences" + ], + "type": "object" + }, + "DashboardUIState": { + "enum": [ + "EXPANDED", + "COLLAPSED" + ], + "type": "string" + }, + "DashboardVersion": { + "additionalProperties": false, + "properties": { + "Arn": { + "type": "string" + }, + "CreatedTime": { + "format": "date-time", + "type": "string" + }, + "DataSetArns": { + "items": { + "type": "string" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + }, + "Description": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "Errors": { + "items": { + "$ref": "#/definitions/DashboardError" + }, + "minItems": 1, + "type": "array" + }, + "Sheets": { + "items": { + "$ref": "#/definitions/Sheet" + }, + "maxItems": 20, + "minItems": 0, + "type": "array" + }, + "SourceEntityArn": { + "type": "string" + }, + "Status": { + "$ref": "#/definitions/ResourceStatus" + }, + "ThemeArn": { + "type": "string" + }, + "VersionNumber": { + "minimum": 1, + "type": "number" + } + }, + "type": "object" + }, + "DashboardVersionDefinition": { + "additionalProperties": false, + "properties": { + "AnalysisDefaults": { + "$ref": "#/definitions/AnalysisDefaults" + }, + "CalculatedFields": { + "items": { + "$ref": "#/definitions/CalculatedField" + }, + "maxItems": 500, + "minItems": 0, + "type": "array" + }, + "ColumnConfigurations": { + "items": { + "$ref": "#/definitions/ColumnConfiguration" + }, + "maxItems": 2000, + "minItems": 0, + "type": "array" + }, + "DataSetIdentifierDeclarations": { + "items": { + "$ref": "#/definitions/DataSetIdentifierDeclaration" + }, + "maxItems": 50, + "minItems": 1, + "type": "array" + }, + "FilterGroups": { + "items": { + "$ref": "#/definitions/FilterGroup" + }, + "maxItems": 2000, + "minItems": 0, + "type": "array" + }, + "Options": { + "$ref": "#/definitions/AssetOptions" + }, + "ParameterDeclarations": { + "items": { + "$ref": "#/definitions/ParameterDeclaration" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "Sheets": { + "items": { + "$ref": "#/definitions/SheetDefinition" + }, + "maxItems": 20, + "minItems": 0, + "type": "array" + } + }, + "required": [ + "DataSetIdentifierDeclarations" + ], + "type": "object" + }, + "DashboardVisualPublishOptions": { + "additionalProperties": false, + "properties": { + "ExportHiddenFieldsOption": { + "$ref": "#/definitions/ExportHiddenFieldsOption" + } + }, + "type": "object" + }, + "DataBarsOptions": { + "additionalProperties": false, + "properties": { + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "NegativeColor": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + }, + "PositiveColor": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + } + }, + "required": [ + "FieldId" + ], + "type": "object" + }, + "DataColor": { + "additionalProperties": false, + "properties": { + "Color": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + }, + "DataValue": { + "default": null, + "type": "number" + } + }, + "type": "object" + }, + "DataFieldSeriesItem": { + "additionalProperties": false, + "properties": { + "AxisBinding": { + "$ref": "#/definitions/AxisBinding" + }, + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "FieldValue": { + "type": "string" + }, + "Settings": { + "$ref": "#/definitions/LineChartSeriesSettings" + } + }, + "required": [ + "AxisBinding", + "FieldId" + ], + "type": "object" + }, + "DataLabelContent": { + "enum": [ + "VALUE", + "PERCENT", + "VALUE_AND_PERCENT" + ], + "type": "string" + }, + "DataLabelOptions": { + "additionalProperties": false, + "properties": { + "CategoryLabelVisibility": { + "$ref": "#/definitions/Visibility" + }, + "DataLabelTypes": { + "items": { + "$ref": "#/definitions/DataLabelType" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + }, + "LabelColor": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + }, + "LabelContent": { + "$ref": "#/definitions/DataLabelContent" + }, + "LabelFontConfiguration": { + "$ref": "#/definitions/FontConfiguration" + }, + "MeasureLabelVisibility": { + "$ref": "#/definitions/Visibility" + }, + "Overlap": { + "$ref": "#/definitions/DataLabelOverlap" + }, + "Position": { + "$ref": "#/definitions/DataLabelPosition" + }, + "TotalsVisibility": { + "$ref": "#/definitions/Visibility" + }, + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "DataLabelOverlap": { + "enum": [ + "DISABLE_OVERLAP", + "ENABLE_OVERLAP" + ], + "type": "string" + }, + "DataLabelPosition": { + "enum": [ + "INSIDE", + "OUTSIDE", + "LEFT", + "TOP", + "BOTTOM", + "RIGHT" + ], + "type": "string" + }, + "DataLabelType": { + "additionalProperties": false, + "properties": { + "DataPathLabelType": { + "$ref": "#/definitions/DataPathLabelType" + }, + "FieldLabelType": { + "$ref": "#/definitions/FieldLabelType" + }, + "MaximumLabelType": { + "$ref": "#/definitions/MaximumLabelType" + }, + "MinimumLabelType": { + "$ref": "#/definitions/MinimumLabelType" + }, + "RangeEndsLabelType": { + "$ref": "#/definitions/RangeEndsLabelType" + } + }, + "type": "object" + }, + "DataPathColor": { + "additionalProperties": false, + "properties": { + "Color": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + }, + "Element": { + "$ref": "#/definitions/DataPathValue" + }, + "TimeGranularity": { + "$ref": "#/definitions/TimeGranularity" + } + }, + "required": [ + "Color", + "Element" + ], + "type": "object" + }, + "DataPathLabelType": { + "additionalProperties": false, + "properties": { + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "FieldValue": { + "maxLength": 2048, + "minLength": 0, + "type": "string" + }, + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "DataPathSort": { + "additionalProperties": false, + "properties": { + "Direction": { + "$ref": "#/definitions/SortDirection" + }, + "SortPaths": { + "items": { + "$ref": "#/definitions/DataPathValue" + }, + "maxItems": 20, + "minItems": 0, + "type": "array" + } + }, + "required": [ + "Direction", + "SortPaths" + ], + "type": "object" + }, + "DataPathType": { + "additionalProperties": false, + "properties": { + "PivotTableDataPathType": { + "$ref": "#/definitions/PivotTableDataPathType" + } + }, + "type": "object" + }, + "DataPathValue": { + "additionalProperties": false, + "properties": { + "DataPathType": { + "$ref": "#/definitions/DataPathType" + }, + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "FieldValue": { + "maxLength": 2048, + "minLength": 0, + "type": "string" + } + }, + "type": "object" + }, + "DataPointDrillUpDownOption": { + "additionalProperties": false, + "properties": { + "AvailabilityStatus": { + "$ref": "#/definitions/DashboardBehavior" + } + }, + "type": "object" + }, + "DataPointMenuLabelOption": { + "additionalProperties": false, + "properties": { + "AvailabilityStatus": { + "$ref": "#/definitions/DashboardBehavior" + } + }, + "type": "object" + }, + "DataPointTooltipOption": { + "additionalProperties": false, + "properties": { + "AvailabilityStatus": { + "$ref": "#/definitions/DashboardBehavior" + } + }, + "type": "object" + }, + "DataSetIdentifierDeclaration": { + "additionalProperties": false, + "properties": { + "DataSetArn": { + "type": "string" + }, + "Identifier": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "DataSetArn", + "Identifier" + ], + "type": "object" + }, + "DataSetReference": { + "additionalProperties": false, + "properties": { + "DataSetArn": { + "type": "string" + }, + "DataSetPlaceholder": { + "pattern": "\\S", + "type": "string" + } + }, + "required": [ + "DataSetArn", + "DataSetPlaceholder" + ], + "type": "object" + }, + "DateAggregationFunction": { + "enum": [ + "COUNT", + "DISTINCT_COUNT", + "MIN", + "MAX" + ], + "type": "string" + }, + "DateAxisOptions": { + "additionalProperties": false, + "properties": { + "MissingDateVisibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "DateDimensionField": { + "additionalProperties": false, + "properties": { + "Column": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "DateGranularity": { + "$ref": "#/definitions/TimeGranularity" + }, + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "FormatConfiguration": { + "$ref": "#/definitions/DateTimeFormatConfiguration" + }, + "HierarchyId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Column", + "FieldId" + ], + "type": "object" + }, + "DateMeasureField": { + "additionalProperties": false, + "properties": { + "AggregationFunction": { + "$ref": "#/definitions/DateAggregationFunction" + }, + "Column": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "FormatConfiguration": { + "$ref": "#/definitions/DateTimeFormatConfiguration" + } + }, + "required": [ + "Column", + "FieldId" + ], + "type": "object" + }, + "DateTimeDefaultValues": { + "additionalProperties": false, + "properties": { + "DynamicValue": { + "$ref": "#/definitions/DynamicDefaultValue" + }, + "RollingDate": { + "$ref": "#/definitions/RollingDateConfiguration" + }, + "StaticValues": { + "items": { + "format": "date-time", + "type": "string" + }, + "maxItems": 50000, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "DateTimeFormatConfiguration": { + "additionalProperties": false, + "properties": { + "DateTimeFormat": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "NullValueFormatConfiguration": { + "$ref": "#/definitions/NullValueFormatConfiguration" + }, + "NumericFormatConfiguration": { + "$ref": "#/definitions/NumericFormatConfiguration" + } + }, + "type": "object" + }, + "DateTimeHierarchy": { + "additionalProperties": false, + "properties": { + "DrillDownFilters": { + "items": { + "$ref": "#/definitions/DrillDownFilter" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "HierarchyId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "HierarchyId" + ], + "type": "object" + }, + "DateTimeParameter": { + "additionalProperties": false, + "properties": { + "Name": { + "pattern": "\\S", + "type": "string" + }, + "Values": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "Name", + "Values" + ], + "type": "object" + }, + "DateTimeParameterDeclaration": { + "additionalProperties": false, + "properties": { + "DefaultValues": { + "$ref": "#/definitions/DateTimeDefaultValues" + }, + "MappedDataSetParameters": { + "items": { + "$ref": "#/definitions/MappedDataSetParameter" + }, + "maxItems": 150, + "minItems": 0, + "type": "array" + }, + "Name": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "TimeGranularity": { + "$ref": "#/definitions/TimeGranularity" + }, + "ValueWhenUnset": { + "$ref": "#/definitions/DateTimeValueWhenUnsetConfiguration" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "DateTimePickerControlDisplayOptions": { + "additionalProperties": false, + "properties": { + "DateTimeFormat": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "InfoIconLabelOptions": { + "$ref": "#/definitions/SheetControlInfoIconLabelOptions" + }, + "TitleOptions": { + "$ref": "#/definitions/LabelOptions" + } + }, + "type": "object" + }, + "DateTimeValueWhenUnsetConfiguration": { + "additionalProperties": false, + "properties": { + "CustomValue": { + "format": "date-time", + "type": "string" + }, + "ValueWhenUnsetOption": { + "$ref": "#/definitions/ValueWhenUnsetOption" + } + }, + "type": "object" + }, + "DayOfTheWeek": { + "enum": [ + "SUNDAY", + "MONDAY", + "TUESDAY", + "WEDNESDAY", + "THURSDAY", + "FRIDAY", + "SATURDAY" + ], + "type": "string" + }, + "DecimalDefaultValues": { + "additionalProperties": false, + "properties": { + "DynamicValue": { + "$ref": "#/definitions/DynamicDefaultValue" + }, + "StaticValues": { + "items": { + "type": "number" + }, + "maxItems": 50000, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "DecimalParameter": { + "additionalProperties": false, + "properties": { + "Name": { + "pattern": "\\S", + "type": "string" + }, + "Values": { + "items": { + "default": 0, + "type": "number" + }, + "type": "array" + } + }, + "required": [ + "Name", + "Values" + ], + "type": "object" + }, + "DecimalParameterDeclaration": { + "additionalProperties": false, + "properties": { + "DefaultValues": { + "$ref": "#/definitions/DecimalDefaultValues" + }, + "MappedDataSetParameters": { + "items": { + "$ref": "#/definitions/MappedDataSetParameter" + }, + "maxItems": 150, + "minItems": 0, + "type": "array" + }, + "Name": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "ParameterValueType": { + "$ref": "#/definitions/ParameterValueType" + }, + "ValueWhenUnset": { + "$ref": "#/definitions/DecimalValueWhenUnsetConfiguration" + } + }, + "required": [ + "Name", + "ParameterValueType" + ], + "type": "object" + }, + "DecimalPlacesConfiguration": { + "additionalProperties": false, + "properties": { + "DecimalPlaces": { + "maximum": 20, + "minimum": 0, + "type": "number" + } + }, + "required": [ + "DecimalPlaces" + ], + "type": "object" + }, + "DecimalValueWhenUnsetConfiguration": { + "additionalProperties": false, + "properties": { + "CustomValue": { + "default": null, + "type": "number" + }, + "ValueWhenUnsetOption": { + "$ref": "#/definitions/ValueWhenUnsetOption" + } + }, + "type": "object" + }, + "DefaultDateTimePickerControlOptions": { + "additionalProperties": false, + "properties": { + "CommitMode": { + "$ref": "#/definitions/CommitMode" + }, + "DisplayOptions": { + "$ref": "#/definitions/DateTimePickerControlDisplayOptions" + }, + "Type": { + "$ref": "#/definitions/SheetControlDateTimePickerType" + } + }, + "type": "object" + }, + "DefaultFilterControlConfiguration": { + "additionalProperties": false, + "properties": { + "ControlOptions": { + "$ref": "#/definitions/DefaultFilterControlOptions" + }, + "Title": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "ControlOptions", + "Title" + ], + "type": "object" + }, + "DefaultFilterControlOptions": { + "additionalProperties": false, + "properties": { + "DefaultDateTimePickerOptions": { + "$ref": "#/definitions/DefaultDateTimePickerControlOptions" + }, + "DefaultDropdownOptions": { + "$ref": "#/definitions/DefaultFilterDropDownControlOptions" + }, + "DefaultListOptions": { + "$ref": "#/definitions/DefaultFilterListControlOptions" + }, + "DefaultRelativeDateTimeOptions": { + "$ref": "#/definitions/DefaultRelativeDateTimeControlOptions" + }, + "DefaultSliderOptions": { + "$ref": "#/definitions/DefaultSliderControlOptions" + }, + "DefaultTextAreaOptions": { + "$ref": "#/definitions/DefaultTextAreaControlOptions" + }, + "DefaultTextFieldOptions": { + "$ref": "#/definitions/DefaultTextFieldControlOptions" + } + }, + "type": "object" + }, + "DefaultFilterDropDownControlOptions": { + "additionalProperties": false, + "properties": { + "CommitMode": { + "$ref": "#/definitions/CommitMode" + }, + "DisplayOptions": { + "$ref": "#/definitions/DropDownControlDisplayOptions" + }, + "SelectableValues": { + "$ref": "#/definitions/FilterSelectableValues" + }, + "Type": { + "$ref": "#/definitions/SheetControlListType" + } + }, + "type": "object" + }, + "DefaultFilterListControlOptions": { + "additionalProperties": false, + "properties": { + "DisplayOptions": { + "$ref": "#/definitions/ListControlDisplayOptions" + }, + "SelectableValues": { + "$ref": "#/definitions/FilterSelectableValues" + }, + "Type": { + "$ref": "#/definitions/SheetControlListType" + } + }, + "type": "object" + }, + "DefaultFreeFormLayoutConfiguration": { + "additionalProperties": false, + "properties": { + "CanvasSizeOptions": { + "$ref": "#/definitions/FreeFormLayoutCanvasSizeOptions" + } + }, + "required": [ + "CanvasSizeOptions" + ], + "type": "object" + }, + "DefaultGridLayoutConfiguration": { + "additionalProperties": false, + "properties": { + "CanvasSizeOptions": { + "$ref": "#/definitions/GridLayoutCanvasSizeOptions" + } + }, + "required": [ + "CanvasSizeOptions" + ], + "type": "object" + }, + "DefaultInteractiveLayoutConfiguration": { + "additionalProperties": false, + "properties": { + "FreeForm": { + "$ref": "#/definitions/DefaultFreeFormLayoutConfiguration" + }, + "Grid": { + "$ref": "#/definitions/DefaultGridLayoutConfiguration" + } + }, + "type": "object" + }, + "DefaultNewSheetConfiguration": { + "additionalProperties": false, + "properties": { + "InteractiveLayoutConfiguration": { + "$ref": "#/definitions/DefaultInteractiveLayoutConfiguration" + }, + "PaginatedLayoutConfiguration": { + "$ref": "#/definitions/DefaultPaginatedLayoutConfiguration" + }, + "SheetContentType": { + "$ref": "#/definitions/SheetContentType" + } + }, + "type": "object" + }, + "DefaultPaginatedLayoutConfiguration": { + "additionalProperties": false, + "properties": { + "SectionBased": { + "$ref": "#/definitions/DefaultSectionBasedLayoutConfiguration" + } + }, + "type": "object" + }, + "DefaultRelativeDateTimeControlOptions": { + "additionalProperties": false, + "properties": { + "CommitMode": { + "$ref": "#/definitions/CommitMode" + }, + "DisplayOptions": { + "$ref": "#/definitions/RelativeDateTimeControlDisplayOptions" + } + }, + "type": "object" + }, + "DefaultSectionBasedLayoutConfiguration": { + "additionalProperties": false, + "properties": { + "CanvasSizeOptions": { + "$ref": "#/definitions/SectionBasedLayoutCanvasSizeOptions" + } + }, + "required": [ + "CanvasSizeOptions" + ], + "type": "object" + }, + "DefaultSliderControlOptions": { + "additionalProperties": false, + "properties": { + "DisplayOptions": { + "$ref": "#/definitions/SliderControlDisplayOptions" + }, + "MaximumValue": { + "default": 0, + "type": "number" + }, + "MinimumValue": { + "default": 0, + "type": "number" + }, + "StepSize": { + "default": 0, + "type": "number" + }, + "Type": { + "$ref": "#/definitions/SheetControlSliderType" + } + }, + "required": [ + "MaximumValue", + "MinimumValue", + "StepSize" + ], + "type": "object" + }, + "DefaultTextAreaControlOptions": { + "additionalProperties": false, + "properties": { + "Delimiter": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "DisplayOptions": { + "$ref": "#/definitions/TextAreaControlDisplayOptions" + } + }, + "type": "object" + }, + "DefaultTextFieldControlOptions": { + "additionalProperties": false, + "properties": { + "DisplayOptions": { + "$ref": "#/definitions/TextFieldControlDisplayOptions" + } + }, + "type": "object" + }, + "DestinationParameterValueConfiguration": { + "additionalProperties": false, + "properties": { + "CustomValuesConfiguration": { + "$ref": "#/definitions/CustomValuesConfiguration" + }, + "SelectAllValueOptions": { + "$ref": "#/definitions/SelectAllValueOptions" + }, + "SourceColumn": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "SourceField": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "SourceParameterName": { + "type": "string" + } + }, + "type": "object" + }, + "DimensionField": { + "additionalProperties": false, + "properties": { + "CategoricalDimensionField": { + "$ref": "#/definitions/CategoricalDimensionField" + }, + "DateDimensionField": { + "$ref": "#/definitions/DateDimensionField" + }, + "NumericalDimensionField": { + "$ref": "#/definitions/NumericalDimensionField" + } + }, + "type": "object" + }, + "DonutCenterOptions": { + "additionalProperties": false, + "properties": { + "LabelVisibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "DonutOptions": { + "additionalProperties": false, + "properties": { + "ArcOptions": { + "$ref": "#/definitions/ArcOptions" + }, + "DonutCenterOptions": { + "$ref": "#/definitions/DonutCenterOptions" + } + }, + "type": "object" + }, + "DrillDownFilter": { + "additionalProperties": false, + "properties": { + "CategoryFilter": { + "$ref": "#/definitions/CategoryDrillDownFilter" + }, + "NumericEqualityFilter": { + "$ref": "#/definitions/NumericEqualityDrillDownFilter" + }, + "TimeRangeFilter": { + "$ref": "#/definitions/TimeRangeDrillDownFilter" + } + }, + "type": "object" + }, + "DropDownControlDisplayOptions": { + "additionalProperties": false, + "properties": { + "InfoIconLabelOptions": { + "$ref": "#/definitions/SheetControlInfoIconLabelOptions" + }, + "SelectAllOptions": { + "$ref": "#/definitions/ListControlSelectAllOptions" + }, + "TitleOptions": { + "$ref": "#/definitions/LabelOptions" + } + }, + "type": "object" + }, + "DynamicDefaultValue": { + "additionalProperties": false, + "properties": { + "DefaultValueColumn": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "GroupNameColumn": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "UserNameColumn": { + "$ref": "#/definitions/ColumnIdentifier" + } + }, + "required": [ + "DefaultValueColumn" + ], + "type": "object" + }, + "EmptyVisual": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/VisualCustomAction" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "DataSetIdentifier": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "VisualId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "DataSetIdentifier", + "VisualId" + ], + "type": "object" + }, + "Entity": { + "additionalProperties": false, + "properties": { + "Path": { + "pattern": "\\S", + "type": "string" + } + }, + "type": "object" + }, + "ExcludePeriodConfiguration": { + "additionalProperties": false, + "properties": { + "Amount": { + "default": null, + "type": "number" + }, + "Granularity": { + "$ref": "#/definitions/TimeGranularity" + }, + "Status": { + "$ref": "#/definitions/WidgetStatus" + } + }, + "required": [ + "Amount", + "Granularity" + ], + "type": "object" + }, + "ExplicitHierarchy": { + "additionalProperties": false, + "properties": { + "Columns": { + "items": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "maxItems": 10, + "minItems": 2, + "type": "array" + }, + "DrillDownFilters": { + "items": { + "$ref": "#/definitions/DrillDownFilter" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "HierarchyId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Columns", + "HierarchyId" + ], + "type": "object" + }, + "ExportHiddenFieldsOption": { + "additionalProperties": false, + "properties": { + "AvailabilityStatus": { + "$ref": "#/definitions/DashboardBehavior" + } + }, + "type": "object" + }, + "ExportToCSVOption": { + "additionalProperties": false, + "properties": { + "AvailabilityStatus": { + "$ref": "#/definitions/DashboardBehavior" + } + }, + "type": "object" + }, + "ExportWithHiddenFieldsOption": { + "additionalProperties": false, + "properties": { + "AvailabilityStatus": { + "$ref": "#/definitions/DashboardBehavior" + } + }, + "type": "object" + }, + "FieldBasedTooltip": { + "additionalProperties": false, + "properties": { + "AggregationVisibility": { + "$ref": "#/definitions/Visibility" + }, + "TooltipFields": { + "items": { + "$ref": "#/definitions/TooltipItem" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + }, + "TooltipTitleType": { + "$ref": "#/definitions/TooltipTitleType" + } + }, + "type": "object" + }, + "FieldLabelType": { + "additionalProperties": false, + "properties": { + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "FieldSeriesItem": { + "additionalProperties": false, + "properties": { + "AxisBinding": { + "$ref": "#/definitions/AxisBinding" + }, + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "Settings": { + "$ref": "#/definitions/LineChartSeriesSettings" + } + }, + "required": [ + "AxisBinding", + "FieldId" + ], + "type": "object" + }, + "FieldSort": { + "additionalProperties": false, + "properties": { + "Direction": { + "$ref": "#/definitions/SortDirection" + }, + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Direction", + "FieldId" + ], + "type": "object" + }, + "FieldSortOptions": { + "additionalProperties": false, + "properties": { + "ColumnSort": { + "$ref": "#/definitions/ColumnSort" + }, + "FieldSort": { + "$ref": "#/definitions/FieldSort" + } + }, + "type": "object" + }, + "FieldTooltipItem": { + "additionalProperties": false, + "properties": { + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "Label": { + "type": "string" + }, + "TooltipTarget": { + "$ref": "#/definitions/TooltipTarget" + }, + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "required": [ + "FieldId" + ], + "type": "object" + }, + "FilledMapAggregatedFieldWells": { + "additionalProperties": false, + "properties": { + "Geospatial": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 1, + "minItems": 0, + "type": "array" + }, + "Values": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 1, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "FilledMapConditionalFormatting": { + "additionalProperties": false, + "properties": { + "ConditionalFormattingOptions": { + "items": { + "$ref": "#/definitions/FilledMapConditionalFormattingOption" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + } + }, + "required": [ + "ConditionalFormattingOptions" + ], + "type": "object" + }, + "FilledMapConditionalFormattingOption": { + "additionalProperties": false, + "properties": { + "Shape": { + "$ref": "#/definitions/FilledMapShapeConditionalFormatting" + } + }, + "required": [ + "Shape" + ], + "type": "object" + }, + "FilledMapConfiguration": { + "additionalProperties": false, + "properties": { + "FieldWells": { + "$ref": "#/definitions/FilledMapFieldWells" + }, + "Legend": { + "$ref": "#/definitions/LegendOptions" + }, + "MapStyleOptions": { + "$ref": "#/definitions/GeospatialMapStyleOptions" + }, + "SortConfiguration": { + "$ref": "#/definitions/FilledMapSortConfiguration" + }, + "Tooltip": { + "$ref": "#/definitions/TooltipOptions" + }, + "WindowOptions": { + "$ref": "#/definitions/GeospatialWindowOptions" + } + }, + "type": "object" + }, + "FilledMapFieldWells": { + "additionalProperties": false, + "properties": { + "FilledMapAggregatedFieldWells": { + "$ref": "#/definitions/FilledMapAggregatedFieldWells" + } + }, + "type": "object" + }, + "FilledMapShapeConditionalFormatting": { + "additionalProperties": false, + "properties": { + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "Format": { + "$ref": "#/definitions/ShapeConditionalFormat" + } + }, + "required": [ + "FieldId" + ], + "type": "object" + }, + "FilledMapSortConfiguration": { + "additionalProperties": false, + "properties": { + "CategorySort": { + "items": { + "$ref": "#/definitions/FieldSortOptions" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "FilledMapVisual": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/VisualCustomAction" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "ChartConfiguration": { + "$ref": "#/definitions/FilledMapConfiguration" + }, + "ColumnHierarchies": { + "items": { + "$ref": "#/definitions/ColumnHierarchy" + }, + "maxItems": 2, + "minItems": 0, + "type": "array" + }, + "ConditionalFormatting": { + "$ref": "#/definitions/FilledMapConditionalFormatting" + }, + "Subtitle": { + "$ref": "#/definitions/VisualSubtitleLabelOptions" + }, + "Title": { + "$ref": "#/definitions/VisualTitleLabelOptions" + }, + "VisualId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "VisualId" + ], + "type": "object" + }, + "Filter": { + "additionalProperties": false, + "properties": { + "CategoryFilter": { + "$ref": "#/definitions/CategoryFilter" + }, + "NestedFilter": { + "$ref": "#/definitions/NestedFilter" + }, + "NumericEqualityFilter": { + "$ref": "#/definitions/NumericEqualityFilter" + }, + "NumericRangeFilter": { + "$ref": "#/definitions/NumericRangeFilter" + }, + "RelativeDatesFilter": { + "$ref": "#/definitions/RelativeDatesFilter" + }, + "TimeEqualityFilter": { + "$ref": "#/definitions/TimeEqualityFilter" + }, + "TimeRangeFilter": { + "$ref": "#/definitions/TimeRangeFilter" + }, + "TopBottomFilter": { + "$ref": "#/definitions/TopBottomFilter" + } + }, + "type": "object" + }, + "FilterControl": { + "additionalProperties": false, + "properties": { + "CrossSheet": { + "$ref": "#/definitions/FilterCrossSheetControl" + }, + "DateTimePicker": { + "$ref": "#/definitions/FilterDateTimePickerControl" + }, + "Dropdown": { + "$ref": "#/definitions/FilterDropDownControl" + }, + "List": { + "$ref": "#/definitions/FilterListControl" + }, + "RelativeDateTime": { + "$ref": "#/definitions/FilterRelativeDateTimeControl" + }, + "Slider": { + "$ref": "#/definitions/FilterSliderControl" + }, + "TextArea": { + "$ref": "#/definitions/FilterTextAreaControl" + }, + "TextField": { + "$ref": "#/definitions/FilterTextFieldControl" + } + }, + "type": "object" + }, + "FilterCrossSheetControl": { + "additionalProperties": false, + "properties": { + "CascadingControlConfiguration": { + "$ref": "#/definitions/CascadingControlConfiguration" + }, + "FilterControlId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "SourceFilterId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "FilterControlId", + "SourceFilterId" + ], + "type": "object" + }, + "FilterDateTimePickerControl": { + "additionalProperties": false, + "properties": { + "CommitMode": { + "$ref": "#/definitions/CommitMode" + }, + "DisplayOptions": { + "$ref": "#/definitions/DateTimePickerControlDisplayOptions" + }, + "FilterControlId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "SourceFilterId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "Title": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Type": { + "$ref": "#/definitions/SheetControlDateTimePickerType" + } + }, + "required": [ + "FilterControlId", + "SourceFilterId", + "Title" + ], + "type": "object" + }, + "FilterDropDownControl": { + "additionalProperties": false, + "properties": { + "CascadingControlConfiguration": { + "$ref": "#/definitions/CascadingControlConfiguration" + }, + "CommitMode": { + "$ref": "#/definitions/CommitMode" + }, + "DisplayOptions": { + "$ref": "#/definitions/DropDownControlDisplayOptions" + }, + "FilterControlId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "SelectableValues": { + "$ref": "#/definitions/FilterSelectableValues" + }, + "SourceFilterId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "Title": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Type": { + "$ref": "#/definitions/SheetControlListType" + } + }, + "required": [ + "FilterControlId", + "SourceFilterId", + "Title" + ], + "type": "object" + }, + "FilterGroup": { + "additionalProperties": false, + "properties": { + "CrossDataset": { + "$ref": "#/definitions/CrossDatasetTypes" + }, + "FilterGroupId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "Filters": { + "items": { + "$ref": "#/definitions/Filter" + }, + "maxItems": 20, + "minItems": 0, + "type": "array" + }, + "ScopeConfiguration": { + "$ref": "#/definitions/FilterScopeConfiguration" + }, + "Status": { + "$ref": "#/definitions/WidgetStatus" + } + }, + "required": [ + "CrossDataset", + "FilterGroupId", + "Filters", + "ScopeConfiguration" + ], + "type": "object" + }, + "FilterListConfiguration": { + "additionalProperties": false, + "properties": { + "CategoryValues": { + "items": { + "maxLength": 512, + "minLength": 0, + "type": "string" + }, + "maxItems": 100000, + "minItems": 0, + "type": "array" + }, + "MatchOperator": { + "$ref": "#/definitions/CategoryFilterMatchOperator" + }, + "NullOption": { + "$ref": "#/definitions/FilterNullOption" + }, + "SelectAllOptions": { + "$ref": "#/definitions/CategoryFilterSelectAllOptions" + } + }, + "required": [ + "MatchOperator" + ], + "type": "object" + }, + "FilterListControl": { + "additionalProperties": false, + "properties": { + "CascadingControlConfiguration": { + "$ref": "#/definitions/CascadingControlConfiguration" + }, + "DisplayOptions": { + "$ref": "#/definitions/ListControlDisplayOptions" + }, + "FilterControlId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "SelectableValues": { + "$ref": "#/definitions/FilterSelectableValues" + }, + "SourceFilterId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "Title": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Type": { + "$ref": "#/definitions/SheetControlListType" + } + }, + "required": [ + "FilterControlId", + "SourceFilterId", + "Title" + ], + "type": "object" + }, + "FilterNullOption": { + "enum": [ + "ALL_VALUES", + "NULLS_ONLY", + "NON_NULLS_ONLY" + ], + "type": "string" + }, + "FilterOperationSelectedFieldsConfiguration": { + "additionalProperties": false, + "properties": { + "SelectedColumns": { + "items": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "SelectedFieldOptions": { + "$ref": "#/definitions/SelectedFieldOptions" + }, + "SelectedFields": { + "items": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "maxItems": 20, + "minItems": 1, + "type": "array" + } + }, + "type": "object" + }, + "FilterOperationTargetVisualsConfiguration": { + "additionalProperties": false, + "properties": { + "SameSheetTargetVisualConfiguration": { + "$ref": "#/definitions/SameSheetTargetVisualConfiguration" + } + }, + "type": "object" + }, + "FilterRelativeDateTimeControl": { + "additionalProperties": false, + "properties": { + "CommitMode": { + "$ref": "#/definitions/CommitMode" + }, + "DisplayOptions": { + "$ref": "#/definitions/RelativeDateTimeControlDisplayOptions" + }, + "FilterControlId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "SourceFilterId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "Title": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "FilterControlId", + "SourceFilterId", + "Title" + ], + "type": "object" + }, + "FilterScopeConfiguration": { + "additionalProperties": false, + "properties": { + "AllSheets": { + "$ref": "#/definitions/AllSheetsFilterScopeConfiguration" + }, + "SelectedSheets": { + "$ref": "#/definitions/SelectedSheetsFilterScopeConfiguration" + } + }, + "type": "object" + }, + "FilterSelectableValues": { + "additionalProperties": false, + "properties": { + "Values": { + "items": { + "type": "string" + }, + "maxItems": 50000, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "FilterSliderControl": { + "additionalProperties": false, + "properties": { + "DisplayOptions": { + "$ref": "#/definitions/SliderControlDisplayOptions" + }, + "FilterControlId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "MaximumValue": { + "default": 0, + "type": "number" + }, + "MinimumValue": { + "default": 0, + "type": "number" + }, + "SourceFilterId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "StepSize": { + "default": 0, + "type": "number" + }, + "Title": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Type": { + "$ref": "#/definitions/SheetControlSliderType" + } + }, + "required": [ + "FilterControlId", + "MaximumValue", + "MinimumValue", + "SourceFilterId", + "StepSize", + "Title" + ], + "type": "object" + }, + "FilterTextAreaControl": { + "additionalProperties": false, + "properties": { + "Delimiter": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "DisplayOptions": { + "$ref": "#/definitions/TextAreaControlDisplayOptions" + }, + "FilterControlId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "SourceFilterId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "Title": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "FilterControlId", + "SourceFilterId", + "Title" + ], + "type": "object" + }, + "FilterTextFieldControl": { + "additionalProperties": false, + "properties": { + "DisplayOptions": { + "$ref": "#/definitions/TextFieldControlDisplayOptions" + }, + "FilterControlId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "SourceFilterId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "Title": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "FilterControlId", + "SourceFilterId", + "Title" + ], + "type": "object" + }, + "FilterVisualScope": { + "enum": [ + "ALL_VISUALS", + "SELECTED_VISUALS" + ], + "type": "string" + }, + "FontConfiguration": { + "additionalProperties": false, + "properties": { + "FontColor": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + }, + "FontDecoration": { + "$ref": "#/definitions/FontDecoration" + }, + "FontSize": { + "$ref": "#/definitions/FontSize" + }, + "FontStyle": { + "$ref": "#/definitions/FontStyle" + }, + "FontWeight": { + "$ref": "#/definitions/FontWeight" + } + }, + "type": "object" + }, + "FontDecoration": { + "enum": [ + "UNDERLINE", + "NONE" + ], + "type": "string" + }, + "FontSize": { + "additionalProperties": false, + "properties": { + "Relative": { + "$ref": "#/definitions/RelativeFontSize" + } + }, + "type": "object" + }, + "FontStyle": { + "enum": [ + "NORMAL", + "ITALIC" + ], + "type": "string" + }, + "FontWeight": { + "additionalProperties": false, + "properties": { + "Name": { + "$ref": "#/definitions/FontWeightName" + } + }, + "type": "object" + }, + "FontWeightName": { + "enum": [ + "NORMAL", + "BOLD" + ], + "type": "string" + }, + "ForecastComputation": { + "additionalProperties": false, + "properties": { + "ComputationId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "CustomSeasonalityValue": { + "default": null, + "maximum": 180, + "minimum": 1, + "type": "number" + }, + "LowerBoundary": { + "default": null, + "type": "number" + }, + "Name": { + "type": "string" + }, + "PeriodsBackward": { + "maximum": 1000, + "minimum": 0, + "type": "number" + }, + "PeriodsForward": { + "maximum": 1000, + "minimum": 1, + "type": "number" + }, + "PredictionInterval": { + "maximum": 95, + "minimum": 50, + "type": "number" + }, + "Seasonality": { + "$ref": "#/definitions/ForecastComputationSeasonality" + }, + "Time": { + "$ref": "#/definitions/DimensionField" + }, + "UpperBoundary": { + "default": null, + "type": "number" + }, + "Value": { + "$ref": "#/definitions/MeasureField" + } + }, + "required": [ + "ComputationId" + ], + "type": "object" + }, + "ForecastComputationSeasonality": { + "enum": [ + "AUTOMATIC", + "CUSTOM" + ], + "type": "string" + }, + "ForecastConfiguration": { + "additionalProperties": false, + "properties": { + "ForecastProperties": { + "$ref": "#/definitions/TimeBasedForecastProperties" + }, + "Scenario": { + "$ref": "#/definitions/ForecastScenario" + } + }, + "type": "object" + }, + "ForecastScenario": { + "additionalProperties": false, + "properties": { + "WhatIfPointScenario": { + "$ref": "#/definitions/WhatIfPointScenario" + }, + "WhatIfRangeScenario": { + "$ref": "#/definitions/WhatIfRangeScenario" + } + }, + "type": "object" + }, + "FormatConfiguration": { + "additionalProperties": false, + "properties": { + "DateTimeFormatConfiguration": { + "$ref": "#/definitions/DateTimeFormatConfiguration" + }, + "NumberFormatConfiguration": { + "$ref": "#/definitions/NumberFormatConfiguration" + }, + "StringFormatConfiguration": { + "$ref": "#/definitions/StringFormatConfiguration" + } + }, + "type": "object" + }, + "FreeFormLayoutCanvasSizeOptions": { + "additionalProperties": false, + "properties": { + "ScreenCanvasSizeOptions": { + "$ref": "#/definitions/FreeFormLayoutScreenCanvasSizeOptions" + } + }, + "type": "object" + }, + "FreeFormLayoutConfiguration": { + "additionalProperties": false, + "properties": { + "CanvasSizeOptions": { + "$ref": "#/definitions/FreeFormLayoutCanvasSizeOptions" + }, + "Elements": { + "items": { + "$ref": "#/definitions/FreeFormLayoutElement" + }, + "maxItems": 430, + "minItems": 0, + "type": "array" + } + }, + "required": [ + "Elements" + ], + "type": "object" + }, + "FreeFormLayoutElement": { + "additionalProperties": false, + "properties": { + "BackgroundStyle": { + "$ref": "#/definitions/FreeFormLayoutElementBackgroundStyle" + }, + "BorderStyle": { + "$ref": "#/definitions/FreeFormLayoutElementBorderStyle" + }, + "ElementId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "ElementType": { + "$ref": "#/definitions/LayoutElementType" + }, + "Height": { + "type": "string" + }, + "LoadingAnimation": { + "$ref": "#/definitions/LoadingAnimation" + }, + "RenderingRules": { + "items": { + "$ref": "#/definitions/SheetElementRenderingRule" + }, + "maxItems": 10000, + "minItems": 0, + "type": "array" + }, + "SelectedBorderStyle": { + "$ref": "#/definitions/FreeFormLayoutElementBorderStyle" + }, + "Visibility": { + "$ref": "#/definitions/Visibility" + }, + "Width": { + "type": "string" + }, + "XAxisLocation": { + "type": "string" + }, + "YAxisLocation": { + "type": "string" + } + }, + "required": [ + "ElementId", + "ElementType", + "Height", + "Width", + "XAxisLocation", + "YAxisLocation" + ], + "type": "object" + }, + "FreeFormLayoutElementBackgroundStyle": { + "additionalProperties": false, + "properties": { + "Color": { + "pattern": "^#[A-F0-9]{6}(?:[A-F0-9]{2})?$", + "type": "string" + }, + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "FreeFormLayoutElementBorderStyle": { + "additionalProperties": false, + "properties": { + "Color": { + "pattern": "^#[A-F0-9]{6}(?:[A-F0-9]{2})?$", + "type": "string" + }, + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "FreeFormLayoutScreenCanvasSizeOptions": { + "additionalProperties": false, + "properties": { + "OptimizedViewPortWidth": { + "type": "string" + } + }, + "required": [ + "OptimizedViewPortWidth" + ], + "type": "object" + }, + "FreeFormSectionLayoutConfiguration": { + "additionalProperties": false, + "properties": { + "Elements": { + "items": { + "$ref": "#/definitions/FreeFormLayoutElement" + }, + "maxItems": 430, + "minItems": 0, + "type": "array" + } + }, + "required": [ + "Elements" + ], + "type": "object" + }, + "FunnelChartAggregatedFieldWells": { + "additionalProperties": false, + "properties": { + "Category": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 1, + "minItems": 0, + "type": "array" + }, + "Values": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 1, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "FunnelChartConfiguration": { + "additionalProperties": false, + "properties": { + "CategoryLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "DataLabelOptions": { + "$ref": "#/definitions/FunnelChartDataLabelOptions" + }, + "FieldWells": { + "$ref": "#/definitions/FunnelChartFieldWells" + }, + "SortConfiguration": { + "$ref": "#/definitions/FunnelChartSortConfiguration" + }, + "Tooltip": { + "$ref": "#/definitions/TooltipOptions" + }, + "ValueLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "VisualPalette": { + "$ref": "#/definitions/VisualPalette" + } + }, + "type": "object" + }, + "FunnelChartDataLabelOptions": { + "additionalProperties": false, + "properties": { + "CategoryLabelVisibility": { + "$ref": "#/definitions/Visibility" + }, + "LabelColor": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + }, + "LabelFontConfiguration": { + "$ref": "#/definitions/FontConfiguration" + }, + "MeasureDataLabelStyle": { + "$ref": "#/definitions/FunnelChartMeasureDataLabelStyle" + }, + "MeasureLabelVisibility": { + "$ref": "#/definitions/Visibility" + }, + "Position": { + "$ref": "#/definitions/DataLabelPosition" + }, + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "FunnelChartFieldWells": { + "additionalProperties": false, + "properties": { + "FunnelChartAggregatedFieldWells": { + "$ref": "#/definitions/FunnelChartAggregatedFieldWells" + } + }, + "type": "object" + }, + "FunnelChartMeasureDataLabelStyle": { + "enum": [ + "VALUE_ONLY", + "PERCENTAGE_BY_FIRST_STAGE", + "PERCENTAGE_BY_PREVIOUS_STAGE", + "VALUE_AND_PERCENTAGE_BY_FIRST_STAGE", + "VALUE_AND_PERCENTAGE_BY_PREVIOUS_STAGE" + ], + "type": "string" + }, + "FunnelChartSortConfiguration": { + "additionalProperties": false, + "properties": { + "CategoryItemsLimit": { + "$ref": "#/definitions/ItemsLimitConfiguration" + }, + "CategorySort": { + "items": { + "$ref": "#/definitions/FieldSortOptions" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "FunnelChartVisual": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/VisualCustomAction" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "ChartConfiguration": { + "$ref": "#/definitions/FunnelChartConfiguration" + }, + "ColumnHierarchies": { + "items": { + "$ref": "#/definitions/ColumnHierarchy" + }, + "maxItems": 2, + "minItems": 0, + "type": "array" + }, + "Subtitle": { + "$ref": "#/definitions/VisualSubtitleLabelOptions" + }, + "Title": { + "$ref": "#/definitions/VisualTitleLabelOptions" + }, + "VisualId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "VisualId" + ], + "type": "object" + }, + "GaugeChartArcConditionalFormatting": { + "additionalProperties": false, + "properties": { + "ForegroundColor": { + "$ref": "#/definitions/ConditionalFormattingColor" + } + }, + "type": "object" + }, + "GaugeChartConditionalFormatting": { + "additionalProperties": false, + "properties": { + "ConditionalFormattingOptions": { + "items": { + "$ref": "#/definitions/GaugeChartConditionalFormattingOption" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "GaugeChartConditionalFormattingOption": { + "additionalProperties": false, + "properties": { + "Arc": { + "$ref": "#/definitions/GaugeChartArcConditionalFormatting" + }, + "PrimaryValue": { + "$ref": "#/definitions/GaugeChartPrimaryValueConditionalFormatting" + } + }, + "type": "object" + }, + "GaugeChartConfiguration": { + "additionalProperties": false, + "properties": { + "DataLabels": { + "$ref": "#/definitions/DataLabelOptions" + }, + "FieldWells": { + "$ref": "#/definitions/GaugeChartFieldWells" + }, + "GaugeChartOptions": { + "$ref": "#/definitions/GaugeChartOptions" + }, + "TooltipOptions": { + "$ref": "#/definitions/TooltipOptions" + }, + "VisualPalette": { + "$ref": "#/definitions/VisualPalette" + } + }, + "type": "object" + }, + "GaugeChartFieldWells": { + "additionalProperties": false, + "properties": { + "TargetValues": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "Values": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "GaugeChartOptions": { + "additionalProperties": false, + "properties": { + "Arc": { + "$ref": "#/definitions/ArcConfiguration" + }, + "ArcAxis": { + "$ref": "#/definitions/ArcAxisConfiguration" + }, + "Comparison": { + "$ref": "#/definitions/ComparisonConfiguration" + }, + "PrimaryValueDisplayType": { + "$ref": "#/definitions/PrimaryValueDisplayType" + }, + "PrimaryValueFontConfiguration": { + "$ref": "#/definitions/FontConfiguration" + } + }, + "type": "object" + }, + "GaugeChartPrimaryValueConditionalFormatting": { + "additionalProperties": false, + "properties": { + "Icon": { + "$ref": "#/definitions/ConditionalFormattingIcon" + }, + "TextColor": { + "$ref": "#/definitions/ConditionalFormattingColor" + } + }, + "type": "object" + }, + "GaugeChartVisual": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/VisualCustomAction" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "ChartConfiguration": { + "$ref": "#/definitions/GaugeChartConfiguration" + }, + "ConditionalFormatting": { + "$ref": "#/definitions/GaugeChartConditionalFormatting" + }, + "Subtitle": { + "$ref": "#/definitions/VisualSubtitleLabelOptions" + }, + "Title": { + "$ref": "#/definitions/VisualTitleLabelOptions" + }, + "VisualId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "VisualId" + ], + "type": "object" + }, + "GeospatialCoordinateBounds": { + "additionalProperties": false, + "properties": { + "East": { + "maximum": 1800, + "minimum": -1800, + "type": "number" + }, + "North": { + "maximum": 90, + "minimum": -90, + "type": "number" + }, + "South": { + "maximum": 90, + "minimum": -90, + "type": "number" + }, + "West": { + "maximum": 1800, + "minimum": -1800, + "type": "number" + } + }, + "required": [ + "East", + "North", + "South", + "West" + ], + "type": "object" + }, + "GeospatialHeatmapColorScale": { + "additionalProperties": false, + "properties": { + "Colors": { + "items": { + "$ref": "#/definitions/GeospatialHeatmapDataColor" + }, + "maxItems": 2, + "minItems": 2, + "type": "array" + } + }, + "type": "object" + }, + "GeospatialHeatmapConfiguration": { + "additionalProperties": false, + "properties": { + "HeatmapColor": { + "$ref": "#/definitions/GeospatialHeatmapColorScale" + } + }, + "type": "object" + }, + "GeospatialHeatmapDataColor": { + "additionalProperties": false, + "properties": { + "Color": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + } + }, + "required": [ + "Color" + ], + "type": "object" + }, + "GeospatialMapAggregatedFieldWells": { + "additionalProperties": false, + "properties": { + "Colors": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "Geospatial": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "Values": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "GeospatialMapConfiguration": { + "additionalProperties": false, + "properties": { + "FieldWells": { + "$ref": "#/definitions/GeospatialMapFieldWells" + }, + "Legend": { + "$ref": "#/definitions/LegendOptions" + }, + "MapStyleOptions": { + "$ref": "#/definitions/GeospatialMapStyleOptions" + }, + "PointStyleOptions": { + "$ref": "#/definitions/GeospatialPointStyleOptions" + }, + "Tooltip": { + "$ref": "#/definitions/TooltipOptions" + }, + "VisualPalette": { + "$ref": "#/definitions/VisualPalette" + }, + "WindowOptions": { + "$ref": "#/definitions/GeospatialWindowOptions" + } + }, + "type": "object" + }, + "GeospatialMapFieldWells": { + "additionalProperties": false, + "properties": { + "GeospatialMapAggregatedFieldWells": { + "$ref": "#/definitions/GeospatialMapAggregatedFieldWells" + } + }, + "type": "object" + }, + "GeospatialMapStyleOptions": { + "additionalProperties": false, + "properties": { + "BaseMapStyle": { + "$ref": "#/definitions/BaseMapStyleType" + } + }, + "type": "object" + }, + "GeospatialMapVisual": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/VisualCustomAction" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "ChartConfiguration": { + "$ref": "#/definitions/GeospatialMapConfiguration" + }, + "ColumnHierarchies": { + "items": { + "$ref": "#/definitions/ColumnHierarchy" + }, + "maxItems": 2, + "minItems": 0, + "type": "array" + }, + "Subtitle": { + "$ref": "#/definitions/VisualSubtitleLabelOptions" + }, + "Title": { + "$ref": "#/definitions/VisualTitleLabelOptions" + }, + "VisualId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "VisualId" + ], + "type": "object" + }, + "GeospatialPointStyleOptions": { + "additionalProperties": false, + "properties": { + "ClusterMarkerConfiguration": { + "$ref": "#/definitions/ClusterMarkerConfiguration" + }, + "HeatmapConfiguration": { + "$ref": "#/definitions/GeospatialHeatmapConfiguration" + }, + "SelectedPointStyle": { + "$ref": "#/definitions/GeospatialSelectedPointStyle" + } + }, + "type": "object" + }, + "GeospatialSelectedPointStyle": { + "enum": [ + "POINT", + "CLUSTER", + "HEATMAP" + ], + "type": "string" + }, + "GeospatialWindowOptions": { + "additionalProperties": false, + "properties": { + "Bounds": { + "$ref": "#/definitions/GeospatialCoordinateBounds" + }, + "MapZoomMode": { + "$ref": "#/definitions/MapZoomMode" + } + }, + "type": "object" + }, + "GlobalTableBorderOptions": { + "additionalProperties": false, + "properties": { + "SideSpecificBorder": { + "$ref": "#/definitions/TableSideBorderOptions" + }, + "UniformBorder": { + "$ref": "#/definitions/TableBorderOptions" + } + }, + "type": "object" + }, + "GradientColor": { + "additionalProperties": false, + "properties": { + "Stops": { + "items": { + "$ref": "#/definitions/GradientStop" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "GradientStop": { + "additionalProperties": false, + "properties": { + "Color": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + }, + "DataValue": { + "default": null, + "type": "number" + }, + "GradientOffset": { + "default": 0, + "type": "number" + } + }, + "required": [ + "GradientOffset" + ], + "type": "object" + }, + "GridLayoutCanvasSizeOptions": { + "additionalProperties": false, + "properties": { + "ScreenCanvasSizeOptions": { + "$ref": "#/definitions/GridLayoutScreenCanvasSizeOptions" + } + }, + "type": "object" + }, + "GridLayoutConfiguration": { + "additionalProperties": false, + "properties": { + "CanvasSizeOptions": { + "$ref": "#/definitions/GridLayoutCanvasSizeOptions" + }, + "Elements": { + "items": { + "$ref": "#/definitions/GridLayoutElement" + }, + "maxItems": 430, + "minItems": 0, + "type": "array" + } + }, + "required": [ + "Elements" + ], + "type": "object" + }, + "GridLayoutElement": { + "additionalProperties": false, + "properties": { + "ColumnIndex": { + "maximum": 35, + "minimum": 0, + "type": "number" + }, + "ColumnSpan": { + "maximum": 36, + "minimum": 1, + "type": "number" + }, + "ElementId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "ElementType": { + "$ref": "#/definitions/LayoutElementType" + }, + "RowIndex": { + "maximum": 9009, + "minimum": 0, + "type": "number" + }, + "RowSpan": { + "maximum": 21, + "minimum": 1, + "type": "number" + } + }, + "required": [ + "ColumnSpan", + "ElementId", + "ElementType", + "RowSpan" + ], + "type": "object" + }, + "GridLayoutScreenCanvasSizeOptions": { + "additionalProperties": false, + "properties": { + "OptimizedViewPortWidth": { + "type": "string" + }, + "ResizeOption": { + "$ref": "#/definitions/ResizeOption" + } + }, + "required": [ + "ResizeOption" + ], + "type": "object" + }, + "GrowthRateComputation": { + "additionalProperties": false, + "properties": { + "ComputationId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "Name": { + "type": "string" + }, + "PeriodSize": { + "default": 0, + "maximum": 52, + "minimum": 2, + "type": "number" + }, + "Time": { + "$ref": "#/definitions/DimensionField" + }, + "Value": { + "$ref": "#/definitions/MeasureField" + } + }, + "required": [ + "ComputationId" + ], + "type": "object" + }, + "HeaderFooterSectionConfiguration": { + "additionalProperties": false, + "properties": { + "Layout": { + "$ref": "#/definitions/SectionLayoutConfiguration" + }, + "SectionId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "Style": { + "$ref": "#/definitions/SectionStyle" + } + }, + "required": [ + "Layout", + "SectionId" + ], + "type": "object" + }, + "HeatMapAggregatedFieldWells": { + "additionalProperties": false, + "properties": { + "Columns": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 1, + "minItems": 0, + "type": "array" + }, + "Rows": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 1, + "minItems": 0, + "type": "array" + }, + "Values": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 1, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "HeatMapConfiguration": { + "additionalProperties": false, + "properties": { + "ColorScale": { + "$ref": "#/definitions/ColorScale" + }, + "ColumnLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "DataLabels": { + "$ref": "#/definitions/DataLabelOptions" + }, + "FieldWells": { + "$ref": "#/definitions/HeatMapFieldWells" + }, + "Legend": { + "$ref": "#/definitions/LegendOptions" + }, + "RowLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "SortConfiguration": { + "$ref": "#/definitions/HeatMapSortConfiguration" + }, + "Tooltip": { + "$ref": "#/definitions/TooltipOptions" + } + }, + "type": "object" + }, + "HeatMapFieldWells": { + "additionalProperties": false, + "properties": { + "HeatMapAggregatedFieldWells": { + "$ref": "#/definitions/HeatMapAggregatedFieldWells" + } + }, + "type": "object" + }, + "HeatMapSortConfiguration": { + "additionalProperties": false, + "properties": { + "HeatMapColumnItemsLimitConfiguration": { + "$ref": "#/definitions/ItemsLimitConfiguration" + }, + "HeatMapColumnSort": { + "items": { + "$ref": "#/definitions/FieldSortOptions" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + }, + "HeatMapRowItemsLimitConfiguration": { + "$ref": "#/definitions/ItemsLimitConfiguration" + }, + "HeatMapRowSort": { + "items": { + "$ref": "#/definitions/FieldSortOptions" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "HeatMapVisual": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/VisualCustomAction" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "ChartConfiguration": { + "$ref": "#/definitions/HeatMapConfiguration" + }, + "ColumnHierarchies": { + "items": { + "$ref": "#/definitions/ColumnHierarchy" + }, + "maxItems": 2, + "minItems": 0, + "type": "array" + }, + "Subtitle": { + "$ref": "#/definitions/VisualSubtitleLabelOptions" + }, + "Title": { + "$ref": "#/definitions/VisualTitleLabelOptions" + }, + "VisualId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "VisualId" + ], + "type": "object" + }, + "HistogramAggregatedFieldWells": { + "additionalProperties": false, + "properties": { + "Values": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 1, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "HistogramBinOptions": { + "additionalProperties": false, + "properties": { + "BinCount": { + "$ref": "#/definitions/BinCountOptions" + }, + "BinWidth": { + "$ref": "#/definitions/BinWidthOptions" + }, + "SelectedBinType": { + "$ref": "#/definitions/HistogramBinType" + }, + "StartValue": { + "default": null, + "type": "number" + } + }, + "type": "object" + }, + "HistogramBinType": { + "enum": [ + "BIN_COUNT", + "BIN_WIDTH" + ], + "type": "string" + }, + "HistogramConfiguration": { + "additionalProperties": false, + "properties": { + "BinOptions": { + "$ref": "#/definitions/HistogramBinOptions" + }, + "DataLabels": { + "$ref": "#/definitions/DataLabelOptions" + }, + "FieldWells": { + "$ref": "#/definitions/HistogramFieldWells" + }, + "Tooltip": { + "$ref": "#/definitions/TooltipOptions" + }, + "VisualPalette": { + "$ref": "#/definitions/VisualPalette" + }, + "XAxisDisplayOptions": { + "$ref": "#/definitions/AxisDisplayOptions" + }, + "XAxisLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "YAxisDisplayOptions": { + "$ref": "#/definitions/AxisDisplayOptions" + } + }, + "type": "object" + }, + "HistogramFieldWells": { + "additionalProperties": false, + "properties": { + "HistogramAggregatedFieldWells": { + "$ref": "#/definitions/HistogramAggregatedFieldWells" + } + }, + "type": "object" + }, + "HistogramVisual": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/VisualCustomAction" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "ChartConfiguration": { + "$ref": "#/definitions/HistogramConfiguration" + }, + "Subtitle": { + "$ref": "#/definitions/VisualSubtitleLabelOptions" + }, + "Title": { + "$ref": "#/definitions/VisualTitleLabelOptions" + }, + "VisualId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "VisualId" + ], + "type": "object" + }, + "HorizontalTextAlignment": { + "enum": [ + "LEFT", + "CENTER", + "RIGHT", + "AUTO" + ], + "type": "string" + }, + "Icon": { + "enum": [ + "CARET_UP", + "CARET_DOWN", + "PLUS", + "MINUS", + "ARROW_UP", + "ARROW_DOWN", + "ARROW_LEFT", + "ARROW_UP_LEFT", + "ARROW_DOWN_LEFT", + "ARROW_RIGHT", + "ARROW_UP_RIGHT", + "ARROW_DOWN_RIGHT", + "FACE_UP", + "FACE_DOWN", + "FACE_FLAT", + "ONE_BAR", + "TWO_BAR", + "THREE_BAR", + "CIRCLE", + "TRIANGLE", + "SQUARE", + "FLAG", + "THUMBS_UP", + "THUMBS_DOWN", + "CHECKMARK", + "X" + ], + "type": "string" + }, + "InnerFilter": { + "additionalProperties": false, + "properties": { + "CategoryInnerFilter": { + "$ref": "#/definitions/CategoryInnerFilter" + } + }, + "type": "object" + }, + "InsightConfiguration": { + "additionalProperties": false, + "properties": { + "Computations": { + "items": { + "$ref": "#/definitions/Computation" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + }, + "CustomNarrative": { + "$ref": "#/definitions/CustomNarrativeOptions" + } + }, + "type": "object" + }, + "InsightVisual": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/VisualCustomAction" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "DataSetIdentifier": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "InsightConfiguration": { + "$ref": "#/definitions/InsightConfiguration" + }, + "Subtitle": { + "$ref": "#/definitions/VisualSubtitleLabelOptions" + }, + "Title": { + "$ref": "#/definitions/VisualTitleLabelOptions" + }, + "VisualId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "DataSetIdentifier", + "VisualId" + ], + "type": "object" + }, + "IntegerDefaultValues": { + "additionalProperties": false, + "properties": { + "DynamicValue": { + "$ref": "#/definitions/DynamicDefaultValue" + }, + "StaticValues": { + "items": { + "type": "number" + }, + "maxItems": 50000, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "IntegerParameter": { + "additionalProperties": false, + "properties": { + "Name": { + "pattern": "\\S", + "type": "string" + }, + "Values": { + "items": { + "default": 0, + "type": "number" + }, + "type": "array" + } + }, + "required": [ + "Name", + "Values" + ], + "type": "object" + }, + "IntegerParameterDeclaration": { + "additionalProperties": false, + "properties": { + "DefaultValues": { + "$ref": "#/definitions/IntegerDefaultValues" + }, + "MappedDataSetParameters": { + "items": { + "$ref": "#/definitions/MappedDataSetParameter" + }, + "maxItems": 150, + "minItems": 0, + "type": "array" + }, + "Name": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "ParameterValueType": { + "$ref": "#/definitions/ParameterValueType" + }, + "ValueWhenUnset": { + "$ref": "#/definitions/IntegerValueWhenUnsetConfiguration" + } + }, + "required": [ + "Name", + "ParameterValueType" + ], + "type": "object" + }, + "IntegerValueWhenUnsetConfiguration": { + "additionalProperties": false, + "properties": { + "CustomValue": { + "default": null, + "type": "number" + }, + "ValueWhenUnsetOption": { + "$ref": "#/definitions/ValueWhenUnsetOption" + } + }, + "type": "object" + }, + "ItemsLimitConfiguration": { + "additionalProperties": false, + "properties": { + "ItemsLimit": { + "default": null, + "type": "number" + }, + "OtherCategories": { + "$ref": "#/definitions/OtherCategories" + } + }, + "type": "object" + }, + "KPIActualValueConditionalFormatting": { + "additionalProperties": false, + "properties": { + "Icon": { + "$ref": "#/definitions/ConditionalFormattingIcon" + }, + "TextColor": { + "$ref": "#/definitions/ConditionalFormattingColor" + } + }, + "type": "object" + }, + "KPIComparisonValueConditionalFormatting": { + "additionalProperties": false, + "properties": { + "Icon": { + "$ref": "#/definitions/ConditionalFormattingIcon" + }, + "TextColor": { + "$ref": "#/definitions/ConditionalFormattingColor" + } + }, + "type": "object" + }, + "KPIConditionalFormatting": { + "additionalProperties": false, + "properties": { + "ConditionalFormattingOptions": { + "items": { + "$ref": "#/definitions/KPIConditionalFormattingOption" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "KPIConditionalFormattingOption": { + "additionalProperties": false, + "properties": { + "ActualValue": { + "$ref": "#/definitions/KPIActualValueConditionalFormatting" + }, + "ComparisonValue": { + "$ref": "#/definitions/KPIComparisonValueConditionalFormatting" + }, + "PrimaryValue": { + "$ref": "#/definitions/KPIPrimaryValueConditionalFormatting" + }, + "ProgressBar": { + "$ref": "#/definitions/KPIProgressBarConditionalFormatting" + } + }, + "type": "object" + }, + "KPIConfiguration": { + "additionalProperties": false, + "properties": { + "FieldWells": { + "$ref": "#/definitions/KPIFieldWells" + }, + "KPIOptions": { + "$ref": "#/definitions/KPIOptions" + }, + "SortConfiguration": { + "$ref": "#/definitions/KPISortConfiguration" + } + }, + "type": "object" + }, + "KPIFieldWells": { + "additionalProperties": false, + "properties": { + "TargetValues": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "TrendGroups": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "Values": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "KPIOptions": { + "additionalProperties": false, + "properties": { + "Comparison": { + "$ref": "#/definitions/ComparisonConfiguration" + }, + "PrimaryValueDisplayType": { + "$ref": "#/definitions/PrimaryValueDisplayType" + }, + "PrimaryValueFontConfiguration": { + "$ref": "#/definitions/FontConfiguration" + }, + "ProgressBar": { + "$ref": "#/definitions/ProgressBarOptions" + }, + "SecondaryValue": { + "$ref": "#/definitions/SecondaryValueOptions" + }, + "SecondaryValueFontConfiguration": { + "$ref": "#/definitions/FontConfiguration" + }, + "Sparkline": { + "$ref": "#/definitions/KPISparklineOptions" + }, + "TrendArrows": { + "$ref": "#/definitions/TrendArrowOptions" + }, + "VisualLayoutOptions": { + "$ref": "#/definitions/KPIVisualLayoutOptions" + } + }, + "type": "object" + }, + "KPIPrimaryValueConditionalFormatting": { + "additionalProperties": false, + "properties": { + "Icon": { + "$ref": "#/definitions/ConditionalFormattingIcon" + }, + "TextColor": { + "$ref": "#/definitions/ConditionalFormattingColor" + } + }, + "type": "object" + }, + "KPIProgressBarConditionalFormatting": { + "additionalProperties": false, + "properties": { + "ForegroundColor": { + "$ref": "#/definitions/ConditionalFormattingColor" + } + }, + "type": "object" + }, + "KPISortConfiguration": { + "additionalProperties": false, + "properties": { + "TrendGroupSort": { + "items": { + "$ref": "#/definitions/FieldSortOptions" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "KPISparklineOptions": { + "additionalProperties": false, + "properties": { + "Color": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + }, + "TooltipVisibility": { + "$ref": "#/definitions/Visibility" + }, + "Type": { + "$ref": "#/definitions/KPISparklineType" + }, + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "KPISparklineType": { + "enum": [ + "LINE", + "AREA" + ], + "type": "string" + }, + "KPIVisual": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/VisualCustomAction" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "ChartConfiguration": { + "$ref": "#/definitions/KPIConfiguration" + }, + "ColumnHierarchies": { + "items": { + "$ref": "#/definitions/ColumnHierarchy" + }, + "maxItems": 2, + "minItems": 0, + "type": "array" + }, + "ConditionalFormatting": { + "$ref": "#/definitions/KPIConditionalFormatting" + }, + "Subtitle": { + "$ref": "#/definitions/VisualSubtitleLabelOptions" + }, + "Title": { + "$ref": "#/definitions/VisualTitleLabelOptions" + }, + "VisualId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "VisualId" + ], + "type": "object" + }, + "KPIVisualLayoutOptions": { + "additionalProperties": false, + "properties": { + "StandardLayout": { + "$ref": "#/definitions/KPIVisualStandardLayout" + } + }, + "type": "object" + }, + "KPIVisualStandardLayout": { + "additionalProperties": false, + "properties": { + "Type": { + "$ref": "#/definitions/KPIVisualStandardLayoutType" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "KPIVisualStandardLayoutType": { + "enum": [ + "CLASSIC", + "VERTICAL" + ], + "type": "string" + }, + "LabelOptions": { + "additionalProperties": false, + "properties": { + "CustomLabel": { + "type": "string" + }, + "FontConfiguration": { + "$ref": "#/definitions/FontConfiguration" + }, + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "Layout": { + "additionalProperties": false, + "properties": { + "Configuration": { + "$ref": "#/definitions/LayoutConfiguration" + } + }, + "required": [ + "Configuration" + ], + "type": "object" + }, + "LayoutConfiguration": { + "additionalProperties": false, + "properties": { + "FreeFormLayout": { + "$ref": "#/definitions/FreeFormLayoutConfiguration" + }, + "GridLayout": { + "$ref": "#/definitions/GridLayoutConfiguration" + }, + "SectionBasedLayout": { + "$ref": "#/definitions/SectionBasedLayoutConfiguration" + } + }, + "type": "object" + }, + "LayoutElementType": { + "enum": [ + "VISUAL", + "FILTER_CONTROL", + "PARAMETER_CONTROL", + "TEXT_BOX" + ], + "type": "string" + }, + "LegendOptions": { + "additionalProperties": false, + "properties": { + "Height": { + "type": "string" + }, + "Position": { + "$ref": "#/definitions/LegendPosition" + }, + "Title": { + "$ref": "#/definitions/LabelOptions" + }, + "Visibility": { + "$ref": "#/definitions/Visibility" + }, + "Width": { + "type": "string" + } + }, + "type": "object" + }, + "LegendPosition": { + "enum": [ + "AUTO", + "RIGHT", + "BOTTOM", + "TOP" + ], + "type": "string" + }, + "LineChartAggregatedFieldWells": { + "additionalProperties": false, + "properties": { + "Category": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "Colors": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "SmallMultiples": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 1, + "minItems": 0, + "type": "array" + }, + "Values": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "LineChartConfiguration": { + "additionalProperties": false, + "properties": { + "ContributionAnalysisDefaults": { + "items": { + "$ref": "#/definitions/ContributionAnalysisDefault" + }, + "maxItems": 200, + "minItems": 1, + "type": "array" + }, + "DataLabels": { + "$ref": "#/definitions/DataLabelOptions" + }, + "DefaultSeriesSettings": { + "$ref": "#/definitions/LineChartDefaultSeriesSettings" + }, + "FieldWells": { + "$ref": "#/definitions/LineChartFieldWells" + }, + "ForecastConfigurations": { + "items": { + "$ref": "#/definitions/ForecastConfiguration" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "Legend": { + "$ref": "#/definitions/LegendOptions" + }, + "PrimaryYAxisDisplayOptions": { + "$ref": "#/definitions/LineSeriesAxisDisplayOptions" + }, + "PrimaryYAxisLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "ReferenceLines": { + "items": { + "$ref": "#/definitions/ReferenceLine" + }, + "maxItems": 20, + "minItems": 0, + "type": "array" + }, + "SecondaryYAxisDisplayOptions": { + "$ref": "#/definitions/LineSeriesAxisDisplayOptions" + }, + "SecondaryYAxisLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "Series": { + "items": { + "$ref": "#/definitions/SeriesItem" + }, + "maxItems": 2000, + "minItems": 0, + "type": "array" + }, + "SingleAxisOptions": { + "$ref": "#/definitions/SingleAxisOptions" + }, + "SmallMultiplesOptions": { + "$ref": "#/definitions/SmallMultiplesOptions" + }, + "SortConfiguration": { + "$ref": "#/definitions/LineChartSortConfiguration" + }, + "Tooltip": { + "$ref": "#/definitions/TooltipOptions" + }, + "Type": { + "$ref": "#/definitions/LineChartType" + }, + "VisualPalette": { + "$ref": "#/definitions/VisualPalette" + }, + "XAxisDisplayOptions": { + "$ref": "#/definitions/AxisDisplayOptions" + }, + "XAxisLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + } + }, + "type": "object" + }, + "LineChartDefaultSeriesSettings": { + "additionalProperties": false, + "properties": { + "AxisBinding": { + "$ref": "#/definitions/AxisBinding" + }, + "LineStyleSettings": { + "$ref": "#/definitions/LineChartLineStyleSettings" + }, + "MarkerStyleSettings": { + "$ref": "#/definitions/LineChartMarkerStyleSettings" + } + }, + "type": "object" + }, + "LineChartFieldWells": { + "additionalProperties": false, + "properties": { + "LineChartAggregatedFieldWells": { + "$ref": "#/definitions/LineChartAggregatedFieldWells" + } + }, + "type": "object" + }, + "LineChartLineStyle": { + "enum": [ + "SOLID", + "DOTTED", + "DASHED" + ], + "type": "string" + }, + "LineChartLineStyleSettings": { + "additionalProperties": false, + "properties": { + "LineInterpolation": { + "$ref": "#/definitions/LineInterpolation" + }, + "LineStyle": { + "$ref": "#/definitions/LineChartLineStyle" + }, + "LineVisibility": { + "$ref": "#/definitions/Visibility" + }, + "LineWidth": { + "type": "string" + } + }, + "type": "object" + }, + "LineChartMarkerShape": { + "enum": [ + "CIRCLE", + "TRIANGLE", + "SQUARE", + "DIAMOND", + "ROUNDED_SQUARE" + ], + "type": "string" + }, + "LineChartMarkerStyleSettings": { + "additionalProperties": false, + "properties": { + "MarkerColor": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + }, + "MarkerShape": { + "$ref": "#/definitions/LineChartMarkerShape" + }, + "MarkerSize": { + "type": "string" + }, + "MarkerVisibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "LineChartSeriesSettings": { + "additionalProperties": false, + "properties": { + "LineStyleSettings": { + "$ref": "#/definitions/LineChartLineStyleSettings" + }, + "MarkerStyleSettings": { + "$ref": "#/definitions/LineChartMarkerStyleSettings" + } + }, + "type": "object" + }, + "LineChartSortConfiguration": { + "additionalProperties": false, + "properties": { + "CategoryItemsLimitConfiguration": { + "$ref": "#/definitions/ItemsLimitConfiguration" + }, + "CategorySort": { + "items": { + "$ref": "#/definitions/FieldSortOptions" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + }, + "ColorItemsLimitConfiguration": { + "$ref": "#/definitions/ItemsLimitConfiguration" + }, + "SmallMultiplesLimitConfiguration": { + "$ref": "#/definitions/ItemsLimitConfiguration" + }, + "SmallMultiplesSort": { + "items": { + "$ref": "#/definitions/FieldSortOptions" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "LineChartType": { + "enum": [ + "LINE", + "AREA", + "STACKED_AREA" + ], + "type": "string" + }, + "LineChartVisual": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/VisualCustomAction" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "ChartConfiguration": { + "$ref": "#/definitions/LineChartConfiguration" + }, + "ColumnHierarchies": { + "items": { + "$ref": "#/definitions/ColumnHierarchy" + }, + "maxItems": 2, + "minItems": 0, + "type": "array" + }, + "Subtitle": { + "$ref": "#/definitions/VisualSubtitleLabelOptions" + }, + "Title": { + "$ref": "#/definitions/VisualTitleLabelOptions" + }, + "VisualId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "VisualId" + ], + "type": "object" + }, + "LineInterpolation": { + "enum": [ + "LINEAR", + "SMOOTH", + "STEPPED" + ], + "type": "string" + }, + "LineSeriesAxisDisplayOptions": { + "additionalProperties": false, + "properties": { + "AxisOptions": { + "$ref": "#/definitions/AxisDisplayOptions" + }, + "MissingDataConfigurations": { + "items": { + "$ref": "#/definitions/MissingDataConfiguration" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "LinkSharingConfiguration": { + "additionalProperties": false, + "properties": { + "Permissions": { + "items": { + "$ref": "#/definitions/ResourcePermission" + }, + "maxItems": 64, + "minItems": 1, + "type": "array" + } + }, + "type": "object" + }, + "ListControlDisplayOptions": { + "additionalProperties": false, + "properties": { + "InfoIconLabelOptions": { + "$ref": "#/definitions/SheetControlInfoIconLabelOptions" + }, + "SearchOptions": { + "$ref": "#/definitions/ListControlSearchOptions" + }, + "SelectAllOptions": { + "$ref": "#/definitions/ListControlSelectAllOptions" + }, + "TitleOptions": { + "$ref": "#/definitions/LabelOptions" + } + }, + "type": "object" + }, + "ListControlSearchOptions": { + "additionalProperties": false, + "properties": { + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "ListControlSelectAllOptions": { + "additionalProperties": false, + "properties": { + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "LoadingAnimation": { + "additionalProperties": false, + "properties": { + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "LocalNavigationConfiguration": { + "additionalProperties": false, + "properties": { + "TargetSheetId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "TargetSheetId" + ], + "type": "object" + }, + "LongFormatText": { + "additionalProperties": false, + "properties": { + "PlainText": { + "maxLength": 1024, + "minLength": 1, + "type": "string" + }, + "RichText": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "MapZoomMode": { + "enum": [ + "AUTO", + "MANUAL" + ], + "type": "string" + }, + "MappedDataSetParameter": { + "additionalProperties": false, + "properties": { + "DataSetIdentifier": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "DataSetParameterName": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + } + }, + "required": [ + "DataSetIdentifier", + "DataSetParameterName" + ], + "type": "object" + }, + "MaximumLabelType": { + "additionalProperties": false, + "properties": { + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "MaximumMinimumComputation": { + "additionalProperties": false, + "properties": { + "ComputationId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "Name": { + "type": "string" + }, + "Time": { + "$ref": "#/definitions/DimensionField" + }, + "Type": { + "$ref": "#/definitions/MaximumMinimumComputationType" + }, + "Value": { + "$ref": "#/definitions/MeasureField" + } + }, + "required": [ + "ComputationId", + "Type" + ], + "type": "object" + }, + "MaximumMinimumComputationType": { + "enum": [ + "MAXIMUM", + "MINIMUM" + ], + "type": "string" + }, + "MeasureField": { + "additionalProperties": false, + "properties": { + "CalculatedMeasureField": { + "$ref": "#/definitions/CalculatedMeasureField" + }, + "CategoricalMeasureField": { + "$ref": "#/definitions/CategoricalMeasureField" + }, + "DateMeasureField": { + "$ref": "#/definitions/DateMeasureField" + }, + "NumericalMeasureField": { + "$ref": "#/definitions/NumericalMeasureField" + } + }, + "type": "object" + }, + "MetricComparisonComputation": { + "additionalProperties": false, + "properties": { + "ComputationId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "FromValue": { + "$ref": "#/definitions/MeasureField" + }, + "Name": { + "type": "string" + }, + "TargetValue": { + "$ref": "#/definitions/MeasureField" + }, + "Time": { + "$ref": "#/definitions/DimensionField" + } + }, + "required": [ + "ComputationId" + ], + "type": "object" + }, + "MinimumLabelType": { + "additionalProperties": false, + "properties": { + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "MissingDataConfiguration": { + "additionalProperties": false, + "properties": { + "TreatmentOption": { + "$ref": "#/definitions/MissingDataTreatmentOption" + } + }, + "type": "object" + }, + "MissingDataTreatmentOption": { + "enum": [ + "INTERPOLATE", + "SHOW_AS_ZERO", + "SHOW_AS_BLANK" + ], + "type": "string" + }, + "NegativeValueConfiguration": { + "additionalProperties": false, + "properties": { + "DisplayMode": { + "$ref": "#/definitions/NegativeValueDisplayMode" + } + }, + "required": [ + "DisplayMode" + ], + "type": "object" + }, + "NegativeValueDisplayMode": { + "enum": [ + "POSITIVE", + "NEGATIVE" + ], + "type": "string" + }, + "NestedFilter": { + "additionalProperties": false, + "properties": { + "Column": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "FilterId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "IncludeInnerSet": { + "default": false, + "type": "boolean" + }, + "InnerFilter": { + "$ref": "#/definitions/InnerFilter" + } + }, + "required": [ + "Column", + "FilterId", + "IncludeInnerSet", + "InnerFilter" + ], + "type": "object" + }, + "NullValueFormatConfiguration": { + "additionalProperties": false, + "properties": { + "NullString": { + "maxLength": 128, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "NullString" + ], + "type": "object" + }, + "NumberDisplayFormatConfiguration": { + "additionalProperties": false, + "properties": { + "DecimalPlacesConfiguration": { + "$ref": "#/definitions/DecimalPlacesConfiguration" + }, + "NegativeValueConfiguration": { + "$ref": "#/definitions/NegativeValueConfiguration" + }, + "NullValueFormatConfiguration": { + "$ref": "#/definitions/NullValueFormatConfiguration" + }, + "NumberScale": { + "$ref": "#/definitions/NumberScale" + }, + "Prefix": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "SeparatorConfiguration": { + "$ref": "#/definitions/NumericSeparatorConfiguration" + }, + "Suffix": { + "maxLength": 128, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "NumberFormatConfiguration": { + "additionalProperties": false, + "properties": { + "FormatConfiguration": { + "$ref": "#/definitions/NumericFormatConfiguration" + } + }, + "type": "object" + }, + "NumberScale": { + "enum": [ + "NONE", + "AUTO", + "THOUSANDS", + "MILLIONS", + "BILLIONS", + "TRILLIONS" + ], + "type": "string" + }, + "NumericAxisOptions": { + "additionalProperties": false, + "properties": { + "Range": { + "$ref": "#/definitions/AxisDisplayRange" + }, + "Scale": { + "$ref": "#/definitions/AxisScale" + } + }, + "type": "object" + }, + "NumericEqualityDrillDownFilter": { + "additionalProperties": false, + "properties": { + "Column": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "Value": { + "default": 0, + "type": "number" + } + }, + "required": [ + "Column", + "Value" + ], + "type": "object" + }, + "NumericEqualityFilter": { + "additionalProperties": false, + "properties": { + "AggregationFunction": { + "$ref": "#/definitions/AggregationFunction" + }, + "Column": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "DefaultFilterControlConfiguration": { + "$ref": "#/definitions/DefaultFilterControlConfiguration" + }, + "FilterId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "MatchOperator": { + "$ref": "#/definitions/NumericEqualityMatchOperator" + }, + "NullOption": { + "$ref": "#/definitions/FilterNullOption" + }, + "ParameterName": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "SelectAllOptions": { + "$ref": "#/definitions/NumericFilterSelectAllOptions" + }, + "Value": { + "default": null, + "type": "number" + } + }, + "required": [ + "Column", + "FilterId", + "MatchOperator", + "NullOption" + ], + "type": "object" + }, + "NumericEqualityMatchOperator": { + "enum": [ + "EQUALS", + "DOES_NOT_EQUAL" + ], + "type": "string" + }, + "NumericFilterSelectAllOptions": { + "enum": [ + "FILTER_ALL_VALUES" + ], + "type": "string" + }, + "NumericFormatConfiguration": { + "additionalProperties": false, + "properties": { + "CurrencyDisplayFormatConfiguration": { + "$ref": "#/definitions/CurrencyDisplayFormatConfiguration" + }, + "NumberDisplayFormatConfiguration": { + "$ref": "#/definitions/NumberDisplayFormatConfiguration" + }, + "PercentageDisplayFormatConfiguration": { + "$ref": "#/definitions/PercentageDisplayFormatConfiguration" + } + }, + "type": "object" + }, + "NumericRangeFilter": { + "additionalProperties": false, + "properties": { + "AggregationFunction": { + "$ref": "#/definitions/AggregationFunction" + }, + "Column": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "DefaultFilterControlConfiguration": { + "$ref": "#/definitions/DefaultFilterControlConfiguration" + }, + "FilterId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "IncludeMaximum": { + "default": null, + "type": "boolean" + }, + "IncludeMinimum": { + "default": null, + "type": "boolean" + }, + "NullOption": { + "$ref": "#/definitions/FilterNullOption" + }, + "RangeMaximum": { + "$ref": "#/definitions/NumericRangeFilterValue" + }, + "RangeMinimum": { + "$ref": "#/definitions/NumericRangeFilterValue" + }, + "SelectAllOptions": { + "$ref": "#/definitions/NumericFilterSelectAllOptions" + } + }, + "required": [ + "Column", + "FilterId", + "NullOption" + ], + "type": "object" + }, + "NumericRangeFilterValue": { + "additionalProperties": false, + "properties": { + "Parameter": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "StaticValue": { + "default": null, + "type": "number" + } + }, + "type": "object" + }, + "NumericSeparatorConfiguration": { + "additionalProperties": false, + "properties": { + "DecimalSeparator": { + "$ref": "#/definitions/NumericSeparatorSymbol" + }, + "ThousandsSeparator": { + "$ref": "#/definitions/ThousandSeparatorOptions" + } + }, + "type": "object" + }, + "NumericSeparatorSymbol": { + "enum": [ + "COMMA", + "DOT", + "SPACE" + ], + "type": "string" + }, + "NumericalAggregationFunction": { + "additionalProperties": false, + "properties": { + "PercentileAggregation": { + "$ref": "#/definitions/PercentileAggregation" + }, + "SimpleNumericalAggregation": { + "$ref": "#/definitions/SimpleNumericalAggregationFunction" + } + }, + "type": "object" + }, + "NumericalDimensionField": { + "additionalProperties": false, + "properties": { + "Column": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "FormatConfiguration": { + "$ref": "#/definitions/NumberFormatConfiguration" + }, + "HierarchyId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Column", + "FieldId" + ], + "type": "object" + }, + "NumericalMeasureField": { + "additionalProperties": false, + "properties": { + "AggregationFunction": { + "$ref": "#/definitions/NumericalAggregationFunction" + }, + "Column": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "FormatConfiguration": { + "$ref": "#/definitions/NumberFormatConfiguration" + } + }, + "required": [ + "Column", + "FieldId" + ], + "type": "object" + }, + "OtherCategories": { + "enum": [ + "INCLUDE", + "EXCLUDE" + ], + "type": "string" + }, + "PaginationConfiguration": { + "additionalProperties": false, + "properties": { + "PageNumber": { + "minimum": 0, + "type": "number" + }, + "PageSize": { + "default": null, + "type": "number" + } + }, + "required": [ + "PageNumber", + "PageSize" + ], + "type": "object" + }, + "PanelBorderStyle": { + "enum": [ + "SOLID", + "DASHED", + "DOTTED" + ], + "type": "string" + }, + "PanelConfiguration": { + "additionalProperties": false, + "properties": { + "BackgroundColor": { + "pattern": "^#[A-F0-9]{6}(?:[A-F0-9]{2})?$", + "type": "string" + }, + "BackgroundVisibility": { + "$ref": "#/definitions/Visibility" + }, + "BorderColor": { + "pattern": "^#[A-F0-9]{6}(?:[A-F0-9]{2})?$", + "type": "string" + }, + "BorderStyle": { + "$ref": "#/definitions/PanelBorderStyle" + }, + "BorderThickness": { + "type": "string" + }, + "BorderVisibility": { + "$ref": "#/definitions/Visibility" + }, + "GutterSpacing": { + "type": "string" + }, + "GutterVisibility": { + "$ref": "#/definitions/Visibility" + }, + "Title": { + "$ref": "#/definitions/PanelTitleOptions" + } + }, + "type": "object" + }, + "PanelTitleOptions": { + "additionalProperties": false, + "properties": { + "FontConfiguration": { + "$ref": "#/definitions/FontConfiguration" + }, + "HorizontalTextAlignment": { + "$ref": "#/definitions/HorizontalTextAlignment" + }, + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "PaperOrientation": { + "enum": [ + "PORTRAIT", + "LANDSCAPE" + ], + "type": "string" + }, + "PaperSize": { + "enum": [ + "US_LETTER", + "US_LEGAL", + "US_TABLOID_LEDGER", + "A0", + "A1", + "A2", + "A3", + "A4", + "A5", + "JIS_B4", + "JIS_B5" + ], + "type": "string" + }, + "ParameterControl": { + "additionalProperties": false, + "properties": { + "DateTimePicker": { + "$ref": "#/definitions/ParameterDateTimePickerControl" + }, + "Dropdown": { + "$ref": "#/definitions/ParameterDropDownControl" + }, + "List": { + "$ref": "#/definitions/ParameterListControl" + }, + "Slider": { + "$ref": "#/definitions/ParameterSliderControl" + }, + "TextArea": { + "$ref": "#/definitions/ParameterTextAreaControl" + }, + "TextField": { + "$ref": "#/definitions/ParameterTextFieldControl" + } + }, + "type": "object" + }, + "ParameterDateTimePickerControl": { + "additionalProperties": false, + "properties": { + "DisplayOptions": { + "$ref": "#/definitions/DateTimePickerControlDisplayOptions" + }, + "ParameterControlId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "SourceParameterName": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "Title": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "ParameterControlId", + "SourceParameterName", + "Title" + ], + "type": "object" + }, + "ParameterDeclaration": { + "additionalProperties": false, + "properties": { + "DateTimeParameterDeclaration": { + "$ref": "#/definitions/DateTimeParameterDeclaration" + }, + "DecimalParameterDeclaration": { + "$ref": "#/definitions/DecimalParameterDeclaration" + }, + "IntegerParameterDeclaration": { + "$ref": "#/definitions/IntegerParameterDeclaration" + }, + "StringParameterDeclaration": { + "$ref": "#/definitions/StringParameterDeclaration" + } + }, + "type": "object" + }, + "ParameterDropDownControl": { + "additionalProperties": false, + "properties": { + "CascadingControlConfiguration": { + "$ref": "#/definitions/CascadingControlConfiguration" + }, + "CommitMode": { + "$ref": "#/definitions/CommitMode" + }, + "DisplayOptions": { + "$ref": "#/definitions/DropDownControlDisplayOptions" + }, + "ParameterControlId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "SelectableValues": { + "$ref": "#/definitions/ParameterSelectableValues" + }, + "SourceParameterName": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "Title": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Type": { + "$ref": "#/definitions/SheetControlListType" + } + }, + "required": [ + "ParameterControlId", + "SourceParameterName", + "Title" + ], + "type": "object" + }, + "ParameterListControl": { + "additionalProperties": false, + "properties": { + "CascadingControlConfiguration": { + "$ref": "#/definitions/CascadingControlConfiguration" + }, + "DisplayOptions": { + "$ref": "#/definitions/ListControlDisplayOptions" + }, + "ParameterControlId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "SelectableValues": { + "$ref": "#/definitions/ParameterSelectableValues" + }, + "SourceParameterName": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "Title": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Type": { + "$ref": "#/definitions/SheetControlListType" + } + }, + "required": [ + "ParameterControlId", + "SourceParameterName", + "Title" + ], + "type": "object" + }, + "ParameterSelectableValues": { + "additionalProperties": false, + "properties": { + "LinkToDataSetColumn": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "Values": { + "items": { + "type": "string" + }, + "maxItems": 50000, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "ParameterSliderControl": { + "additionalProperties": false, + "properties": { + "DisplayOptions": { + "$ref": "#/definitions/SliderControlDisplayOptions" + }, + "MaximumValue": { + "default": 0, + "type": "number" + }, + "MinimumValue": { + "default": 0, + "type": "number" + }, + "ParameterControlId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "SourceParameterName": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "StepSize": { + "default": 0, + "type": "number" + }, + "Title": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "MaximumValue", + "MinimumValue", + "ParameterControlId", + "SourceParameterName", + "StepSize", + "Title" + ], + "type": "object" + }, + "ParameterTextAreaControl": { + "additionalProperties": false, + "properties": { + "Delimiter": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "DisplayOptions": { + "$ref": "#/definitions/TextAreaControlDisplayOptions" + }, + "ParameterControlId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "SourceParameterName": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "Title": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "ParameterControlId", + "SourceParameterName", + "Title" + ], + "type": "object" + }, + "ParameterTextFieldControl": { + "additionalProperties": false, + "properties": { + "DisplayOptions": { + "$ref": "#/definitions/TextFieldControlDisplayOptions" + }, + "ParameterControlId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "SourceParameterName": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "Title": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "ParameterControlId", + "SourceParameterName", + "Title" + ], + "type": "object" + }, + "ParameterValueType": { + "enum": [ + "MULTI_VALUED", + "SINGLE_VALUED" + ], + "type": "string" + }, + "Parameters": { + "additionalProperties": false, + "properties": { + "DateTimeParameters": { + "items": { + "$ref": "#/definitions/DateTimeParameter" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + }, + "DecimalParameters": { + "items": { + "$ref": "#/definitions/DecimalParameter" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + }, + "IntegerParameters": { + "items": { + "$ref": "#/definitions/IntegerParameter" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + }, + "StringParameters": { + "items": { + "$ref": "#/definitions/StringParameter" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "PercentVisibleRange": { + "additionalProperties": false, + "properties": { + "From": { + "default": null, + "maximum": 100, + "minimum": 0, + "type": "number" + }, + "To": { + "default": null, + "maximum": 100, + "minimum": 0, + "type": "number" + } + }, + "type": "object" + }, + "PercentageDisplayFormatConfiguration": { + "additionalProperties": false, + "properties": { + "DecimalPlacesConfiguration": { + "$ref": "#/definitions/DecimalPlacesConfiguration" + }, + "NegativeValueConfiguration": { + "$ref": "#/definitions/NegativeValueConfiguration" + }, + "NullValueFormatConfiguration": { + "$ref": "#/definitions/NullValueFormatConfiguration" + }, + "Prefix": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "SeparatorConfiguration": { + "$ref": "#/definitions/NumericSeparatorConfiguration" + }, + "Suffix": { + "maxLength": 128, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "PercentileAggregation": { + "additionalProperties": false, + "properties": { + "PercentileValue": { + "maximum": 100, + "minimum": 0, + "type": "number" + } + }, + "type": "object" + }, + "PeriodOverPeriodComputation": { + "additionalProperties": false, + "properties": { + "ComputationId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "Name": { + "type": "string" + }, + "Time": { + "$ref": "#/definitions/DimensionField" + }, + "Value": { + "$ref": "#/definitions/MeasureField" + } + }, + "required": [ + "ComputationId" + ], + "type": "object" + }, + "PeriodToDateComputation": { + "additionalProperties": false, + "properties": { + "ComputationId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "Name": { + "type": "string" + }, + "PeriodTimeGranularity": { + "$ref": "#/definitions/TimeGranularity" + }, + "Time": { + "$ref": "#/definitions/DimensionField" + }, + "Value": { + "$ref": "#/definitions/MeasureField" + } + }, + "required": [ + "ComputationId" + ], + "type": "object" + }, + "PieChartAggregatedFieldWells": { + "additionalProperties": false, + "properties": { + "Category": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "SmallMultiples": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 1, + "minItems": 0, + "type": "array" + }, + "Values": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "PieChartConfiguration": { + "additionalProperties": false, + "properties": { + "CategoryLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "ContributionAnalysisDefaults": { + "items": { + "$ref": "#/definitions/ContributionAnalysisDefault" + }, + "maxItems": 200, + "minItems": 1, + "type": "array" + }, + "DataLabels": { + "$ref": "#/definitions/DataLabelOptions" + }, + "DonutOptions": { + "$ref": "#/definitions/DonutOptions" + }, + "FieldWells": { + "$ref": "#/definitions/PieChartFieldWells" + }, + "Legend": { + "$ref": "#/definitions/LegendOptions" + }, + "SmallMultiplesOptions": { + "$ref": "#/definitions/SmallMultiplesOptions" + }, + "SortConfiguration": { + "$ref": "#/definitions/PieChartSortConfiguration" + }, + "Tooltip": { + "$ref": "#/definitions/TooltipOptions" + }, + "ValueLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "VisualPalette": { + "$ref": "#/definitions/VisualPalette" + } + }, + "type": "object" + }, + "PieChartFieldWells": { + "additionalProperties": false, + "properties": { + "PieChartAggregatedFieldWells": { + "$ref": "#/definitions/PieChartAggregatedFieldWells" + } + }, + "type": "object" + }, + "PieChartSortConfiguration": { + "additionalProperties": false, + "properties": { + "CategoryItemsLimit": { + "$ref": "#/definitions/ItemsLimitConfiguration" + }, + "CategorySort": { + "items": { + "$ref": "#/definitions/FieldSortOptions" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + }, + "SmallMultiplesLimitConfiguration": { + "$ref": "#/definitions/ItemsLimitConfiguration" + }, + "SmallMultiplesSort": { + "items": { + "$ref": "#/definitions/FieldSortOptions" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "PieChartVisual": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/VisualCustomAction" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "ChartConfiguration": { + "$ref": "#/definitions/PieChartConfiguration" + }, + "ColumnHierarchies": { + "items": { + "$ref": "#/definitions/ColumnHierarchy" + }, + "maxItems": 2, + "minItems": 0, + "type": "array" + }, + "Subtitle": { + "$ref": "#/definitions/VisualSubtitleLabelOptions" + }, + "Title": { + "$ref": "#/definitions/VisualTitleLabelOptions" + }, + "VisualId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "VisualId" + ], + "type": "object" + }, + "PivotFieldSortOptions": { + "additionalProperties": false, + "properties": { + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "SortBy": { + "$ref": "#/definitions/PivotTableSortBy" + } + }, + "required": [ + "FieldId", + "SortBy" + ], + "type": "object" + }, + "PivotTableAggregatedFieldWells": { + "additionalProperties": false, + "properties": { + "Columns": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 40, + "minItems": 0, + "type": "array" + }, + "Rows": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 40, + "minItems": 0, + "type": "array" + }, + "Values": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 40, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "PivotTableCellConditionalFormatting": { + "additionalProperties": false, + "properties": { + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "Scope": { + "$ref": "#/definitions/PivotTableConditionalFormattingScope" + }, + "Scopes": { + "items": { + "$ref": "#/definitions/PivotTableConditionalFormattingScope" + }, + "maxItems": 3, + "minItems": 0, + "type": "array" + }, + "TextFormat": { + "$ref": "#/definitions/TextConditionalFormat" + } + }, + "required": [ + "FieldId" + ], + "type": "object" + }, + "PivotTableConditionalFormatting": { + "additionalProperties": false, + "properties": { + "ConditionalFormattingOptions": { + "items": { + "$ref": "#/definitions/PivotTableConditionalFormattingOption" + }, + "maxItems": 500, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "PivotTableConditionalFormattingOption": { + "additionalProperties": false, + "properties": { + "Cell": { + "$ref": "#/definitions/PivotTableCellConditionalFormatting" + } + }, + "type": "object" + }, + "PivotTableConditionalFormattingScope": { + "additionalProperties": false, + "properties": { + "Role": { + "$ref": "#/definitions/PivotTableConditionalFormattingScopeRole" + } + }, + "type": "object" + }, + "PivotTableConditionalFormattingScopeRole": { + "enum": [ + "FIELD", + "FIELD_TOTAL", + "GRAND_TOTAL" + ], + "type": "string" + }, + "PivotTableConfiguration": { + "additionalProperties": false, + "properties": { + "FieldOptions": { + "$ref": "#/definitions/PivotTableFieldOptions" + }, + "FieldWells": { + "$ref": "#/definitions/PivotTableFieldWells" + }, + "PaginatedReportOptions": { + "$ref": "#/definitions/PivotTablePaginatedReportOptions" + }, + "SortConfiguration": { + "$ref": "#/definitions/PivotTableSortConfiguration" + }, + "TableOptions": { + "$ref": "#/definitions/PivotTableOptions" + }, + "TotalOptions": { + "$ref": "#/definitions/PivotTableTotalOptions" + } + }, + "type": "object" + }, + "PivotTableDataPathOption": { + "additionalProperties": false, + "properties": { + "DataPathList": { + "items": { + "$ref": "#/definitions/DataPathValue" + }, + "maxItems": 20, + "minItems": 0, + "type": "array" + }, + "Width": { + "type": "string" + } + }, + "required": [ + "DataPathList" + ], + "type": "object" + }, + "PivotTableDataPathType": { + "enum": [ + "HIERARCHY_ROWS_LAYOUT_COLUMN", + "MULTIPLE_ROW_METRICS_COLUMN", + "EMPTY_COLUMN_HEADER", + "COUNT_METRIC_COLUMN" + ], + "type": "string" + }, + "PivotTableFieldCollapseState": { + "enum": [ + "COLLAPSED", + "EXPANDED" + ], + "type": "string" + }, + "PivotTableFieldCollapseStateOption": { + "additionalProperties": false, + "properties": { + "State": { + "$ref": "#/definitions/PivotTableFieldCollapseState" + }, + "Target": { + "$ref": "#/definitions/PivotTableFieldCollapseStateTarget" + } + }, + "required": [ + "Target" + ], + "type": "object" + }, + "PivotTableFieldCollapseStateTarget": { + "additionalProperties": false, + "properties": { + "FieldDataPathValues": { + "items": { + "$ref": "#/definitions/DataPathValue" + }, + "maxItems": 20, + "minItems": 0, + "type": "array" + }, + "FieldId": { + "type": "string" + } + }, + "type": "object" + }, + "PivotTableFieldOption": { + "additionalProperties": false, + "properties": { + "CustomLabel": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "required": [ + "FieldId" + ], + "type": "object" + }, + "PivotTableFieldOptions": { + "additionalProperties": false, + "properties": { + "CollapseStateOptions": { + "items": { + "$ref": "#/definitions/PivotTableFieldCollapseStateOption" + }, + "type": "array" + }, + "DataPathOptions": { + "items": { + "$ref": "#/definitions/PivotTableDataPathOption" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + }, + "SelectedFieldOptions": { + "items": { + "$ref": "#/definitions/PivotTableFieldOption" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "PivotTableFieldSubtotalOptions": { + "additionalProperties": false, + "properties": { + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "PivotTableFieldWells": { + "additionalProperties": false, + "properties": { + "PivotTableAggregatedFieldWells": { + "$ref": "#/definitions/PivotTableAggregatedFieldWells" + } + }, + "type": "object" + }, + "PivotTableMetricPlacement": { + "enum": [ + "ROW", + "COLUMN" + ], + "type": "string" + }, + "PivotTableOptions": { + "additionalProperties": false, + "properties": { + "CellStyle": { + "$ref": "#/definitions/TableCellStyle" + }, + "CollapsedRowDimensionsVisibility": { + "$ref": "#/definitions/Visibility" + }, + "ColumnHeaderStyle": { + "$ref": "#/definitions/TableCellStyle" + }, + "ColumnNamesVisibility": { + "$ref": "#/definitions/Visibility" + }, + "DefaultCellWidth": { + "type": "string" + }, + "MetricPlacement": { + "$ref": "#/definitions/PivotTableMetricPlacement" + }, + "RowAlternateColorOptions": { + "$ref": "#/definitions/RowAlternateColorOptions" + }, + "RowFieldNamesStyle": { + "$ref": "#/definitions/TableCellStyle" + }, + "RowHeaderStyle": { + "$ref": "#/definitions/TableCellStyle" + }, + "RowsLabelOptions": { + "$ref": "#/definitions/PivotTableRowsLabelOptions" + }, + "RowsLayout": { + "$ref": "#/definitions/PivotTableRowsLayout" + }, + "SingleMetricVisibility": { + "$ref": "#/definitions/Visibility" + }, + "ToggleButtonsVisibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "PivotTablePaginatedReportOptions": { + "additionalProperties": false, + "properties": { + "OverflowColumnHeaderVisibility": { + "$ref": "#/definitions/Visibility" + }, + "VerticalOverflowVisibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "PivotTableRowsLabelOptions": { + "additionalProperties": false, + "properties": { + "CustomLabel": { + "maxLength": 1024, + "minLength": 1, + "type": "string" + }, + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "PivotTableRowsLayout": { + "enum": [ + "TABULAR", + "HIERARCHY" + ], + "type": "string" + }, + "PivotTableSortBy": { + "additionalProperties": false, + "properties": { + "Column": { + "$ref": "#/definitions/ColumnSort" + }, + "DataPath": { + "$ref": "#/definitions/DataPathSort" + }, + "Field": { + "$ref": "#/definitions/FieldSort" + } + }, + "type": "object" + }, + "PivotTableSortConfiguration": { + "additionalProperties": false, + "properties": { + "FieldSortOptions": { + "items": { + "$ref": "#/definitions/PivotFieldSortOptions" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "PivotTableSubtotalLevel": { + "enum": [ + "ALL", + "CUSTOM", + "LAST" + ], + "type": "string" + }, + "PivotTableTotalOptions": { + "additionalProperties": false, + "properties": { + "ColumnSubtotalOptions": { + "$ref": "#/definitions/SubtotalOptions" + }, + "ColumnTotalOptions": { + "$ref": "#/definitions/PivotTotalOptions" + }, + "RowSubtotalOptions": { + "$ref": "#/definitions/SubtotalOptions" + }, + "RowTotalOptions": { + "$ref": "#/definitions/PivotTotalOptions" + } + }, + "type": "object" + }, + "PivotTableVisual": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/VisualCustomAction" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "ChartConfiguration": { + "$ref": "#/definitions/PivotTableConfiguration" + }, + "ConditionalFormatting": { + "$ref": "#/definitions/PivotTableConditionalFormatting" + }, + "Subtitle": { + "$ref": "#/definitions/VisualSubtitleLabelOptions" + }, + "Title": { + "$ref": "#/definitions/VisualTitleLabelOptions" + }, + "VisualId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "VisualId" + ], + "type": "object" + }, + "PivotTotalOptions": { + "additionalProperties": false, + "properties": { + "CustomLabel": { + "type": "string" + }, + "MetricHeaderCellStyle": { + "$ref": "#/definitions/TableCellStyle" + }, + "Placement": { + "$ref": "#/definitions/TableTotalsPlacement" + }, + "ScrollStatus": { + "$ref": "#/definitions/TableTotalsScrollStatus" + }, + "TotalAggregationOptions": { + "items": { + "$ref": "#/definitions/TotalAggregationOption" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "TotalCellStyle": { + "$ref": "#/definitions/TableCellStyle" + }, + "TotalsVisibility": { + "$ref": "#/definitions/Visibility" + }, + "ValueCellStyle": { + "$ref": "#/definitions/TableCellStyle" + } + }, + "type": "object" + }, + "PredefinedHierarchy": { + "additionalProperties": false, + "properties": { + "Columns": { + "items": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "maxItems": 10, + "minItems": 1, + "type": "array" + }, + "DrillDownFilters": { + "items": { + "$ref": "#/definitions/DrillDownFilter" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "HierarchyId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Columns", + "HierarchyId" + ], + "type": "object" + }, + "PrimaryValueDisplayType": { + "enum": [ + "HIDDEN", + "COMPARISON", + "ACTUAL" + ], + "type": "string" + }, + "ProgressBarOptions": { + "additionalProperties": false, + "properties": { + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "RadarChartAggregatedFieldWells": { + "additionalProperties": false, + "properties": { + "Category": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 1, + "minItems": 0, + "type": "array" + }, + "Color": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 1, + "minItems": 0, + "type": "array" + }, + "Values": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 20, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "RadarChartAreaStyleSettings": { + "additionalProperties": false, + "properties": { + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "RadarChartAxesRangeScale": { + "enum": [ + "AUTO", + "INDEPENDENT", + "SHARED" + ], + "type": "string" + }, + "RadarChartConfiguration": { + "additionalProperties": false, + "properties": { + "AlternateBandColorsVisibility": { + "$ref": "#/definitions/Visibility" + }, + "AlternateBandEvenColor": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + }, + "AlternateBandOddColor": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + }, + "AxesRangeScale": { + "$ref": "#/definitions/RadarChartAxesRangeScale" + }, + "BaseSeriesSettings": { + "$ref": "#/definitions/RadarChartSeriesSettings" + }, + "CategoryAxis": { + "$ref": "#/definitions/AxisDisplayOptions" + }, + "CategoryLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "ColorAxis": { + "$ref": "#/definitions/AxisDisplayOptions" + }, + "ColorLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "FieldWells": { + "$ref": "#/definitions/RadarChartFieldWells" + }, + "Legend": { + "$ref": "#/definitions/LegendOptions" + }, + "Shape": { + "$ref": "#/definitions/RadarChartShape" + }, + "SortConfiguration": { + "$ref": "#/definitions/RadarChartSortConfiguration" + }, + "StartAngle": { + "maximum": 360, + "minimum": -360, + "type": "number" + }, + "VisualPalette": { + "$ref": "#/definitions/VisualPalette" + } + }, + "type": "object" + }, + "RadarChartFieldWells": { + "additionalProperties": false, + "properties": { + "RadarChartAggregatedFieldWells": { + "$ref": "#/definitions/RadarChartAggregatedFieldWells" + } + }, + "type": "object" + }, + "RadarChartSeriesSettings": { + "additionalProperties": false, + "properties": { + "AreaStyleSettings": { + "$ref": "#/definitions/RadarChartAreaStyleSettings" + } + }, + "type": "object" + }, + "RadarChartShape": { + "enum": [ + "CIRCLE", + "POLYGON" + ], + "type": "string" + }, + "RadarChartSortConfiguration": { + "additionalProperties": false, + "properties": { + "CategoryItemsLimit": { + "$ref": "#/definitions/ItemsLimitConfiguration" + }, + "CategorySort": { + "items": { + "$ref": "#/definitions/FieldSortOptions" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + }, + "ColorItemsLimit": { + "$ref": "#/definitions/ItemsLimitConfiguration" + }, + "ColorSort": { + "items": { + "$ref": "#/definitions/FieldSortOptions" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "RadarChartVisual": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/VisualCustomAction" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "ChartConfiguration": { + "$ref": "#/definitions/RadarChartConfiguration" + }, + "ColumnHierarchies": { + "items": { + "$ref": "#/definitions/ColumnHierarchy" + }, + "maxItems": 2, + "minItems": 0, + "type": "array" + }, + "Subtitle": { + "$ref": "#/definitions/VisualSubtitleLabelOptions" + }, + "Title": { + "$ref": "#/definitions/VisualTitleLabelOptions" + }, + "VisualId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "VisualId" + ], + "type": "object" + }, + "RangeEndsLabelType": { + "additionalProperties": false, + "properties": { + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "ReferenceLine": { + "additionalProperties": false, + "properties": { + "DataConfiguration": { + "$ref": "#/definitions/ReferenceLineDataConfiguration" + }, + "LabelConfiguration": { + "$ref": "#/definitions/ReferenceLineLabelConfiguration" + }, + "Status": { + "$ref": "#/definitions/WidgetStatus" + }, + "StyleConfiguration": { + "$ref": "#/definitions/ReferenceLineStyleConfiguration" + } + }, + "required": [ + "DataConfiguration" + ], + "type": "object" + }, + "ReferenceLineCustomLabelConfiguration": { + "additionalProperties": false, + "properties": { + "CustomLabel": { + "pattern": "\\S", + "type": "string" + } + }, + "required": [ + "CustomLabel" + ], + "type": "object" + }, + "ReferenceLineDataConfiguration": { + "additionalProperties": false, + "properties": { + "AxisBinding": { + "$ref": "#/definitions/AxisBinding" + }, + "DynamicConfiguration": { + "$ref": "#/definitions/ReferenceLineDynamicDataConfiguration" + }, + "SeriesType": { + "$ref": "#/definitions/ReferenceLineSeriesType" + }, + "StaticConfiguration": { + "$ref": "#/definitions/ReferenceLineStaticDataConfiguration" + } + }, + "type": "object" + }, + "ReferenceLineDynamicDataConfiguration": { + "additionalProperties": false, + "properties": { + "Calculation": { + "$ref": "#/definitions/NumericalAggregationFunction" + }, + "Column": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "MeasureAggregationFunction": { + "$ref": "#/definitions/AggregationFunction" + } + }, + "required": [ + "Calculation", + "Column" + ], + "type": "object" + }, + "ReferenceLineLabelConfiguration": { + "additionalProperties": false, + "properties": { + "CustomLabelConfiguration": { + "$ref": "#/definitions/ReferenceLineCustomLabelConfiguration" + }, + "FontColor": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + }, + "FontConfiguration": { + "$ref": "#/definitions/FontConfiguration" + }, + "HorizontalPosition": { + "$ref": "#/definitions/ReferenceLineLabelHorizontalPosition" + }, + "ValueLabelConfiguration": { + "$ref": "#/definitions/ReferenceLineValueLabelConfiguration" + }, + "VerticalPosition": { + "$ref": "#/definitions/ReferenceLineLabelVerticalPosition" + } + }, + "type": "object" + }, + "ReferenceLineLabelHorizontalPosition": { + "enum": [ + "LEFT", + "CENTER", + "RIGHT" + ], + "type": "string" + }, + "ReferenceLineLabelVerticalPosition": { + "enum": [ + "ABOVE", + "BELOW" + ], + "type": "string" + }, + "ReferenceLinePatternType": { + "enum": [ + "SOLID", + "DASHED", + "DOTTED" + ], + "type": "string" + }, + "ReferenceLineSeriesType": { + "enum": [ + "BAR", + "LINE" + ], + "type": "string" + }, + "ReferenceLineStaticDataConfiguration": { + "additionalProperties": false, + "properties": { + "Value": { + "default": 0, + "type": "number" + } + }, + "required": [ + "Value" + ], + "type": "object" + }, + "ReferenceLineStyleConfiguration": { + "additionalProperties": false, + "properties": { + "Color": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + }, + "Pattern": { + "$ref": "#/definitions/ReferenceLinePatternType" + } + }, + "type": "object" + }, + "ReferenceLineValueLabelConfiguration": { + "additionalProperties": false, + "properties": { + "FormatConfiguration": { + "$ref": "#/definitions/NumericFormatConfiguration" + }, + "RelativePosition": { + "$ref": "#/definitions/ReferenceLineValueLabelRelativePosition" + } + }, + "type": "object" + }, + "ReferenceLineValueLabelRelativePosition": { + "enum": [ + "BEFORE_CUSTOM_LABEL", + "AFTER_CUSTOM_LABEL" + ], + "type": "string" + }, + "RelativeDateTimeControlDisplayOptions": { + "additionalProperties": false, + "properties": { + "DateTimeFormat": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "InfoIconLabelOptions": { + "$ref": "#/definitions/SheetControlInfoIconLabelOptions" + }, + "TitleOptions": { + "$ref": "#/definitions/LabelOptions" + } + }, + "type": "object" + }, + "RelativeDateType": { + "enum": [ + "PREVIOUS", + "THIS", + "LAST", + "NOW", + "NEXT" + ], + "type": "string" + }, + "RelativeDatesFilter": { + "additionalProperties": false, + "properties": { + "AnchorDateConfiguration": { + "$ref": "#/definitions/AnchorDateConfiguration" + }, + "Column": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "DefaultFilterControlConfiguration": { + "$ref": "#/definitions/DefaultFilterControlConfiguration" + }, + "ExcludePeriodConfiguration": { + "$ref": "#/definitions/ExcludePeriodConfiguration" + }, + "FilterId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "MinimumGranularity": { + "$ref": "#/definitions/TimeGranularity" + }, + "NullOption": { + "$ref": "#/definitions/FilterNullOption" + }, + "ParameterName": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "RelativeDateType": { + "$ref": "#/definitions/RelativeDateType" + }, + "RelativeDateValue": { + "default": null, + "type": "number" + }, + "TimeGranularity": { + "$ref": "#/definitions/TimeGranularity" + } + }, + "required": [ + "AnchorDateConfiguration", + "Column", + "FilterId", + "NullOption", + "RelativeDateType", + "TimeGranularity" + ], + "type": "object" + }, + "RelativeFontSize": { + "enum": [ + "EXTRA_SMALL", + "SMALL", + "MEDIUM", + "LARGE", + "EXTRA_LARGE" + ], + "type": "string" + }, + "ResizeOption": { + "enum": [ + "FIXED", + "RESPONSIVE" + ], + "type": "string" + }, + "ResourcePermission": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "type": "string" + }, + "maxItems": 20, + "minItems": 1, + "type": "array" + }, + "Principal": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Actions", + "Principal" + ], + "type": "object" + }, + "ResourceStatus": { + "enum": [ + "CREATION_IN_PROGRESS", + "CREATION_SUCCESSFUL", + "CREATION_FAILED", + "UPDATE_IN_PROGRESS", + "UPDATE_SUCCESSFUL", + "UPDATE_FAILED", + "DELETED" + ], + "type": "string" + }, + "RollingDateConfiguration": { + "additionalProperties": false, + "properties": { + "DataSetIdentifier": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Expression": { + "maxLength": 4096, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Expression" + ], + "type": "object" + }, + "RowAlternateColorOptions": { + "additionalProperties": false, + "properties": { + "RowAlternateColors": { + "items": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + }, + "maxItems": 1, + "minItems": 0, + "type": "array" + }, + "Status": { + "$ref": "#/definitions/WidgetStatus" + }, + "UsePrimaryBackgroundColor": { + "$ref": "#/definitions/WidgetStatus" + } + }, + "type": "object" + }, + "SameSheetTargetVisualConfiguration": { + "additionalProperties": false, + "properties": { + "TargetVisualOptions": { + "$ref": "#/definitions/TargetVisualOptions" + }, + "TargetVisuals": { + "items": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "maxItems": 50, + "minItems": 1, + "type": "array" + } + }, + "type": "object" + }, + "SankeyDiagramAggregatedFieldWells": { + "additionalProperties": false, + "properties": { + "Destination": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "Source": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "Weight": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "SankeyDiagramChartConfiguration": { + "additionalProperties": false, + "properties": { + "DataLabels": { + "$ref": "#/definitions/DataLabelOptions" + }, + "FieldWells": { + "$ref": "#/definitions/SankeyDiagramFieldWells" + }, + "SortConfiguration": { + "$ref": "#/definitions/SankeyDiagramSortConfiguration" + } + }, + "type": "object" + }, + "SankeyDiagramFieldWells": { + "additionalProperties": false, + "properties": { + "SankeyDiagramAggregatedFieldWells": { + "$ref": "#/definitions/SankeyDiagramAggregatedFieldWells" + } + }, + "type": "object" + }, + "SankeyDiagramSortConfiguration": { + "additionalProperties": false, + "properties": { + "DestinationItemsLimit": { + "$ref": "#/definitions/ItemsLimitConfiguration" + }, + "SourceItemsLimit": { + "$ref": "#/definitions/ItemsLimitConfiguration" + }, + "WeightSort": { + "items": { + "$ref": "#/definitions/FieldSortOptions" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "SankeyDiagramVisual": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/VisualCustomAction" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "ChartConfiguration": { + "$ref": "#/definitions/SankeyDiagramChartConfiguration" + }, + "Subtitle": { + "$ref": "#/definitions/VisualSubtitleLabelOptions" + }, + "Title": { + "$ref": "#/definitions/VisualTitleLabelOptions" + }, + "VisualId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "VisualId" + ], + "type": "object" + }, + "ScatterPlotCategoricallyAggregatedFieldWells": { + "additionalProperties": false, + "properties": { + "Category": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "Label": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "Size": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "XAxis": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "YAxis": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "ScatterPlotConfiguration": { + "additionalProperties": false, + "properties": { + "DataLabels": { + "$ref": "#/definitions/DataLabelOptions" + }, + "FieldWells": { + "$ref": "#/definitions/ScatterPlotFieldWells" + }, + "Legend": { + "$ref": "#/definitions/LegendOptions" + }, + "Tooltip": { + "$ref": "#/definitions/TooltipOptions" + }, + "VisualPalette": { + "$ref": "#/definitions/VisualPalette" + }, + "XAxisDisplayOptions": { + "$ref": "#/definitions/AxisDisplayOptions" + }, + "XAxisLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "YAxisDisplayOptions": { + "$ref": "#/definitions/AxisDisplayOptions" + }, + "YAxisLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + } + }, + "type": "object" + }, + "ScatterPlotFieldWells": { + "additionalProperties": false, + "properties": { + "ScatterPlotCategoricallyAggregatedFieldWells": { + "$ref": "#/definitions/ScatterPlotCategoricallyAggregatedFieldWells" + }, + "ScatterPlotUnaggregatedFieldWells": { + "$ref": "#/definitions/ScatterPlotUnaggregatedFieldWells" + } + }, + "type": "object" + }, + "ScatterPlotUnaggregatedFieldWells": { + "additionalProperties": false, + "properties": { + "Category": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "Label": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "Size": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "XAxis": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "YAxis": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "ScatterPlotVisual": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/VisualCustomAction" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "ChartConfiguration": { + "$ref": "#/definitions/ScatterPlotConfiguration" + }, + "ColumnHierarchies": { + "items": { + "$ref": "#/definitions/ColumnHierarchy" + }, + "maxItems": 2, + "minItems": 0, + "type": "array" + }, + "Subtitle": { + "$ref": "#/definitions/VisualSubtitleLabelOptions" + }, + "Title": { + "$ref": "#/definitions/VisualTitleLabelOptions" + }, + "VisualId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "VisualId" + ], + "type": "object" + }, + "ScrollBarOptions": { + "additionalProperties": false, + "properties": { + "Visibility": { + "$ref": "#/definitions/Visibility" + }, + "VisibleRange": { + "$ref": "#/definitions/VisibleRangeOptions" + } + }, + "type": "object" + }, + "SecondaryValueOptions": { + "additionalProperties": false, + "properties": { + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "SectionAfterPageBreak": { + "additionalProperties": false, + "properties": { + "Status": { + "$ref": "#/definitions/SectionPageBreakStatus" + } + }, + "type": "object" + }, + "SectionBasedLayoutCanvasSizeOptions": { + "additionalProperties": false, + "properties": { + "PaperCanvasSizeOptions": { + "$ref": "#/definitions/SectionBasedLayoutPaperCanvasSizeOptions" + } + }, + "type": "object" + }, + "SectionBasedLayoutConfiguration": { + "additionalProperties": false, + "properties": { + "BodySections": { + "items": { + "$ref": "#/definitions/BodySectionConfiguration" + }, + "maxItems": 28, + "minItems": 0, + "type": "array" + }, + "CanvasSizeOptions": { + "$ref": "#/definitions/SectionBasedLayoutCanvasSizeOptions" + }, + "FooterSections": { + "items": { + "$ref": "#/definitions/HeaderFooterSectionConfiguration" + }, + "maxItems": 1, + "minItems": 0, + "type": "array" + }, + "HeaderSections": { + "items": { + "$ref": "#/definitions/HeaderFooterSectionConfiguration" + }, + "maxItems": 1, + "minItems": 0, + "type": "array" + } + }, + "required": [ + "BodySections", + "CanvasSizeOptions", + "FooterSections", + "HeaderSections" + ], + "type": "object" + }, + "SectionBasedLayoutPaperCanvasSizeOptions": { + "additionalProperties": false, + "properties": { + "PaperMargin": { + "$ref": "#/definitions/Spacing" + }, + "PaperOrientation": { + "$ref": "#/definitions/PaperOrientation" + }, + "PaperSize": { + "$ref": "#/definitions/PaperSize" + } + }, + "type": "object" + }, + "SectionLayoutConfiguration": { + "additionalProperties": false, + "properties": { + "FreeFormLayout": { + "$ref": "#/definitions/FreeFormSectionLayoutConfiguration" + } + }, + "required": [ + "FreeFormLayout" + ], + "type": "object" + }, + "SectionPageBreakConfiguration": { + "additionalProperties": false, + "properties": { + "After": { + "$ref": "#/definitions/SectionAfterPageBreak" + } + }, + "type": "object" + }, + "SectionPageBreakStatus": { + "enum": [ + "ENABLED", + "DISABLED" + ], + "type": "string" + }, + "SectionStyle": { + "additionalProperties": false, + "properties": { + "Height": { + "type": "string" + }, + "Padding": { + "$ref": "#/definitions/Spacing" + } + }, + "type": "object" + }, + "SelectAllValueOptions": { + "enum": [ + "ALL_VALUES" + ], + "type": "string" + }, + "SelectedFieldOptions": { + "enum": [ + "ALL_FIELDS" + ], + "type": "string" + }, + "SelectedSheetsFilterScopeConfiguration": { + "additionalProperties": false, + "properties": { + "SheetVisualScopingConfigurations": { + "items": { + "$ref": "#/definitions/SheetVisualScopingConfiguration" + }, + "maxItems": 50, + "minItems": 1, + "type": "array" + } + }, + "type": "object" + }, + "SelectedTooltipType": { + "enum": [ + "BASIC", + "DETAILED" + ], + "type": "string" + }, + "SeriesItem": { + "additionalProperties": false, + "properties": { + "DataFieldSeriesItem": { + "$ref": "#/definitions/DataFieldSeriesItem" + }, + "FieldSeriesItem": { + "$ref": "#/definitions/FieldSeriesItem" + } + }, + "type": "object" + }, + "SetParameterValueConfiguration": { + "additionalProperties": false, + "properties": { + "DestinationParameterName": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "Value": { + "$ref": "#/definitions/DestinationParameterValueConfiguration" + } + }, + "required": [ + "DestinationParameterName", + "Value" + ], + "type": "object" + }, + "ShapeConditionalFormat": { + "additionalProperties": false, + "properties": { + "BackgroundColor": { + "$ref": "#/definitions/ConditionalFormattingColor" + } + }, + "required": [ + "BackgroundColor" + ], + "type": "object" + }, + "Sheet": { + "additionalProperties": false, + "properties": { + "Name": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "SheetId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "type": "object" + }, + "SheetContentType": { + "enum": [ + "PAGINATED", + "INTERACTIVE" + ], + "type": "string" + }, + "SheetControlDateTimePickerType": { + "enum": [ + "SINGLE_VALUED", + "DATE_RANGE" + ], + "type": "string" + }, + "SheetControlInfoIconLabelOptions": { + "additionalProperties": false, + "properties": { + "InfoIconText": { + "maxLength": 100, + "minLength": 1, + "type": "string" + }, + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "SheetControlLayout": { + "additionalProperties": false, + "properties": { + "Configuration": { + "$ref": "#/definitions/SheetControlLayoutConfiguration" + } + }, + "required": [ + "Configuration" + ], + "type": "object" + }, + "SheetControlLayoutConfiguration": { + "additionalProperties": false, + "properties": { + "GridLayout": { + "$ref": "#/definitions/GridLayoutConfiguration" + } + }, + "type": "object" + }, + "SheetControlListType": { + "enum": [ + "MULTI_SELECT", + "SINGLE_SELECT" + ], + "type": "string" + }, + "SheetControlSliderType": { + "enum": [ + "SINGLE_POINT", + "RANGE" + ], + "type": "string" + }, + "SheetControlsOption": { + "additionalProperties": false, + "properties": { + "VisibilityState": { + "$ref": "#/definitions/DashboardUIState" + } + }, + "type": "object" + }, + "SheetDefinition": { + "additionalProperties": false, + "properties": { + "ContentType": { + "$ref": "#/definitions/SheetContentType" + }, + "Description": { + "maxLength": 1024, + "minLength": 1, + "type": "string" + }, + "FilterControls": { + "items": { + "$ref": "#/definitions/FilterControl" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "Layouts": { + "items": { + "$ref": "#/definitions/Layout" + }, + "maxItems": 1, + "minItems": 1, + "type": "array" + }, + "Name": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "ParameterControls": { + "items": { + "$ref": "#/definitions/ParameterControl" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "SheetControlLayouts": { + "items": { + "$ref": "#/definitions/SheetControlLayout" + }, + "maxItems": 1, + "minItems": 0, + "type": "array" + }, + "SheetId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "TextBoxes": { + "items": { + "$ref": "#/definitions/SheetTextBox" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + }, + "Title": { + "maxLength": 1024, + "minLength": 1, + "type": "string" + }, + "Visuals": { + "items": { + "$ref": "#/definitions/Visual" + }, + "maxItems": 50, + "minItems": 0, + "type": "array" + } + }, + "required": [ + "SheetId" + ], + "type": "object" + }, + "SheetElementConfigurationOverrides": { + "additionalProperties": false, + "properties": { + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "SheetElementRenderingRule": { + "additionalProperties": false, + "properties": { + "ConfigurationOverrides": { + "$ref": "#/definitions/SheetElementConfigurationOverrides" + }, + "Expression": { + "maxLength": 4096, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "ConfigurationOverrides", + "Expression" + ], + "type": "object" + }, + "SheetLayoutElementMaximizationOption": { + "additionalProperties": false, + "properties": { + "AvailabilityStatus": { + "$ref": "#/definitions/DashboardBehavior" + } + }, + "type": "object" + }, + "SheetTextBox": { + "additionalProperties": false, + "properties": { + "Content": { + "maxLength": 150000, + "minLength": 0, + "type": "string" + }, + "SheetTextBoxId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "SheetTextBoxId" + ], + "type": "object" + }, + "SheetVisualScopingConfiguration": { + "additionalProperties": false, + "properties": { + "Scope": { + "$ref": "#/definitions/FilterVisualScope" + }, + "SheetId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "VisualIds": { + "items": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "maxItems": 50, + "minItems": 0, + "type": "array" + } + }, + "required": [ + "Scope", + "SheetId" + ], + "type": "object" + }, + "ShortFormatText": { + "additionalProperties": false, + "properties": { + "PlainText": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "RichText": { + "maxLength": 1024, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "SimpleAttributeAggregationFunction": { + "enum": [ + "UNIQUE_VALUE" + ], + "type": "string" + }, + "SimpleClusterMarker": { + "additionalProperties": false, + "properties": { + "Color": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + } + }, + "type": "object" + }, + "SimpleNumericalAggregationFunction": { + "enum": [ + "SUM", + "AVERAGE", + "MIN", + "MAX", + "COUNT", + "DISTINCT_COUNT", + "VAR", + "VARP", + "STDEV", + "STDEVP", + "MEDIAN" + ], + "type": "string" + }, + "SimpleTotalAggregationFunction": { + "enum": [ + "DEFAULT", + "SUM", + "AVERAGE", + "MIN", + "MAX", + "NONE" + ], + "type": "string" + }, + "SingleAxisOptions": { + "additionalProperties": false, + "properties": { + "YAxisOptions": { + "properties": { + "YAxis": { + "$ref": "#/definitions/SingleYAxisOption" + } + } + } + }, + "type": "object" + }, + "SingleYAxisOption": { + "enum": [ + "PRIMARY_Y_AXIS" + ], + "type": "string" + }, + "SliderControlDisplayOptions": { + "additionalProperties": false, + "properties": { + "InfoIconLabelOptions": { + "$ref": "#/definitions/SheetControlInfoIconLabelOptions" + }, + "TitleOptions": { + "$ref": "#/definitions/LabelOptions" + } + }, + "type": "object" + }, + "SmallMultiplesAxisPlacement": { + "enum": [ + "OUTSIDE", + "INSIDE" + ], + "type": "string" + }, + "SmallMultiplesAxisProperties": { + "additionalProperties": false, + "properties": { + "Placement": { + "$ref": "#/definitions/SmallMultiplesAxisPlacement" + }, + "Scale": { + "$ref": "#/definitions/SmallMultiplesAxisScale" + } + }, + "type": "object" + }, + "SmallMultiplesAxisScale": { + "enum": [ + "SHARED", + "INDEPENDENT" + ], + "type": "string" + }, + "SmallMultiplesOptions": { + "additionalProperties": false, + "properties": { + "MaxVisibleColumns": { + "maximum": 10, + "minimum": 1, + "type": "number" + }, + "MaxVisibleRows": { + "maximum": 10, + "minimum": 1, + "type": "number" + }, + "PanelConfiguration": { + "$ref": "#/definitions/PanelConfiguration" + }, + "XAxis": { + "$ref": "#/definitions/SmallMultiplesAxisProperties" + }, + "YAxis": { + "$ref": "#/definitions/SmallMultiplesAxisProperties" + } + }, + "type": "object" + }, + "SortDirection": { + "enum": [ + "ASC", + "DESC" + ], + "type": "string" + }, + "Spacing": { + "additionalProperties": false, + "properties": { + "Bottom": { + "type": "string" + }, + "Left": { + "type": "string" + }, + "Right": { + "type": "string" + }, + "Top": { + "type": "string" + } + }, + "type": "object" + }, + "SpecialValue": { + "enum": [ + "EMPTY", + "NULL", + "OTHER" + ], + "type": "string" + }, + "StringDefaultValues": { + "additionalProperties": false, + "properties": { + "DynamicValue": { + "$ref": "#/definitions/DynamicDefaultValue" + }, + "StaticValues": { + "items": { + "type": "string" + }, + "maxItems": 50000, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "StringFormatConfiguration": { + "additionalProperties": false, + "properties": { + "NullValueFormatConfiguration": { + "$ref": "#/definitions/NullValueFormatConfiguration" + }, + "NumericFormatConfiguration": { + "$ref": "#/definitions/NumericFormatConfiguration" + } + }, + "type": "object" + }, + "StringParameter": { + "additionalProperties": false, + "properties": { + "Name": { + "pattern": "\\S", + "type": "string" + }, + "Values": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "Name", + "Values" + ], + "type": "object" + }, + "StringParameterDeclaration": { + "additionalProperties": false, + "properties": { + "DefaultValues": { + "$ref": "#/definitions/StringDefaultValues" + }, + "MappedDataSetParameters": { + "items": { + "$ref": "#/definitions/MappedDataSetParameter" + }, + "maxItems": 150, + "minItems": 0, + "type": "array" + }, + "Name": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "ParameterValueType": { + "$ref": "#/definitions/ParameterValueType" + }, + "ValueWhenUnset": { + "$ref": "#/definitions/StringValueWhenUnsetConfiguration" + } + }, + "required": [ + "Name", + "ParameterValueType" + ], + "type": "object" + }, + "StringValueWhenUnsetConfiguration": { + "additionalProperties": false, + "properties": { + "CustomValue": { + "type": "string" + }, + "ValueWhenUnsetOption": { + "$ref": "#/definitions/ValueWhenUnsetOption" + } + }, + "type": "object" + }, + "StyledCellType": { + "enum": [ + "TOTAL", + "METRIC_HEADER", + "VALUE" + ], + "type": "string" + }, + "SubtotalOptions": { + "additionalProperties": false, + "properties": { + "CustomLabel": { + "type": "string" + }, + "FieldLevel": { + "$ref": "#/definitions/PivotTableSubtotalLevel" + }, + "FieldLevelOptions": { + "items": { + "$ref": "#/definitions/PivotTableFieldSubtotalOptions" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + }, + "MetricHeaderCellStyle": { + "$ref": "#/definitions/TableCellStyle" + }, + "StyleTargets": { + "items": { + "$ref": "#/definitions/TableStyleTarget" + }, + "maxItems": 3, + "minItems": 0, + "type": "array" + }, + "TotalCellStyle": { + "$ref": "#/definitions/TableCellStyle" + }, + "TotalsVisibility": { + "$ref": "#/definitions/Visibility" + }, + "ValueCellStyle": { + "$ref": "#/definitions/TableCellStyle" + } + }, + "type": "object" + }, + "TableAggregatedFieldWells": { + "additionalProperties": false, + "properties": { + "GroupBy": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "Values": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "TableBorderOptions": { + "additionalProperties": false, + "properties": { + "Color": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + }, + "Style": { + "$ref": "#/definitions/TableBorderStyle" + }, + "Thickness": { + "maximum": 4, + "minimum": 1, + "type": "number" + } + }, + "type": "object" + }, + "TableBorderStyle": { + "enum": [ + "NONE", + "SOLID" + ], + "type": "string" + }, + "TableCellConditionalFormatting": { + "additionalProperties": false, + "properties": { + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "TextFormat": { + "$ref": "#/definitions/TextConditionalFormat" + } + }, + "required": [ + "FieldId" + ], + "type": "object" + }, + "TableCellImageScalingConfiguration": { + "enum": [ + "FIT_TO_CELL_HEIGHT", + "FIT_TO_CELL_WIDTH", + "DO_NOT_SCALE" + ], + "type": "string" + }, + "TableCellImageSizingConfiguration": { + "additionalProperties": false, + "properties": { + "TableCellImageScalingConfiguration": { + "$ref": "#/definitions/TableCellImageScalingConfiguration" + } + }, + "type": "object" + }, + "TableCellStyle": { + "additionalProperties": false, + "properties": { + "BackgroundColor": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + }, + "Border": { + "$ref": "#/definitions/GlobalTableBorderOptions" + }, + "FontConfiguration": { + "$ref": "#/definitions/FontConfiguration" + }, + "Height": { + "maximum": 500, + "minimum": 8, + "type": "number" + }, + "HorizontalTextAlignment": { + "$ref": "#/definitions/HorizontalTextAlignment" + }, + "TextWrap": { + "$ref": "#/definitions/TextWrap" + }, + "VerticalTextAlignment": { + "$ref": "#/definitions/VerticalTextAlignment" + }, + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "TableConditionalFormatting": { + "additionalProperties": false, + "properties": { + "ConditionalFormattingOptions": { + "items": { + "$ref": "#/definitions/TableConditionalFormattingOption" + }, + "maxItems": 500, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "TableConditionalFormattingOption": { + "additionalProperties": false, + "properties": { + "Cell": { + "$ref": "#/definitions/TableCellConditionalFormatting" + }, + "Row": { + "$ref": "#/definitions/TableRowConditionalFormatting" + } + }, + "type": "object" + }, + "TableConfiguration": { + "additionalProperties": false, + "properties": { + "FieldOptions": { + "$ref": "#/definitions/TableFieldOptions" + }, + "FieldWells": { + "$ref": "#/definitions/TableFieldWells" + }, + "PaginatedReportOptions": { + "$ref": "#/definitions/TablePaginatedReportOptions" + }, + "SortConfiguration": { + "$ref": "#/definitions/TableSortConfiguration" + }, + "TableInlineVisualizations": { + "items": { + "$ref": "#/definitions/TableInlineVisualization" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "TableOptions": { + "$ref": "#/definitions/TableOptions" + }, + "TotalOptions": { + "$ref": "#/definitions/TotalOptions" + } + }, + "type": "object" + }, + "TableFieldCustomIconContent": { + "additionalProperties": false, + "properties": { + "Icon": { + "$ref": "#/definitions/TableFieldIconSetType" + } + }, + "type": "object" + }, + "TableFieldCustomTextContent": { + "additionalProperties": false, + "properties": { + "FontConfiguration": { + "$ref": "#/definitions/FontConfiguration" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "FontConfiguration" + ], + "type": "object" + }, + "TableFieldIconSetType": { + "enum": [ + "LINK" + ], + "type": "string" + }, + "TableFieldImageConfiguration": { + "additionalProperties": false, + "properties": { + "SizingOptions": { + "$ref": "#/definitions/TableCellImageSizingConfiguration" + } + }, + "type": "object" + }, + "TableFieldLinkConfiguration": { + "additionalProperties": false, + "properties": { + "Content": { + "$ref": "#/definitions/TableFieldLinkContentConfiguration" + }, + "Target": { + "$ref": "#/definitions/URLTargetConfiguration" + } + }, + "required": [ + "Content", + "Target" + ], + "type": "object" + }, + "TableFieldLinkContentConfiguration": { + "additionalProperties": false, + "properties": { + "CustomIconContent": { + "$ref": "#/definitions/TableFieldCustomIconContent" + }, + "CustomTextContent": { + "$ref": "#/definitions/TableFieldCustomTextContent" + } + }, + "type": "object" + }, + "TableFieldOption": { + "additionalProperties": false, + "properties": { + "CustomLabel": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "URLStyling": { + "$ref": "#/definitions/TableFieldURLConfiguration" + }, + "Visibility": { + "$ref": "#/definitions/Visibility" + }, + "Width": { + "type": "string" + } + }, + "required": [ + "FieldId" + ], + "type": "object" + }, + "TableFieldOptions": { + "additionalProperties": false, + "properties": { + "Order": { + "items": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "PinnedFieldOptions": { + "$ref": "#/definitions/TablePinnedFieldOptions" + }, + "SelectedFieldOptions": { + "items": { + "$ref": "#/definitions/TableFieldOption" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "TableFieldURLConfiguration": { + "additionalProperties": false, + "properties": { + "ImageConfiguration": { + "$ref": "#/definitions/TableFieldImageConfiguration" + }, + "LinkConfiguration": { + "$ref": "#/definitions/TableFieldLinkConfiguration" + } + }, + "type": "object" + }, + "TableFieldWells": { + "additionalProperties": false, + "properties": { + "TableAggregatedFieldWells": { + "$ref": "#/definitions/TableAggregatedFieldWells" + }, + "TableUnaggregatedFieldWells": { + "$ref": "#/definitions/TableUnaggregatedFieldWells" + } + }, + "type": "object" + }, + "TableInlineVisualization": { + "additionalProperties": false, + "properties": { + "DataBars": { + "$ref": "#/definitions/DataBarsOptions" + } + }, + "type": "object" + }, + "TableOptions": { + "additionalProperties": false, + "properties": { + "CellStyle": { + "$ref": "#/definitions/TableCellStyle" + }, + "HeaderStyle": { + "$ref": "#/definitions/TableCellStyle" + }, + "Orientation": { + "$ref": "#/definitions/TableOrientation" + }, + "RowAlternateColorOptions": { + "$ref": "#/definitions/RowAlternateColorOptions" + } + }, + "type": "object" + }, + "TableOrientation": { + "enum": [ + "VERTICAL", + "HORIZONTAL" + ], + "type": "string" + }, + "TablePaginatedReportOptions": { + "additionalProperties": false, + "properties": { + "OverflowColumnHeaderVisibility": { + "$ref": "#/definitions/Visibility" + }, + "VerticalOverflowVisibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "TablePinnedFieldOptions": { + "additionalProperties": false, + "properties": { + "PinnedLeftFields": { + "items": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "maxItems": 201, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "TableRowConditionalFormatting": { + "additionalProperties": false, + "properties": { + "BackgroundColor": { + "$ref": "#/definitions/ConditionalFormattingColor" + }, + "TextColor": { + "$ref": "#/definitions/ConditionalFormattingColor" + } + }, + "type": "object" + }, + "TableSideBorderOptions": { + "additionalProperties": false, + "properties": { + "Bottom": { + "$ref": "#/definitions/TableBorderOptions" + }, + "InnerHorizontal": { + "$ref": "#/definitions/TableBorderOptions" + }, + "InnerVertical": { + "$ref": "#/definitions/TableBorderOptions" + }, + "Left": { + "$ref": "#/definitions/TableBorderOptions" + }, + "Right": { + "$ref": "#/definitions/TableBorderOptions" + }, + "Top": { + "$ref": "#/definitions/TableBorderOptions" + } + }, + "type": "object" + }, + "TableSortConfiguration": { + "additionalProperties": false, + "properties": { + "PaginationConfiguration": { + "$ref": "#/definitions/PaginationConfiguration" + }, + "RowSort": { + "items": { + "$ref": "#/definitions/FieldSortOptions" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "TableStyleTarget": { + "additionalProperties": false, + "properties": { + "CellType": { + "$ref": "#/definitions/StyledCellType" + } + }, + "required": [ + "CellType" + ], + "type": "object" + }, + "TableTotalsPlacement": { + "enum": [ + "START", + "END", + "AUTO" + ], + "type": "string" + }, + "TableTotalsScrollStatus": { + "enum": [ + "PINNED", + "SCROLLED" + ], + "type": "string" + }, + "TableUnaggregatedFieldWells": { + "additionalProperties": false, + "properties": { + "Values": { + "items": { + "$ref": "#/definitions/UnaggregatedField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "TableVisual": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/VisualCustomAction" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "ChartConfiguration": { + "$ref": "#/definitions/TableConfiguration" + }, + "ConditionalFormatting": { + "$ref": "#/definitions/TableConditionalFormatting" + }, + "Subtitle": { + "$ref": "#/definitions/VisualSubtitleLabelOptions" + }, + "Title": { + "$ref": "#/definitions/VisualTitleLabelOptions" + }, + "VisualId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "VisualId" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "TargetVisualOptions": { + "enum": [ + "ALL_VISUALS" + ], + "type": "string" + }, + "TextAreaControlDisplayOptions": { + "additionalProperties": false, + "properties": { + "InfoIconLabelOptions": { + "$ref": "#/definitions/SheetControlInfoIconLabelOptions" + }, + "PlaceholderOptions": { + "$ref": "#/definitions/TextControlPlaceholderOptions" + }, + "TitleOptions": { + "$ref": "#/definitions/LabelOptions" + } + }, + "type": "object" + }, + "TextConditionalFormat": { + "additionalProperties": false, + "properties": { + "BackgroundColor": { + "$ref": "#/definitions/ConditionalFormattingColor" + }, + "Icon": { + "$ref": "#/definitions/ConditionalFormattingIcon" + }, + "TextColor": { + "$ref": "#/definitions/ConditionalFormattingColor" + } + }, + "type": "object" + }, + "TextControlPlaceholderOptions": { + "additionalProperties": false, + "properties": { + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "TextFieldControlDisplayOptions": { + "additionalProperties": false, + "properties": { + "InfoIconLabelOptions": { + "$ref": "#/definitions/SheetControlInfoIconLabelOptions" + }, + "PlaceholderOptions": { + "$ref": "#/definitions/TextControlPlaceholderOptions" + }, + "TitleOptions": { + "$ref": "#/definitions/LabelOptions" + } + }, + "type": "object" + }, + "TextWrap": { + "enum": [ + "NONE", + "WRAP" + ], + "type": "string" + }, + "ThousandSeparatorOptions": { + "additionalProperties": false, + "properties": { + "Symbol": { + "$ref": "#/definitions/NumericSeparatorSymbol" + }, + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "TimeBasedForecastProperties": { + "additionalProperties": false, + "properties": { + "LowerBoundary": { + "default": null, + "type": "number" + }, + "PeriodsBackward": { + "maximum": 1000, + "minimum": 0, + "type": "number" + }, + "PeriodsForward": { + "maximum": 1000, + "minimum": 1, + "type": "number" + }, + "PredictionInterval": { + "maximum": 95, + "minimum": 50, + "type": "number" + }, + "Seasonality": { + "maximum": 180, + "minimum": 1, + "type": "number" + }, + "UpperBoundary": { + "default": null, + "type": "number" + } + }, + "type": "object" + }, + "TimeEqualityFilter": { + "additionalProperties": false, + "properties": { + "Column": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "DefaultFilterControlConfiguration": { + "$ref": "#/definitions/DefaultFilterControlConfiguration" + }, + "FilterId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "ParameterName": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "RollingDate": { + "$ref": "#/definitions/RollingDateConfiguration" + }, + "TimeGranularity": { + "$ref": "#/definitions/TimeGranularity" + }, + "Value": { + "format": "date-time", + "type": "string" + } + }, + "required": [ + "Column", + "FilterId" + ], + "type": "object" + }, + "TimeGranularity": { + "enum": [ + "YEAR", + "QUARTER", + "MONTH", + "WEEK", + "DAY", + "HOUR", + "MINUTE", + "SECOND", + "MILLISECOND" + ], + "type": "string" + }, + "TimeRangeDrillDownFilter": { + "additionalProperties": false, + "properties": { + "Column": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "RangeMaximum": { + "format": "date-time", + "type": "string" + }, + "RangeMinimum": { + "format": "date-time", + "type": "string" + }, + "TimeGranularity": { + "$ref": "#/definitions/TimeGranularity" + } + }, + "required": [ + "Column", + "RangeMaximum", + "RangeMinimum", + "TimeGranularity" + ], + "type": "object" + }, + "TimeRangeFilter": { + "additionalProperties": false, + "properties": { + "Column": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "DefaultFilterControlConfiguration": { + "$ref": "#/definitions/DefaultFilterControlConfiguration" + }, + "ExcludePeriodConfiguration": { + "$ref": "#/definitions/ExcludePeriodConfiguration" + }, + "FilterId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "IncludeMaximum": { + "default": null, + "type": "boolean" + }, + "IncludeMinimum": { + "default": null, + "type": "boolean" + }, + "NullOption": { + "$ref": "#/definitions/FilterNullOption" + }, + "RangeMaximumValue": { + "$ref": "#/definitions/TimeRangeFilterValue" + }, + "RangeMinimumValue": { + "$ref": "#/definitions/TimeRangeFilterValue" + }, + "TimeGranularity": { + "$ref": "#/definitions/TimeGranularity" + } + }, + "required": [ + "Column", + "FilterId", + "NullOption" + ], + "type": "object" + }, + "TimeRangeFilterValue": { + "additionalProperties": false, + "properties": { + "Parameter": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "RollingDate": { + "$ref": "#/definitions/RollingDateConfiguration" + }, + "StaticValue": { + "format": "date-time", + "type": "string" + } + }, + "type": "object" + }, + "TooltipItem": { + "additionalProperties": false, + "properties": { + "ColumnTooltipItem": { + "$ref": "#/definitions/ColumnTooltipItem" + }, + "FieldTooltipItem": { + "$ref": "#/definitions/FieldTooltipItem" + } + }, + "type": "object" + }, + "TooltipOptions": { + "additionalProperties": false, + "properties": { + "FieldBasedTooltip": { + "$ref": "#/definitions/FieldBasedTooltip" + }, + "SelectedTooltipType": { + "$ref": "#/definitions/SelectedTooltipType" + }, + "TooltipVisibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "TooltipTarget": { + "enum": [ + "BOTH", + "BAR", + "LINE" + ], + "type": "string" + }, + "TooltipTitleType": { + "enum": [ + "NONE", + "PRIMARY_VALUE" + ], + "type": "string" + }, + "TopBottomComputationType": { + "enum": [ + "TOP", + "BOTTOM" + ], + "type": "string" + }, + "TopBottomFilter": { + "additionalProperties": false, + "properties": { + "AggregationSortConfigurations": { + "items": { + "$ref": "#/definitions/AggregationSortConfiguration" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + }, + "Column": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "DefaultFilterControlConfiguration": { + "$ref": "#/definitions/DefaultFilterControlConfiguration" + }, + "FilterId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "Limit": { + "default": null, + "type": "number" + }, + "ParameterName": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + }, + "TimeGranularity": { + "$ref": "#/definitions/TimeGranularity" + } + }, + "required": [ + "AggregationSortConfigurations", + "Column", + "FilterId" + ], + "type": "object" + }, + "TopBottomMoversComputation": { + "additionalProperties": false, + "properties": { + "Category": { + "$ref": "#/definitions/DimensionField" + }, + "ComputationId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "MoverSize": { + "default": 0, + "maximum": 20, + "minimum": 1, + "type": "number" + }, + "Name": { + "type": "string" + }, + "SortOrder": { + "$ref": "#/definitions/TopBottomSortOrder" + }, + "Time": { + "$ref": "#/definitions/DimensionField" + }, + "Type": { + "$ref": "#/definitions/TopBottomComputationType" + }, + "Value": { + "$ref": "#/definitions/MeasureField" + } + }, + "required": [ + "ComputationId", + "Type" + ], + "type": "object" + }, + "TopBottomRankedComputation": { + "additionalProperties": false, + "properties": { + "Category": { + "$ref": "#/definitions/DimensionField" + }, + "ComputationId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "Name": { + "type": "string" + }, + "ResultSize": { + "default": 0, + "maximum": 20, + "minimum": 1, + "type": "number" + }, + "Type": { + "$ref": "#/definitions/TopBottomComputationType" + }, + "Value": { + "$ref": "#/definitions/MeasureField" + } + }, + "required": [ + "ComputationId", + "Type" + ], + "type": "object" + }, + "TopBottomSortOrder": { + "enum": [ + "PERCENT_DIFFERENCE", + "ABSOLUTE_DIFFERENCE" + ], + "type": "string" + }, + "TotalAggregationComputation": { + "additionalProperties": false, + "properties": { + "ComputationId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "Name": { + "type": "string" + }, + "Value": { + "$ref": "#/definitions/MeasureField" + } + }, + "required": [ + "ComputationId" + ], + "type": "object" + }, + "TotalAggregationFunction": { + "additionalProperties": false, + "properties": { + "SimpleTotalAggregationFunction": { + "$ref": "#/definitions/SimpleTotalAggregationFunction" + } + }, + "type": "object" + }, + "TotalAggregationOption": { + "additionalProperties": false, + "properties": { + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "TotalAggregationFunction": { + "$ref": "#/definitions/TotalAggregationFunction" + } + }, + "required": [ + "FieldId", + "TotalAggregationFunction" + ], + "type": "object" + }, + "TotalOptions": { + "additionalProperties": false, + "properties": { + "CustomLabel": { + "type": "string" + }, + "Placement": { + "$ref": "#/definitions/TableTotalsPlacement" + }, + "ScrollStatus": { + "$ref": "#/definitions/TableTotalsScrollStatus" + }, + "TotalAggregationOptions": { + "items": { + "$ref": "#/definitions/TotalAggregationOption" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "TotalCellStyle": { + "$ref": "#/definitions/TableCellStyle" + }, + "TotalsVisibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "TreeMapAggregatedFieldWells": { + "additionalProperties": false, + "properties": { + "Colors": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 1, + "minItems": 0, + "type": "array" + }, + "Groups": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 1, + "minItems": 0, + "type": "array" + }, + "Sizes": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 1, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "TreeMapConfiguration": { + "additionalProperties": false, + "properties": { + "ColorLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "ColorScale": { + "$ref": "#/definitions/ColorScale" + }, + "DataLabels": { + "$ref": "#/definitions/DataLabelOptions" + }, + "FieldWells": { + "$ref": "#/definitions/TreeMapFieldWells" + }, + "GroupLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "Legend": { + "$ref": "#/definitions/LegendOptions" + }, + "SizeLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "SortConfiguration": { + "$ref": "#/definitions/TreeMapSortConfiguration" + }, + "Tooltip": { + "$ref": "#/definitions/TooltipOptions" + } + }, + "type": "object" + }, + "TreeMapFieldWells": { + "additionalProperties": false, + "properties": { + "TreeMapAggregatedFieldWells": { + "$ref": "#/definitions/TreeMapAggregatedFieldWells" + } + }, + "type": "object" + }, + "TreeMapSortConfiguration": { + "additionalProperties": false, + "properties": { + "TreeMapGroupItemsLimitConfiguration": { + "$ref": "#/definitions/ItemsLimitConfiguration" + }, + "TreeMapSort": { + "items": { + "$ref": "#/definitions/FieldSortOptions" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "TreeMapVisual": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/VisualCustomAction" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "ChartConfiguration": { + "$ref": "#/definitions/TreeMapConfiguration" + }, + "ColumnHierarchies": { + "items": { + "$ref": "#/definitions/ColumnHierarchy" + }, + "maxItems": 2, + "minItems": 0, + "type": "array" + }, + "Subtitle": { + "$ref": "#/definitions/VisualSubtitleLabelOptions" + }, + "Title": { + "$ref": "#/definitions/VisualTitleLabelOptions" + }, + "VisualId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "VisualId" + ], + "type": "object" + }, + "TrendArrowOptions": { + "additionalProperties": false, + "properties": { + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "URLTargetConfiguration": { + "enum": [ + "NEW_TAB", + "NEW_WINDOW", + "SAME_TAB" + ], + "type": "string" + }, + "UnaggregatedField": { + "additionalProperties": false, + "properties": { + "Column": { + "$ref": "#/definitions/ColumnIdentifier" + }, + "FieldId": { + "maxLength": 512, + "minLength": 1, + "type": "string" + }, + "FormatConfiguration": { + "$ref": "#/definitions/FormatConfiguration" + } + }, + "required": [ + "Column", + "FieldId" + ], + "type": "object" + }, + "UniqueValuesComputation": { + "additionalProperties": false, + "properties": { + "Category": { + "$ref": "#/definitions/DimensionField" + }, + "ComputationId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "Name": { + "type": "string" + } + }, + "required": [ + "ComputationId" + ], + "type": "object" + }, + "ValidationStrategy": { + "additionalProperties": false, + "properties": { + "Mode": { + "$ref": "#/definitions/ValidationStrategyMode" + } + }, + "required": [ + "Mode" + ], + "type": "object" + }, + "ValidationStrategyMode": { + "enum": [ + "STRICT", + "LENIENT" + ], + "type": "string" + }, + "ValueWhenUnsetOption": { + "enum": [ + "RECOMMENDED_VALUE", + "NULL" + ], + "type": "string" + }, + "VerticalTextAlignment": { + "enum": [ + "TOP", + "MIDDLE", + "BOTTOM", + "AUTO" + ], + "type": "string" + }, + "Visibility": { + "enum": [ + "HIDDEN", + "VISIBLE" + ], + "type": "string" + }, + "VisibleRangeOptions": { + "additionalProperties": false, + "properties": { + "PercentRange": { + "$ref": "#/definitions/PercentVisibleRange" + } + }, + "type": "object" + }, + "Visual": { + "additionalProperties": false, + "properties": { + "BarChartVisual": { + "$ref": "#/definitions/BarChartVisual" + }, + "BoxPlotVisual": { + "$ref": "#/definitions/BoxPlotVisual" + }, + "ComboChartVisual": { + "$ref": "#/definitions/ComboChartVisual" + }, + "CustomContentVisual": { + "$ref": "#/definitions/CustomContentVisual" + }, + "EmptyVisual": { + "$ref": "#/definitions/EmptyVisual" + }, + "FilledMapVisual": { + "$ref": "#/definitions/FilledMapVisual" + }, + "FunnelChartVisual": { + "$ref": "#/definitions/FunnelChartVisual" + }, + "GaugeChartVisual": { + "$ref": "#/definitions/GaugeChartVisual" + }, + "GeospatialMapVisual": { + "$ref": "#/definitions/GeospatialMapVisual" + }, + "HeatMapVisual": { + "$ref": "#/definitions/HeatMapVisual" + }, + "HistogramVisual": { + "$ref": "#/definitions/HistogramVisual" + }, + "InsightVisual": { + "$ref": "#/definitions/InsightVisual" + }, + "KPIVisual": { + "$ref": "#/definitions/KPIVisual" + }, + "LineChartVisual": { + "$ref": "#/definitions/LineChartVisual" + }, + "PieChartVisual": { + "$ref": "#/definitions/PieChartVisual" + }, + "PivotTableVisual": { + "$ref": "#/definitions/PivotTableVisual" + }, + "RadarChartVisual": { + "$ref": "#/definitions/RadarChartVisual" + }, + "SankeyDiagramVisual": { + "$ref": "#/definitions/SankeyDiagramVisual" + }, + "ScatterPlotVisual": { + "$ref": "#/definitions/ScatterPlotVisual" + }, + "TableVisual": { + "$ref": "#/definitions/TableVisual" + }, + "TreeMapVisual": { + "$ref": "#/definitions/TreeMapVisual" + }, + "WaterfallVisual": { + "$ref": "#/definitions/WaterfallVisual" + }, + "WordCloudVisual": { + "$ref": "#/definitions/WordCloudVisual" + } + }, + "type": "object" + }, + "VisualAxisSortOption": { + "additionalProperties": false, + "properties": { + "AvailabilityStatus": { + "$ref": "#/definitions/DashboardBehavior" + } + }, + "type": "object" + }, + "VisualCustomAction": { + "additionalProperties": false, + "properties": { + "ActionOperations": { + "items": { + "$ref": "#/definitions/VisualCustomActionOperation" + }, + "maxItems": 2, + "minItems": 1, + "type": "array" + }, + "CustomActionId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "Name": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "Status": { + "$ref": "#/definitions/WidgetStatus" + }, + "Trigger": { + "$ref": "#/definitions/VisualCustomActionTrigger" + } + }, + "required": [ + "ActionOperations", + "CustomActionId", + "Name", + "Trigger" + ], + "type": "object" + }, + "VisualCustomActionOperation": { + "additionalProperties": false, + "properties": { + "FilterOperation": { + "$ref": "#/definitions/CustomActionFilterOperation" + }, + "NavigationOperation": { + "$ref": "#/definitions/CustomActionNavigationOperation" + }, + "SetParametersOperation": { + "$ref": "#/definitions/CustomActionSetParametersOperation" + }, + "URLOperation": { + "$ref": "#/definitions/CustomActionURLOperation" + } + }, + "type": "object" + }, + "VisualCustomActionTrigger": { + "enum": [ + "DATA_POINT_CLICK", + "DATA_POINT_MENU" + ], + "type": "string" + }, + "VisualMenuOption": { + "additionalProperties": false, + "properties": { + "AvailabilityStatus": { + "$ref": "#/definitions/DashboardBehavior" + } + }, + "type": "object" + }, + "VisualPalette": { + "additionalProperties": false, + "properties": { + "ChartColor": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + }, + "ColorMap": { + "items": { + "$ref": "#/definitions/DataPathColor" + }, + "maxItems": 5000, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "VisualSubtitleLabelOptions": { + "additionalProperties": false, + "properties": { + "FormatText": { + "$ref": "#/definitions/LongFormatText" + }, + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "VisualTitleLabelOptions": { + "additionalProperties": false, + "properties": { + "FormatText": { + "$ref": "#/definitions/ShortFormatText" + }, + "Visibility": { + "$ref": "#/definitions/Visibility" + } + }, + "type": "object" + }, + "WaterfallChartAggregatedFieldWells": { + "additionalProperties": false, + "properties": { + "Breakdowns": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "Categories": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "Values": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "WaterfallChartColorConfiguration": { + "additionalProperties": false, + "properties": { + "GroupColorConfiguration": { + "$ref": "#/definitions/WaterfallChartGroupColorConfiguration" + } + }, + "type": "object" + }, + "WaterfallChartConfiguration": { + "additionalProperties": false, + "properties": { + "CategoryAxisDisplayOptions": { + "$ref": "#/definitions/AxisDisplayOptions" + }, + "CategoryAxisLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "ColorConfiguration": { + "$ref": "#/definitions/WaterfallChartColorConfiguration" + }, + "DataLabels": { + "$ref": "#/definitions/DataLabelOptions" + }, + "FieldWells": { + "$ref": "#/definitions/WaterfallChartFieldWells" + }, + "Legend": { + "$ref": "#/definitions/LegendOptions" + }, + "PrimaryYAxisDisplayOptions": { + "$ref": "#/definitions/AxisDisplayOptions" + }, + "PrimaryYAxisLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "SortConfiguration": { + "$ref": "#/definitions/WaterfallChartSortConfiguration" + }, + "VisualPalette": { + "$ref": "#/definitions/VisualPalette" + }, + "WaterfallChartOptions": { + "$ref": "#/definitions/WaterfallChartOptions" + } + }, + "type": "object" + }, + "WaterfallChartFieldWells": { + "additionalProperties": false, + "properties": { + "WaterfallChartAggregatedFieldWells": { + "$ref": "#/definitions/WaterfallChartAggregatedFieldWells" + } + }, + "type": "object" + }, + "WaterfallChartGroupColorConfiguration": { + "additionalProperties": false, + "properties": { + "NegativeBarColor": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + }, + "PositiveBarColor": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + }, + "TotalBarColor": { + "pattern": "^#[A-F0-9]{6}$", + "type": "string" + } + }, + "type": "object" + }, + "WaterfallChartOptions": { + "additionalProperties": false, + "properties": { + "TotalBarLabel": { + "type": "string" + } + }, + "type": "object" + }, + "WaterfallChartSortConfiguration": { + "additionalProperties": false, + "properties": { + "BreakdownItemsLimit": { + "$ref": "#/definitions/ItemsLimitConfiguration" + }, + "CategorySort": { + "items": { + "$ref": "#/definitions/FieldSortOptions" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "WaterfallVisual": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/VisualCustomAction" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "ChartConfiguration": { + "$ref": "#/definitions/WaterfallChartConfiguration" + }, + "ColumnHierarchies": { + "items": { + "$ref": "#/definitions/ColumnHierarchy" + }, + "maxItems": 2, + "minItems": 0, + "type": "array" + }, + "Subtitle": { + "$ref": "#/definitions/VisualSubtitleLabelOptions" + }, + "Title": { + "$ref": "#/definitions/VisualTitleLabelOptions" + }, + "VisualId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "VisualId" + ], + "type": "object" + }, + "WhatIfPointScenario": { + "additionalProperties": false, + "properties": { + "Date": { + "format": "date-time", + "type": "string" + }, + "Value": { + "default": 0, + "type": "number" + } + }, + "required": [ + "Date", + "Value" + ], + "type": "object" + }, + "WhatIfRangeScenario": { + "additionalProperties": false, + "properties": { + "EndDate": { + "format": "date-time", + "type": "string" + }, + "StartDate": { + "format": "date-time", + "type": "string" + }, + "Value": { + "default": 0, + "type": "number" + } + }, + "required": [ + "EndDate", + "StartDate", + "Value" + ], + "type": "object" + }, + "WidgetStatus": { + "enum": [ + "ENABLED", + "DISABLED" + ], + "type": "string" + }, + "WordCloudAggregatedFieldWells": { + "additionalProperties": false, + "properties": { + "GroupBy": { + "items": { + "$ref": "#/definitions/DimensionField" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "Size": { + "items": { + "$ref": "#/definitions/MeasureField" + }, + "maxItems": 1, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "WordCloudChartConfiguration": { + "additionalProperties": false, + "properties": { + "CategoryLabelOptions": { + "$ref": "#/definitions/ChartAxisLabelOptions" + }, + "FieldWells": { + "$ref": "#/definitions/WordCloudFieldWells" + }, + "SortConfiguration": { + "$ref": "#/definitions/WordCloudSortConfiguration" + }, + "WordCloudOptions": { + "$ref": "#/definitions/WordCloudOptions" + } + }, + "type": "object" + }, + "WordCloudCloudLayout": { + "enum": [ + "FLUID", + "NORMAL" + ], + "type": "string" + }, + "WordCloudFieldWells": { + "additionalProperties": false, + "properties": { + "WordCloudAggregatedFieldWells": { + "$ref": "#/definitions/WordCloudAggregatedFieldWells" + } + }, + "type": "object" + }, + "WordCloudOptions": { + "additionalProperties": false, + "properties": { + "CloudLayout": { + "$ref": "#/definitions/WordCloudCloudLayout" + }, + "MaximumStringLength": { + "maximum": 100, + "minimum": 1, + "type": "number" + }, + "WordCasing": { + "$ref": "#/definitions/WordCloudWordCasing" + }, + "WordOrientation": { + "$ref": "#/definitions/WordCloudWordOrientation" + }, + "WordPadding": { + "$ref": "#/definitions/WordCloudWordPadding" + }, + "WordScaling": { + "$ref": "#/definitions/WordCloudWordScaling" + } + }, + "type": "object" + }, + "WordCloudSortConfiguration": { + "additionalProperties": false, + "properties": { + "CategoryItemsLimit": { + "$ref": "#/definitions/ItemsLimitConfiguration" + }, + "CategorySort": { + "items": { + "$ref": "#/definitions/FieldSortOptions" + }, + "maxItems": 100, + "minItems": 0, + "type": "array" + } + }, + "type": "object" + }, + "WordCloudVisual": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/VisualCustomAction" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "ChartConfiguration": { + "$ref": "#/definitions/WordCloudChartConfiguration" + }, + "ColumnHierarchies": { + "items": { + "$ref": "#/definitions/ColumnHierarchy" + }, + "maxItems": 2, + "minItems": 0, + "type": "array" + }, + "Subtitle": { + "$ref": "#/definitions/VisualSubtitleLabelOptions" + }, + "Title": { + "$ref": "#/definitions/VisualTitleLabelOptions" + }, + "VisualId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + } + }, + "required": [ + "VisualId" + ], + "type": "object" + }, + "WordCloudWordCasing": { + "enum": [ + "LOWER_CASE", + "EXISTING_CASE" + ], + "type": "string" + }, + "WordCloudWordOrientation": { + "enum": [ + "HORIZONTAL", + "HORIZONTAL_AND_VERTICAL" + ], + "type": "string" + }, + "WordCloudWordPadding": { + "enum": [ + "NONE", + "SMALL", + "MEDIUM", + "LARGE" + ], + "type": "string" + }, + "WordCloudWordScaling": { + "enum": [ + "EMPHASIZE", + "NORMAL" + ], + "type": "string" + }, + "YAxisOptions": { + "additionalProperties": false, + "properties": { + "YAxis": { + "$ref": "#/definitions/SingleYAxisOption" + } + }, + "required": [ + "YAxis" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/AwsAccountId", + "/properties/DashboardId" + ], + "properties": { + "Arn": { + "type": "string" + }, + "AwsAccountId": { + "maxLength": 12, + "minLength": 12, + "pattern": "^[0-9]{12}$", + "type": "string" + }, + "CreatedTime": { + "format": "date-time", + "type": "string" + }, + "DashboardId": { + "maxLength": 512, + "minLength": 1, + "pattern": "^[\\w\\-]+$", + "type": "string" + }, + "DashboardPublishOptions": { + "$ref": "#/definitions/DashboardPublishOptions" + }, + "Definition": { + "$ref": "#/definitions/DashboardVersionDefinition" + }, + "FolderArns": { + "items": { + "type": "string" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "LastPublishedTime": { + "format": "date-time", + "type": "string" + }, + "LastUpdatedTime": { + "format": "date-time", + "type": "string" + }, + "LinkEntities": { + "items": { + "maxLength": 1024, + "minLength": 1, + "pattern": "^arn:aws[\\w\\-]*:quicksight:[\\w\\-]+:\\d+:analysis/[\\w\\-]{1,512}$", + "type": "string" + }, + "maxItems": 5, + "minItems": 0, + "type": "array" + }, + "LinkSharingConfiguration": { + "$ref": "#/definitions/LinkSharingConfiguration" + }, + "Name": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Parameters": { + "$ref": "#/definitions/Parameters" + }, + "Permissions": { + "items": { + "$ref": "#/definitions/ResourcePermission" + }, + "maxItems": 64, + "minItems": 1, + "type": "array" + }, + "SourceEntity": { + "$ref": "#/definitions/DashboardSourceEntity" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 200, + "minItems": 1, + "type": "array" + }, + "ThemeArn": { + "type": "string" + }, + "ValidationStrategy": { + "$ref": "#/definitions/ValidationStrategy" + }, + "Version": { + "$ref": "#/definitions/DashboardVersion" + }, + "VersionDescription": { + "maxLength": 512, + "minLength": 1, + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/CreatedTime", + "/properties/LastPublishedTime", + "/properties/LastUpdatedTime", + "/properties/Version" + ], + "required": [ + "AwsAccountId", + "DashboardId", + "Name" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-quicksight", + "typeName": "AWS::QuickSight::Dashboard", + "writeOnlyProperties": [ + "/properties/DashboardPublishOptions", + "/properties/Definition", + "/properties/LinkSharingConfiguration", + "/properties/Parameters", + "/properties/SourceEntity", + "/properties/ThemeArn", + "/properties/VersionDescription", + "/properties/ValidationStrategy", + "/properties/FolderArns" + ] +} diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/aws-route53resolver-resolverrule.json b/src/cfnlint/data/schemas/providers/eu_central_1/aws-route53resolver-resolverrule.json new file mode 100644 index 0000000000..7b24325ca2 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_1/aws-route53resolver-resolverrule.json @@ -0,0 +1,130 @@ +{ + "additionalProperties": false, + "conditionalCreateOnlyProperties": [ + "/properties/DomainName" + ], + "createOnlyProperties": [ + "/properties/RuleType" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + }, + "TargetAddress": { + "additionalProperties": false, + "properties": { + "Ip": { + "type": "string" + }, + "Ipv6": { + "type": "string" + }, + "Port": { + "maxLength": 65535, + "minLength": 0, + "type": "string" + }, + "Protocol": { + "enum": [ + "Do53", + "DoH" + ], + "type": "string" + }, + "ServerNameIndication": { + "maxLength": 255, + "minLength": 0, + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/ResolverRuleId" + ], + "properties": { + "Arn": { + "type": "string" + }, + "DomainName": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "Name": { + "maxLength": 64, + "minLength": 0, + "type": "string" + }, + "ResolverEndpointId": { + "maxLength": 64, + "minLength": 1, + "type": "string" + }, + "ResolverRuleId": { + "type": "string" + }, + "RuleType": { + "enum": [ + "FORWARD", + "SYSTEM", + "RECURSIVE", + "DELEGATE" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": false + }, + "TargetIps": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TargetAddress" + }, + "type": "array", + "uniqueItems": false + } + }, + "propertyTransform": { + "/properties/DomainName": "$join([DomainName, \".\"]) $OR DomainName" + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/ResolverRuleId" + ], + "required": [ + "RuleType" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-route53resolver.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Route53Resolver::ResolverRule" +} diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/aws-sagemaker-imageversion.json b/src/cfnlint/data/schemas/providers/eu_central_1/aws-sagemaker-imageversion.json new file mode 100644 index 0000000000..3b09dc9bad --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_1/aws-sagemaker-imageversion.json @@ -0,0 +1,171 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/ImageName", + "/properties/BaseImage" + ], + "definitions": { + "Alias": { + "maxLength": 128, + "minLength": 1, + "pattern": "(?!^[.-])^([a-zA-Z0-9-_.]+)$", + "type": "string" + }, + "Aliases": { + "items": { + "$ref": "#/definitions/Alias" + }, + "type": "array" + }, + "BaseImage": { + "maxLength": 255, + "minLength": 1, + "pattern": ".+", + "type": "string" + }, + "ContainerImage": { + "maxLength": 255, + "minLength": 1, + "pattern": ".+", + "type": "string" + }, + "Horovod": { + "type": "boolean" + }, + "ImageArn": { + "maxLength": 256, + "minLength": 1, + "pattern": "^arn:aws(-[\\w]+)*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:image\\/[a-zA-Z0-9]([-.]?[a-zA-Z0-9])*$", + "type": "string" + }, + "ImageName": { + "maxLength": 63, + "minLength": 1, + "pattern": "^[A-Za-z0-9]([-.]?[A-Za-z0-9])*$", + "type": "string" + }, + "ImageVersionArn": { + "maxLength": 256, + "minLength": 1, + "pattern": "^arn:aws(-[\\w]+)*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:image-version\\/[a-zA-Z0-9]([-.]?[a-zA-Z0-9])*\\/[0-9]+$", + "type": "string" + }, + "JobType": { + "enum": [ + "TRAINING", + "INFERENCE", + "NOTEBOOK_KERNEL" + ], + "type": "string" + }, + "MLFramework": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z]+ ?\\d+\\.\\d+(\\.\\d+)?$", + "type": "string" + }, + "Processor": { + "enum": [ + "CPU", + "GPU" + ], + "type": "string" + }, + "ProgrammingLang": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z]+ ?\\d+\\.\\d+(\\.\\d+)?$", + "type": "string" + }, + "ReleaseNotes": { + "maxLength": 255, + "minLength": 1, + "pattern": ".*", + "type": "string" + }, + "VendorGuidance": { + "enum": [ + "NOT_PROVIDED", + "STABLE", + "TO_BE_ARCHIVED", + "ARCHIVED" + ], + "type": "string" + }, + "Version": { + "minimum": 1, + "type": "integer" + } + }, + "primaryIdentifier": [ + "/properties/ImageVersionArn" + ], + "properties": { + "Alias": { + "$ref": "#/definitions/Alias" + }, + "Aliases": { + "$ref": "#/definitions/Aliases" + }, + "BaseImage": { + "$ref": "#/definitions/BaseImage" + }, + "ContainerImage": { + "$ref": "#/definitions/ContainerImage" + }, + "Horovod": { + "$ref": "#/definitions/Horovod" + }, + "ImageArn": { + "$ref": "#/definitions/ImageArn" + }, + "ImageName": { + "$ref": "#/definitions/ImageName" + }, + "ImageVersionArn": { + "$ref": "#/definitions/ImageVersionArn" + }, + "JobType": { + "$ref": "#/definitions/JobType" + }, + "MLFramework": { + "$ref": "#/definitions/MLFramework" + }, + "Processor": { + "$ref": "#/definitions/Processor" + }, + "ProgrammingLang": { + "$ref": "#/definitions/ProgrammingLang" + }, + "ReleaseNotes": { + "$ref": "#/definitions/ReleaseNotes" + }, + "VendorGuidance": { + "$ref": "#/definitions/VendorGuidance" + }, + "Version": { + "$ref": "#/definitions/Version" + } + }, + "readOnlyProperties": [ + "/properties/ImageVersionArn", + "/properties/ImageArn", + "/properties/ContainerImage" + ], + "required": [ + "ImageName", + "BaseImage" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sagemaker", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": false, + "tagUpdatable": false, + "taggable": false + }, + "typeName": "AWS::SageMaker::ImageVersion", + "writeOnlyProperties": [ + "/properties/Aliases", + "/properties/Alias" + ] +} diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/aws-sns-topic.json b/src/cfnlint/data/schemas/providers/eu_central_1/aws-sns-topic.json new file mode 100644 index 0000000000..4d536abd38 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_1/aws-sns-topic.json @@ -0,0 +1,150 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/TopicName", + "/properties/FifoTopic" + ], + "definitions": { + "LoggingConfig": { + "additionalProperties": false, + "properties": { + "FailureFeedbackRoleArn": { + "type": "string" + }, + "Protocol": { + "enum": [ + "http/s", + "sqs", + "lambda", + "firehose", + "application" + ], + "type": "string" + }, + "SuccessFeedbackRoleArn": { + "type": "string" + }, + "SuccessFeedbackSampleRate": { + "type": "string" + } + }, + "required": [ + "Protocol" + ], + "type": "object" + }, + "Subscription": { + "additionalProperties": false, + "properties": { + "Endpoint": { + "type": "string" + }, + "Protocol": { + "type": "string" + } + }, + "required": [ + "Endpoint", + "Protocol" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/TopicArn" + ], + "properties": { + "ArchivePolicy": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "ContentBasedDeduplication": { + "type": "boolean" + }, + "DataProtectionPolicy": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "DeliveryStatusLogging": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/LoggingConfig" + }, + "type": "array", + "uniqueItems": true + }, + "DisplayName": { + "type": "string" + }, + "FifoTopic": { + "type": "boolean" + }, + "KmsMasterKeyId": { + "type": "string" + }, + "SignatureVersion": { + "type": "string" + }, + "Subscription": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Subscription" + }, + "type": "array", + "uniqueItems": false + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": false + }, + "TopicArn": { + "type": "string" + }, + "TopicName": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "TracingConfig": { + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/TopicArn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sns", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::SNS::Topic" +} diff --git a/src/cfnlint/data/schemas/providers/eu_central_2/__init__.py b/src/cfnlint/data/schemas/providers/eu_central_2/__init__.py index f3b3f11d2e..aeb9be960b 100644 --- a/src/cfnlint/data/schemas/providers/eu_central_2/__init__.py +++ b/src/cfnlint/data/schemas/providers/eu_central_2/__init__.py @@ -456,6 +456,7 @@ "AWS::NetworkManager::SiteToSiteVpnAttachment", "AWS::NetworkManager::TransitGatewayPeering", "AWS::NetworkManager::TransitGatewayRegistration", + "AWS::NetworkManager::TransitGatewayRouteTableAttachment", "AWS::NetworkManager::VpcAttachment", "AWS::Oam::Link", "AWS::Oam::Sink", @@ -520,6 +521,7 @@ "AWS::Redshift::EndpointAccess", "AWS::Redshift::EndpointAuthorization", "AWS::Redshift::EventSubscription", + "AWS::Redshift::Integration", "AWS::Redshift::ScheduledAction", "AWS::RedshiftServerless::Namespace", "AWS::RedshiftServerless::Workgroup", @@ -910,9 +912,7 @@ "aws-ecs-capacityprovider.json", "aws-ecs-clustercapacityproviderassociations.json", "aws-ecs-primarytaskset.json", - "aws-ecs-service.json", "aws-ecs-taskdefinition.json", - "aws-ecs-taskset.json", "aws-efs-accesspoint.json", "aws-efs-filesystem.json", "aws-efs-mounttarget.json", @@ -976,6 +976,7 @@ "aws-glue-datacatalogencryptionsettings.json", "aws-glue-dataqualityruleset.json", "aws-glue-devendpoint.json", + "aws-glue-job.json", "aws-glue-mltransform.json", "aws-glue-partition.json", "aws-glue-securityconfiguration.json", @@ -983,7 +984,6 @@ "aws-glue-trigger.json", "aws-glue-usageprofile.json", "aws-glue-workflow.json", - "aws-guardduty-detector.json", "aws-guardduty-filter.json", "aws-guardduty-ipset.json", "aws-guardduty-malwareprotectionplan.json", @@ -1017,7 +1017,6 @@ "aws-inspectorv2-cisscanconfiguration.json", "aws-inspectorv2-filter.json", "aws-internetmonitor-monitor.json", - "aws-kinesis-stream.json", "aws-kinesisanalyticsv2-application.json", "aws-kinesisfirehose-deliverystream.json", "aws-kms-alias.json", @@ -1058,7 +1057,6 @@ "aws-msk-vpcconnection.json", "aws-mwaa-environment.json", "aws-networkfirewall-firewall.json", - "aws-networkfirewall-firewallpolicy.json", "aws-networkfirewall-loggingconfiguration.json", "aws-networkfirewall-rulegroup.json", "aws-networkfirewall-tlsinspectionconfiguration.json", @@ -1074,6 +1072,7 @@ "aws-networkmanager-sitetositevpnattachment.json", "aws-networkmanager-transitgatewaypeering.json", "aws-networkmanager-transitgatewayregistration.json", + "aws-networkmanager-transitgatewayroutetableattachment.json", "aws-networkmanager-vpcattachment.json", "aws-oam-link.json", "aws-oam-sink.json", @@ -1112,14 +1111,20 @@ "aws-quicksight-vpcconnection.json", "aws-ram-permission.json", "aws-ram-resourceshare.json", + "aws-rds-dbcluster.json", + "aws-rds-dbclusterparametergroup.json", + "aws-rds-dbinstance.json", + "aws-rds-dbparametergroup.json", "aws-rds-dbproxy.json", "aws-rds-dbproxyendpoint.json", "aws-rds-dbproxytargetgroup.json", "aws-rds-dbsecuritygroup.json", "aws-rds-dbsecuritygroupingress.json", "aws-rds-dbsubnetgroup.json", + "aws-rds-eventsubscription.json", "aws-rds-globalcluster.json", "aws-rds-integration.json", + "aws-rds-optiongroup.json", "aws-redshift-cluster.json", "aws-redshift-clusterparametergroup.json", "aws-redshift-clustersecuritygroup.json", @@ -1173,6 +1178,7 @@ "aws-secretsmanager-resourcepolicy.json", "aws-secretsmanager-rotationschedule.json", "aws-secretsmanager-secret.json", + "aws-secretsmanager-secrettargetattachment.json", "aws-securityhub-automationrule.json", "aws-securityhub-delegatedadmin.json", "aws-securityhub-hub.json", diff --git a/src/cfnlint/data/schemas/providers/eu_central_2/aws-ecs-service.json b/src/cfnlint/data/schemas/providers/eu_central_2/aws-ecs-service.json new file mode 100644 index 0000000000..ba7baa1de3 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_2/aws-ecs-service.json @@ -0,0 +1,585 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/DeploymentController", + "/properties/LaunchType", + "/properties/Role", + "/properties/SchedulingStrategy", + "/properties/ServiceName" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "CapacityProviderStrategyItem": { + "additionalProperties": false, + "properties": { + "Base": { + "type": "integer" + }, + "CapacityProvider": { + "type": "string" + }, + "Weight": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentAlarms": { + "additionalProperties": false, + "properties": { + "AlarmNames": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "AlarmNames", + "Rollback", + "Enable" + ], + "type": "object" + }, + "DeploymentCircuitBreaker": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "Enable", + "Rollback" + ], + "type": "object" + }, + "DeploymentConfiguration": { + "additionalProperties": false, + "properties": { + "Alarms": { + "$ref": "#/definitions/DeploymentAlarms" + }, + "DeploymentCircuitBreaker": { + "$ref": "#/definitions/DeploymentCircuitBreaker" + }, + "MaximumPercent": { + "type": "integer" + }, + "MinimumHealthyPercent": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentController": { + "additionalProperties": false, + "properties": { + "Type": { + "enum": [ + "CODE_DEPLOY", + "ECS", + "EXTERNAL" + ], + "type": "string" + } + }, + "type": "object" + }, + "EBSTagSpecification": { + "additionalProperties": false, + "properties": { + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "ResourceType": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "ResourceType" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "LoadBalancerName": { + "type": "string" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "LogConfiguration": { + "additionalProperties": false, + "properties": { + "LogDriver": { + "type": "string" + }, + "Options": { + "additionalProperties": false, + "patternProperties": { + ".{1,}": { + "type": "string" + } + }, + "type": "object" + }, + "SecretOptions": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Secret" + }, + "type": "array" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsvpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "PlacementConstraint": { + "additionalProperties": false, + "properties": { + "Expression": { + "type": "string" + }, + "Type": { + "enum": [ + "distinctInstance", + "memberOf" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "PlacementStrategy": { + "additionalProperties": false, + "properties": { + "Field": { + "type": "string" + }, + "Type": { + "enum": [ + "binpack", + "random", + "spread" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "Secret": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "ValueFrom": { + "type": "string" + } + }, + "required": [ + "Name", + "ValueFrom" + ], + "type": "object" + }, + "ServiceConnectClientAlias": { + "additionalProperties": false, + "properties": { + "DnsName": { + "type": "string" + }, + "Port": { + "type": "integer" + } + }, + "required": [ + "Port" + ], + "type": "object" + }, + "ServiceConnectConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + }, + "LogConfiguration": { + "$ref": "#/definitions/LogConfiguration" + }, + "Namespace": { + "type": "string" + }, + "Services": { + "items": { + "$ref": "#/definitions/ServiceConnectService" + }, + "type": "array" + } + }, + "required": [ + "Enabled" + ], + "type": "object" + }, + "ServiceConnectService": { + "additionalProperties": false, + "properties": { + "ClientAliases": { + "items": { + "$ref": "#/definitions/ServiceConnectClientAlias" + }, + "type": "array" + }, + "DiscoveryName": { + "type": "string" + }, + "IngressPortOverride": { + "type": "integer" + }, + "PortName": { + "type": "string" + }, + "Timeout": { + "$ref": "#/definitions/TimeoutConfiguration" + }, + "Tls": { + "$ref": "#/definitions/ServiceConnectTlsConfiguration" + } + }, + "required": [ + "PortName" + ], + "type": "object" + }, + "ServiceConnectTlsCertificateAuthority": { + "additionalProperties": false, + "properties": { + "AwsPcaAuthorityArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceConnectTlsConfiguration": { + "additionalProperties": false, + "properties": { + "IssuerCertificateAuthority": { + "$ref": "#/definitions/ServiceConnectTlsCertificateAuthority" + }, + "KmsKey": { + "type": "string" + }, + "RoleArn": { + "type": "string" + } + }, + "required": [ + "IssuerCertificateAuthority" + ], + "type": "object" + }, + "ServiceManagedEBSVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "Encrypted": { + "type": "boolean" + }, + "FilesystemType": { + "type": "string" + }, + "Iops": { + "type": "integer" + }, + "KmsKeyId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SizeInGiB": { + "type": "integer" + }, + "SnapshotId": { + "type": "string" + }, + "TagSpecifications": { + "items": { + "$ref": "#/definitions/EBSTagSpecification" + }, + "type": "array" + }, + "Throughput": { + "type": "integer" + }, + "VolumeType": { + "type": "string" + } + }, + "required": [ + "RoleArn" + ], + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "ManagedEBSVolume": { + "$ref": "#/definitions/ServiceManagedEBSVolumeConfiguration" + }, + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + }, + "TimeoutConfiguration": { + "additionalProperties": false, + "properties": { + "IdleTimeoutSeconds": { + "type": "integer" + }, + "PerRequestTimeoutSeconds": { + "type": "integer" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/ServiceArn", + "/properties/Cluster" + ], + "properties": { + "CapacityProviderStrategy": { + "items": { + "$ref": "#/definitions/CapacityProviderStrategyItem" + }, + "type": "array" + }, + "Cluster": { + "type": "string" + }, + "DeploymentConfiguration": { + "$ref": "#/definitions/DeploymentConfiguration" + }, + "DeploymentController": { + "$ref": "#/definitions/DeploymentController" + }, + "DesiredCount": { + "type": "integer" + }, + "EnableECSManagedTags": { + "type": "boolean" + }, + "EnableExecuteCommand": { + "type": "boolean" + }, + "HealthCheckGracePeriodSeconds": { + "type": "integer" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE", + "EXTERNAL" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "Name": { + "type": "string" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlacementConstraints": { + "items": { + "$ref": "#/definitions/PlacementConstraint" + }, + "type": "array" + }, + "PlacementStrategies": { + "items": { + "$ref": "#/definitions/PlacementStrategy" + }, + "type": "array" + }, + "PlatformVersion": { + "default": "LATEST", + "type": "string" + }, + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "Role": { + "type": "string" + }, + "SchedulingStrategy": { + "enum": [ + "DAEMON", + "REPLICA" + ], + "type": "string" + }, + "ServiceArn": { + "type": "string" + }, + "ServiceConnectConfiguration": { + "$ref": "#/definitions/ServiceConnectConfiguration" + }, + "ServiceName": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + }, + "VolumeConfigurations": { + "items": { + "$ref": "#/definitions/ServiceVolumeConfiguration" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/ServiceArn", + "/properties/Name" + ], + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::Service", + "writeOnlyProperties": [ + "/properties/ServiceConnectConfiguration", + "/properties/VolumeConfigurations" + ] +} diff --git a/src/cfnlint/data/schemas/providers/eu_central_2/aws-ecs-taskset.json b/src/cfnlint/data/schemas/providers/eu_central_2/aws-ecs-taskset.json new file mode 100644 index 0000000000..3491488499 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_2/aws-ecs-taskset.json @@ -0,0 +1,191 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/ExternalId", + "/properties/LaunchType", + "/properties/LoadBalancers", + "/properties/NetworkConfiguration", + "/properties/PlatformVersion", + "/properties/Service", + "/properties/ServiceRegistries", + "/properties/TaskDefinition" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "maxItems": 5, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "maxItems": 16, + "type": "array" + } + }, + "required": [ + "Subnets" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsVpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "Scale": { + "additionalProperties": false, + "properties": { + "Unit": { + "enum": [ + "PERCENT" + ], + "type": "string" + }, + "Value": { + "maximum": 100, + "minimum": 0, + "type": "number" + } + }, + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Cluster", + "/properties/Service", + "/properties/Id" + ], + "properties": { + "Cluster": { + "type": "string" + }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlatformVersion": { + "type": "string" + }, + "Scale": { + "$ref": "#/definitions/Scale" + }, + "Service": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "Cluster", + "Service", + "TaskDefinition" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-ecs.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::TaskSet" +} diff --git a/src/cfnlint/data/schemas/providers/eu_central_2/aws-glue-job.json b/src/cfnlint/data/schemas/providers/eu_central_2/aws-glue-job.json deleted file mode 100644 index 09c051399f..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_central_2/aws-glue-job.json +++ /dev/null @@ -1,153 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name" - ], - "definitions": { - "ConnectionsList": { - "additionalProperties": false, - "properties": { - "Connections": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - } - }, - "type": "object" - }, - "ExecutionProperty": { - "additionalProperties": false, - "properties": { - "MaxConcurrentRuns": { - "type": "number" - } - }, - "type": "object" - }, - "JobCommand": { - "additionalProperties": false, - "properties": { - "Name": { - "type": "string" - }, - "PythonVersion": { - "type": "string" - }, - "Runtime": { - "type": "string" - }, - "ScriptLocation": { - "type": "string" - } - }, - "type": "object" - }, - "NotificationProperty": { - "additionalProperties": false, - "properties": { - "NotifyDelayAfter": { - "type": "integer" - } - }, - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "AllocatedCapacity": { - "type": "number" - }, - "Command": { - "$ref": "#/definitions/JobCommand" - }, - "Connections": { - "$ref": "#/definitions/ConnectionsList" - }, - "DefaultArguments": { - "format": "json", - "type": [ - "object", - "string" - ] - }, - "Description": { - "type": "string" - }, - "ExecutionClass": { - "type": "string" - }, - "ExecutionProperty": { - "$ref": "#/definitions/ExecutionProperty" - }, - "GlueVersion": { - "type": "string" - }, - "Id": { - "type": "string" - }, - "JobMode": { - "type": "string" - }, - "LogUri": { - "type": "string" - }, - "MaintenanceWindow": { - "type": "string" - }, - "MaxCapacity": { - "type": "number" - }, - "MaxRetries": { - "type": "number" - }, - "Name": { - "type": "string" - }, - "NonOverridableArguments": { - "format": "json", - "type": [ - "object", - "string" - ] - }, - "NotificationProperty": { - "$ref": "#/definitions/NotificationProperty" - }, - "NumberOfWorkers": { - "maximum": 299, - "minimum": 0, - "type": "integer" - }, - "Role": { - "type": "string" - }, - "SecurityConfiguration": { - "type": "string" - }, - "Tags": { - "format": "json", - "type": [ - "object", - "string" - ] - }, - "Timeout": { - "type": "integer" - }, - "WorkerType": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "Role", - "Command" - ], - "typeName": "AWS::Glue::Job" -} diff --git a/src/cfnlint/data/schemas/providers/eu_central_2/aws-guardduty-detector.json b/src/cfnlint/data/schemas/providers/eu_central_2/aws-guardduty-detector.json new file mode 100644 index 0000000000..efaad17ff9 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_2/aws-guardduty-detector.json @@ -0,0 +1,184 @@ +{ + "additionalProperties": false, + "definitions": { + "CFNDataSourceConfigurations": { + "additionalProperties": false, + "properties": { + "Kubernetes": { + "$ref": "#/definitions/CFNKubernetesConfiguration" + }, + "MalwareProtection": { + "$ref": "#/definitions/CFNMalwareProtectionConfiguration" + }, + "S3Logs": { + "$ref": "#/definitions/CFNS3LogsConfiguration" + } + }, + "type": "object" + }, + "CFNFeatureAdditionalConfiguration": { + "additionalProperties": false, + "properties": { + "Name": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "Status": { + "maxLength": 128, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "CFNFeatureConfiguration": { + "additionalProperties": false, + "properties": { + "AdditionalConfiguration": { + "items": { + "$ref": "#/definitions/CFNFeatureAdditionalConfiguration" + }, + "type": "array" + }, + "Name": { + "maxLength": 128, + "type": "string" + }, + "Status": { + "enum": [ + "ENABLED", + "DISABLED" + ], + "type": "string" + } + }, + "required": [ + "Name", + "Status" + ], + "type": "object" + }, + "CFNKubernetesAuditLogsConfiguration": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + } + }, + "required": [ + "Enable" + ], + "type": "object" + }, + "CFNKubernetesConfiguration": { + "additionalProperties": false, + "properties": { + "AuditLogs": { + "$ref": "#/definitions/CFNKubernetesAuditLogsConfiguration" + } + }, + "required": [ + "AuditLogs" + ], + "type": "object" + }, + "CFNMalwareProtectionConfiguration": { + "additionalProperties": false, + "properties": { + "ScanEc2InstanceWithFindings": { + "$ref": "#/definitions/CFNScanEc2InstanceWithFindingsConfiguration" + } + }, + "type": "object" + }, + "CFNS3LogsConfiguration": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + } + }, + "required": [ + "Enable" + ], + "type": "object" + }, + "CFNScanEc2InstanceWithFindingsConfiguration": { + "additionalProperties": false, + "properties": { + "EbsVolumes": { + "type": "boolean" + } + }, + "type": "object" + }, + "TagItem": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "DataSources": { + "$ref": "#/definitions/CFNDataSourceConfigurations" + }, + "Enable": { + "type": "boolean" + }, + "Features": { + "items": { + "$ref": "#/definitions/CFNFeatureConfiguration" + }, + "type": "array" + }, + "FindingPublishingFrequency": { + "enum": [ + "FIFTEEN_MINUTES", + "ONE_HOUR", + "SIX_HOURS" + ], + "type": "string" + }, + "Id": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/TagItem" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "Enable" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": false, + "taggable": true + }, + "typeName": "AWS::GuardDuty::Detector" +} diff --git a/src/cfnlint/data/schemas/providers/eu_central_2/aws-kinesis-stream.json b/src/cfnlint/data/schemas/providers/eu_central_2/aws-kinesis-stream.json new file mode 100644 index 0000000000..be1bc65c07 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_2/aws-kinesis-stream.json @@ -0,0 +1,133 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "StreamEncryption": { + "additionalProperties": false, + "properties": { + "EncryptionType": { + "enum": [ + "KMS" + ], + "type": "string" + }, + "KeyId": { + "anyOf": [ + { + "relationshipRef": { + "propertyPath": "/properties/Arn", + "typeName": "AWS::KMS::Key" + } + }, + { + "relationshipRef": { + "propertyPath": "/properties/KeyId", + "typeName": "AWS::KMS::Key" + } + } + ], + "maxLength": 2048, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "EncryptionType", + "KeyId" + ], + "type": "object" + }, + "StreamModeDetails": { + "additionalProperties": false, + "properties": { + "StreamMode": { + "enum": [ + "ON_DEMAND", + "PROVISIONED" + ], + "type": "string" + } + }, + "required": [ + "StreamMode" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Name" + ], + "properties": { + "Arn": { + "type": "string" + }, + "Name": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9_.-]+$", + "type": "string" + }, + "RetentionPeriodHours": { + "maximum": 8760, + "minimum": 1, + "type": "integer" + }, + "ShardCount": { + "maximum": 100000, + "minimum": 1, + "type": "integer" + }, + "StreamEncryption": { + "$ref": "#/definitions/StreamEncryption" + }, + "StreamModeDetails": { + "$ref": "#/definitions/StreamModeDetails", + "default": { + "StreamMode": "PROVISIONED" + } + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 50, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-kinesis.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Kinesis::Stream" +} diff --git a/src/cfnlint/data/schemas/providers/eu_central_2/aws-networkfirewall-firewallpolicy.json b/src/cfnlint/data/schemas/providers/eu_central_2/aws-networkfirewall-firewallpolicy.json new file mode 100644 index 0000000000..973b595561 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_2/aws-networkfirewall-firewallpolicy.json @@ -0,0 +1,332 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/FirewallPolicyName" + ], + "definitions": { + "ActionDefinition": { + "additionalProperties": false, + "properties": { + "PublishMetricAction": { + "$ref": "#/definitions/PublishMetricAction" + } + }, + "type": "object" + }, + "CustomAction": { + "additionalProperties": false, + "properties": { + "ActionDefinition": { + "$ref": "#/definitions/ActionDefinition" + }, + "ActionName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + } + }, + "required": [ + "ActionName", + "ActionDefinition" + ], + "type": "object" + }, + "Dimension": { + "additionalProperties": false, + "properties": { + "Value": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-_ ]+$", + "type": "string" + } + }, + "required": [ + "Value" + ], + "type": "object" + }, + "FirewallPolicy": { + "additionalProperties": false, + "properties": { + "PolicyVariables": { + "additionalProperties": false, + "properties": { + "RuleVariables": { + "$ref": "#/definitions/RuleVariables" + } + }, + "type": "object" + }, + "StatefulDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatefulEngineOptions": { + "$ref": "#/definitions/StatefulEngineOptions" + }, + "StatefulRuleGroupReferences": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/StatefulRuleGroupReference" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessCustomActions": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/CustomAction" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessFragmentDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessRuleGroupReferences": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/StatelessRuleGroupReference" + }, + "type": "array", + "uniqueItems": false + }, + "TLSInspectionConfigurationArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "StatelessDefaultActions", + "StatelessFragmentDefaultActions" + ], + "type": "object" + }, + "IPSet": { + "additionalProperties": false, + "properties": { + "Definition": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/VariableDefinition" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "OverrideAction": { + "enum": [ + "DROP_TO_ALERT" + ], + "type": "string" + }, + "Priority": { + "maximum": 65535, + "minimum": 1, + "type": "integer" + }, + "PublishMetricAction": { + "additionalProperties": false, + "properties": { + "Dimensions": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/Dimension" + }, + "type": "array", + "uniqueItems": false + } + }, + "required": [ + "Dimensions" + ], + "type": "object" + }, + "ResourceArn": { + "maxLength": 256, + "minLength": 1, + "pattern": "^(arn:aws.*)$", + "type": "string" + }, + "RuleOrder": { + "enum": [ + "DEFAULT_ACTION_ORDER", + "STRICT_ORDER" + ], + "type": "string" + }, + "RuleVariables": { + "additionalProperties": false, + "patternProperties": { + "^[A-Za-z0-9_]{1,32}$": { + "$ref": "#/definitions/IPSet" + } + }, + "type": "object" + }, + "StatefulEngineOptions": { + "additionalProperties": false, + "properties": { + "RuleOrder": { + "$ref": "#/definitions/RuleOrder" + }, + "StreamExceptionPolicy": { + "$ref": "#/definitions/StreamExceptionPolicy" + } + }, + "type": "object" + }, + "StatefulRuleGroupOverride": { + "additionalProperties": false, + "properties": { + "Action": { + "$ref": "#/definitions/OverrideAction" + } + }, + "type": "object" + }, + "StatefulRuleGroupReference": { + "additionalProperties": false, + "properties": { + "Override": { + "$ref": "#/definitions/StatefulRuleGroupOverride" + }, + "Priority": { + "$ref": "#/definitions/Priority" + }, + "ResourceArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "ResourceArn" + ], + "type": "object" + }, + "StatelessRuleGroupReference": { + "additionalProperties": false, + "properties": { + "Priority": { + "$ref": "#/definitions/Priority" + }, + "ResourceArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "ResourceArn", + "Priority" + ], + "type": "object" + }, + "StreamExceptionPolicy": { + "enum": [ + "DROP", + "CONTINUE", + "REJECT" + ], + "type": "string" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "^.*$", + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 0, + "pattern": "^.*$", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "VariableDefinition": { + "minLength": 1, + "pattern": "^.*$", + "type": "string" + } + }, + "primaryIdentifier": [ + "/properties/FirewallPolicyArn" + ], + "properties": { + "Description": { + "maxLength": 512, + "minLength": 1, + "pattern": "^.*$", + "type": "string" + }, + "FirewallPolicy": { + "$ref": "#/definitions/FirewallPolicy" + }, + "FirewallPolicyArn": { + "$ref": "#/definitions/ResourceArn" + }, + "FirewallPolicyId": { + "maxLength": 36, + "minLength": 36, + "pattern": "^([0-9a-f]{8})-([0-9a-f]{4}-){3}([0-9a-f]{12})$", + "type": "string" + }, + "FirewallPolicyName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-]+$", + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + } + }, + "readOnlyProperties": [ + "/properties/FirewallPolicyArn", + "/properties/FirewallPolicyId" + ], + "required": [ + "FirewallPolicyName", + "FirewallPolicy" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-networkfirewall.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::NetworkFirewall::FirewallPolicy" +} diff --git a/src/cfnlint/data/schemas/providers/eu_central_2/aws-rds-dbclusterparametergroup.json b/src/cfnlint/data/schemas/providers/eu_central_2/aws-rds-dbclusterparametergroup.json deleted file mode 100644 index 72b2c49945..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_central_2/aws-rds-dbclusterparametergroup.json +++ /dev/null @@ -1,69 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/DBClusterParameterGroupName", - "/properties/Description", - "/properties/Family" - ], - "definitions": { - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key" - ], - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/DBClusterParameterGroupName" - ], - "properties": { - "DBClusterParameterGroupName": { - "pattern": "^[a-zA-Z]{1}(?:-?[a-zA-Z0-9])*$", - "type": "string" - }, - "Description": { - "type": "string" - }, - "Family": { - "type": "string" - }, - "Parameters": { - "format": "json", - "type": [ - "object", - "string" - ] - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 50, - "type": "array" - } - }, - "propertyTransform": { - "/properties/DBClusterParameterGroupName": "$lowercase(DBClusterParameterGroupName)" - }, - "required": [ - "Description", - "Family", - "Parameters" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-rds", - "typeName": "AWS::RDS::DBClusterParameterGroup" -} diff --git a/src/cfnlint/data/schemas/providers/eu_central_2/aws-rds-optiongroup.json b/src/cfnlint/data/schemas/providers/eu_central_2/aws-rds-optiongroup.json deleted file mode 100644 index d0e1e7a6a9..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_central_2/aws-rds-optiongroup.json +++ /dev/null @@ -1,125 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/EngineName", - "/properties/MajorEngineVersion", - "/properties/OptionGroupDescription", - "/properties/OptionGroupName" - ], - "definitions": { - "OptionConfiguration": { - "additionalProperties": false, - "properties": { - "DBSecurityGroupMemberships": { - "insertionOrder": false, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "OptionName": { - "type": "string" - }, - "OptionSettings": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/OptionSetting" - }, - "type": "array" - }, - "OptionVersion": { - "type": "string" - }, - "Port": { - "type": "integer" - }, - "VpcSecurityGroupMemberships": { - "insertionOrder": false, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - } - }, - "required": [ - "OptionName" - ], - "type": "object" - }, - "OptionSetting": { - "additionalProperties": false, - "properties": { - "Name": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key" - ], - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/OptionGroupName" - ], - "properties": { - "EngineName": { - "type": "string" - }, - "MajorEngineVersion": { - "type": "string" - }, - "OptionConfigurations": { - "arrayType": "AttributeList", - "insertionOrder": false, - "items": { - "$ref": "#/definitions/OptionConfiguration" - }, - "type": "array" - }, - "OptionGroupDescription": { - "type": "string" - }, - "OptionGroupName": { - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" - } - }, - "propertyTransform": { - "/properties/OptionGroupName": "$lowercase(OptionGroupName)" - }, - "required": [ - "EngineName", - "MajorEngineVersion", - "OptionGroupDescription" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-rds", - "typeName": "AWS::RDS::OptionGroup" -} diff --git a/src/cfnlint/data/schemas/providers/eu_central_2/aws-redshift-integration.json b/src/cfnlint/data/schemas/providers/eu_central_2/aws-redshift-integration.json new file mode 100644 index 0000000000..b9c4afe63b --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_2/aws-redshift-integration.json @@ -0,0 +1,115 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/SourceArn", + "/properties/TargetArn", + "/properties/KMSKeyId", + "/properties/AdditionalEncryptionContext" + ], + "definitions": { + "EncryptionContextMap": { + "additionalProperties": false, + "patternProperties": { + "^[\\s\\S]*$": { + "maxLength": 131072, + "minLength": 0, + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key" + ], + "type": "object" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 50, + "type": "array", + "uniqueItems": true + } + }, + "primaryIdentifier": [ + "/properties/IntegrationArn" + ], + "properties": { + "AdditionalEncryptionContext": { + "$ref": "#/definitions/EncryptionContextMap" + }, + "CreateTime": { + "type": "string" + }, + "IntegrationArn": { + "type": "string" + }, + "IntegrationName": { + "maxLength": 64, + "minLength": 1, + "type": "string" + }, + "KMSKeyId": { + "anyOf": [ + { + "relationshipRef": { + "propertyPath": "/properties/KeyId", + "typeName": "AWS::KMS::Key" + } + } + ], + "type": "string" + }, + "SourceArn": { + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 50, + "type": "array", + "uniqueItems": true + }, + "TargetArn": { + "type": "string" + } + }, + "propertyTransform": { + "/properties/KmsKeyId": "$join([\"arn:(aws)[-]{0,1}[a-z]{0,2}[-]{0,1}[a-z]{0,3}:kms:[a-z]{2}[-]{1}[a-z]{3,10}[-]{0,1}[a-z]{0,10}[-]{1}[1-3]{1}:[0-9]{12}[:]{1}key\\/\", KmsKeyId])" + }, + "readOnlyProperties": [ + "/properties/IntegrationArn", + "/properties/CreateTime" + ], + "required": [ + "SourceArn", + "TargetArn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Redshift::Integration" +} diff --git a/src/cfnlint/data/schemas/providers/eu_central_2/aws-secretsmanager-secrettargetattachment.json b/src/cfnlint/data/schemas/providers/eu_central_2/aws-secretsmanager-secrettargetattachment.json deleted file mode 100644 index 8b5501d290..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_central_2/aws-secretsmanager-secrettargetattachment.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "additionalProperties": false, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "Id": { - "type": "string" - }, - "SecretId": { - "type": "string" - }, - "TargetId": { - "type": "string" - }, - "TargetType": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "SecretId", - "TargetType", - "TargetId" - ], - "typeName": "AWS::SecretsManager::SecretTargetAttachment" -} diff --git a/src/cfnlint/data/schemas/providers/eu_north_1/__init__.py b/src/cfnlint/data/schemas/providers/eu_north_1/__init__.py index 77ea779c98..7510fc5648 100644 --- a/src/cfnlint/data/schemas/providers/eu_north_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/eu_north_1/__init__.py @@ -1348,9 +1348,7 @@ "aws-ecs-cluster.json", "aws-ecs-clustercapacityproviderassociations.json", "aws-ecs-primarytaskset.json", - "aws-ecs-service.json", "aws-ecs-taskdefinition.json", - "aws-ecs-taskset.json", "aws-efs-accesspoint.json", "aws-efs-filesystem.json", "aws-efs-mounttarget.json", @@ -1444,7 +1442,6 @@ "aws-groundstation-config.json", "aws-groundstation-dataflowendpointgroup.json", "aws-groundstation-missionprofile.json", - "aws-guardduty-detector.json", "aws-guardduty-filter.json", "aws-guardduty-ipset.json", "aws-guardduty-malwareprotectionplan.json", @@ -1516,7 +1513,6 @@ "aws-kafkaconnect-connector.json", "aws-kafkaconnect-customplugin.json", "aws-kafkaconnect-workerconfiguration.json", - "aws-kinesis-stream.json", "aws-kinesis-streamconsumer.json", "aws-kinesisanalytics-applicationoutput.json", "aws-kinesisanalyticsv2-application.json", @@ -1640,7 +1636,6 @@ "aws-neptune-dbsubnetgroup.json", "aws-neptune-eventsubscription.json", "aws-networkfirewall-firewall.json", - "aws-networkfirewall-firewallpolicy.json", "aws-networkfirewall-loggingconfiguration.json", "aws-networkfirewall-rulegroup.json", "aws-networkfirewall-tlsinspectionconfiguration.json", @@ -1777,6 +1772,7 @@ "aws-sagemaker-endpointconfig.json", "aws-sagemaker-featuregroup.json", "aws-sagemaker-image.json", + "aws-sagemaker-imageversion.json", "aws-sagemaker-inferencecomponent.json", "aws-sagemaker-inferenceexperiment.json", "aws-sagemaker-mlflowtrackingserver.json", diff --git a/src/cfnlint/data/schemas/providers/eu_north_1/aws-ecs-service.json b/src/cfnlint/data/schemas/providers/eu_north_1/aws-ecs-service.json new file mode 100644 index 0000000000..ba7baa1de3 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_north_1/aws-ecs-service.json @@ -0,0 +1,585 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/DeploymentController", + "/properties/LaunchType", + "/properties/Role", + "/properties/SchedulingStrategy", + "/properties/ServiceName" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "CapacityProviderStrategyItem": { + "additionalProperties": false, + "properties": { + "Base": { + "type": "integer" + }, + "CapacityProvider": { + "type": "string" + }, + "Weight": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentAlarms": { + "additionalProperties": false, + "properties": { + "AlarmNames": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "AlarmNames", + "Rollback", + "Enable" + ], + "type": "object" + }, + "DeploymentCircuitBreaker": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "Enable", + "Rollback" + ], + "type": "object" + }, + "DeploymentConfiguration": { + "additionalProperties": false, + "properties": { + "Alarms": { + "$ref": "#/definitions/DeploymentAlarms" + }, + "DeploymentCircuitBreaker": { + "$ref": "#/definitions/DeploymentCircuitBreaker" + }, + "MaximumPercent": { + "type": "integer" + }, + "MinimumHealthyPercent": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentController": { + "additionalProperties": false, + "properties": { + "Type": { + "enum": [ + "CODE_DEPLOY", + "ECS", + "EXTERNAL" + ], + "type": "string" + } + }, + "type": "object" + }, + "EBSTagSpecification": { + "additionalProperties": false, + "properties": { + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "ResourceType": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "ResourceType" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "LoadBalancerName": { + "type": "string" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "LogConfiguration": { + "additionalProperties": false, + "properties": { + "LogDriver": { + "type": "string" + }, + "Options": { + "additionalProperties": false, + "patternProperties": { + ".{1,}": { + "type": "string" + } + }, + "type": "object" + }, + "SecretOptions": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Secret" + }, + "type": "array" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsvpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "PlacementConstraint": { + "additionalProperties": false, + "properties": { + "Expression": { + "type": "string" + }, + "Type": { + "enum": [ + "distinctInstance", + "memberOf" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "PlacementStrategy": { + "additionalProperties": false, + "properties": { + "Field": { + "type": "string" + }, + "Type": { + "enum": [ + "binpack", + "random", + "spread" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "Secret": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "ValueFrom": { + "type": "string" + } + }, + "required": [ + "Name", + "ValueFrom" + ], + "type": "object" + }, + "ServiceConnectClientAlias": { + "additionalProperties": false, + "properties": { + "DnsName": { + "type": "string" + }, + "Port": { + "type": "integer" + } + }, + "required": [ + "Port" + ], + "type": "object" + }, + "ServiceConnectConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + }, + "LogConfiguration": { + "$ref": "#/definitions/LogConfiguration" + }, + "Namespace": { + "type": "string" + }, + "Services": { + "items": { + "$ref": "#/definitions/ServiceConnectService" + }, + "type": "array" + } + }, + "required": [ + "Enabled" + ], + "type": "object" + }, + "ServiceConnectService": { + "additionalProperties": false, + "properties": { + "ClientAliases": { + "items": { + "$ref": "#/definitions/ServiceConnectClientAlias" + }, + "type": "array" + }, + "DiscoveryName": { + "type": "string" + }, + "IngressPortOverride": { + "type": "integer" + }, + "PortName": { + "type": "string" + }, + "Timeout": { + "$ref": "#/definitions/TimeoutConfiguration" + }, + "Tls": { + "$ref": "#/definitions/ServiceConnectTlsConfiguration" + } + }, + "required": [ + "PortName" + ], + "type": "object" + }, + "ServiceConnectTlsCertificateAuthority": { + "additionalProperties": false, + "properties": { + "AwsPcaAuthorityArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceConnectTlsConfiguration": { + "additionalProperties": false, + "properties": { + "IssuerCertificateAuthority": { + "$ref": "#/definitions/ServiceConnectTlsCertificateAuthority" + }, + "KmsKey": { + "type": "string" + }, + "RoleArn": { + "type": "string" + } + }, + "required": [ + "IssuerCertificateAuthority" + ], + "type": "object" + }, + "ServiceManagedEBSVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "Encrypted": { + "type": "boolean" + }, + "FilesystemType": { + "type": "string" + }, + "Iops": { + "type": "integer" + }, + "KmsKeyId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SizeInGiB": { + "type": "integer" + }, + "SnapshotId": { + "type": "string" + }, + "TagSpecifications": { + "items": { + "$ref": "#/definitions/EBSTagSpecification" + }, + "type": "array" + }, + "Throughput": { + "type": "integer" + }, + "VolumeType": { + "type": "string" + } + }, + "required": [ + "RoleArn" + ], + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "ManagedEBSVolume": { + "$ref": "#/definitions/ServiceManagedEBSVolumeConfiguration" + }, + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + }, + "TimeoutConfiguration": { + "additionalProperties": false, + "properties": { + "IdleTimeoutSeconds": { + "type": "integer" + }, + "PerRequestTimeoutSeconds": { + "type": "integer" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/ServiceArn", + "/properties/Cluster" + ], + "properties": { + "CapacityProviderStrategy": { + "items": { + "$ref": "#/definitions/CapacityProviderStrategyItem" + }, + "type": "array" + }, + "Cluster": { + "type": "string" + }, + "DeploymentConfiguration": { + "$ref": "#/definitions/DeploymentConfiguration" + }, + "DeploymentController": { + "$ref": "#/definitions/DeploymentController" + }, + "DesiredCount": { + "type": "integer" + }, + "EnableECSManagedTags": { + "type": "boolean" + }, + "EnableExecuteCommand": { + "type": "boolean" + }, + "HealthCheckGracePeriodSeconds": { + "type": "integer" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE", + "EXTERNAL" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "Name": { + "type": "string" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlacementConstraints": { + "items": { + "$ref": "#/definitions/PlacementConstraint" + }, + "type": "array" + }, + "PlacementStrategies": { + "items": { + "$ref": "#/definitions/PlacementStrategy" + }, + "type": "array" + }, + "PlatformVersion": { + "default": "LATEST", + "type": "string" + }, + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "Role": { + "type": "string" + }, + "SchedulingStrategy": { + "enum": [ + "DAEMON", + "REPLICA" + ], + "type": "string" + }, + "ServiceArn": { + "type": "string" + }, + "ServiceConnectConfiguration": { + "$ref": "#/definitions/ServiceConnectConfiguration" + }, + "ServiceName": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + }, + "VolumeConfigurations": { + "items": { + "$ref": "#/definitions/ServiceVolumeConfiguration" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/ServiceArn", + "/properties/Name" + ], + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::Service", + "writeOnlyProperties": [ + "/properties/ServiceConnectConfiguration", + "/properties/VolumeConfigurations" + ] +} diff --git a/src/cfnlint/data/schemas/providers/eu_north_1/aws-ecs-taskset.json b/src/cfnlint/data/schemas/providers/eu_north_1/aws-ecs-taskset.json new file mode 100644 index 0000000000..3491488499 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_north_1/aws-ecs-taskset.json @@ -0,0 +1,191 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/ExternalId", + "/properties/LaunchType", + "/properties/LoadBalancers", + "/properties/NetworkConfiguration", + "/properties/PlatformVersion", + "/properties/Service", + "/properties/ServiceRegistries", + "/properties/TaskDefinition" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "maxItems": 5, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "maxItems": 16, + "type": "array" + } + }, + "required": [ + "Subnets" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsVpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "Scale": { + "additionalProperties": false, + "properties": { + "Unit": { + "enum": [ + "PERCENT" + ], + "type": "string" + }, + "Value": { + "maximum": 100, + "minimum": 0, + "type": "number" + } + }, + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Cluster", + "/properties/Service", + "/properties/Id" + ], + "properties": { + "Cluster": { + "type": "string" + }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlatformVersion": { + "type": "string" + }, + "Scale": { + "$ref": "#/definitions/Scale" + }, + "Service": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "Cluster", + "Service", + "TaskDefinition" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-ecs.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::TaskSet" +} diff --git a/src/cfnlint/data/schemas/providers/eu_north_1/aws-guardduty-detector.json b/src/cfnlint/data/schemas/providers/eu_north_1/aws-guardduty-detector.json new file mode 100644 index 0000000000..efaad17ff9 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_north_1/aws-guardduty-detector.json @@ -0,0 +1,184 @@ +{ + "additionalProperties": false, + "definitions": { + "CFNDataSourceConfigurations": { + "additionalProperties": false, + "properties": { + "Kubernetes": { + "$ref": "#/definitions/CFNKubernetesConfiguration" + }, + "MalwareProtection": { + "$ref": "#/definitions/CFNMalwareProtectionConfiguration" + }, + "S3Logs": { + "$ref": "#/definitions/CFNS3LogsConfiguration" + } + }, + "type": "object" + }, + "CFNFeatureAdditionalConfiguration": { + "additionalProperties": false, + "properties": { + "Name": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "Status": { + "maxLength": 128, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "CFNFeatureConfiguration": { + "additionalProperties": false, + "properties": { + "AdditionalConfiguration": { + "items": { + "$ref": "#/definitions/CFNFeatureAdditionalConfiguration" + }, + "type": "array" + }, + "Name": { + "maxLength": 128, + "type": "string" + }, + "Status": { + "enum": [ + "ENABLED", + "DISABLED" + ], + "type": "string" + } + }, + "required": [ + "Name", + "Status" + ], + "type": "object" + }, + "CFNKubernetesAuditLogsConfiguration": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + } + }, + "required": [ + "Enable" + ], + "type": "object" + }, + "CFNKubernetesConfiguration": { + "additionalProperties": false, + "properties": { + "AuditLogs": { + "$ref": "#/definitions/CFNKubernetesAuditLogsConfiguration" + } + }, + "required": [ + "AuditLogs" + ], + "type": "object" + }, + "CFNMalwareProtectionConfiguration": { + "additionalProperties": false, + "properties": { + "ScanEc2InstanceWithFindings": { + "$ref": "#/definitions/CFNScanEc2InstanceWithFindingsConfiguration" + } + }, + "type": "object" + }, + "CFNS3LogsConfiguration": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + } + }, + "required": [ + "Enable" + ], + "type": "object" + }, + "CFNScanEc2InstanceWithFindingsConfiguration": { + "additionalProperties": false, + "properties": { + "EbsVolumes": { + "type": "boolean" + } + }, + "type": "object" + }, + "TagItem": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "DataSources": { + "$ref": "#/definitions/CFNDataSourceConfigurations" + }, + "Enable": { + "type": "boolean" + }, + "Features": { + "items": { + "$ref": "#/definitions/CFNFeatureConfiguration" + }, + "type": "array" + }, + "FindingPublishingFrequency": { + "enum": [ + "FIFTEEN_MINUTES", + "ONE_HOUR", + "SIX_HOURS" + ], + "type": "string" + }, + "Id": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/TagItem" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "Enable" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": false, + "taggable": true + }, + "typeName": "AWS::GuardDuty::Detector" +} diff --git a/src/cfnlint/data/schemas/providers/eu_north_1/aws-kinesis-stream.json b/src/cfnlint/data/schemas/providers/eu_north_1/aws-kinesis-stream.json new file mode 100644 index 0000000000..be1bc65c07 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_north_1/aws-kinesis-stream.json @@ -0,0 +1,133 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "StreamEncryption": { + "additionalProperties": false, + "properties": { + "EncryptionType": { + "enum": [ + "KMS" + ], + "type": "string" + }, + "KeyId": { + "anyOf": [ + { + "relationshipRef": { + "propertyPath": "/properties/Arn", + "typeName": "AWS::KMS::Key" + } + }, + { + "relationshipRef": { + "propertyPath": "/properties/KeyId", + "typeName": "AWS::KMS::Key" + } + } + ], + "maxLength": 2048, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "EncryptionType", + "KeyId" + ], + "type": "object" + }, + "StreamModeDetails": { + "additionalProperties": false, + "properties": { + "StreamMode": { + "enum": [ + "ON_DEMAND", + "PROVISIONED" + ], + "type": "string" + } + }, + "required": [ + "StreamMode" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Name" + ], + "properties": { + "Arn": { + "type": "string" + }, + "Name": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9_.-]+$", + "type": "string" + }, + "RetentionPeriodHours": { + "maximum": 8760, + "minimum": 1, + "type": "integer" + }, + "ShardCount": { + "maximum": 100000, + "minimum": 1, + "type": "integer" + }, + "StreamEncryption": { + "$ref": "#/definitions/StreamEncryption" + }, + "StreamModeDetails": { + "$ref": "#/definitions/StreamModeDetails", + "default": { + "StreamMode": "PROVISIONED" + } + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 50, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-kinesis.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Kinesis::Stream" +} diff --git a/src/cfnlint/data/schemas/providers/eu_north_1/aws-networkfirewall-firewallpolicy.json b/src/cfnlint/data/schemas/providers/eu_north_1/aws-networkfirewall-firewallpolicy.json new file mode 100644 index 0000000000..973b595561 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_north_1/aws-networkfirewall-firewallpolicy.json @@ -0,0 +1,332 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/FirewallPolicyName" + ], + "definitions": { + "ActionDefinition": { + "additionalProperties": false, + "properties": { + "PublishMetricAction": { + "$ref": "#/definitions/PublishMetricAction" + } + }, + "type": "object" + }, + "CustomAction": { + "additionalProperties": false, + "properties": { + "ActionDefinition": { + "$ref": "#/definitions/ActionDefinition" + }, + "ActionName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + } + }, + "required": [ + "ActionName", + "ActionDefinition" + ], + "type": "object" + }, + "Dimension": { + "additionalProperties": false, + "properties": { + "Value": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-_ ]+$", + "type": "string" + } + }, + "required": [ + "Value" + ], + "type": "object" + }, + "FirewallPolicy": { + "additionalProperties": false, + "properties": { + "PolicyVariables": { + "additionalProperties": false, + "properties": { + "RuleVariables": { + "$ref": "#/definitions/RuleVariables" + } + }, + "type": "object" + }, + "StatefulDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatefulEngineOptions": { + "$ref": "#/definitions/StatefulEngineOptions" + }, + "StatefulRuleGroupReferences": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/StatefulRuleGroupReference" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessCustomActions": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/CustomAction" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessFragmentDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessRuleGroupReferences": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/StatelessRuleGroupReference" + }, + "type": "array", + "uniqueItems": false + }, + "TLSInspectionConfigurationArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "StatelessDefaultActions", + "StatelessFragmentDefaultActions" + ], + "type": "object" + }, + "IPSet": { + "additionalProperties": false, + "properties": { + "Definition": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/VariableDefinition" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "OverrideAction": { + "enum": [ + "DROP_TO_ALERT" + ], + "type": "string" + }, + "Priority": { + "maximum": 65535, + "minimum": 1, + "type": "integer" + }, + "PublishMetricAction": { + "additionalProperties": false, + "properties": { + "Dimensions": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/Dimension" + }, + "type": "array", + "uniqueItems": false + } + }, + "required": [ + "Dimensions" + ], + "type": "object" + }, + "ResourceArn": { + "maxLength": 256, + "minLength": 1, + "pattern": "^(arn:aws.*)$", + "type": "string" + }, + "RuleOrder": { + "enum": [ + "DEFAULT_ACTION_ORDER", + "STRICT_ORDER" + ], + "type": "string" + }, + "RuleVariables": { + "additionalProperties": false, + "patternProperties": { + "^[A-Za-z0-9_]{1,32}$": { + "$ref": "#/definitions/IPSet" + } + }, + "type": "object" + }, + "StatefulEngineOptions": { + "additionalProperties": false, + "properties": { + "RuleOrder": { + "$ref": "#/definitions/RuleOrder" + }, + "StreamExceptionPolicy": { + "$ref": "#/definitions/StreamExceptionPolicy" + } + }, + "type": "object" + }, + "StatefulRuleGroupOverride": { + "additionalProperties": false, + "properties": { + "Action": { + "$ref": "#/definitions/OverrideAction" + } + }, + "type": "object" + }, + "StatefulRuleGroupReference": { + "additionalProperties": false, + "properties": { + "Override": { + "$ref": "#/definitions/StatefulRuleGroupOverride" + }, + "Priority": { + "$ref": "#/definitions/Priority" + }, + "ResourceArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "ResourceArn" + ], + "type": "object" + }, + "StatelessRuleGroupReference": { + "additionalProperties": false, + "properties": { + "Priority": { + "$ref": "#/definitions/Priority" + }, + "ResourceArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "ResourceArn", + "Priority" + ], + "type": "object" + }, + "StreamExceptionPolicy": { + "enum": [ + "DROP", + "CONTINUE", + "REJECT" + ], + "type": "string" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "^.*$", + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 0, + "pattern": "^.*$", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "VariableDefinition": { + "minLength": 1, + "pattern": "^.*$", + "type": "string" + } + }, + "primaryIdentifier": [ + "/properties/FirewallPolicyArn" + ], + "properties": { + "Description": { + "maxLength": 512, + "minLength": 1, + "pattern": "^.*$", + "type": "string" + }, + "FirewallPolicy": { + "$ref": "#/definitions/FirewallPolicy" + }, + "FirewallPolicyArn": { + "$ref": "#/definitions/ResourceArn" + }, + "FirewallPolicyId": { + "maxLength": 36, + "minLength": 36, + "pattern": "^([0-9a-f]{8})-([0-9a-f]{4}-){3}([0-9a-f]{12})$", + "type": "string" + }, + "FirewallPolicyName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-]+$", + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + } + }, + "readOnlyProperties": [ + "/properties/FirewallPolicyArn", + "/properties/FirewallPolicyId" + ], + "required": [ + "FirewallPolicyName", + "FirewallPolicy" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-networkfirewall.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::NetworkFirewall::FirewallPolicy" +} diff --git a/src/cfnlint/data/schemas/providers/eu_north_1/aws-sagemaker-imageversion.json b/src/cfnlint/data/schemas/providers/eu_north_1/aws-sagemaker-imageversion.json deleted file mode 100644 index e7c91ccc8d..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_north_1/aws-sagemaker-imageversion.json +++ /dev/null @@ -1,172 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/ImageName", - "/properties/BaseImage" - ], - "definitions": { - "Alias": { - "maxLength": 128, - "minLength": 1, - "pattern": "(?!^[.-])^([a-zA-Z0-9-_.]+)$", - "type": "string" - }, - "Aliases": { - "items": { - "$ref": "#/definitions/Alias" - }, - "type": "array" - }, - "BaseImage": { - "maxLength": 255, - "minLength": 1, - "pattern": ".+", - "type": "string" - }, - "ContainerImage": { - "maxLength": 255, - "minLength": 1, - "pattern": ".+", - "type": "string" - }, - "Horovod": { - "type": "boolean" - }, - "ImageArn": { - "maxLength": 256, - "minLength": 1, - "pattern": "^arn:aws(-[\\w]+)*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:image\\/[a-zA-Z0-9]([-.]?[a-zA-Z0-9])*$", - "type": "string" - }, - "ImageName": { - "maxLength": 63, - "minLength": 1, - "pattern": "^[A-Za-z0-9]([-.]?[A-Za-z0-9])*$", - "type": "string" - }, - "ImageVersionArn": { - "maxLength": 256, - "minLength": 1, - "pattern": "^arn:aws(-[\\w]+)*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:image-version\\/[a-zA-Z0-9]([-.]?[a-zA-Z0-9])*\\/[0-9]+$", - "type": "string" - }, - "JobType": { - "enum": [ - "TRAINING", - "INFERENCE", - "NOTEBOOK_KERNEL" - ], - "type": "string" - }, - "MLFramework": { - "maxLength": 128, - "minLength": 1, - "pattern": "^[a-zA-Z]+ ?\\d+\\.\\d+(\\.\\d+)?$", - "type": "string" - }, - "Processor": { - "enum": [ - "CPU", - "GPU" - ], - "type": "string" - }, - "ProgrammingLang": { - "maxLength": 128, - "minLength": 1, - "pattern": "^[a-zA-Z]+ ?\\d+\\.\\d+(\\.\\d+)?$", - "type": "string" - }, - "ReleaseNotes": { - "maxLength": 255, - "minLength": 1, - "pattern": ".*", - "type": "string" - }, - "VendorGuidance": { - "enum": [ - "NOT_PROVIDED", - "STABLE", - "TO_BE_ARCHIVED", - "ARCHIVED" - ], - "type": "string" - }, - "Version": { - "minimum": 1, - "type": "integer" - } - }, - "primaryIdentifier": [ - "/properties/ImageVersionArn" - ], - "properties": { - "Alias": { - "$ref": "#/definitions/Alias" - }, - "Aliases": { - "$ref": "#/definitions/Aliases" - }, - "BaseImage": { - "$ref": "#/definitions/BaseImage" - }, - "ContainerImage": { - "$ref": "#/definitions/ContainerImage" - }, - "Horovod": { - "$ref": "#/definitions/Horovod" - }, - "ImageArn": { - "$ref": "#/definitions/ImageArn" - }, - "ImageName": { - "$ref": "#/definitions/ImageName" - }, - "ImageVersionArn": { - "$ref": "#/definitions/ImageVersionArn" - }, - "JobType": { - "$ref": "#/definitions/JobType" - }, - "MLFramework": { - "$ref": "#/definitions/MLFramework" - }, - "Processor": { - "$ref": "#/definitions/Processor" - }, - "ProgrammingLang": { - "$ref": "#/definitions/ProgrammingLang" - }, - "ReleaseNotes": { - "$ref": "#/definitions/ReleaseNotes" - }, - "VendorGuidance": { - "$ref": "#/definitions/VendorGuidance" - }, - "Version": { - "$ref": "#/definitions/Version" - } - }, - "readOnlyProperties": [ - "/properties/ImageVersionArn", - "/properties/ImageArn", - "/properties/Version", - "/properties/ContainerImage" - ], - "required": [ - "ImageName", - "BaseImage" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sagemaker", - "tagging": { - "cloudFormationSystemTags": false, - "tagOnCreate": false, - "tagUpdatable": false, - "taggable": false - }, - "typeName": "AWS::SageMaker::ImageVersion", - "writeOnlyProperties": [ - "/properties/Aliases", - "/properties/Alias" - ] -} diff --git a/src/cfnlint/data/schemas/providers/eu_south_1/__init__.py b/src/cfnlint/data/schemas/providers/eu_south_1/__init__.py index 1bfc38a08d..7884ffb563 100644 --- a/src/cfnlint/data/schemas/providers/eu_south_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/eu_south_1/__init__.py @@ -1124,9 +1124,7 @@ "aws-ecs-cluster.json", "aws-ecs-clustercapacityproviderassociations.json", "aws-ecs-primarytaskset.json", - "aws-ecs-service.json", "aws-ecs-taskdefinition.json", - "aws-ecs-taskset.json", "aws-efs-accesspoint.json", "aws-efs-filesystem.json", "aws-efs-mounttarget.json", @@ -1209,7 +1207,6 @@ "aws-glue-trigger.json", "aws-glue-usageprofile.json", "aws-glue-workflow.json", - "aws-guardduty-detector.json", "aws-guardduty-filter.json", "aws-guardduty-ipset.json", "aws-guardduty-malwareprotectionplan.json", @@ -1244,7 +1241,6 @@ "aws-inspectorv2-cisscanconfiguration.json", "aws-inspectorv2-filter.json", "aws-internetmonitor-monitor.json", - "aws-kinesis-stream.json", "aws-kinesisanalytics-applicationoutput.json", "aws-kinesisanalyticsv2-application.json", "aws-kinesisanalyticsv2-applicationoutput.json", @@ -1293,7 +1289,6 @@ "aws-msk-vpcconnection.json", "aws-mwaa-environment.json", "aws-networkfirewall-firewall.json", - "aws-networkfirewall-firewallpolicy.json", "aws-networkfirewall-loggingconfiguration.json", "aws-networkfirewall-rulegroup.json", "aws-networkfirewall-tlsinspectionconfiguration.json", @@ -1415,6 +1410,7 @@ "aws-sagemaker-endpointconfig.json", "aws-sagemaker-featuregroup.json", "aws-sagemaker-image.json", + "aws-sagemaker-imageversion.json", "aws-sagemaker-inferenceexperiment.json", "aws-sagemaker-mlflowtrackingserver.json", "aws-sagemaker-model.json", diff --git a/src/cfnlint/data/schemas/providers/eu_south_1/aws-ecs-service.json b/src/cfnlint/data/schemas/providers/eu_south_1/aws-ecs-service.json new file mode 100644 index 0000000000..ba7baa1de3 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_south_1/aws-ecs-service.json @@ -0,0 +1,585 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/DeploymentController", + "/properties/LaunchType", + "/properties/Role", + "/properties/SchedulingStrategy", + "/properties/ServiceName" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "CapacityProviderStrategyItem": { + "additionalProperties": false, + "properties": { + "Base": { + "type": "integer" + }, + "CapacityProvider": { + "type": "string" + }, + "Weight": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentAlarms": { + "additionalProperties": false, + "properties": { + "AlarmNames": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "AlarmNames", + "Rollback", + "Enable" + ], + "type": "object" + }, + "DeploymentCircuitBreaker": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "Enable", + "Rollback" + ], + "type": "object" + }, + "DeploymentConfiguration": { + "additionalProperties": false, + "properties": { + "Alarms": { + "$ref": "#/definitions/DeploymentAlarms" + }, + "DeploymentCircuitBreaker": { + "$ref": "#/definitions/DeploymentCircuitBreaker" + }, + "MaximumPercent": { + "type": "integer" + }, + "MinimumHealthyPercent": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentController": { + "additionalProperties": false, + "properties": { + "Type": { + "enum": [ + "CODE_DEPLOY", + "ECS", + "EXTERNAL" + ], + "type": "string" + } + }, + "type": "object" + }, + "EBSTagSpecification": { + "additionalProperties": false, + "properties": { + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "ResourceType": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "ResourceType" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "LoadBalancerName": { + "type": "string" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "LogConfiguration": { + "additionalProperties": false, + "properties": { + "LogDriver": { + "type": "string" + }, + "Options": { + "additionalProperties": false, + "patternProperties": { + ".{1,}": { + "type": "string" + } + }, + "type": "object" + }, + "SecretOptions": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Secret" + }, + "type": "array" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsvpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "PlacementConstraint": { + "additionalProperties": false, + "properties": { + "Expression": { + "type": "string" + }, + "Type": { + "enum": [ + "distinctInstance", + "memberOf" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "PlacementStrategy": { + "additionalProperties": false, + "properties": { + "Field": { + "type": "string" + }, + "Type": { + "enum": [ + "binpack", + "random", + "spread" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "Secret": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "ValueFrom": { + "type": "string" + } + }, + "required": [ + "Name", + "ValueFrom" + ], + "type": "object" + }, + "ServiceConnectClientAlias": { + "additionalProperties": false, + "properties": { + "DnsName": { + "type": "string" + }, + "Port": { + "type": "integer" + } + }, + "required": [ + "Port" + ], + "type": "object" + }, + "ServiceConnectConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + }, + "LogConfiguration": { + "$ref": "#/definitions/LogConfiguration" + }, + "Namespace": { + "type": "string" + }, + "Services": { + "items": { + "$ref": "#/definitions/ServiceConnectService" + }, + "type": "array" + } + }, + "required": [ + "Enabled" + ], + "type": "object" + }, + "ServiceConnectService": { + "additionalProperties": false, + "properties": { + "ClientAliases": { + "items": { + "$ref": "#/definitions/ServiceConnectClientAlias" + }, + "type": "array" + }, + "DiscoveryName": { + "type": "string" + }, + "IngressPortOverride": { + "type": "integer" + }, + "PortName": { + "type": "string" + }, + "Timeout": { + "$ref": "#/definitions/TimeoutConfiguration" + }, + "Tls": { + "$ref": "#/definitions/ServiceConnectTlsConfiguration" + } + }, + "required": [ + "PortName" + ], + "type": "object" + }, + "ServiceConnectTlsCertificateAuthority": { + "additionalProperties": false, + "properties": { + "AwsPcaAuthorityArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceConnectTlsConfiguration": { + "additionalProperties": false, + "properties": { + "IssuerCertificateAuthority": { + "$ref": "#/definitions/ServiceConnectTlsCertificateAuthority" + }, + "KmsKey": { + "type": "string" + }, + "RoleArn": { + "type": "string" + } + }, + "required": [ + "IssuerCertificateAuthority" + ], + "type": "object" + }, + "ServiceManagedEBSVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "Encrypted": { + "type": "boolean" + }, + "FilesystemType": { + "type": "string" + }, + "Iops": { + "type": "integer" + }, + "KmsKeyId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SizeInGiB": { + "type": "integer" + }, + "SnapshotId": { + "type": "string" + }, + "TagSpecifications": { + "items": { + "$ref": "#/definitions/EBSTagSpecification" + }, + "type": "array" + }, + "Throughput": { + "type": "integer" + }, + "VolumeType": { + "type": "string" + } + }, + "required": [ + "RoleArn" + ], + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "ManagedEBSVolume": { + "$ref": "#/definitions/ServiceManagedEBSVolumeConfiguration" + }, + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + }, + "TimeoutConfiguration": { + "additionalProperties": false, + "properties": { + "IdleTimeoutSeconds": { + "type": "integer" + }, + "PerRequestTimeoutSeconds": { + "type": "integer" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/ServiceArn", + "/properties/Cluster" + ], + "properties": { + "CapacityProviderStrategy": { + "items": { + "$ref": "#/definitions/CapacityProviderStrategyItem" + }, + "type": "array" + }, + "Cluster": { + "type": "string" + }, + "DeploymentConfiguration": { + "$ref": "#/definitions/DeploymentConfiguration" + }, + "DeploymentController": { + "$ref": "#/definitions/DeploymentController" + }, + "DesiredCount": { + "type": "integer" + }, + "EnableECSManagedTags": { + "type": "boolean" + }, + "EnableExecuteCommand": { + "type": "boolean" + }, + "HealthCheckGracePeriodSeconds": { + "type": "integer" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE", + "EXTERNAL" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "Name": { + "type": "string" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlacementConstraints": { + "items": { + "$ref": "#/definitions/PlacementConstraint" + }, + "type": "array" + }, + "PlacementStrategies": { + "items": { + "$ref": "#/definitions/PlacementStrategy" + }, + "type": "array" + }, + "PlatformVersion": { + "default": "LATEST", + "type": "string" + }, + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "Role": { + "type": "string" + }, + "SchedulingStrategy": { + "enum": [ + "DAEMON", + "REPLICA" + ], + "type": "string" + }, + "ServiceArn": { + "type": "string" + }, + "ServiceConnectConfiguration": { + "$ref": "#/definitions/ServiceConnectConfiguration" + }, + "ServiceName": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + }, + "VolumeConfigurations": { + "items": { + "$ref": "#/definitions/ServiceVolumeConfiguration" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/ServiceArn", + "/properties/Name" + ], + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::Service", + "writeOnlyProperties": [ + "/properties/ServiceConnectConfiguration", + "/properties/VolumeConfigurations" + ] +} diff --git a/src/cfnlint/data/schemas/providers/eu_south_1/aws-ecs-taskset.json b/src/cfnlint/data/schemas/providers/eu_south_1/aws-ecs-taskset.json new file mode 100644 index 0000000000..3491488499 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_south_1/aws-ecs-taskset.json @@ -0,0 +1,191 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/ExternalId", + "/properties/LaunchType", + "/properties/LoadBalancers", + "/properties/NetworkConfiguration", + "/properties/PlatformVersion", + "/properties/Service", + "/properties/ServiceRegistries", + "/properties/TaskDefinition" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "maxItems": 5, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "maxItems": 16, + "type": "array" + } + }, + "required": [ + "Subnets" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsVpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "Scale": { + "additionalProperties": false, + "properties": { + "Unit": { + "enum": [ + "PERCENT" + ], + "type": "string" + }, + "Value": { + "maximum": 100, + "minimum": 0, + "type": "number" + } + }, + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Cluster", + "/properties/Service", + "/properties/Id" + ], + "properties": { + "Cluster": { + "type": "string" + }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlatformVersion": { + "type": "string" + }, + "Scale": { + "$ref": "#/definitions/Scale" + }, + "Service": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "Cluster", + "Service", + "TaskDefinition" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-ecs.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::TaskSet" +} diff --git a/src/cfnlint/data/schemas/providers/eu_south_1/aws-guardduty-detector.json b/src/cfnlint/data/schemas/providers/eu_south_1/aws-guardduty-detector.json new file mode 100644 index 0000000000..efaad17ff9 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_south_1/aws-guardduty-detector.json @@ -0,0 +1,184 @@ +{ + "additionalProperties": false, + "definitions": { + "CFNDataSourceConfigurations": { + "additionalProperties": false, + "properties": { + "Kubernetes": { + "$ref": "#/definitions/CFNKubernetesConfiguration" + }, + "MalwareProtection": { + "$ref": "#/definitions/CFNMalwareProtectionConfiguration" + }, + "S3Logs": { + "$ref": "#/definitions/CFNS3LogsConfiguration" + } + }, + "type": "object" + }, + "CFNFeatureAdditionalConfiguration": { + "additionalProperties": false, + "properties": { + "Name": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "Status": { + "maxLength": 128, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "CFNFeatureConfiguration": { + "additionalProperties": false, + "properties": { + "AdditionalConfiguration": { + "items": { + "$ref": "#/definitions/CFNFeatureAdditionalConfiguration" + }, + "type": "array" + }, + "Name": { + "maxLength": 128, + "type": "string" + }, + "Status": { + "enum": [ + "ENABLED", + "DISABLED" + ], + "type": "string" + } + }, + "required": [ + "Name", + "Status" + ], + "type": "object" + }, + "CFNKubernetesAuditLogsConfiguration": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + } + }, + "required": [ + "Enable" + ], + "type": "object" + }, + "CFNKubernetesConfiguration": { + "additionalProperties": false, + "properties": { + "AuditLogs": { + "$ref": "#/definitions/CFNKubernetesAuditLogsConfiguration" + } + }, + "required": [ + "AuditLogs" + ], + "type": "object" + }, + "CFNMalwareProtectionConfiguration": { + "additionalProperties": false, + "properties": { + "ScanEc2InstanceWithFindings": { + "$ref": "#/definitions/CFNScanEc2InstanceWithFindingsConfiguration" + } + }, + "type": "object" + }, + "CFNS3LogsConfiguration": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + } + }, + "required": [ + "Enable" + ], + "type": "object" + }, + "CFNScanEc2InstanceWithFindingsConfiguration": { + "additionalProperties": false, + "properties": { + "EbsVolumes": { + "type": "boolean" + } + }, + "type": "object" + }, + "TagItem": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "DataSources": { + "$ref": "#/definitions/CFNDataSourceConfigurations" + }, + "Enable": { + "type": "boolean" + }, + "Features": { + "items": { + "$ref": "#/definitions/CFNFeatureConfiguration" + }, + "type": "array" + }, + "FindingPublishingFrequency": { + "enum": [ + "FIFTEEN_MINUTES", + "ONE_HOUR", + "SIX_HOURS" + ], + "type": "string" + }, + "Id": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/TagItem" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "Enable" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": false, + "taggable": true + }, + "typeName": "AWS::GuardDuty::Detector" +} diff --git a/src/cfnlint/data/schemas/providers/eu_south_1/aws-kinesis-stream.json b/src/cfnlint/data/schemas/providers/eu_south_1/aws-kinesis-stream.json new file mode 100644 index 0000000000..be1bc65c07 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_south_1/aws-kinesis-stream.json @@ -0,0 +1,133 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "StreamEncryption": { + "additionalProperties": false, + "properties": { + "EncryptionType": { + "enum": [ + "KMS" + ], + "type": "string" + }, + "KeyId": { + "anyOf": [ + { + "relationshipRef": { + "propertyPath": "/properties/Arn", + "typeName": "AWS::KMS::Key" + } + }, + { + "relationshipRef": { + "propertyPath": "/properties/KeyId", + "typeName": "AWS::KMS::Key" + } + } + ], + "maxLength": 2048, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "EncryptionType", + "KeyId" + ], + "type": "object" + }, + "StreamModeDetails": { + "additionalProperties": false, + "properties": { + "StreamMode": { + "enum": [ + "ON_DEMAND", + "PROVISIONED" + ], + "type": "string" + } + }, + "required": [ + "StreamMode" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Name" + ], + "properties": { + "Arn": { + "type": "string" + }, + "Name": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9_.-]+$", + "type": "string" + }, + "RetentionPeriodHours": { + "maximum": 8760, + "minimum": 1, + "type": "integer" + }, + "ShardCount": { + "maximum": 100000, + "minimum": 1, + "type": "integer" + }, + "StreamEncryption": { + "$ref": "#/definitions/StreamEncryption" + }, + "StreamModeDetails": { + "$ref": "#/definitions/StreamModeDetails", + "default": { + "StreamMode": "PROVISIONED" + } + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 50, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-kinesis.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Kinesis::Stream" +} diff --git a/src/cfnlint/data/schemas/providers/eu_south_1/aws-networkfirewall-firewallpolicy.json b/src/cfnlint/data/schemas/providers/eu_south_1/aws-networkfirewall-firewallpolicy.json new file mode 100644 index 0000000000..973b595561 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_south_1/aws-networkfirewall-firewallpolicy.json @@ -0,0 +1,332 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/FirewallPolicyName" + ], + "definitions": { + "ActionDefinition": { + "additionalProperties": false, + "properties": { + "PublishMetricAction": { + "$ref": "#/definitions/PublishMetricAction" + } + }, + "type": "object" + }, + "CustomAction": { + "additionalProperties": false, + "properties": { + "ActionDefinition": { + "$ref": "#/definitions/ActionDefinition" + }, + "ActionName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + } + }, + "required": [ + "ActionName", + "ActionDefinition" + ], + "type": "object" + }, + "Dimension": { + "additionalProperties": false, + "properties": { + "Value": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-_ ]+$", + "type": "string" + } + }, + "required": [ + "Value" + ], + "type": "object" + }, + "FirewallPolicy": { + "additionalProperties": false, + "properties": { + "PolicyVariables": { + "additionalProperties": false, + "properties": { + "RuleVariables": { + "$ref": "#/definitions/RuleVariables" + } + }, + "type": "object" + }, + "StatefulDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatefulEngineOptions": { + "$ref": "#/definitions/StatefulEngineOptions" + }, + "StatefulRuleGroupReferences": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/StatefulRuleGroupReference" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessCustomActions": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/CustomAction" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessFragmentDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessRuleGroupReferences": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/StatelessRuleGroupReference" + }, + "type": "array", + "uniqueItems": false + }, + "TLSInspectionConfigurationArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "StatelessDefaultActions", + "StatelessFragmentDefaultActions" + ], + "type": "object" + }, + "IPSet": { + "additionalProperties": false, + "properties": { + "Definition": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/VariableDefinition" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "OverrideAction": { + "enum": [ + "DROP_TO_ALERT" + ], + "type": "string" + }, + "Priority": { + "maximum": 65535, + "minimum": 1, + "type": "integer" + }, + "PublishMetricAction": { + "additionalProperties": false, + "properties": { + "Dimensions": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/Dimension" + }, + "type": "array", + "uniqueItems": false + } + }, + "required": [ + "Dimensions" + ], + "type": "object" + }, + "ResourceArn": { + "maxLength": 256, + "minLength": 1, + "pattern": "^(arn:aws.*)$", + "type": "string" + }, + "RuleOrder": { + "enum": [ + "DEFAULT_ACTION_ORDER", + "STRICT_ORDER" + ], + "type": "string" + }, + "RuleVariables": { + "additionalProperties": false, + "patternProperties": { + "^[A-Za-z0-9_]{1,32}$": { + "$ref": "#/definitions/IPSet" + } + }, + "type": "object" + }, + "StatefulEngineOptions": { + "additionalProperties": false, + "properties": { + "RuleOrder": { + "$ref": "#/definitions/RuleOrder" + }, + "StreamExceptionPolicy": { + "$ref": "#/definitions/StreamExceptionPolicy" + } + }, + "type": "object" + }, + "StatefulRuleGroupOverride": { + "additionalProperties": false, + "properties": { + "Action": { + "$ref": "#/definitions/OverrideAction" + } + }, + "type": "object" + }, + "StatefulRuleGroupReference": { + "additionalProperties": false, + "properties": { + "Override": { + "$ref": "#/definitions/StatefulRuleGroupOverride" + }, + "Priority": { + "$ref": "#/definitions/Priority" + }, + "ResourceArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "ResourceArn" + ], + "type": "object" + }, + "StatelessRuleGroupReference": { + "additionalProperties": false, + "properties": { + "Priority": { + "$ref": "#/definitions/Priority" + }, + "ResourceArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "ResourceArn", + "Priority" + ], + "type": "object" + }, + "StreamExceptionPolicy": { + "enum": [ + "DROP", + "CONTINUE", + "REJECT" + ], + "type": "string" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "^.*$", + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 0, + "pattern": "^.*$", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "VariableDefinition": { + "minLength": 1, + "pattern": "^.*$", + "type": "string" + } + }, + "primaryIdentifier": [ + "/properties/FirewallPolicyArn" + ], + "properties": { + "Description": { + "maxLength": 512, + "minLength": 1, + "pattern": "^.*$", + "type": "string" + }, + "FirewallPolicy": { + "$ref": "#/definitions/FirewallPolicy" + }, + "FirewallPolicyArn": { + "$ref": "#/definitions/ResourceArn" + }, + "FirewallPolicyId": { + "maxLength": 36, + "minLength": 36, + "pattern": "^([0-9a-f]{8})-([0-9a-f]{4}-){3}([0-9a-f]{12})$", + "type": "string" + }, + "FirewallPolicyName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-]+$", + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + } + }, + "readOnlyProperties": [ + "/properties/FirewallPolicyArn", + "/properties/FirewallPolicyId" + ], + "required": [ + "FirewallPolicyName", + "FirewallPolicy" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-networkfirewall.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::NetworkFirewall::FirewallPolicy" +} diff --git a/src/cfnlint/data/schemas/providers/eu_south_1/aws-sagemaker-imageversion.json b/src/cfnlint/data/schemas/providers/eu_south_1/aws-sagemaker-imageversion.json deleted file mode 100644 index e7c91ccc8d..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_south_1/aws-sagemaker-imageversion.json +++ /dev/null @@ -1,172 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/ImageName", - "/properties/BaseImage" - ], - "definitions": { - "Alias": { - "maxLength": 128, - "minLength": 1, - "pattern": "(?!^[.-])^([a-zA-Z0-9-_.]+)$", - "type": "string" - }, - "Aliases": { - "items": { - "$ref": "#/definitions/Alias" - }, - "type": "array" - }, - "BaseImage": { - "maxLength": 255, - "minLength": 1, - "pattern": ".+", - "type": "string" - }, - "ContainerImage": { - "maxLength": 255, - "minLength": 1, - "pattern": ".+", - "type": "string" - }, - "Horovod": { - "type": "boolean" - }, - "ImageArn": { - "maxLength": 256, - "minLength": 1, - "pattern": "^arn:aws(-[\\w]+)*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:image\\/[a-zA-Z0-9]([-.]?[a-zA-Z0-9])*$", - "type": "string" - }, - "ImageName": { - "maxLength": 63, - "minLength": 1, - "pattern": "^[A-Za-z0-9]([-.]?[A-Za-z0-9])*$", - "type": "string" - }, - "ImageVersionArn": { - "maxLength": 256, - "minLength": 1, - "pattern": "^arn:aws(-[\\w]+)*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:image-version\\/[a-zA-Z0-9]([-.]?[a-zA-Z0-9])*\\/[0-9]+$", - "type": "string" - }, - "JobType": { - "enum": [ - "TRAINING", - "INFERENCE", - "NOTEBOOK_KERNEL" - ], - "type": "string" - }, - "MLFramework": { - "maxLength": 128, - "minLength": 1, - "pattern": "^[a-zA-Z]+ ?\\d+\\.\\d+(\\.\\d+)?$", - "type": "string" - }, - "Processor": { - "enum": [ - "CPU", - "GPU" - ], - "type": "string" - }, - "ProgrammingLang": { - "maxLength": 128, - "minLength": 1, - "pattern": "^[a-zA-Z]+ ?\\d+\\.\\d+(\\.\\d+)?$", - "type": "string" - }, - "ReleaseNotes": { - "maxLength": 255, - "minLength": 1, - "pattern": ".*", - "type": "string" - }, - "VendorGuidance": { - "enum": [ - "NOT_PROVIDED", - "STABLE", - "TO_BE_ARCHIVED", - "ARCHIVED" - ], - "type": "string" - }, - "Version": { - "minimum": 1, - "type": "integer" - } - }, - "primaryIdentifier": [ - "/properties/ImageVersionArn" - ], - "properties": { - "Alias": { - "$ref": "#/definitions/Alias" - }, - "Aliases": { - "$ref": "#/definitions/Aliases" - }, - "BaseImage": { - "$ref": "#/definitions/BaseImage" - }, - "ContainerImage": { - "$ref": "#/definitions/ContainerImage" - }, - "Horovod": { - "$ref": "#/definitions/Horovod" - }, - "ImageArn": { - "$ref": "#/definitions/ImageArn" - }, - "ImageName": { - "$ref": "#/definitions/ImageName" - }, - "ImageVersionArn": { - "$ref": "#/definitions/ImageVersionArn" - }, - "JobType": { - "$ref": "#/definitions/JobType" - }, - "MLFramework": { - "$ref": "#/definitions/MLFramework" - }, - "Processor": { - "$ref": "#/definitions/Processor" - }, - "ProgrammingLang": { - "$ref": "#/definitions/ProgrammingLang" - }, - "ReleaseNotes": { - "$ref": "#/definitions/ReleaseNotes" - }, - "VendorGuidance": { - "$ref": "#/definitions/VendorGuidance" - }, - "Version": { - "$ref": "#/definitions/Version" - } - }, - "readOnlyProperties": [ - "/properties/ImageVersionArn", - "/properties/ImageArn", - "/properties/Version", - "/properties/ContainerImage" - ], - "required": [ - "ImageName", - "BaseImage" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sagemaker", - "tagging": { - "cloudFormationSystemTags": false, - "tagOnCreate": false, - "tagUpdatable": false, - "taggable": false - }, - "typeName": "AWS::SageMaker::ImageVersion", - "writeOnlyProperties": [ - "/properties/Aliases", - "/properties/Alias" - ] -} diff --git a/src/cfnlint/data/schemas/providers/eu_south_2/__init__.py b/src/cfnlint/data/schemas/providers/eu_south_2/__init__.py index 09ec4e5d7e..0be45e9a99 100644 --- a/src/cfnlint/data/schemas/providers/eu_south_2/__init__.py +++ b/src/cfnlint/data/schemas/providers/eu_south_2/__init__.py @@ -921,9 +921,7 @@ "aws-ecs-capacityprovider.json", "aws-ecs-clustercapacityproviderassociations.json", "aws-ecs-primarytaskset.json", - "aws-ecs-service.json", "aws-ecs-taskdefinition.json", - "aws-ecs-taskset.json", "aws-efs-accesspoint.json", "aws-efs-filesystem.json", "aws-efs-mounttarget.json", @@ -989,6 +987,7 @@ "aws-glue-datacatalogencryptionsettings.json", "aws-glue-dataqualityruleset.json", "aws-glue-devendpoint.json", + "aws-glue-job.json", "aws-glue-mltransform.json", "aws-glue-partition.json", "aws-glue-securityconfiguration.json", @@ -996,7 +995,6 @@ "aws-glue-trigger.json", "aws-glue-usageprofile.json", "aws-glue-workflow.json", - "aws-guardduty-detector.json", "aws-guardduty-filter.json", "aws-guardduty-ipset.json", "aws-guardduty-malwareprotectionplan.json", @@ -1027,7 +1025,6 @@ "aws-imagebuilder-lifecyclepolicy.json", "aws-imagebuilder-workflow.json", "aws-internetmonitor-monitor.json", - "aws-kinesis-stream.json", "aws-kinesisanalyticsv2-application.json", "aws-kinesisfirehose-deliverystream.json", "aws-kms-alias.json", @@ -1084,7 +1081,6 @@ "aws-neptune-dbsubnetgroup.json", "aws-neptune-eventsubscription.json", "aws-networkfirewall-firewall.json", - "aws-networkfirewall-firewallpolicy.json", "aws-networkfirewall-loggingconfiguration.json", "aws-networkfirewall-rulegroup.json", "aws-networkfirewall-tlsinspectionconfiguration.json", @@ -1181,6 +1177,7 @@ "aws-sagemaker-domain.json", "aws-sagemaker-featuregroup.json", "aws-sagemaker-image.json", + "aws-sagemaker-imageversion.json", "aws-sagemaker-mlflowtrackingserver.json", "aws-sagemaker-modelcard.json", "aws-sagemaker-modelpackage.json", @@ -1196,6 +1193,7 @@ "aws-secretsmanager-resourcepolicy.json", "aws-secretsmanager-rotationschedule.json", "aws-secretsmanager-secret.json", + "aws-secretsmanager-secrettargetattachment.json", "aws-securityhub-automationrule.json", "aws-securityhub-delegatedadmin.json", "aws-securityhub-hub.json", diff --git a/src/cfnlint/data/schemas/providers/eu_south_2/aws-ecs-service.json b/src/cfnlint/data/schemas/providers/eu_south_2/aws-ecs-service.json new file mode 100644 index 0000000000..ba7baa1de3 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_south_2/aws-ecs-service.json @@ -0,0 +1,585 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/DeploymentController", + "/properties/LaunchType", + "/properties/Role", + "/properties/SchedulingStrategy", + "/properties/ServiceName" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "CapacityProviderStrategyItem": { + "additionalProperties": false, + "properties": { + "Base": { + "type": "integer" + }, + "CapacityProvider": { + "type": "string" + }, + "Weight": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentAlarms": { + "additionalProperties": false, + "properties": { + "AlarmNames": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "AlarmNames", + "Rollback", + "Enable" + ], + "type": "object" + }, + "DeploymentCircuitBreaker": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "Enable", + "Rollback" + ], + "type": "object" + }, + "DeploymentConfiguration": { + "additionalProperties": false, + "properties": { + "Alarms": { + "$ref": "#/definitions/DeploymentAlarms" + }, + "DeploymentCircuitBreaker": { + "$ref": "#/definitions/DeploymentCircuitBreaker" + }, + "MaximumPercent": { + "type": "integer" + }, + "MinimumHealthyPercent": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentController": { + "additionalProperties": false, + "properties": { + "Type": { + "enum": [ + "CODE_DEPLOY", + "ECS", + "EXTERNAL" + ], + "type": "string" + } + }, + "type": "object" + }, + "EBSTagSpecification": { + "additionalProperties": false, + "properties": { + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "ResourceType": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "ResourceType" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "LoadBalancerName": { + "type": "string" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "LogConfiguration": { + "additionalProperties": false, + "properties": { + "LogDriver": { + "type": "string" + }, + "Options": { + "additionalProperties": false, + "patternProperties": { + ".{1,}": { + "type": "string" + } + }, + "type": "object" + }, + "SecretOptions": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Secret" + }, + "type": "array" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsvpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "PlacementConstraint": { + "additionalProperties": false, + "properties": { + "Expression": { + "type": "string" + }, + "Type": { + "enum": [ + "distinctInstance", + "memberOf" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "PlacementStrategy": { + "additionalProperties": false, + "properties": { + "Field": { + "type": "string" + }, + "Type": { + "enum": [ + "binpack", + "random", + "spread" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "Secret": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "ValueFrom": { + "type": "string" + } + }, + "required": [ + "Name", + "ValueFrom" + ], + "type": "object" + }, + "ServiceConnectClientAlias": { + "additionalProperties": false, + "properties": { + "DnsName": { + "type": "string" + }, + "Port": { + "type": "integer" + } + }, + "required": [ + "Port" + ], + "type": "object" + }, + "ServiceConnectConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + }, + "LogConfiguration": { + "$ref": "#/definitions/LogConfiguration" + }, + "Namespace": { + "type": "string" + }, + "Services": { + "items": { + "$ref": "#/definitions/ServiceConnectService" + }, + "type": "array" + } + }, + "required": [ + "Enabled" + ], + "type": "object" + }, + "ServiceConnectService": { + "additionalProperties": false, + "properties": { + "ClientAliases": { + "items": { + "$ref": "#/definitions/ServiceConnectClientAlias" + }, + "type": "array" + }, + "DiscoveryName": { + "type": "string" + }, + "IngressPortOverride": { + "type": "integer" + }, + "PortName": { + "type": "string" + }, + "Timeout": { + "$ref": "#/definitions/TimeoutConfiguration" + }, + "Tls": { + "$ref": "#/definitions/ServiceConnectTlsConfiguration" + } + }, + "required": [ + "PortName" + ], + "type": "object" + }, + "ServiceConnectTlsCertificateAuthority": { + "additionalProperties": false, + "properties": { + "AwsPcaAuthorityArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceConnectTlsConfiguration": { + "additionalProperties": false, + "properties": { + "IssuerCertificateAuthority": { + "$ref": "#/definitions/ServiceConnectTlsCertificateAuthority" + }, + "KmsKey": { + "type": "string" + }, + "RoleArn": { + "type": "string" + } + }, + "required": [ + "IssuerCertificateAuthority" + ], + "type": "object" + }, + "ServiceManagedEBSVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "Encrypted": { + "type": "boolean" + }, + "FilesystemType": { + "type": "string" + }, + "Iops": { + "type": "integer" + }, + "KmsKeyId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SizeInGiB": { + "type": "integer" + }, + "SnapshotId": { + "type": "string" + }, + "TagSpecifications": { + "items": { + "$ref": "#/definitions/EBSTagSpecification" + }, + "type": "array" + }, + "Throughput": { + "type": "integer" + }, + "VolumeType": { + "type": "string" + } + }, + "required": [ + "RoleArn" + ], + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "ManagedEBSVolume": { + "$ref": "#/definitions/ServiceManagedEBSVolumeConfiguration" + }, + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + }, + "TimeoutConfiguration": { + "additionalProperties": false, + "properties": { + "IdleTimeoutSeconds": { + "type": "integer" + }, + "PerRequestTimeoutSeconds": { + "type": "integer" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/ServiceArn", + "/properties/Cluster" + ], + "properties": { + "CapacityProviderStrategy": { + "items": { + "$ref": "#/definitions/CapacityProviderStrategyItem" + }, + "type": "array" + }, + "Cluster": { + "type": "string" + }, + "DeploymentConfiguration": { + "$ref": "#/definitions/DeploymentConfiguration" + }, + "DeploymentController": { + "$ref": "#/definitions/DeploymentController" + }, + "DesiredCount": { + "type": "integer" + }, + "EnableECSManagedTags": { + "type": "boolean" + }, + "EnableExecuteCommand": { + "type": "boolean" + }, + "HealthCheckGracePeriodSeconds": { + "type": "integer" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE", + "EXTERNAL" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "Name": { + "type": "string" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlacementConstraints": { + "items": { + "$ref": "#/definitions/PlacementConstraint" + }, + "type": "array" + }, + "PlacementStrategies": { + "items": { + "$ref": "#/definitions/PlacementStrategy" + }, + "type": "array" + }, + "PlatformVersion": { + "default": "LATEST", + "type": "string" + }, + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "Role": { + "type": "string" + }, + "SchedulingStrategy": { + "enum": [ + "DAEMON", + "REPLICA" + ], + "type": "string" + }, + "ServiceArn": { + "type": "string" + }, + "ServiceConnectConfiguration": { + "$ref": "#/definitions/ServiceConnectConfiguration" + }, + "ServiceName": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + }, + "VolumeConfigurations": { + "items": { + "$ref": "#/definitions/ServiceVolumeConfiguration" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/ServiceArn", + "/properties/Name" + ], + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::Service", + "writeOnlyProperties": [ + "/properties/ServiceConnectConfiguration", + "/properties/VolumeConfigurations" + ] +} diff --git a/src/cfnlint/data/schemas/providers/eu_south_2/aws-ecs-taskset.json b/src/cfnlint/data/schemas/providers/eu_south_2/aws-ecs-taskset.json new file mode 100644 index 0000000000..3491488499 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_south_2/aws-ecs-taskset.json @@ -0,0 +1,191 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/ExternalId", + "/properties/LaunchType", + "/properties/LoadBalancers", + "/properties/NetworkConfiguration", + "/properties/PlatformVersion", + "/properties/Service", + "/properties/ServiceRegistries", + "/properties/TaskDefinition" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "maxItems": 5, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "maxItems": 16, + "type": "array" + } + }, + "required": [ + "Subnets" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsVpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "Scale": { + "additionalProperties": false, + "properties": { + "Unit": { + "enum": [ + "PERCENT" + ], + "type": "string" + }, + "Value": { + "maximum": 100, + "minimum": 0, + "type": "number" + } + }, + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Cluster", + "/properties/Service", + "/properties/Id" + ], + "properties": { + "Cluster": { + "type": "string" + }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlatformVersion": { + "type": "string" + }, + "Scale": { + "$ref": "#/definitions/Scale" + }, + "Service": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "Cluster", + "Service", + "TaskDefinition" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-ecs.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::TaskSet" +} diff --git a/src/cfnlint/data/schemas/providers/eu_south_2/aws-glue-job.json b/src/cfnlint/data/schemas/providers/eu_south_2/aws-glue-job.json deleted file mode 100644 index 09c051399f..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_south_2/aws-glue-job.json +++ /dev/null @@ -1,153 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name" - ], - "definitions": { - "ConnectionsList": { - "additionalProperties": false, - "properties": { - "Connections": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - } - }, - "type": "object" - }, - "ExecutionProperty": { - "additionalProperties": false, - "properties": { - "MaxConcurrentRuns": { - "type": "number" - } - }, - "type": "object" - }, - "JobCommand": { - "additionalProperties": false, - "properties": { - "Name": { - "type": "string" - }, - "PythonVersion": { - "type": "string" - }, - "Runtime": { - "type": "string" - }, - "ScriptLocation": { - "type": "string" - } - }, - "type": "object" - }, - "NotificationProperty": { - "additionalProperties": false, - "properties": { - "NotifyDelayAfter": { - "type": "integer" - } - }, - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "AllocatedCapacity": { - "type": "number" - }, - "Command": { - "$ref": "#/definitions/JobCommand" - }, - "Connections": { - "$ref": "#/definitions/ConnectionsList" - }, - "DefaultArguments": { - "format": "json", - "type": [ - "object", - "string" - ] - }, - "Description": { - "type": "string" - }, - "ExecutionClass": { - "type": "string" - }, - "ExecutionProperty": { - "$ref": "#/definitions/ExecutionProperty" - }, - "GlueVersion": { - "type": "string" - }, - "Id": { - "type": "string" - }, - "JobMode": { - "type": "string" - }, - "LogUri": { - "type": "string" - }, - "MaintenanceWindow": { - "type": "string" - }, - "MaxCapacity": { - "type": "number" - }, - "MaxRetries": { - "type": "number" - }, - "Name": { - "type": "string" - }, - "NonOverridableArguments": { - "format": "json", - "type": [ - "object", - "string" - ] - }, - "NotificationProperty": { - "$ref": "#/definitions/NotificationProperty" - }, - "NumberOfWorkers": { - "maximum": 299, - "minimum": 0, - "type": "integer" - }, - "Role": { - "type": "string" - }, - "SecurityConfiguration": { - "type": "string" - }, - "Tags": { - "format": "json", - "type": [ - "object", - "string" - ] - }, - "Timeout": { - "type": "integer" - }, - "WorkerType": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "Role", - "Command" - ], - "typeName": "AWS::Glue::Job" -} diff --git a/src/cfnlint/data/schemas/providers/eu_south_2/aws-guardduty-detector.json b/src/cfnlint/data/schemas/providers/eu_south_2/aws-guardduty-detector.json new file mode 100644 index 0000000000..efaad17ff9 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_south_2/aws-guardduty-detector.json @@ -0,0 +1,184 @@ +{ + "additionalProperties": false, + "definitions": { + "CFNDataSourceConfigurations": { + "additionalProperties": false, + "properties": { + "Kubernetes": { + "$ref": "#/definitions/CFNKubernetesConfiguration" + }, + "MalwareProtection": { + "$ref": "#/definitions/CFNMalwareProtectionConfiguration" + }, + "S3Logs": { + "$ref": "#/definitions/CFNS3LogsConfiguration" + } + }, + "type": "object" + }, + "CFNFeatureAdditionalConfiguration": { + "additionalProperties": false, + "properties": { + "Name": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "Status": { + "maxLength": 128, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "CFNFeatureConfiguration": { + "additionalProperties": false, + "properties": { + "AdditionalConfiguration": { + "items": { + "$ref": "#/definitions/CFNFeatureAdditionalConfiguration" + }, + "type": "array" + }, + "Name": { + "maxLength": 128, + "type": "string" + }, + "Status": { + "enum": [ + "ENABLED", + "DISABLED" + ], + "type": "string" + } + }, + "required": [ + "Name", + "Status" + ], + "type": "object" + }, + "CFNKubernetesAuditLogsConfiguration": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + } + }, + "required": [ + "Enable" + ], + "type": "object" + }, + "CFNKubernetesConfiguration": { + "additionalProperties": false, + "properties": { + "AuditLogs": { + "$ref": "#/definitions/CFNKubernetesAuditLogsConfiguration" + } + }, + "required": [ + "AuditLogs" + ], + "type": "object" + }, + "CFNMalwareProtectionConfiguration": { + "additionalProperties": false, + "properties": { + "ScanEc2InstanceWithFindings": { + "$ref": "#/definitions/CFNScanEc2InstanceWithFindingsConfiguration" + } + }, + "type": "object" + }, + "CFNS3LogsConfiguration": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + } + }, + "required": [ + "Enable" + ], + "type": "object" + }, + "CFNScanEc2InstanceWithFindingsConfiguration": { + "additionalProperties": false, + "properties": { + "EbsVolumes": { + "type": "boolean" + } + }, + "type": "object" + }, + "TagItem": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "DataSources": { + "$ref": "#/definitions/CFNDataSourceConfigurations" + }, + "Enable": { + "type": "boolean" + }, + "Features": { + "items": { + "$ref": "#/definitions/CFNFeatureConfiguration" + }, + "type": "array" + }, + "FindingPublishingFrequency": { + "enum": [ + "FIFTEEN_MINUTES", + "ONE_HOUR", + "SIX_HOURS" + ], + "type": "string" + }, + "Id": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/TagItem" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "Enable" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": false, + "taggable": true + }, + "typeName": "AWS::GuardDuty::Detector" +} diff --git a/src/cfnlint/data/schemas/providers/eu_south_2/aws-kinesis-stream.json b/src/cfnlint/data/schemas/providers/eu_south_2/aws-kinesis-stream.json new file mode 100644 index 0000000000..be1bc65c07 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_south_2/aws-kinesis-stream.json @@ -0,0 +1,133 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "StreamEncryption": { + "additionalProperties": false, + "properties": { + "EncryptionType": { + "enum": [ + "KMS" + ], + "type": "string" + }, + "KeyId": { + "anyOf": [ + { + "relationshipRef": { + "propertyPath": "/properties/Arn", + "typeName": "AWS::KMS::Key" + } + }, + { + "relationshipRef": { + "propertyPath": "/properties/KeyId", + "typeName": "AWS::KMS::Key" + } + } + ], + "maxLength": 2048, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "EncryptionType", + "KeyId" + ], + "type": "object" + }, + "StreamModeDetails": { + "additionalProperties": false, + "properties": { + "StreamMode": { + "enum": [ + "ON_DEMAND", + "PROVISIONED" + ], + "type": "string" + } + }, + "required": [ + "StreamMode" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Name" + ], + "properties": { + "Arn": { + "type": "string" + }, + "Name": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9_.-]+$", + "type": "string" + }, + "RetentionPeriodHours": { + "maximum": 8760, + "minimum": 1, + "type": "integer" + }, + "ShardCount": { + "maximum": 100000, + "minimum": 1, + "type": "integer" + }, + "StreamEncryption": { + "$ref": "#/definitions/StreamEncryption" + }, + "StreamModeDetails": { + "$ref": "#/definitions/StreamModeDetails", + "default": { + "StreamMode": "PROVISIONED" + } + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 50, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-kinesis.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Kinesis::Stream" +} diff --git a/src/cfnlint/data/schemas/providers/eu_south_2/aws-networkfirewall-firewallpolicy.json b/src/cfnlint/data/schemas/providers/eu_south_2/aws-networkfirewall-firewallpolicy.json new file mode 100644 index 0000000000..973b595561 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_south_2/aws-networkfirewall-firewallpolicy.json @@ -0,0 +1,332 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/FirewallPolicyName" + ], + "definitions": { + "ActionDefinition": { + "additionalProperties": false, + "properties": { + "PublishMetricAction": { + "$ref": "#/definitions/PublishMetricAction" + } + }, + "type": "object" + }, + "CustomAction": { + "additionalProperties": false, + "properties": { + "ActionDefinition": { + "$ref": "#/definitions/ActionDefinition" + }, + "ActionName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + } + }, + "required": [ + "ActionName", + "ActionDefinition" + ], + "type": "object" + }, + "Dimension": { + "additionalProperties": false, + "properties": { + "Value": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-_ ]+$", + "type": "string" + } + }, + "required": [ + "Value" + ], + "type": "object" + }, + "FirewallPolicy": { + "additionalProperties": false, + "properties": { + "PolicyVariables": { + "additionalProperties": false, + "properties": { + "RuleVariables": { + "$ref": "#/definitions/RuleVariables" + } + }, + "type": "object" + }, + "StatefulDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatefulEngineOptions": { + "$ref": "#/definitions/StatefulEngineOptions" + }, + "StatefulRuleGroupReferences": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/StatefulRuleGroupReference" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessCustomActions": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/CustomAction" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessFragmentDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessRuleGroupReferences": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/StatelessRuleGroupReference" + }, + "type": "array", + "uniqueItems": false + }, + "TLSInspectionConfigurationArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "StatelessDefaultActions", + "StatelessFragmentDefaultActions" + ], + "type": "object" + }, + "IPSet": { + "additionalProperties": false, + "properties": { + "Definition": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/VariableDefinition" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "OverrideAction": { + "enum": [ + "DROP_TO_ALERT" + ], + "type": "string" + }, + "Priority": { + "maximum": 65535, + "minimum": 1, + "type": "integer" + }, + "PublishMetricAction": { + "additionalProperties": false, + "properties": { + "Dimensions": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/Dimension" + }, + "type": "array", + "uniqueItems": false + } + }, + "required": [ + "Dimensions" + ], + "type": "object" + }, + "ResourceArn": { + "maxLength": 256, + "minLength": 1, + "pattern": "^(arn:aws.*)$", + "type": "string" + }, + "RuleOrder": { + "enum": [ + "DEFAULT_ACTION_ORDER", + "STRICT_ORDER" + ], + "type": "string" + }, + "RuleVariables": { + "additionalProperties": false, + "patternProperties": { + "^[A-Za-z0-9_]{1,32}$": { + "$ref": "#/definitions/IPSet" + } + }, + "type": "object" + }, + "StatefulEngineOptions": { + "additionalProperties": false, + "properties": { + "RuleOrder": { + "$ref": "#/definitions/RuleOrder" + }, + "StreamExceptionPolicy": { + "$ref": "#/definitions/StreamExceptionPolicy" + } + }, + "type": "object" + }, + "StatefulRuleGroupOverride": { + "additionalProperties": false, + "properties": { + "Action": { + "$ref": "#/definitions/OverrideAction" + } + }, + "type": "object" + }, + "StatefulRuleGroupReference": { + "additionalProperties": false, + "properties": { + "Override": { + "$ref": "#/definitions/StatefulRuleGroupOverride" + }, + "Priority": { + "$ref": "#/definitions/Priority" + }, + "ResourceArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "ResourceArn" + ], + "type": "object" + }, + "StatelessRuleGroupReference": { + "additionalProperties": false, + "properties": { + "Priority": { + "$ref": "#/definitions/Priority" + }, + "ResourceArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "ResourceArn", + "Priority" + ], + "type": "object" + }, + "StreamExceptionPolicy": { + "enum": [ + "DROP", + "CONTINUE", + "REJECT" + ], + "type": "string" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "^.*$", + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 0, + "pattern": "^.*$", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "VariableDefinition": { + "minLength": 1, + "pattern": "^.*$", + "type": "string" + } + }, + "primaryIdentifier": [ + "/properties/FirewallPolicyArn" + ], + "properties": { + "Description": { + "maxLength": 512, + "minLength": 1, + "pattern": "^.*$", + "type": "string" + }, + "FirewallPolicy": { + "$ref": "#/definitions/FirewallPolicy" + }, + "FirewallPolicyArn": { + "$ref": "#/definitions/ResourceArn" + }, + "FirewallPolicyId": { + "maxLength": 36, + "minLength": 36, + "pattern": "^([0-9a-f]{8})-([0-9a-f]{4}-){3}([0-9a-f]{12})$", + "type": "string" + }, + "FirewallPolicyName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-]+$", + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + } + }, + "readOnlyProperties": [ + "/properties/FirewallPolicyArn", + "/properties/FirewallPolicyId" + ], + "required": [ + "FirewallPolicyName", + "FirewallPolicy" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-networkfirewall.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::NetworkFirewall::FirewallPolicy" +} diff --git a/src/cfnlint/data/schemas/providers/eu_south_2/aws-sagemaker-imageversion.json b/src/cfnlint/data/schemas/providers/eu_south_2/aws-sagemaker-imageversion.json deleted file mode 100644 index e7c91ccc8d..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_south_2/aws-sagemaker-imageversion.json +++ /dev/null @@ -1,172 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/ImageName", - "/properties/BaseImage" - ], - "definitions": { - "Alias": { - "maxLength": 128, - "minLength": 1, - "pattern": "(?!^[.-])^([a-zA-Z0-9-_.]+)$", - "type": "string" - }, - "Aliases": { - "items": { - "$ref": "#/definitions/Alias" - }, - "type": "array" - }, - "BaseImage": { - "maxLength": 255, - "minLength": 1, - "pattern": ".+", - "type": "string" - }, - "ContainerImage": { - "maxLength": 255, - "minLength": 1, - "pattern": ".+", - "type": "string" - }, - "Horovod": { - "type": "boolean" - }, - "ImageArn": { - "maxLength": 256, - "minLength": 1, - "pattern": "^arn:aws(-[\\w]+)*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:image\\/[a-zA-Z0-9]([-.]?[a-zA-Z0-9])*$", - "type": "string" - }, - "ImageName": { - "maxLength": 63, - "minLength": 1, - "pattern": "^[A-Za-z0-9]([-.]?[A-Za-z0-9])*$", - "type": "string" - }, - "ImageVersionArn": { - "maxLength": 256, - "minLength": 1, - "pattern": "^arn:aws(-[\\w]+)*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:image-version\\/[a-zA-Z0-9]([-.]?[a-zA-Z0-9])*\\/[0-9]+$", - "type": "string" - }, - "JobType": { - "enum": [ - "TRAINING", - "INFERENCE", - "NOTEBOOK_KERNEL" - ], - "type": "string" - }, - "MLFramework": { - "maxLength": 128, - "minLength": 1, - "pattern": "^[a-zA-Z]+ ?\\d+\\.\\d+(\\.\\d+)?$", - "type": "string" - }, - "Processor": { - "enum": [ - "CPU", - "GPU" - ], - "type": "string" - }, - "ProgrammingLang": { - "maxLength": 128, - "minLength": 1, - "pattern": "^[a-zA-Z]+ ?\\d+\\.\\d+(\\.\\d+)?$", - "type": "string" - }, - "ReleaseNotes": { - "maxLength": 255, - "minLength": 1, - "pattern": ".*", - "type": "string" - }, - "VendorGuidance": { - "enum": [ - "NOT_PROVIDED", - "STABLE", - "TO_BE_ARCHIVED", - "ARCHIVED" - ], - "type": "string" - }, - "Version": { - "minimum": 1, - "type": "integer" - } - }, - "primaryIdentifier": [ - "/properties/ImageVersionArn" - ], - "properties": { - "Alias": { - "$ref": "#/definitions/Alias" - }, - "Aliases": { - "$ref": "#/definitions/Aliases" - }, - "BaseImage": { - "$ref": "#/definitions/BaseImage" - }, - "ContainerImage": { - "$ref": "#/definitions/ContainerImage" - }, - "Horovod": { - "$ref": "#/definitions/Horovod" - }, - "ImageArn": { - "$ref": "#/definitions/ImageArn" - }, - "ImageName": { - "$ref": "#/definitions/ImageName" - }, - "ImageVersionArn": { - "$ref": "#/definitions/ImageVersionArn" - }, - "JobType": { - "$ref": "#/definitions/JobType" - }, - "MLFramework": { - "$ref": "#/definitions/MLFramework" - }, - "Processor": { - "$ref": "#/definitions/Processor" - }, - "ProgrammingLang": { - "$ref": "#/definitions/ProgrammingLang" - }, - "ReleaseNotes": { - "$ref": "#/definitions/ReleaseNotes" - }, - "VendorGuidance": { - "$ref": "#/definitions/VendorGuidance" - }, - "Version": { - "$ref": "#/definitions/Version" - } - }, - "readOnlyProperties": [ - "/properties/ImageVersionArn", - "/properties/ImageArn", - "/properties/Version", - "/properties/ContainerImage" - ], - "required": [ - "ImageName", - "BaseImage" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sagemaker", - "tagging": { - "cloudFormationSystemTags": false, - "tagOnCreate": false, - "tagUpdatable": false, - "taggable": false - }, - "typeName": "AWS::SageMaker::ImageVersion", - "writeOnlyProperties": [ - "/properties/Aliases", - "/properties/Alias" - ] -} diff --git a/src/cfnlint/data/schemas/providers/eu_south_2/aws-secretsmanager-secrettargetattachment.json b/src/cfnlint/data/schemas/providers/eu_south_2/aws-secretsmanager-secrettargetattachment.json deleted file mode 100644 index 8b5501d290..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_south_2/aws-secretsmanager-secrettargetattachment.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "additionalProperties": false, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "Id": { - "type": "string" - }, - "SecretId": { - "type": "string" - }, - "TargetId": { - "type": "string" - }, - "TargetType": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "SecretId", - "TargetType", - "TargetId" - ], - "typeName": "AWS::SecretsManager::SecretTargetAttachment" -} diff --git a/src/cfnlint/data/schemas/providers/eu_west_1/__init__.py b/src/cfnlint/data/schemas/providers/eu_west_1/__init__.py index 195360efaa..bb4f02d6af 100644 --- a/src/cfnlint/data/schemas/providers/eu_west_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/eu_west_1/__init__.py @@ -693,6 +693,7 @@ "AWS::Kendra::Faq", "AWS::Kendra::Index", "AWS::KendraRanking::ExecutionPlan", + "AWS::Kinesis::ResourcePolicy", "AWS::Kinesis::Stream", "AWS::Kinesis::StreamConsumer", "AWS::KinesisAnalytics::Application", @@ -1491,6 +1492,12 @@ "aws-controltower-enabledbaseline.json", "aws-controltower-enabledcontrol.json", "aws-controltower-landingzone.json", + "aws-databrew-dataset.json", + "aws-databrew-job.json", + "aws-databrew-project.json", + "aws-databrew-recipe.json", + "aws-databrew-ruleset.json", + "aws-databrew-schedule.json", "aws-datapipeline-pipeline.json", "aws-datasync-agent.json", "aws-datasync-locationazureblob.json", @@ -1657,9 +1664,7 @@ "aws-ecs-cluster.json", "aws-ecs-clustercapacityproviderassociations.json", "aws-ecs-primarytaskset.json", - "aws-ecs-service.json", "aws-ecs-taskdefinition.json", - "aws-ecs-taskset.json", "aws-efs-accesspoint.json", "aws-efs-filesystem.json", "aws-efs-mounttarget.json", @@ -1919,6 +1924,7 @@ "aws-kendra-faq.json", "aws-kendra-index.json", "aws-kendraranking-executionplan.json", + "aws-kinesis-resourcepolicy.json", "aws-kinesis-stream.json", "aws-kinesis-streamconsumer.json", "aws-kinesisanalytics-application.json", @@ -2011,14 +2017,12 @@ "aws-mediaconvert-jobtemplate.json", "aws-mediaconvert-preset.json", "aws-mediaconvert-queue.json", - "aws-medialive-channel.json", "aws-medialive-channelplacementgroup.json", "aws-medialive-cloudwatchalarmtemplate.json", "aws-medialive-cloudwatchalarmtemplategroup.json", "aws-medialive-cluster.json", "aws-medialive-eventbridgeruletemplate.json", "aws-medialive-eventbridgeruletemplategroup.json", - "aws-medialive-input.json", "aws-medialive-inputsecuritygroup.json", "aws-medialive-multiplex.json", "aws-medialive-multiplexprogram.json", @@ -2064,7 +2068,6 @@ "aws-neptunegraph-graph.json", "aws-neptunegraph-privategraphendpoint.json", "aws-networkfirewall-firewall.json", - "aws-networkfirewall-firewallpolicy.json", "aws-networkfirewall-loggingconfiguration.json", "aws-networkfirewall-rulegroup.json", "aws-networkfirewall-tlsinspectionconfiguration.json", @@ -2236,7 +2239,6 @@ "aws-route53resolver-resolverendpoint.json", "aws-route53resolver-resolverqueryloggingconfig.json", "aws-route53resolver-resolverqueryloggingconfigassociation.json", - "aws-route53resolver-resolverrule.json", "aws-route53resolver-resolverruleassociation.json", "aws-rum-appmonitor.json", "aws-s3-accessgrant.json", @@ -2267,7 +2269,6 @@ "aws-sagemaker-endpointconfig.json", "aws-sagemaker-featuregroup.json", "aws-sagemaker-image.json", - "aws-sagemaker-imageversion.json", "aws-sagemaker-inferencecomponent.json", "aws-sagemaker-inferenceexperiment.json", "aws-sagemaker-mlflowtrackingserver.json", @@ -2450,11 +2451,13 @@ "aws-workspaces-workspacespool.json", "aws-workspacesthinclient-environment.json", "aws-workspacesweb-browsersettings.json", + "aws-workspacesweb-identityprovider.json", "aws-workspacesweb-ipaccesssettings.json", "aws-workspacesweb-networksettings.json", "aws-workspacesweb-portal.json", "aws-workspacesweb-truststore.json", "aws-workspacesweb-useraccessloggingsettings.json", + "aws-workspacesweb-usersettings.json", "aws-xray-group.json", "aws-xray-resourcepolicy.json", "aws-xray-samplingrule.json", diff --git a/src/cfnlint/data/schemas/providers/eu_west_1/aws-databrew-dataset.json b/src/cfnlint/data/schemas/providers/eu_west_1/aws-databrew-dataset.json deleted file mode 100644 index 8c2e37c355..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_west_1/aws-databrew-dataset.json +++ /dev/null @@ -1,396 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name", - "/properties/Tags" - ], - "definitions": { - "CsvOptions": { - "additionalProperties": false, - "properties": { - "Delimiter": { - "maxLength": 1, - "minLength": 1, - "type": "string" - }, - "HeaderRow": { - "type": "boolean" - } - }, - "type": "object" - }, - "DataCatalogInputDefinition": { - "additionalProperties": false, - "properties": { - "CatalogId": { - "type": "string" - }, - "DatabaseName": { - "type": "string" - }, - "TableName": { - "type": "string" - }, - "TempDirectory": { - "$ref": "#/definitions/S3Location" - } - }, - "type": "object" - }, - "DatabaseInputDefinition": { - "additionalProperties": false, - "properties": { - "DatabaseTableName": { - "type": "string" - }, - "GlueConnectionName": { - "type": "string" - }, - "QueryString": { - "type": "string" - }, - "TempDirectory": { - "$ref": "#/definitions/S3Location" - } - }, - "required": [ - "GlueConnectionName" - ], - "type": "object" - }, - "DatasetParameter": { - "additionalProperties": false, - "properties": { - "CreateColumn": { - "type": "boolean" - }, - "DatetimeOptions": { - "$ref": "#/definitions/DatetimeOptions" - }, - "Filter": { - "$ref": "#/definitions/FilterExpression" - }, - "Name": { - "$ref": "#/definitions/PathParameterName" - }, - "Type": { - "enum": [ - "String", - "Number", - "Datetime" - ], - "type": "string" - } - }, - "required": [ - "Name", - "Type" - ], - "type": "object" - }, - "DatetimeOptions": { - "additionalProperties": false, - "properties": { - "Format": { - "maxLength": 100, - "minLength": 2, - "type": "string" - }, - "LocaleCode": { - "maxLength": 100, - "minLength": 2, - "pattern": "^[A-Za-z0-9_\\.#@\\-]+$", - "type": "string" - }, - "TimezoneOffset": { - "maxLength": 6, - "minLength": 1, - "pattern": "^(Z|[-+](\\d|\\d{2}|\\d{2}:?\\d{2}))$", - "type": "string" - } - }, - "required": [ - "Format" - ], - "type": "object" - }, - "ExcelOptions": { - "additionalProperties": false, - "oneOf": [ - { - "required": [ - "SheetNames" - ] - }, - { - "required": [ - "SheetIndexes" - ] - } - ], - "properties": { - "HeaderRow": { - "type": "boolean" - }, - "SheetIndexes": { - "insertionOrder": true, - "items": { - "type": "integer" - }, - "maxItems": 1, - "minItems": 1, - "type": "array" - }, - "SheetNames": { - "insertionOrder": true, - "items": { - "type": "string" - }, - "maxItems": 1, - "minItems": 1, - "type": "array" - } - }, - "type": "object" - }, - "FilesLimit": { - "additionalProperties": false, - "properties": { - "MaxFiles": { - "type": "integer" - }, - "Order": { - "enum": [ - "ASCENDING", - "DESCENDING" - ], - "type": "string" - }, - "OrderedBy": { - "enum": [ - "LAST_MODIFIED_DATE" - ], - "type": "string" - } - }, - "required": [ - "MaxFiles" - ], - "type": "object" - }, - "FilterExpression": { - "additionalProperties": false, - "properties": { - "Expression": { - "maxLength": 1024, - "minLength": 4, - "pattern": "^[><0-9A-Za-z_.,:)(!= ]+$", - "type": "string" - }, - "ValuesMap": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/FilterValue" - }, - "type": "array" - } - }, - "required": [ - "Expression", - "ValuesMap" - ], - "type": "object" - }, - "FilterValue": { - "additionalProperties": false, - "properties": { - "Value": { - "maxLength": 1024, - "minLength": 0, - "type": "string" - }, - "ValueReference": { - "maxLength": 128, - "minLength": 2, - "pattern": "^:[A-Za-z0-9_]+$", - "type": "string" - } - }, - "required": [ - "ValueReference", - "Value" - ], - "type": "object" - }, - "FormatOptions": { - "additionalProperties": false, - "properties": { - "Csv": { - "$ref": "#/definitions/CsvOptions" - }, - "Excel": { - "$ref": "#/definitions/ExcelOptions" - }, - "Json": { - "$ref": "#/definitions/JsonOptions" - } - }, - "type": "object" - }, - "Input": { - "additionalProperties": false, - "properties": { - "DataCatalogInputDefinition": { - "$ref": "#/definitions/DataCatalogInputDefinition" - }, - "DatabaseInputDefinition": { - "$ref": "#/definitions/DatabaseInputDefinition" - }, - "Metadata": { - "$ref": "#/definitions/Metadata" - }, - "S3InputDefinition": { - "$ref": "#/definitions/S3Location" - } - }, - "type": "object" - }, - "JsonOptions": { - "additionalProperties": false, - "properties": { - "MultiLine": { - "type": "boolean" - } - }, - "type": "object" - }, - "Metadata": { - "additionalProperties": false, - "properties": { - "SourceArn": { - "type": "string" - } - }, - "type": "object" - }, - "PathOptions": { - "additionalProperties": false, - "properties": { - "FilesLimit": { - "$ref": "#/definitions/FilesLimit" - }, - "LastModifiedDateCondition": { - "$ref": "#/definitions/FilterExpression" - }, - "Parameters": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/PathParameter" - }, - "type": "array" - } - }, - "type": "object" - }, - "PathParameter": { - "additionalProperties": false, - "properties": { - "DatasetParameter": { - "$ref": "#/definitions/DatasetParameter" - }, - "PathParameterName": { - "$ref": "#/definitions/PathParameterName" - } - }, - "required": [ - "PathParameterName", - "DatasetParameter" - ], - "type": "object" - }, - "PathParameterName": { - "maxLength": 255, - "minLength": 1, - "type": "string" - }, - "S3Location": { - "additionalProperties": false, - "properties": { - "Bucket": { - "type": "string" - }, - "Key": { - "type": "string" - } - }, - "required": [ - "Bucket" - ], - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/Name" - ], - "properties": { - "Format": { - "enum": [ - "CSV", - "JSON", - "PARQUET", - "EXCEL", - "ORC" - ], - "type": "string" - }, - "FormatOptions": { - "$ref": "#/definitions/FormatOptions" - }, - "Input": { - "$ref": "#/definitions/Input" - }, - "Name": { - "maxLength": 255, - "minLength": 1, - "type": "string" - }, - "PathOptions": { - "$ref": "#/definitions/PathOptions" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": false - } - }, - "required": [ - "Name", - "Input" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-databrew.git", - "taggable": true, - "typeName": "AWS::DataBrew::Dataset" -} diff --git a/src/cfnlint/data/schemas/providers/eu_west_1/aws-databrew-job.json b/src/cfnlint/data/schemas/providers/eu_west_1/aws-databrew-job.json deleted file mode 100644 index 3119fb255d..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_west_1/aws-databrew-job.json +++ /dev/null @@ -1,565 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name", - "/properties/Type", - "/properties/Tags" - ], - "definitions": { - "AllowedStatistics": { - "additionalProperties": false, - "properties": { - "Statistics": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/Statistic" - }, - "minItems": 1, - "type": "array" - } - }, - "required": [ - "Statistics" - ], - "type": "object" - }, - "ColumnSelector": { - "additionalProperties": false, - "properties": { - "Name": { - "maxLength": 255, - "minLength": 1, - "type": "string" - }, - "Regex": { - "maxLength": 255, - "minLength": 1, - "type": "string" - } - }, - "type": "object" - }, - "ColumnStatisticsConfiguration": { - "additionalProperties": false, - "properties": { - "Selectors": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/ColumnSelector" - }, - "minItems": 1, - "type": "array" - }, - "Statistics": { - "$ref": "#/definitions/StatisticsConfiguration" - } - }, - "required": [ - "Statistics" - ], - "type": "object" - }, - "CsvOutputOptions": { - "additionalProperties": false, - "properties": { - "Delimiter": { - "maxLength": 1, - "minLength": 1, - "type": "string" - } - }, - "type": "object" - }, - "DataCatalogOutput": { - "additionalProperties": false, - "properties": { - "CatalogId": { - "maxLength": 255, - "minLength": 1, - "type": "string" - }, - "DatabaseName": { - "maxLength": 255, - "minLength": 1, - "type": "string" - }, - "DatabaseOptions": { - "$ref": "#/definitions/DatabaseTableOutputOptions" - }, - "Overwrite": { - "type": "boolean" - }, - "S3Options": { - "$ref": "#/definitions/S3TableOutputOptions" - }, - "TableName": { - "maxLength": 255, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "DatabaseName", - "TableName" - ], - "type": "object" - }, - "DatabaseOutput": { - "additionalProperties": false, - "properties": { - "DatabaseOptions": { - "$ref": "#/definitions/DatabaseTableOutputOptions" - }, - "DatabaseOutputMode": { - "enum": [ - "NEW_TABLE" - ], - "type": "string" - }, - "GlueConnectionName": { - "type": "string" - } - }, - "required": [ - "GlueConnectionName", - "DatabaseOptions" - ], - "type": "object" - }, - "DatabaseTableOutputOptions": { - "additionalProperties": false, - "properties": { - "TableName": { - "maxLength": 255, - "minLength": 1, - "type": "string" - }, - "TempDirectory": { - "$ref": "#/definitions/S3Location" - } - }, - "required": [ - "TableName" - ], - "type": "object" - }, - "EntityDetectorConfiguration": { - "additionalProperties": false, - "properties": { - "AllowedStatistics": { - "$ref": "#/definitions/AllowedStatistics" - }, - "EntityTypes": { - "insertionOrder": true, - "items": { - "maxLength": 128, - "minLength": 1, - "pattern": "^[A-Z_][A-Z\\\\d_]*$", - "type": "string" - }, - "minItems": 1, - "type": "array" - } - }, - "required": [ - "EntityTypes" - ], - "type": "object" - }, - "JobSample": { - "additionalProperties": false, - "properties": { - "Mode": { - "$ref": "#/definitions/SampleMode" - }, - "Size": { - "$ref": "#/definitions/JobSize" - } - }, - "type": "object" - }, - "JobSize": { - "format": "int64", - "type": "integer" - }, - "Output": { - "additionalProperties": false, - "properties": { - "CompressionFormat": { - "enum": [ - "GZIP", - "LZ4", - "SNAPPY", - "BZIP2", - "DEFLATE", - "LZO", - "BROTLI", - "ZSTD", - "ZLIB" - ], - "type": "string" - }, - "Format": { - "enum": [ - "CSV", - "JSON", - "PARQUET", - "GLUEPARQUET", - "AVRO", - "ORC", - "XML", - "TABLEAUHYPER" - ], - "type": "string" - }, - "FormatOptions": { - "$ref": "#/definitions/OutputFormatOptions" - }, - "Location": { - "$ref": "#/definitions/S3Location" - }, - "MaxOutputFiles": { - "maximum": 999, - "minimum": 1, - "type": "integer" - }, - "Overwrite": { - "type": "boolean" - }, - "PartitionColumns": { - "insertionOrder": true, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - } - }, - "required": [ - "Location" - ], - "type": "object" - }, - "OutputFormatOptions": { - "additionalProperties": false, - "properties": { - "Csv": { - "$ref": "#/definitions/CsvOutputOptions" - } - }, - "type": "object" - }, - "OutputLocation": { - "additionalProperties": false, - "properties": { - "Bucket": { - "type": "string" - }, - "BucketOwner": { - "maxLength": 12, - "minLength": 12, - "type": "string" - }, - "Key": { - "type": "string" - } - }, - "required": [ - "Bucket" - ], - "type": "object" - }, - "ParameterMap": { - "additionalProperties": false, - "patternProperties": { - "^[A-Za-z0-9]{1,128}$": { - "type": "string" - } - }, - "type": "object" - }, - "ProfileConfiguration": { - "additionalProperties": false, - "properties": { - "ColumnStatisticsConfigurations": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/ColumnStatisticsConfiguration" - }, - "minItems": 1, - "type": "array" - }, - "DatasetStatisticsConfiguration": { - "$ref": "#/definitions/StatisticsConfiguration" - }, - "EntityDetectorConfiguration": { - "$ref": "#/definitions/EntityDetectorConfiguration" - }, - "ProfileColumns": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/ColumnSelector" - }, - "minItems": 1, - "type": "array" - } - }, - "type": "object" - }, - "Recipe": { - "additionalProperties": false, - "properties": { - "Name": { - "type": "string" - }, - "Version": { - "type": "string" - } - }, - "required": [ - "Name" - ], - "type": "object" - }, - "S3Location": { - "additionalProperties": false, - "properties": { - "Bucket": { - "type": "string" - }, - "BucketOwner": { - "maxLength": 12, - "minLength": 12, - "type": "string" - }, - "Key": { - "type": "string" - } - }, - "required": [ - "Bucket" - ], - "type": "object" - }, - "S3TableOutputOptions": { - "additionalProperties": false, - "properties": { - "Location": { - "$ref": "#/definitions/S3Location" - } - }, - "required": [ - "Location" - ], - "type": "object" - }, - "SampleMode": { - "enum": [ - "FULL_DATASET", - "CUSTOM_ROWS" - ], - "type": "string" - }, - "Statistic": { - "maxLength": 128, - "minLength": 1, - "pattern": "^[A-Z\\_]+$", - "type": "string" - }, - "StatisticOverride": { - "additionalProperties": false, - "properties": { - "Parameters": { - "$ref": "#/definitions/ParameterMap" - }, - "Statistic": { - "$ref": "#/definitions/Statistic" - } - }, - "required": [ - "Statistic", - "Parameters" - ], - "type": "object" - }, - "StatisticsConfiguration": { - "additionalProperties": false, - "properties": { - "IncludedStatistics": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/Statistic" - }, - "minItems": 1, - "type": "array" - }, - "Overrides": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/StatisticOverride" - }, - "minItems": 1, - "type": "array" - } - }, - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - }, - "ValidationConfiguration": { - "additionalProperties": false, - "properties": { - "RulesetArn": { - "maxLength": 2048, - "minLength": 20, - "type": "string" - }, - "ValidationMode": { - "$ref": "#/definitions/ValidationMode" - } - }, - "required": [ - "RulesetArn" - ], - "type": "object" - }, - "ValidationMode": { - "enum": [ - "CHECK_ALL" - ], - "type": "string" - } - }, - "primaryIdentifier": [ - "/properties/Name" - ], - "properties": { - "DataCatalogOutputs": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/DataCatalogOutput" - }, - "type": "array" - }, - "DatabaseOutputs": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/DatabaseOutput" - }, - "type": "array" - }, - "DatasetName": { - "maxLength": 255, - "minLength": 1, - "type": "string" - }, - "EncryptionKeyArn": { - "maxLength": 2048, - "minLength": 20, - "type": "string" - }, - "EncryptionMode": { - "enum": [ - "SSE-KMS", - "SSE-S3" - ], - "type": "string" - }, - "JobSample": { - "$ref": "#/definitions/JobSample" - }, - "LogSubscription": { - "enum": [ - "ENABLE", - "DISABLE" - ], - "type": "string" - }, - "MaxCapacity": { - "type": "integer" - }, - "MaxRetries": { - "type": "integer" - }, - "Name": { - "maxLength": 255, - "minLength": 1, - "type": "string" - }, - "OutputLocation": { - "$ref": "#/definitions/OutputLocation" - }, - "Outputs": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/Output" - }, - "type": "array" - }, - "ProfileConfiguration": { - "$ref": "#/definitions/ProfileConfiguration" - }, - "ProjectName": { - "maxLength": 255, - "minLength": 1, - "type": "string" - }, - "Recipe": { - "$ref": "#/definitions/Recipe" - }, - "RoleArn": { - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": false - }, - "Timeout": { - "type": "integer" - }, - "Type": { - "enum": [ - "PROFILE", - "RECIPE" - ], - "type": "string" - }, - "ValidationConfigurations": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/ValidationConfiguration" - }, - "type": "array" - } - }, - "required": [ - "Name", - "RoleArn", - "Type" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-databrew.git", - "taggable": true, - "typeName": "AWS::DataBrew::Job" -} diff --git a/src/cfnlint/data/schemas/providers/eu_west_1/aws-databrew-project.json b/src/cfnlint/data/schemas/providers/eu_west_1/aws-databrew-project.json deleted file mode 100644 index 0363350390..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_west_1/aws-databrew-project.json +++ /dev/null @@ -1,93 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name", - "/properties/Tags" - ], - "definitions": { - "Sample": { - "additionalProperties": false, - "properties": { - "Size": { - "minimum": 1, - "type": "integer" - }, - "Type": { - "enum": [ - "FIRST_N", - "LAST_N", - "RANDOM" - ], - "type": "string" - } - }, - "required": [ - "Type" - ], - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/Name" - ], - "properties": { - "DatasetName": { - "maxLength": 255, - "minLength": 1, - "type": "string" - }, - "Name": { - "maxLength": 255, - "minLength": 1, - "type": "string" - }, - "RecipeName": { - "maxLength": 255, - "minLength": 1, - "type": "string" - }, - "RoleArn": { - "type": "string" - }, - "Sample": { - "$ref": "#/definitions/Sample" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": false - } - }, - "required": [ - "DatasetName", - "Name", - "RecipeName", - "RoleArn" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-databrew.git", - "taggable": true, - "typeName": "AWS::DataBrew::Project" -} diff --git a/src/cfnlint/data/schemas/providers/eu_west_1/aws-databrew-recipe.json b/src/cfnlint/data/schemas/providers/eu_west_1/aws-databrew-recipe.json deleted file mode 100644 index 2758e26dd4..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_west_1/aws-databrew-recipe.json +++ /dev/null @@ -1,539 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name", - "/properties/Tags" - ], - "definitions": { - "Action": { - "additionalProperties": false, - "properties": { - "Operation": { - "type": "string" - }, - "Parameters": { - "anyOf": [ - { - "$ref": "#/definitions/RecipeParameters" - }, - { - "$ref": "#/definitions/ParameterMap" - } - ] - } - }, - "required": [ - "Operation" - ], - "type": "object" - }, - "ConditionExpression": { - "additionalProperties": false, - "properties": { - "Condition": { - "type": "string" - }, - "TargetColumn": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Condition", - "TargetColumn" - ], - "type": "object" - }, - "DataCatalogInputDefinition": { - "additionalProperties": false, - "properties": { - "CatalogId": { - "type": "string" - }, - "DatabaseName": { - "type": "string" - }, - "TableName": { - "type": "string" - }, - "TempDirectory": { - "$ref": "#/definitions/S3Location" - } - }, - "type": "object" - }, - "ParameterMap": { - "additionalProperties": false, - "patternProperties": { - "^[A-Za-z0-9]{1,128}$": { - "type": "string" - } - }, - "type": "object" - }, - "RecipeParameters": { - "additionalProperties": false, - "properties": { - "AggregateFunction": { - "type": "string" - }, - "Base": { - "type": "string" - }, - "CaseStatement": { - "type": "string" - }, - "CategoryMap": { - "type": "string" - }, - "CharsToRemove": { - "type": "string" - }, - "CollapseConsecutiveWhitespace": { - "type": "string" - }, - "ColumnDataType": { - "type": "string" - }, - "ColumnRange": { - "type": "string" - }, - "Count": { - "type": "string" - }, - "CustomCharacters": { - "type": "string" - }, - "CustomStopWords": { - "type": "string" - }, - "CustomValue": { - "type": "string" - }, - "DatasetsColumns": { - "type": "string" - }, - "DateAddValue": { - "type": "string" - }, - "DateTimeFormat": { - "type": "string" - }, - "DateTimeParameters": { - "type": "string" - }, - "DeleteOtherRows": { - "type": "string" - }, - "Delimiter": { - "type": "string" - }, - "EndPattern": { - "type": "string" - }, - "EndPosition": { - "type": "string" - }, - "EndValue": { - "type": "string" - }, - "ExpandContractions": { - "type": "string" - }, - "Exponent": { - "type": "string" - }, - "FalseString": { - "type": "string" - }, - "GroupByAggFunctionOptions": { - "type": "string" - }, - "GroupByColumns": { - "type": "string" - }, - "HiddenColumns": { - "type": "string" - }, - "IgnoreCase": { - "type": "string" - }, - "IncludeInSplit": { - "type": "string" - }, - "Input": { - "additionalProperties": false, - "oneOf": [ - { - "required": [ - "S3InputDefinition" - ] - }, - { - "required": [ - "DataCatalogInputDefinition" - ] - } - ], - "properties": { - "DataCatalogInputDefinition": { - "$ref": "#/definitions/DataCatalogInputDefinition" - }, - "S3InputDefinition": { - "$ref": "#/definitions/S3Location" - } - }, - "type": "object" - }, - "Interval": { - "type": "string" - }, - "IsText": { - "type": "string" - }, - "JoinKeys": { - "type": "string" - }, - "JoinType": { - "type": "string" - }, - "LeftColumns": { - "type": "string" - }, - "Limit": { - "type": "string" - }, - "LowerBound": { - "type": "string" - }, - "MapType": { - "type": "string" - }, - "ModeType": { - "type": "string" - }, - "MultiLine": { - "type": "boolean" - }, - "NumRows": { - "type": "string" - }, - "NumRowsAfter": { - "type": "string" - }, - "NumRowsBefore": { - "type": "string" - }, - "OrderByColumn": { - "type": "string" - }, - "OrderByColumns": { - "type": "string" - }, - "Other": { - "type": "string" - }, - "Pattern": { - "type": "string" - }, - "PatternOption1": { - "type": "string" - }, - "PatternOption2": { - "type": "string" - }, - "PatternOptions": { - "type": "string" - }, - "Period": { - "type": "string" - }, - "Position": { - "type": "string" - }, - "RemoveAllPunctuation": { - "type": "string" - }, - "RemoveAllQuotes": { - "type": "string" - }, - "RemoveAllWhitespace": { - "type": "string" - }, - "RemoveCustomCharacters": { - "type": "string" - }, - "RemoveCustomValue": { - "type": "string" - }, - "RemoveLeadingAndTrailingPunctuation": { - "type": "string" - }, - "RemoveLeadingAndTrailingQuotes": { - "type": "string" - }, - "RemoveLeadingAndTrailingWhitespace": { - "type": "string" - }, - "RemoveLetters": { - "type": "string" - }, - "RemoveNumbers": { - "type": "string" - }, - "RemoveSourceColumn": { - "type": "string" - }, - "RemoveSpecialCharacters": { - "type": "string" - }, - "RightColumns": { - "type": "string" - }, - "SampleSize": { - "type": "string" - }, - "SampleType": { - "type": "string" - }, - "SecondInput": { - "type": "string" - }, - "SecondaryInputs": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/SecondaryInput" - }, - "type": "array", - "uniqueItems": false - }, - "SheetIndexes": { - "insertionOrder": true, - "items": { - "type": "integer" - }, - "maxItems": 1, - "minItems": 1, - "type": "array" - }, - "SheetNames": { - "insertionOrder": true, - "items": { - "type": "string" - }, - "maxItems": 1, - "minItems": 1, - "type": "array" - }, - "SourceColumn": { - "type": "string" - }, - "SourceColumn1": { - "type": "string" - }, - "SourceColumn2": { - "type": "string" - }, - "SourceColumns": { - "type": "string" - }, - "StartColumnIndex": { - "type": "string" - }, - "StartPattern": { - "type": "string" - }, - "StartPosition": { - "type": "string" - }, - "StartValue": { - "type": "string" - }, - "StemmingMode": { - "type": "string" - }, - "StepCount": { - "type": "string" - }, - "StepIndex": { - "type": "string" - }, - "StopWordsMode": { - "type": "string" - }, - "Strategy": { - "type": "string" - }, - "TargetColumn": { - "type": "string" - }, - "TargetColumnNames": { - "type": "string" - }, - "TargetDateFormat": { - "type": "string" - }, - "TargetIndex": { - "type": "string" - }, - "TimeZone": { - "type": "string" - }, - "TokenizerPattern": { - "type": "string" - }, - "TrueString": { - "type": "string" - }, - "UdfLang": { - "type": "string" - }, - "Units": { - "type": "string" - }, - "UnpivotColumn": { - "type": "string" - }, - "UpperBound": { - "type": "string" - }, - "UseNewDataFrame": { - "type": "string" - }, - "Value": { - "type": "string" - }, - "Value1": { - "type": "string" - }, - "Value2": { - "type": "string" - }, - "ValueColumn": { - "type": "string" - }, - "ViewFrame": { - "type": "string" - } - } - }, - "RecipeStep": { - "additionalProperties": false, - "properties": { - "Action": { - "$ref": "#/definitions/Action" - }, - "ConditionExpressions": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/ConditionExpression" - }, - "type": "array" - } - }, - "required": [ - "Action" - ], - "type": "object" - }, - "S3Location": { - "additionalProperties": false, - "properties": { - "Bucket": { - "type": "string" - }, - "Key": { - "type": "string" - } - }, - "required": [ - "Bucket" - ], - "type": "object" - }, - "SecondaryInput": { - "additionalProperties": false, - "oneOf": [ - { - "required": [ - "S3InputDefinition" - ] - }, - { - "required": [ - "DataCatalogInputDefinition" - ] - } - ], - "properties": { - "DataCatalogInputDefinition": { - "$ref": "#/definitions/DataCatalogInputDefinition" - }, - "S3InputDefinition": { - "$ref": "#/definitions/S3Location" - } - }, - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/Name" - ], - "properties": { - "Description": { - "maxLength": 1024, - "minLength": 0, - "type": "string" - }, - "Name": { - "maxLength": 255, - "minLength": 1, - "type": "string" - }, - "Steps": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/RecipeStep", - "type": "object" - }, - "type": "array" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": false - } - }, - "required": [ - "Name", - "Steps" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-databrew.git", - "taggable": true, - "typeName": "AWS::DataBrew::Recipe" -} diff --git a/src/cfnlint/data/schemas/providers/eu_west_1/aws-databrew-ruleset.json b/src/cfnlint/data/schemas/providers/eu_west_1/aws-databrew-ruleset.json deleted file mode 100644 index 54553a57c0..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_west_1/aws-databrew-ruleset.json +++ /dev/null @@ -1,198 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name", - "/properties/TargetArn", - "/properties/Tags" - ], - "definitions": { - "ColumnSelector": { - "additionalProperties": false, - "properties": { - "Name": { - "maxLength": 255, - "minLength": 1, - "type": "string" - }, - "Regex": { - "maxLength": 255, - "minLength": 1, - "type": "string" - } - }, - "type": "object" - }, - "Disabled": { - "type": "boolean" - }, - "Expression": { - "maxLength": 1024, - "minLength": 4, - "pattern": "^[><0-9A-Za-z_.,:)(!= ]+$", - "type": "string" - }, - "Rule": { - "additionalProperties": false, - "properties": { - "CheckExpression": { - "$ref": "#/definitions/Expression" - }, - "ColumnSelectors": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/ColumnSelector" - }, - "minItems": 1, - "type": "array" - }, - "Disabled": { - "$ref": "#/definitions/Disabled" - }, - "Name": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "SubstitutionMap": { - "$ref": "#/definitions/ValuesMap" - }, - "Threshold": { - "$ref": "#/definitions/Threshold" - } - }, - "required": [ - "Name", - "CheckExpression" - ], - "type": "object" - }, - "SubstitutionValue": { - "additionalProperties": false, - "properties": { - "Value": { - "maxLength": 1024, - "minLength": 0, - "type": "string" - }, - "ValueReference": { - "maxLength": 128, - "minLength": 2, - "pattern": "^:[A-Za-z0-9_]+$", - "type": "string" - } - }, - "required": [ - "ValueReference", - "Value" - ], - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - }, - "Threshold": { - "additionalProperties": false, - "properties": { - "Type": { - "$ref": "#/definitions/ThresholdType" - }, - "Unit": { - "$ref": "#/definitions/ThresholdUnit" - }, - "Value": { - "$ref": "#/definitions/ThresholdValue" - } - }, - "required": [ - "Value" - ], - "type": "object" - }, - "ThresholdType": { - "enum": [ - "GREATER_THAN_OR_EQUAL", - "LESS_THAN_OR_EQUAL", - "GREATER_THAN", - "LESS_THAN" - ], - "type": "string" - }, - "ThresholdUnit": { - "enum": [ - "COUNT", - "PERCENTAGE" - ], - "type": "string" - }, - "ThresholdValue": { - "type": "number" - }, - "ValuesMap": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/SubstitutionValue" - }, - "type": "array" - } - }, - "primaryIdentifier": [ - "/properties/Name" - ], - "properties": { - "Description": { - "maxLength": 1024, - "type": "string" - }, - "Name": { - "maxLength": 255, - "minLength": 1, - "type": "string" - }, - "Rules": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/Rule" - }, - "minItems": 1, - "type": "array" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": false - }, - "TargetArn": { - "maxLength": 2048, - "minLength": 20, - "type": "string" - } - }, - "required": [ - "Name", - "TargetArn", - "Rules" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-databrew.git", - "taggable": true, - "typeName": "AWS::DataBrew::Ruleset" -} diff --git a/src/cfnlint/data/schemas/providers/eu_west_1/aws-ecs-service.json b/src/cfnlint/data/schemas/providers/eu_west_1/aws-ecs-service.json new file mode 100644 index 0000000000..ba7baa1de3 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_west_1/aws-ecs-service.json @@ -0,0 +1,585 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/DeploymentController", + "/properties/LaunchType", + "/properties/Role", + "/properties/SchedulingStrategy", + "/properties/ServiceName" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "CapacityProviderStrategyItem": { + "additionalProperties": false, + "properties": { + "Base": { + "type": "integer" + }, + "CapacityProvider": { + "type": "string" + }, + "Weight": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentAlarms": { + "additionalProperties": false, + "properties": { + "AlarmNames": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "AlarmNames", + "Rollback", + "Enable" + ], + "type": "object" + }, + "DeploymentCircuitBreaker": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "Enable", + "Rollback" + ], + "type": "object" + }, + "DeploymentConfiguration": { + "additionalProperties": false, + "properties": { + "Alarms": { + "$ref": "#/definitions/DeploymentAlarms" + }, + "DeploymentCircuitBreaker": { + "$ref": "#/definitions/DeploymentCircuitBreaker" + }, + "MaximumPercent": { + "type": "integer" + }, + "MinimumHealthyPercent": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentController": { + "additionalProperties": false, + "properties": { + "Type": { + "enum": [ + "CODE_DEPLOY", + "ECS", + "EXTERNAL" + ], + "type": "string" + } + }, + "type": "object" + }, + "EBSTagSpecification": { + "additionalProperties": false, + "properties": { + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "ResourceType": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "ResourceType" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "LoadBalancerName": { + "type": "string" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "LogConfiguration": { + "additionalProperties": false, + "properties": { + "LogDriver": { + "type": "string" + }, + "Options": { + "additionalProperties": false, + "patternProperties": { + ".{1,}": { + "type": "string" + } + }, + "type": "object" + }, + "SecretOptions": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Secret" + }, + "type": "array" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsvpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "PlacementConstraint": { + "additionalProperties": false, + "properties": { + "Expression": { + "type": "string" + }, + "Type": { + "enum": [ + "distinctInstance", + "memberOf" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "PlacementStrategy": { + "additionalProperties": false, + "properties": { + "Field": { + "type": "string" + }, + "Type": { + "enum": [ + "binpack", + "random", + "spread" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "Secret": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "ValueFrom": { + "type": "string" + } + }, + "required": [ + "Name", + "ValueFrom" + ], + "type": "object" + }, + "ServiceConnectClientAlias": { + "additionalProperties": false, + "properties": { + "DnsName": { + "type": "string" + }, + "Port": { + "type": "integer" + } + }, + "required": [ + "Port" + ], + "type": "object" + }, + "ServiceConnectConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + }, + "LogConfiguration": { + "$ref": "#/definitions/LogConfiguration" + }, + "Namespace": { + "type": "string" + }, + "Services": { + "items": { + "$ref": "#/definitions/ServiceConnectService" + }, + "type": "array" + } + }, + "required": [ + "Enabled" + ], + "type": "object" + }, + "ServiceConnectService": { + "additionalProperties": false, + "properties": { + "ClientAliases": { + "items": { + "$ref": "#/definitions/ServiceConnectClientAlias" + }, + "type": "array" + }, + "DiscoveryName": { + "type": "string" + }, + "IngressPortOverride": { + "type": "integer" + }, + "PortName": { + "type": "string" + }, + "Timeout": { + "$ref": "#/definitions/TimeoutConfiguration" + }, + "Tls": { + "$ref": "#/definitions/ServiceConnectTlsConfiguration" + } + }, + "required": [ + "PortName" + ], + "type": "object" + }, + "ServiceConnectTlsCertificateAuthority": { + "additionalProperties": false, + "properties": { + "AwsPcaAuthorityArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceConnectTlsConfiguration": { + "additionalProperties": false, + "properties": { + "IssuerCertificateAuthority": { + "$ref": "#/definitions/ServiceConnectTlsCertificateAuthority" + }, + "KmsKey": { + "type": "string" + }, + "RoleArn": { + "type": "string" + } + }, + "required": [ + "IssuerCertificateAuthority" + ], + "type": "object" + }, + "ServiceManagedEBSVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "Encrypted": { + "type": "boolean" + }, + "FilesystemType": { + "type": "string" + }, + "Iops": { + "type": "integer" + }, + "KmsKeyId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SizeInGiB": { + "type": "integer" + }, + "SnapshotId": { + "type": "string" + }, + "TagSpecifications": { + "items": { + "$ref": "#/definitions/EBSTagSpecification" + }, + "type": "array" + }, + "Throughput": { + "type": "integer" + }, + "VolumeType": { + "type": "string" + } + }, + "required": [ + "RoleArn" + ], + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "ManagedEBSVolume": { + "$ref": "#/definitions/ServiceManagedEBSVolumeConfiguration" + }, + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + }, + "TimeoutConfiguration": { + "additionalProperties": false, + "properties": { + "IdleTimeoutSeconds": { + "type": "integer" + }, + "PerRequestTimeoutSeconds": { + "type": "integer" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/ServiceArn", + "/properties/Cluster" + ], + "properties": { + "CapacityProviderStrategy": { + "items": { + "$ref": "#/definitions/CapacityProviderStrategyItem" + }, + "type": "array" + }, + "Cluster": { + "type": "string" + }, + "DeploymentConfiguration": { + "$ref": "#/definitions/DeploymentConfiguration" + }, + "DeploymentController": { + "$ref": "#/definitions/DeploymentController" + }, + "DesiredCount": { + "type": "integer" + }, + "EnableECSManagedTags": { + "type": "boolean" + }, + "EnableExecuteCommand": { + "type": "boolean" + }, + "HealthCheckGracePeriodSeconds": { + "type": "integer" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE", + "EXTERNAL" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "Name": { + "type": "string" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlacementConstraints": { + "items": { + "$ref": "#/definitions/PlacementConstraint" + }, + "type": "array" + }, + "PlacementStrategies": { + "items": { + "$ref": "#/definitions/PlacementStrategy" + }, + "type": "array" + }, + "PlatformVersion": { + "default": "LATEST", + "type": "string" + }, + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "Role": { + "type": "string" + }, + "SchedulingStrategy": { + "enum": [ + "DAEMON", + "REPLICA" + ], + "type": "string" + }, + "ServiceArn": { + "type": "string" + }, + "ServiceConnectConfiguration": { + "$ref": "#/definitions/ServiceConnectConfiguration" + }, + "ServiceName": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + }, + "VolumeConfigurations": { + "items": { + "$ref": "#/definitions/ServiceVolumeConfiguration" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/ServiceArn", + "/properties/Name" + ], + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::Service", + "writeOnlyProperties": [ + "/properties/ServiceConnectConfiguration", + "/properties/VolumeConfigurations" + ] +} diff --git a/src/cfnlint/data/schemas/providers/eu_west_1/aws-ecs-taskset.json b/src/cfnlint/data/schemas/providers/eu_west_1/aws-ecs-taskset.json new file mode 100644 index 0000000000..3491488499 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_west_1/aws-ecs-taskset.json @@ -0,0 +1,191 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/ExternalId", + "/properties/LaunchType", + "/properties/LoadBalancers", + "/properties/NetworkConfiguration", + "/properties/PlatformVersion", + "/properties/Service", + "/properties/ServiceRegistries", + "/properties/TaskDefinition" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "maxItems": 5, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "maxItems": 16, + "type": "array" + } + }, + "required": [ + "Subnets" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsVpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "Scale": { + "additionalProperties": false, + "properties": { + "Unit": { + "enum": [ + "PERCENT" + ], + "type": "string" + }, + "Value": { + "maximum": 100, + "minimum": 0, + "type": "number" + } + }, + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Cluster", + "/properties/Service", + "/properties/Id" + ], + "properties": { + "Cluster": { + "type": "string" + }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlatformVersion": { + "type": "string" + }, + "Scale": { + "$ref": "#/definitions/Scale" + }, + "Service": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "Cluster", + "Service", + "TaskDefinition" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-ecs.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::TaskSet" +} diff --git a/src/cfnlint/data/schemas/providers/eu_west_1/aws-medialive-channel.json b/src/cfnlint/data/schemas/providers/eu_west_1/aws-medialive-channel.json new file mode 100644 index 0000000000..a6c907c033 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_west_1/aws-medialive-channel.json @@ -0,0 +1,3591 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Vpc", + "/properties/AnywhereSettings" + ], + "definitions": { + "AacSettings": { + "additionalProperties": false, + "properties": { + "Bitrate": { + "type": "number" + }, + "CodingMode": { + "type": "string" + }, + "InputType": { + "type": "string" + }, + "Profile": { + "type": "string" + }, + "RateControlMode": { + "type": "string" + }, + "RawFormat": { + "type": "string" + }, + "SampleRate": { + "type": "number" + }, + "Spec": { + "type": "string" + }, + "VbrQuality": { + "type": "string" + } + }, + "type": "object" + }, + "Ac3Settings": { + "additionalProperties": false, + "properties": { + "AttenuationControl": { + "type": "string" + }, + "Bitrate": { + "type": "number" + }, + "BitstreamMode": { + "type": "string" + }, + "CodingMode": { + "type": "string" + }, + "Dialnorm": { + "type": "integer" + }, + "DrcProfile": { + "type": "string" + }, + "LfeFilter": { + "type": "string" + }, + "MetadataControl": { + "type": "string" + } + }, + "type": "object" + }, + "AncillarySourceSettings": { + "additionalProperties": false, + "properties": { + "SourceAncillaryChannelNumber": { + "type": "integer" + } + }, + "type": "object" + }, + "AnywhereSettings": { + "additionalProperties": false, + "properties": { + "ChannelPlacementGroupId": { + "type": "string" + }, + "ClusterId": { + "type": "string" + } + }, + "type": "object" + }, + "ArchiveCdnSettings": { + "additionalProperties": false, + "properties": { + "ArchiveS3Settings": { + "$ref": "#/definitions/ArchiveS3Settings" + } + }, + "type": "object" + }, + "ArchiveContainerSettings": { + "additionalProperties": false, + "properties": { + "M2tsSettings": { + "$ref": "#/definitions/M2tsSettings" + }, + "RawSettings": { + "$ref": "#/definitions/RawSettings" + } + }, + "type": "object" + }, + "ArchiveGroupSettings": { + "additionalProperties": false, + "properties": { + "ArchiveCdnSettings": { + "$ref": "#/definitions/ArchiveCdnSettings" + }, + "Destination": { + "$ref": "#/definitions/OutputLocationRef" + }, + "RolloverInterval": { + "type": "integer" + } + }, + "type": "object" + }, + "ArchiveOutputSettings": { + "additionalProperties": false, + "properties": { + "ContainerSettings": { + "$ref": "#/definitions/ArchiveContainerSettings" + }, + "Extension": { + "type": "string" + }, + "NameModifier": { + "type": "string" + } + }, + "type": "object" + }, + "ArchiveS3Settings": { + "additionalProperties": false, + "properties": { + "CannedAcl": { + "type": "string" + } + }, + "type": "object" + }, + "AribDestinationSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "AribSourceSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "AudioChannelMapping": { + "additionalProperties": false, + "properties": { + "InputChannelLevels": { + "items": { + "$ref": "#/definitions/InputChannelLevel" + }, + "type": "array", + "uniqueItems": false + }, + "OutputChannel": { + "type": "integer" + } + }, + "type": "object" + }, + "AudioCodecSettings": { + "additionalProperties": false, + "properties": { + "AacSettings": { + "$ref": "#/definitions/AacSettings" + }, + "Ac3Settings": { + "$ref": "#/definitions/Ac3Settings" + }, + "Eac3AtmosSettings": { + "$ref": "#/definitions/Eac3AtmosSettings" + }, + "Eac3Settings": { + "$ref": "#/definitions/Eac3Settings" + }, + "Mp2Settings": { + "$ref": "#/definitions/Mp2Settings" + }, + "PassThroughSettings": { + "$ref": "#/definitions/PassThroughSettings" + }, + "WavSettings": { + "$ref": "#/definitions/WavSettings" + } + }, + "type": "object" + }, + "AudioDescription": { + "additionalProperties": false, + "properties": { + "AudioDashRoles": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "AudioNormalizationSettings": { + "$ref": "#/definitions/AudioNormalizationSettings" + }, + "AudioSelectorName": { + "type": "string" + }, + "AudioType": { + "type": "string" + }, + "AudioTypeControl": { + "type": "string" + }, + "AudioWatermarkingSettings": { + "$ref": "#/definitions/AudioWatermarkSettings" + }, + "CodecSettings": { + "$ref": "#/definitions/AudioCodecSettings" + }, + "DvbDashAccessibility": { + "type": "string" + }, + "LanguageCode": { + "type": "string" + }, + "LanguageCodeControl": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "RemixSettings": { + "$ref": "#/definitions/RemixSettings" + }, + "StreamName": { + "type": "string" + } + }, + "type": "object" + }, + "AudioDolbyEDecode": { + "additionalProperties": false, + "properties": { + "ProgramSelection": { + "type": "string" + } + }, + "type": "object" + }, + "AudioHlsRenditionSelection": { + "additionalProperties": false, + "properties": { + "GroupId": { + "type": "string" + }, + "Name": { + "type": "string" + } + }, + "type": "object" + }, + "AudioLanguageSelection": { + "additionalProperties": false, + "properties": { + "LanguageCode": { + "type": "string" + }, + "LanguageSelectionPolicy": { + "type": "string" + } + }, + "type": "object" + }, + "AudioNormalizationSettings": { + "additionalProperties": false, + "properties": { + "Algorithm": { + "type": "string" + }, + "AlgorithmControl": { + "type": "string" + }, + "TargetLkfs": { + "type": "number" + } + }, + "type": "object" + }, + "AudioOnlyHlsSettings": { + "additionalProperties": false, + "properties": { + "AudioGroupId": { + "type": "string" + }, + "AudioOnlyImage": { + "$ref": "#/definitions/InputLocation" + }, + "AudioTrackType": { + "type": "string" + }, + "SegmentType": { + "type": "string" + } + }, + "type": "object" + }, + "AudioPidSelection": { + "additionalProperties": false, + "properties": { + "Pid": { + "type": "integer" + } + }, + "type": "object" + }, + "AudioSelector": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "SelectorSettings": { + "$ref": "#/definitions/AudioSelectorSettings" + } + }, + "type": "object" + }, + "AudioSelectorSettings": { + "additionalProperties": false, + "properties": { + "AudioHlsRenditionSelection": { + "$ref": "#/definitions/AudioHlsRenditionSelection" + }, + "AudioLanguageSelection": { + "$ref": "#/definitions/AudioLanguageSelection" + }, + "AudioPidSelection": { + "$ref": "#/definitions/AudioPidSelection" + }, + "AudioTrackSelection": { + "$ref": "#/definitions/AudioTrackSelection" + } + }, + "type": "object" + }, + "AudioSilenceFailoverSettings": { + "additionalProperties": false, + "properties": { + "AudioSelectorName": { + "type": "string" + }, + "AudioSilenceThresholdMsec": { + "type": "integer" + } + }, + "type": "object" + }, + "AudioTrack": { + "additionalProperties": false, + "properties": { + "Track": { + "type": "integer" + } + }, + "type": "object" + }, + "AudioTrackSelection": { + "additionalProperties": false, + "properties": { + "DolbyEDecode": { + "$ref": "#/definitions/AudioDolbyEDecode" + }, + "Tracks": { + "items": { + "$ref": "#/definitions/AudioTrack" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "AudioWatermarkSettings": { + "additionalProperties": false, + "properties": { + "NielsenWatermarksSettings": { + "$ref": "#/definitions/NielsenWatermarksSettings" + } + }, + "type": "object" + }, + "AutomaticInputFailoverSettings": { + "additionalProperties": false, + "properties": { + "ErrorClearTimeMsec": { + "type": "integer" + }, + "FailoverConditions": { + "items": { + "$ref": "#/definitions/FailoverCondition" + }, + "type": "array", + "uniqueItems": false + }, + "InputPreference": { + "type": "string" + }, + "SecondaryInputId": { + "type": "string" + } + }, + "type": "object" + }, + "Av1ColorSpaceSettings": { + "additionalProperties": false, + "properties": { + "ColorSpacePassthroughSettings": { + "$ref": "#/definitions/ColorSpacePassthroughSettings" + }, + "Hdr10Settings": { + "$ref": "#/definitions/Hdr10Settings" + }, + "Rec601Settings": { + "$ref": "#/definitions/Rec601Settings" + }, + "Rec709Settings": { + "$ref": "#/definitions/Rec709Settings" + } + }, + "type": "object" + }, + "Av1Settings": { + "additionalProperties": false, + "properties": { + "AfdSignaling": { + "type": "string" + }, + "BufSize": { + "type": "integer" + }, + "ColorSpaceSettings": { + "$ref": "#/definitions/Av1ColorSpaceSettings" + }, + "FixedAfd": { + "type": "string" + }, + "FramerateDenominator": { + "type": "integer" + }, + "FramerateNumerator": { + "type": "integer" + }, + "GopSize": { + "type": "number" + }, + "GopSizeUnits": { + "type": "string" + }, + "Level": { + "type": "string" + }, + "LookAheadRateControl": { + "type": "string" + }, + "MaxBitrate": { + "type": "integer" + }, + "MinIInterval": { + "type": "integer" + }, + "ParDenominator": { + "type": "integer" + }, + "ParNumerator": { + "type": "integer" + }, + "QvbrQualityLevel": { + "type": "integer" + }, + "SceneChangeDetect": { + "type": "string" + }, + "TimecodeBurninSettings": { + "$ref": "#/definitions/TimecodeBurninSettings" + } + }, + "type": "object" + }, + "AvailBlanking": { + "additionalProperties": false, + "properties": { + "AvailBlankingImage": { + "$ref": "#/definitions/InputLocation" + }, + "State": { + "type": "string" + } + }, + "type": "object" + }, + "AvailConfiguration": { + "additionalProperties": false, + "properties": { + "AvailSettings": { + "$ref": "#/definitions/AvailSettings" + }, + "Scte35SegmentationScope": { + "type": "string" + } + }, + "type": "object" + }, + "AvailSettings": { + "additionalProperties": false, + "properties": { + "Esam": { + "$ref": "#/definitions/Esam" + }, + "Scte35SpliceInsert": { + "$ref": "#/definitions/Scte35SpliceInsert" + }, + "Scte35TimeSignalApos": { + "$ref": "#/definitions/Scte35TimeSignalApos" + } + }, + "type": "object" + }, + "BandwidthReductionFilterSettings": { + "additionalProperties": false, + "properties": { + "PostFilterSharpening": { + "type": "string" + }, + "Strength": { + "type": "string" + } + }, + "type": "object" + }, + "BlackoutSlate": { + "additionalProperties": false, + "properties": { + "BlackoutSlateImage": { + "$ref": "#/definitions/InputLocation" + }, + "NetworkEndBlackout": { + "type": "string" + }, + "NetworkEndBlackoutImage": { + "$ref": "#/definitions/InputLocation" + }, + "NetworkId": { + "type": "string" + }, + "State": { + "type": "string" + } + }, + "type": "object" + }, + "BurnInDestinationSettings": { + "additionalProperties": false, + "properties": { + "Alignment": { + "type": "string" + }, + "BackgroundColor": { + "type": "string" + }, + "BackgroundOpacity": { + "type": "integer" + }, + "Font": { + "$ref": "#/definitions/InputLocation" + }, + "FontColor": { + "type": "string" + }, + "FontOpacity": { + "type": "integer" + }, + "FontResolution": { + "type": "integer" + }, + "FontSize": { + "type": "string" + }, + "OutlineColor": { + "type": "string" + }, + "OutlineSize": { + "type": "integer" + }, + "ShadowColor": { + "type": "string" + }, + "ShadowOpacity": { + "type": "integer" + }, + "ShadowXOffset": { + "type": "integer" + }, + "ShadowYOffset": { + "type": "integer" + }, + "TeletextGridControl": { + "type": "string" + }, + "XPosition": { + "type": "integer" + }, + "YPosition": { + "type": "integer" + } + }, + "type": "object" + }, + "CaptionDescription": { + "additionalProperties": false, + "properties": { + "Accessibility": { + "type": "string" + }, + "CaptionDashRoles": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "CaptionSelectorName": { + "type": "string" + }, + "DestinationSettings": { + "$ref": "#/definitions/CaptionDestinationSettings" + }, + "DvbDashAccessibility": { + "type": "string" + }, + "LanguageCode": { + "type": "string" + }, + "LanguageDescription": { + "type": "string" + }, + "Name": { + "type": "string" + } + }, + "type": "object" + }, + "CaptionDestinationSettings": { + "additionalProperties": false, + "properties": { + "AribDestinationSettings": { + "$ref": "#/definitions/AribDestinationSettings" + }, + "BurnInDestinationSettings": { + "$ref": "#/definitions/BurnInDestinationSettings" + }, + "DvbSubDestinationSettings": { + "$ref": "#/definitions/DvbSubDestinationSettings" + }, + "EbuTtDDestinationSettings": { + "$ref": "#/definitions/EbuTtDDestinationSettings" + }, + "EmbeddedDestinationSettings": { + "$ref": "#/definitions/EmbeddedDestinationSettings" + }, + "EmbeddedPlusScte20DestinationSettings": { + "$ref": "#/definitions/EmbeddedPlusScte20DestinationSettings" + }, + "RtmpCaptionInfoDestinationSettings": { + "$ref": "#/definitions/RtmpCaptionInfoDestinationSettings" + }, + "Scte20PlusEmbeddedDestinationSettings": { + "$ref": "#/definitions/Scte20PlusEmbeddedDestinationSettings" + }, + "Scte27DestinationSettings": { + "$ref": "#/definitions/Scte27DestinationSettings" + }, + "SmpteTtDestinationSettings": { + "$ref": "#/definitions/SmpteTtDestinationSettings" + }, + "TeletextDestinationSettings": { + "$ref": "#/definitions/TeletextDestinationSettings" + }, + "TtmlDestinationSettings": { + "$ref": "#/definitions/TtmlDestinationSettings" + }, + "WebvttDestinationSettings": { + "$ref": "#/definitions/WebvttDestinationSettings" + } + }, + "type": "object" + }, + "CaptionLanguageMapping": { + "additionalProperties": false, + "properties": { + "CaptionChannel": { + "type": "integer" + }, + "LanguageCode": { + "type": "string" + }, + "LanguageDescription": { + "type": "string" + } + }, + "type": "object" + }, + "CaptionRectangle": { + "additionalProperties": false, + "properties": { + "Height": { + "type": "number" + }, + "LeftOffset": { + "type": "number" + }, + "TopOffset": { + "type": "number" + }, + "Width": { + "type": "number" + } + }, + "type": "object" + }, + "CaptionSelector": { + "additionalProperties": false, + "properties": { + "LanguageCode": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "SelectorSettings": { + "$ref": "#/definitions/CaptionSelectorSettings" + } + }, + "type": "object" + }, + "CaptionSelectorSettings": { + "additionalProperties": false, + "properties": { + "AncillarySourceSettings": { + "$ref": "#/definitions/AncillarySourceSettings" + }, + "AribSourceSettings": { + "$ref": "#/definitions/AribSourceSettings" + }, + "DvbSubSourceSettings": { + "$ref": "#/definitions/DvbSubSourceSettings" + }, + "EmbeddedSourceSettings": { + "$ref": "#/definitions/EmbeddedSourceSettings" + }, + "Scte20SourceSettings": { + "$ref": "#/definitions/Scte20SourceSettings" + }, + "Scte27SourceSettings": { + "$ref": "#/definitions/Scte27SourceSettings" + }, + "TeletextSourceSettings": { + "$ref": "#/definitions/TeletextSourceSettings" + } + }, + "type": "object" + }, + "CdiInputSpecification": { + "additionalProperties": false, + "properties": { + "Resolution": { + "type": "string" + } + }, + "type": "object" + }, + "CmafIngestGroupSettings": { + "additionalProperties": false, + "properties": { + "Destination": { + "$ref": "#/definitions/OutputLocationRef" + }, + "NielsenId3Behavior": { + "type": "string" + }, + "Scte35Type": { + "type": "string" + }, + "SegmentLength": { + "type": "integer" + }, + "SegmentLengthUnits": { + "type": "string" + }, + "SendDelayMs": { + "type": "integer" + } + }, + "type": "object" + }, + "CmafIngestOutputSettings": { + "additionalProperties": false, + "properties": { + "NameModifier": { + "type": "string" + } + }, + "type": "object" + }, + "ColorCorrection": { + "additionalProperties": false, + "properties": { + "InputColorSpace": { + "type": "string" + }, + "OutputColorSpace": { + "type": "string" + }, + "Uri": { + "type": "string" + } + }, + "type": "object" + }, + "ColorCorrectionSettings": { + "additionalProperties": false, + "properties": { + "GlobalColorCorrections": { + "items": { + "$ref": "#/definitions/ColorCorrection" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "ColorSpacePassthroughSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "DolbyVision81Settings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "DvbNitSettings": { + "additionalProperties": false, + "properties": { + "NetworkId": { + "type": "integer" + }, + "NetworkName": { + "type": "string" + }, + "RepInterval": { + "type": "integer" + } + }, + "type": "object" + }, + "DvbSdtSettings": { + "additionalProperties": false, + "properties": { + "OutputSdt": { + "type": "string" + }, + "RepInterval": { + "type": "integer" + }, + "ServiceName": { + "type": "string" + }, + "ServiceProviderName": { + "type": "string" + } + }, + "type": "object" + }, + "DvbSubDestinationSettings": { + "additionalProperties": false, + "properties": { + "Alignment": { + "type": "string" + }, + "BackgroundColor": { + "type": "string" + }, + "BackgroundOpacity": { + "type": "integer" + }, + "Font": { + "$ref": "#/definitions/InputLocation" + }, + "FontColor": { + "type": "string" + }, + "FontOpacity": { + "type": "integer" + }, + "FontResolution": { + "type": "integer" + }, + "FontSize": { + "type": "string" + }, + "OutlineColor": { + "type": "string" + }, + "OutlineSize": { + "type": "integer" + }, + "ShadowColor": { + "type": "string" + }, + "ShadowOpacity": { + "type": "integer" + }, + "ShadowXOffset": { + "type": "integer" + }, + "ShadowYOffset": { + "type": "integer" + }, + "TeletextGridControl": { + "type": "string" + }, + "XPosition": { + "type": "integer" + }, + "YPosition": { + "type": "integer" + } + }, + "type": "object" + }, + "DvbSubSourceSettings": { + "additionalProperties": false, + "properties": { + "OcrLanguage": { + "type": "string" + }, + "Pid": { + "type": "integer" + } + }, + "type": "object" + }, + "DvbTdtSettings": { + "additionalProperties": false, + "properties": { + "RepInterval": { + "type": "integer" + } + }, + "type": "object" + }, + "Eac3AtmosSettings": { + "additionalProperties": false, + "properties": { + "Bitrate": { + "type": "number" + }, + "CodingMode": { + "type": "string" + }, + "Dialnorm": { + "type": "integer" + }, + "DrcLine": { + "type": "string" + }, + "DrcRf": { + "type": "string" + }, + "HeightTrim": { + "type": "number" + }, + "SurroundTrim": { + "type": "number" + } + }, + "type": "object" + }, + "Eac3Settings": { + "additionalProperties": false, + "properties": { + "AttenuationControl": { + "type": "string" + }, + "Bitrate": { + "type": "number" + }, + "BitstreamMode": { + "type": "string" + }, + "CodingMode": { + "type": "string" + }, + "DcFilter": { + "type": "string" + }, + "Dialnorm": { + "type": "integer" + }, + "DrcLine": { + "type": "string" + }, + "DrcRf": { + "type": "string" + }, + "LfeControl": { + "type": "string" + }, + "LfeFilter": { + "type": "string" + }, + "LoRoCenterMixLevel": { + "type": "number" + }, + "LoRoSurroundMixLevel": { + "type": "number" + }, + "LtRtCenterMixLevel": { + "type": "number" + }, + "LtRtSurroundMixLevel": { + "type": "number" + }, + "MetadataControl": { + "type": "string" + }, + "PassthroughControl": { + "type": "string" + }, + "PhaseControl": { + "type": "string" + }, + "StereoDownmix": { + "type": "string" + }, + "SurroundExMode": { + "type": "string" + }, + "SurroundMode": { + "type": "string" + } + }, + "type": "object" + }, + "EbuTtDDestinationSettings": { + "additionalProperties": false, + "properties": { + "CopyrightHolder": { + "type": "string" + }, + "FillLineGap": { + "type": "string" + }, + "FontFamily": { + "type": "string" + }, + "StyleControl": { + "type": "string" + } + }, + "type": "object" + }, + "EmbeddedDestinationSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "EmbeddedPlusScte20DestinationSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "EmbeddedSourceSettings": { + "additionalProperties": false, + "properties": { + "Convert608To708": { + "type": "string" + }, + "Scte20Detection": { + "type": "string" + }, + "Source608ChannelNumber": { + "type": "integer" + }, + "Source608TrackNumber": { + "type": "integer" + } + }, + "type": "object" + }, + "EncoderSettings": { + "additionalProperties": false, + "properties": { + "AudioDescriptions": { + "items": { + "$ref": "#/definitions/AudioDescription" + }, + "type": "array", + "uniqueItems": false + }, + "AvailBlanking": { + "$ref": "#/definitions/AvailBlanking" + }, + "AvailConfiguration": { + "$ref": "#/definitions/AvailConfiguration" + }, + "BlackoutSlate": { + "$ref": "#/definitions/BlackoutSlate" + }, + "CaptionDescriptions": { + "items": { + "$ref": "#/definitions/CaptionDescription" + }, + "type": "array", + "uniqueItems": false + }, + "ColorCorrectionSettings": { + "$ref": "#/definitions/ColorCorrectionSettings" + }, + "FeatureActivations": { + "$ref": "#/definitions/FeatureActivations" + }, + "GlobalConfiguration": { + "$ref": "#/definitions/GlobalConfiguration" + }, + "MotionGraphicsConfiguration": { + "$ref": "#/definitions/MotionGraphicsConfiguration" + }, + "NielsenConfiguration": { + "$ref": "#/definitions/NielsenConfiguration" + }, + "OutputGroups": { + "items": { + "$ref": "#/definitions/OutputGroup" + }, + "type": "array", + "uniqueItems": false + }, + "ThumbnailConfiguration": { + "$ref": "#/definitions/ThumbnailConfiguration" + }, + "TimecodeConfig": { + "$ref": "#/definitions/TimecodeConfig" + }, + "VideoDescriptions": { + "items": { + "$ref": "#/definitions/VideoDescription" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "EpochLockingSettings": { + "additionalProperties": false, + "properties": { + "CustomEpoch": { + "type": "string" + }, + "JamSyncTime": { + "type": "string" + } + }, + "type": "object" + }, + "Esam": { + "additionalProperties": false, + "properties": { + "AcquisitionPointId": { + "type": "string" + }, + "AdAvailOffset": { + "type": "integer" + }, + "PasswordParam": { + "type": "string" + }, + "PoisEndpoint": { + "type": "string" + }, + "Username": { + "type": "string" + }, + "ZoneIdentity": { + "type": "string" + } + }, + "type": "object" + }, + "FailoverCondition": { + "additionalProperties": false, + "properties": { + "FailoverConditionSettings": { + "$ref": "#/definitions/FailoverConditionSettings" + } + }, + "type": "object" + }, + "FailoverConditionSettings": { + "additionalProperties": false, + "properties": { + "AudioSilenceSettings": { + "$ref": "#/definitions/AudioSilenceFailoverSettings" + }, + "InputLossSettings": { + "$ref": "#/definitions/InputLossFailoverSettings" + }, + "VideoBlackSettings": { + "$ref": "#/definitions/VideoBlackFailoverSettings" + } + }, + "type": "object" + }, + "FeatureActivations": { + "additionalProperties": false, + "properties": { + "InputPrepareScheduleActions": { + "type": "string" + }, + "OutputStaticImageOverlayScheduleActions": { + "type": "string" + } + }, + "type": "object" + }, + "FecOutputSettings": { + "additionalProperties": false, + "properties": { + "ColumnDepth": { + "type": "integer" + }, + "IncludeFec": { + "type": "string" + }, + "RowLength": { + "type": "integer" + } + }, + "type": "object" + }, + "Fmp4HlsSettings": { + "additionalProperties": false, + "properties": { + "AudioRenditionSets": { + "type": "string" + }, + "NielsenId3Behavior": { + "type": "string" + }, + "TimedMetadataBehavior": { + "type": "string" + } + }, + "type": "object" + }, + "FrameCaptureCdnSettings": { + "additionalProperties": false, + "properties": { + "FrameCaptureS3Settings": { + "$ref": "#/definitions/FrameCaptureS3Settings" + } + }, + "type": "object" + }, + "FrameCaptureGroupSettings": { + "additionalProperties": false, + "properties": { + "Destination": { + "$ref": "#/definitions/OutputLocationRef" + }, + "FrameCaptureCdnSettings": { + "$ref": "#/definitions/FrameCaptureCdnSettings" + } + }, + "type": "object" + }, + "FrameCaptureHlsSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "FrameCaptureOutputSettings": { + "additionalProperties": false, + "properties": { + "NameModifier": { + "type": "string" + } + }, + "type": "object" + }, + "FrameCaptureS3Settings": { + "additionalProperties": false, + "properties": { + "CannedAcl": { + "type": "string" + } + }, + "type": "object" + }, + "FrameCaptureSettings": { + "additionalProperties": false, + "properties": { + "CaptureInterval": { + "type": "integer" + }, + "CaptureIntervalUnits": { + "type": "string" + }, + "TimecodeBurninSettings": { + "$ref": "#/definitions/TimecodeBurninSettings" + } + }, + "type": "object" + }, + "GlobalConfiguration": { + "additionalProperties": false, + "properties": { + "InitialAudioGain": { + "type": "integer" + }, + "InputEndAction": { + "type": "string" + }, + "InputLossBehavior": { + "$ref": "#/definitions/InputLossBehavior" + }, + "OutputLockingMode": { + "type": "string" + }, + "OutputLockingSettings": { + "$ref": "#/definitions/OutputLockingSettings" + }, + "OutputTimingSource": { + "type": "string" + }, + "SupportLowFramerateInputs": { + "type": "string" + } + }, + "type": "object" + }, + "H264ColorSpaceSettings": { + "additionalProperties": false, + "properties": { + "ColorSpacePassthroughSettings": { + "$ref": "#/definitions/ColorSpacePassthroughSettings" + }, + "Rec601Settings": { + "$ref": "#/definitions/Rec601Settings" + }, + "Rec709Settings": { + "$ref": "#/definitions/Rec709Settings" + } + }, + "type": "object" + }, + "H264FilterSettings": { + "additionalProperties": false, + "properties": { + "BandwidthReductionFilterSettings": { + "$ref": "#/definitions/BandwidthReductionFilterSettings" + }, + "TemporalFilterSettings": { + "$ref": "#/definitions/TemporalFilterSettings" + } + }, + "type": "object" + }, + "H264Settings": { + "additionalProperties": false, + "properties": { + "AdaptiveQuantization": { + "type": "string" + }, + "AfdSignaling": { + "type": "string" + }, + "Bitrate": { + "type": "integer" + }, + "BufFillPct": { + "type": "integer" + }, + "BufSize": { + "type": "integer" + }, + "ColorMetadata": { + "type": "string" + }, + "ColorSpaceSettings": { + "$ref": "#/definitions/H264ColorSpaceSettings" + }, + "EntropyEncoding": { + "type": "string" + }, + "FilterSettings": { + "$ref": "#/definitions/H264FilterSettings" + }, + "FixedAfd": { + "type": "string" + }, + "FlickerAq": { + "type": "string" + }, + "ForceFieldPictures": { + "type": "string" + }, + "FramerateControl": { + "type": "string" + }, + "FramerateDenominator": { + "type": "integer" + }, + "FramerateNumerator": { + "type": "integer" + }, + "GopBReference": { + "type": "string" + }, + "GopClosedCadence": { + "type": "integer" + }, + "GopNumBFrames": { + "type": "integer" + }, + "GopSize": { + "type": "number" + }, + "GopSizeUnits": { + "type": "string" + }, + "Level": { + "type": "string" + }, + "LookAheadRateControl": { + "type": "string" + }, + "MaxBitrate": { + "type": "integer" + }, + "MinIInterval": { + "type": "integer" + }, + "MinQp": { + "type": "integer" + }, + "NumRefFrames": { + "type": "integer" + }, + "ParControl": { + "type": "string" + }, + "ParDenominator": { + "type": "integer" + }, + "ParNumerator": { + "type": "integer" + }, + "Profile": { + "type": "string" + }, + "QualityLevel": { + "type": "string" + }, + "QvbrQualityLevel": { + "type": "integer" + }, + "RateControlMode": { + "type": "string" + }, + "ScanType": { + "type": "string" + }, + "SceneChangeDetect": { + "type": "string" + }, + "Slices": { + "type": "integer" + }, + "Softness": { + "type": "integer" + }, + "SpatialAq": { + "type": "string" + }, + "SubgopLength": { + "type": "string" + }, + "Syntax": { + "type": "string" + }, + "TemporalAq": { + "type": "string" + }, + "TimecodeBurninSettings": { + "$ref": "#/definitions/TimecodeBurninSettings" + }, + "TimecodeInsertion": { + "type": "string" + } + }, + "type": "object" + }, + "H265ColorSpaceSettings": { + "additionalProperties": false, + "properties": { + "ColorSpacePassthroughSettings": { + "$ref": "#/definitions/ColorSpacePassthroughSettings" + }, + "DolbyVision81Settings": { + "$ref": "#/definitions/DolbyVision81Settings" + }, + "Hdr10Settings": { + "$ref": "#/definitions/Hdr10Settings" + }, + "Rec601Settings": { + "$ref": "#/definitions/Rec601Settings" + }, + "Rec709Settings": { + "$ref": "#/definitions/Rec709Settings" + } + }, + "type": "object" + }, + "H265FilterSettings": { + "additionalProperties": false, + "properties": { + "BandwidthReductionFilterSettings": { + "$ref": "#/definitions/BandwidthReductionFilterSettings" + }, + "TemporalFilterSettings": { + "$ref": "#/definitions/TemporalFilterSettings" + } + }, + "type": "object" + }, + "H265Settings": { + "additionalProperties": false, + "properties": { + "AdaptiveQuantization": { + "type": "string" + }, + "AfdSignaling": { + "type": "string" + }, + "AlternativeTransferFunction": { + "type": "string" + }, + "Bitrate": { + "type": "integer" + }, + "BufSize": { + "type": "integer" + }, + "ColorMetadata": { + "type": "string" + }, + "ColorSpaceSettings": { + "$ref": "#/definitions/H265ColorSpaceSettings" + }, + "FilterSettings": { + "$ref": "#/definitions/H265FilterSettings" + }, + "FixedAfd": { + "type": "string" + }, + "FlickerAq": { + "type": "string" + }, + "FramerateDenominator": { + "type": "integer" + }, + "FramerateNumerator": { + "type": "integer" + }, + "GopClosedCadence": { + "type": "integer" + }, + "GopSize": { + "type": "number" + }, + "GopSizeUnits": { + "type": "string" + }, + "Level": { + "type": "string" + }, + "LookAheadRateControl": { + "type": "string" + }, + "MaxBitrate": { + "type": "integer" + }, + "MinIInterval": { + "type": "integer" + }, + "MinQp": { + "type": "integer" + }, + "MvOverPictureBoundaries": { + "type": "string" + }, + "MvTemporalPredictor": { + "type": "string" + }, + "ParDenominator": { + "type": "integer" + }, + "ParNumerator": { + "type": "integer" + }, + "Profile": { + "type": "string" + }, + "QvbrQualityLevel": { + "type": "integer" + }, + "RateControlMode": { + "type": "string" + }, + "ScanType": { + "type": "string" + }, + "SceneChangeDetect": { + "type": "string" + }, + "Slices": { + "type": "integer" + }, + "Tier": { + "type": "string" + }, + "TileHeight": { + "type": "integer" + }, + "TilePadding": { + "type": "string" + }, + "TileWidth": { + "type": "integer" + }, + "TimecodeBurninSettings": { + "$ref": "#/definitions/TimecodeBurninSettings" + }, + "TimecodeInsertion": { + "type": "string" + }, + "TreeblockSize": { + "type": "string" + } + }, + "type": "object" + }, + "Hdr10Settings": { + "additionalProperties": false, + "properties": { + "MaxCll": { + "type": "integer" + }, + "MaxFall": { + "type": "integer" + } + }, + "type": "object" + }, + "HlsAkamaiSettings": { + "additionalProperties": false, + "properties": { + "ConnectionRetryInterval": { + "type": "integer" + }, + "FilecacheDuration": { + "type": "integer" + }, + "HttpTransferMode": { + "type": "string" + }, + "NumRetries": { + "type": "integer" + }, + "RestartDelay": { + "type": "integer" + }, + "Salt": { + "type": "string" + }, + "Token": { + "type": "string" + } + }, + "type": "object" + }, + "HlsBasicPutSettings": { + "additionalProperties": false, + "properties": { + "ConnectionRetryInterval": { + "type": "integer" + }, + "FilecacheDuration": { + "type": "integer" + }, + "NumRetries": { + "type": "integer" + }, + "RestartDelay": { + "type": "integer" + } + }, + "type": "object" + }, + "HlsCdnSettings": { + "additionalProperties": false, + "properties": { + "HlsAkamaiSettings": { + "$ref": "#/definitions/HlsAkamaiSettings" + }, + "HlsBasicPutSettings": { + "$ref": "#/definitions/HlsBasicPutSettings" + }, + "HlsMediaStoreSettings": { + "$ref": "#/definitions/HlsMediaStoreSettings" + }, + "HlsS3Settings": { + "$ref": "#/definitions/HlsS3Settings" + }, + "HlsWebdavSettings": { + "$ref": "#/definitions/HlsWebdavSettings" + } + }, + "type": "object" + }, + "HlsGroupSettings": { + "additionalProperties": false, + "properties": { + "AdMarkers": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "BaseUrlContent": { + "type": "string" + }, + "BaseUrlContent1": { + "type": "string" + }, + "BaseUrlManifest": { + "type": "string" + }, + "BaseUrlManifest1": { + "type": "string" + }, + "CaptionLanguageMappings": { + "items": { + "$ref": "#/definitions/CaptionLanguageMapping" + }, + "type": "array", + "uniqueItems": false + }, + "CaptionLanguageSetting": { + "type": "string" + }, + "ClientCache": { + "type": "string" + }, + "CodecSpecification": { + "type": "string" + }, + "ConstantIv": { + "type": "string" + }, + "Destination": { + "$ref": "#/definitions/OutputLocationRef" + }, + "DirectoryStructure": { + "type": "string" + }, + "DiscontinuityTags": { + "type": "string" + }, + "EncryptionType": { + "type": "string" + }, + "HlsCdnSettings": { + "$ref": "#/definitions/HlsCdnSettings" + }, + "HlsId3SegmentTagging": { + "type": "string" + }, + "IFrameOnlyPlaylists": { + "type": "string" + }, + "IncompleteSegmentBehavior": { + "type": "string" + }, + "IndexNSegments": { + "type": "integer" + }, + "InputLossAction": { + "type": "string" + }, + "IvInManifest": { + "type": "string" + }, + "IvSource": { + "type": "string" + }, + "KeepSegments": { + "type": "integer" + }, + "KeyFormat": { + "type": "string" + }, + "KeyFormatVersions": { + "type": "string" + }, + "KeyProviderSettings": { + "$ref": "#/definitions/KeyProviderSettings" + }, + "ManifestCompression": { + "type": "string" + }, + "ManifestDurationFormat": { + "type": "string" + }, + "MinSegmentLength": { + "type": "integer" + }, + "Mode": { + "type": "string" + }, + "OutputSelection": { + "type": "string" + }, + "ProgramDateTime": { + "type": "string" + }, + "ProgramDateTimeClock": { + "type": "string" + }, + "ProgramDateTimePeriod": { + "type": "integer" + }, + "RedundantManifest": { + "type": "string" + }, + "SegmentLength": { + "type": "integer" + }, + "SegmentationMode": { + "type": "string" + }, + "SegmentsPerSubdirectory": { + "type": "integer" + }, + "StreamInfResolution": { + "type": "string" + }, + "TimedMetadataId3Frame": { + "type": "string" + }, + "TimedMetadataId3Period": { + "type": "integer" + }, + "TimestampDeltaMilliseconds": { + "type": "integer" + }, + "TsFileMode": { + "type": "string" + } + }, + "type": "object" + }, + "HlsInputSettings": { + "additionalProperties": false, + "properties": { + "Bandwidth": { + "type": "integer" + }, + "BufferSegments": { + "type": "integer" + }, + "Retries": { + "type": "integer" + }, + "RetryInterval": { + "type": "integer" + }, + "Scte35Source": { + "type": "string" + } + }, + "type": "object" + }, + "HlsMediaStoreSettings": { + "additionalProperties": false, + "properties": { + "ConnectionRetryInterval": { + "type": "integer" + }, + "FilecacheDuration": { + "type": "integer" + }, + "MediaStoreStorageClass": { + "type": "string" + }, + "NumRetries": { + "type": "integer" + }, + "RestartDelay": { + "type": "integer" + } + }, + "type": "object" + }, + "HlsOutputSettings": { + "additionalProperties": false, + "properties": { + "H265PackagingType": { + "type": "string" + }, + "HlsSettings": { + "$ref": "#/definitions/HlsSettings" + }, + "NameModifier": { + "type": "string" + }, + "SegmentModifier": { + "type": "string" + } + }, + "type": "object" + }, + "HlsS3Settings": { + "additionalProperties": false, + "properties": { + "CannedAcl": { + "type": "string" + } + }, + "type": "object" + }, + "HlsSettings": { + "additionalProperties": false, + "properties": { + "AudioOnlyHlsSettings": { + "$ref": "#/definitions/AudioOnlyHlsSettings" + }, + "Fmp4HlsSettings": { + "$ref": "#/definitions/Fmp4HlsSettings" + }, + "FrameCaptureHlsSettings": { + "$ref": "#/definitions/FrameCaptureHlsSettings" + }, + "StandardHlsSettings": { + "$ref": "#/definitions/StandardHlsSettings" + } + }, + "type": "object" + }, + "HlsWebdavSettings": { + "additionalProperties": false, + "properties": { + "ConnectionRetryInterval": { + "type": "integer" + }, + "FilecacheDuration": { + "type": "integer" + }, + "HttpTransferMode": { + "type": "string" + }, + "NumRetries": { + "type": "integer" + }, + "RestartDelay": { + "type": "integer" + } + }, + "type": "object" + }, + "HtmlMotionGraphicsSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "InputAttachment": { + "additionalProperties": false, + "properties": { + "AutomaticInputFailoverSettings": { + "$ref": "#/definitions/AutomaticInputFailoverSettings" + }, + "InputAttachmentName": { + "type": "string" + }, + "InputId": { + "type": "string" + }, + "InputSettings": { + "$ref": "#/definitions/InputSettings" + }, + "LogicalInterfaceNames": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "InputChannelLevel": { + "additionalProperties": false, + "properties": { + "Gain": { + "type": "integer" + }, + "InputChannel": { + "type": "integer" + } + }, + "type": "object" + }, + "InputLocation": { + "additionalProperties": false, + "properties": { + "PasswordParam": { + "type": "string" + }, + "Uri": { + "type": "string" + }, + "Username": { + "type": "string" + } + }, + "type": "object" + }, + "InputLossBehavior": { + "additionalProperties": false, + "properties": { + "BlackFrameMsec": { + "type": "integer" + }, + "InputLossImageColor": { + "type": "string" + }, + "InputLossImageSlate": { + "$ref": "#/definitions/InputLocation" + }, + "InputLossImageType": { + "type": "string" + }, + "RepeatFrameMsec": { + "type": "integer" + } + }, + "type": "object" + }, + "InputLossFailoverSettings": { + "additionalProperties": false, + "properties": { + "InputLossThresholdMsec": { + "type": "integer" + } + }, + "type": "object" + }, + "InputSettings": { + "additionalProperties": false, + "properties": { + "AudioSelectors": { + "items": { + "$ref": "#/definitions/AudioSelector" + }, + "type": "array", + "uniqueItems": false + }, + "CaptionSelectors": { + "items": { + "$ref": "#/definitions/CaptionSelector" + }, + "type": "array", + "uniqueItems": false + }, + "DeblockFilter": { + "type": "string" + }, + "DenoiseFilter": { + "type": "string" + }, + "FilterStrength": { + "type": "integer" + }, + "InputFilter": { + "type": "string" + }, + "NetworkInputSettings": { + "$ref": "#/definitions/NetworkInputSettings" + }, + "Scte35Pid": { + "type": "integer" + }, + "Smpte2038DataPreference": { + "type": "string" + }, + "SourceEndBehavior": { + "type": "string" + }, + "VideoSelector": { + "$ref": "#/definitions/VideoSelector" + } + }, + "type": "object" + }, + "InputSpecification": { + "additionalProperties": false, + "properties": { + "Codec": { + "type": "string" + }, + "MaximumBitrate": { + "type": "string" + }, + "Resolution": { + "type": "string" + } + }, + "type": "object" + }, + "KeyProviderSettings": { + "additionalProperties": false, + "properties": { + "StaticKeySettings": { + "$ref": "#/definitions/StaticKeySettings" + } + }, + "type": "object" + }, + "M2tsSettings": { + "additionalProperties": false, + "properties": { + "AbsentInputAudioBehavior": { + "type": "string" + }, + "Arib": { + "type": "string" + }, + "AribCaptionsPid": { + "type": "string" + }, + "AribCaptionsPidControl": { + "type": "string" + }, + "AudioBufferModel": { + "type": "string" + }, + "AudioFramesPerPes": { + "type": "integer" + }, + "AudioPids": { + "type": "string" + }, + "AudioStreamType": { + "type": "string" + }, + "Bitrate": { + "type": "integer" + }, + "BufferModel": { + "type": "string" + }, + "CcDescriptor": { + "type": "string" + }, + "DvbNitSettings": { + "$ref": "#/definitions/DvbNitSettings" + }, + "DvbSdtSettings": { + "$ref": "#/definitions/DvbSdtSettings" + }, + "DvbSubPids": { + "type": "string" + }, + "DvbTdtSettings": { + "$ref": "#/definitions/DvbTdtSettings" + }, + "DvbTeletextPid": { + "type": "string" + }, + "Ebif": { + "type": "string" + }, + "EbpAudioInterval": { + "type": "string" + }, + "EbpLookaheadMs": { + "type": "integer" + }, + "EbpPlacement": { + "type": "string" + }, + "EcmPid": { + "type": "string" + }, + "EsRateInPes": { + "type": "string" + }, + "EtvPlatformPid": { + "type": "string" + }, + "EtvSignalPid": { + "type": "string" + }, + "FragmentTime": { + "type": "number" + }, + "Klv": { + "type": "string" + }, + "KlvDataPids": { + "type": "string" + }, + "NielsenId3Behavior": { + "type": "string" + }, + "NullPacketBitrate": { + "type": "number" + }, + "PatInterval": { + "type": "integer" + }, + "PcrControl": { + "type": "string" + }, + "PcrPeriod": { + "type": "integer" + }, + "PcrPid": { + "type": "string" + }, + "PmtInterval": { + "type": "integer" + }, + "PmtPid": { + "type": "string" + }, + "ProgramNum": { + "type": "integer" + }, + "RateMode": { + "type": "string" + }, + "Scte27Pids": { + "type": "string" + }, + "Scte35Control": { + "type": "string" + }, + "Scte35Pid": { + "type": "string" + }, + "Scte35PrerollPullupMilliseconds": { + "type": "number" + }, + "SegmentationMarkers": { + "type": "string" + }, + "SegmentationStyle": { + "type": "string" + }, + "SegmentationTime": { + "type": "number" + }, + "TimedMetadataBehavior": { + "type": "string" + }, + "TimedMetadataPid": { + "type": "string" + }, + "TransportStreamId": { + "type": "integer" + }, + "VideoPid": { + "type": "string" + } + }, + "type": "object" + }, + "M3u8Settings": { + "additionalProperties": false, + "properties": { + "AudioFramesPerPes": { + "type": "integer" + }, + "AudioPids": { + "type": "string" + }, + "EcmPid": { + "type": "string" + }, + "KlvBehavior": { + "type": "string" + }, + "KlvDataPids": { + "type": "string" + }, + "NielsenId3Behavior": { + "type": "string" + }, + "PatInterval": { + "type": "integer" + }, + "PcrControl": { + "type": "string" + }, + "PcrPeriod": { + "type": "integer" + }, + "PcrPid": { + "type": "string" + }, + "PmtInterval": { + "type": "integer" + }, + "PmtPid": { + "type": "string" + }, + "ProgramNum": { + "type": "integer" + }, + "Scte35Behavior": { + "type": "string" + }, + "Scte35Pid": { + "type": "string" + }, + "TimedMetadataBehavior": { + "type": "string" + }, + "TimedMetadataPid": { + "type": "string" + }, + "TransportStreamId": { + "type": "integer" + }, + "VideoPid": { + "type": "string" + } + }, + "type": "object" + }, + "MaintenanceCreateSettings": { + "additionalProperties": false, + "properties": { + "MaintenanceDay": { + "type": "string" + }, + "MaintenanceStartTime": { + "type": "string" + } + }, + "type": "object" + }, + "MediaPackageGroupSettings": { + "additionalProperties": false, + "properties": { + "Destination": { + "$ref": "#/definitions/OutputLocationRef" + } + }, + "type": "object" + }, + "MediaPackageOutputDestinationSettings": { + "additionalProperties": false, + "properties": { + "ChannelId": { + "type": "string" + } + }, + "type": "object" + }, + "MediaPackageOutputSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "MotionGraphicsConfiguration": { + "additionalProperties": false, + "properties": { + "MotionGraphicsInsertion": { + "type": "string" + }, + "MotionGraphicsSettings": { + "$ref": "#/definitions/MotionGraphicsSettings" + } + }, + "type": "object" + }, + "MotionGraphicsSettings": { + "additionalProperties": false, + "properties": { + "HtmlMotionGraphicsSettings": { + "$ref": "#/definitions/HtmlMotionGraphicsSettings" + } + }, + "type": "object" + }, + "Mp2Settings": { + "additionalProperties": false, + "properties": { + "Bitrate": { + "type": "number" + }, + "CodingMode": { + "type": "string" + }, + "SampleRate": { + "type": "number" + } + }, + "type": "object" + }, + "Mpeg2FilterSettings": { + "additionalProperties": false, + "properties": { + "TemporalFilterSettings": { + "$ref": "#/definitions/TemporalFilterSettings" + } + }, + "type": "object" + }, + "Mpeg2Settings": { + "additionalProperties": false, + "properties": { + "AdaptiveQuantization": { + "type": "string" + }, + "AfdSignaling": { + "type": "string" + }, + "ColorMetadata": { + "type": "string" + }, + "ColorSpace": { + "type": "string" + }, + "DisplayAspectRatio": { + "type": "string" + }, + "FilterSettings": { + "$ref": "#/definitions/Mpeg2FilterSettings" + }, + "FixedAfd": { + "type": "string" + }, + "FramerateDenominator": { + "type": "integer" + }, + "FramerateNumerator": { + "type": "integer" + }, + "GopClosedCadence": { + "type": "integer" + }, + "GopNumBFrames": { + "type": "integer" + }, + "GopSize": { + "type": "number" + }, + "GopSizeUnits": { + "type": "string" + }, + "ScanType": { + "type": "string" + }, + "SubgopLength": { + "type": "string" + }, + "TimecodeBurninSettings": { + "$ref": "#/definitions/TimecodeBurninSettings" + }, + "TimecodeInsertion": { + "type": "string" + } + }, + "type": "object" + }, + "MsSmoothGroupSettings": { + "additionalProperties": false, + "properties": { + "AcquisitionPointId": { + "type": "string" + }, + "AudioOnlyTimecodeControl": { + "type": "string" + }, + "CertificateMode": { + "type": "string" + }, + "ConnectionRetryInterval": { + "type": "integer" + }, + "Destination": { + "$ref": "#/definitions/OutputLocationRef" + }, + "EventId": { + "type": "string" + }, + "EventIdMode": { + "type": "string" + }, + "EventStopBehavior": { + "type": "string" + }, + "FilecacheDuration": { + "type": "integer" + }, + "FragmentLength": { + "type": "integer" + }, + "InputLossAction": { + "type": "string" + }, + "NumRetries": { + "type": "integer" + }, + "RestartDelay": { + "type": "integer" + }, + "SegmentationMode": { + "type": "string" + }, + "SendDelayMs": { + "type": "integer" + }, + "SparseTrackType": { + "type": "string" + }, + "StreamManifestBehavior": { + "type": "string" + }, + "TimestampOffset": { + "type": "string" + }, + "TimestampOffsetMode": { + "type": "string" + } + }, + "type": "object" + }, + "MsSmoothOutputSettings": { + "additionalProperties": false, + "properties": { + "H265PackagingType": { + "type": "string" + }, + "NameModifier": { + "type": "string" + } + }, + "type": "object" + }, + "MulticastInputSettings": { + "additionalProperties": false, + "properties": { + "SourceIpAddress": { + "type": "string" + } + }, + "type": "object" + }, + "MultiplexContainerSettings": { + "additionalProperties": false, + "properties": { + "MultiplexM2tsSettings": { + "$ref": "#/definitions/MultiplexM2tsSettings" + } + }, + "type": "object" + }, + "MultiplexGroupSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "MultiplexM2tsSettings": { + "additionalProperties": false, + "properties": { + "AbsentInputAudioBehavior": { + "type": "string" + }, + "Arib": { + "type": "string" + }, + "AudioBufferModel": { + "type": "string" + }, + "AudioFramesPerPes": { + "type": "integer" + }, + "AudioStreamType": { + "type": "string" + }, + "CcDescriptor": { + "type": "string" + }, + "Ebif": { + "type": "string" + }, + "EsRateInPes": { + "type": "string" + }, + "Klv": { + "type": "string" + }, + "NielsenId3Behavior": { + "type": "string" + }, + "PcrControl": { + "type": "string" + }, + "PcrPeriod": { + "type": "integer" + }, + "Scte35Control": { + "type": "string" + }, + "Scte35PrerollPullupMilliseconds": { + "type": "number" + } + }, + "type": "object" + }, + "MultiplexOutputSettings": { + "additionalProperties": false, + "properties": { + "ContainerSettings": { + "$ref": "#/definitions/MultiplexContainerSettings" + }, + "Destination": { + "$ref": "#/definitions/OutputLocationRef" + } + }, + "type": "object" + }, + "MultiplexProgramChannelDestinationSettings": { + "additionalProperties": false, + "properties": { + "MultiplexId": { + "type": "string" + }, + "ProgramName": { + "type": "string" + } + }, + "type": "object" + }, + "NetworkInputSettings": { + "additionalProperties": false, + "properties": { + "HlsInputSettings": { + "$ref": "#/definitions/HlsInputSettings" + }, + "MulticastInputSettings": { + "$ref": "#/definitions/MulticastInputSettings" + }, + "ServerValidation": { + "type": "string" + } + }, + "type": "object" + }, + "NielsenCBET": { + "additionalProperties": false, + "properties": { + "CbetCheckDigitString": { + "type": "string" + }, + "CbetStepaside": { + "type": "string" + }, + "Csid": { + "type": "string" + } + }, + "type": "object" + }, + "NielsenConfiguration": { + "additionalProperties": false, + "properties": { + "DistributorId": { + "type": "string" + }, + "NielsenPcmToId3Tagging": { + "type": "string" + } + }, + "type": "object" + }, + "NielsenNaesIiNw": { + "additionalProperties": false, + "properties": { + "CheckDigitString": { + "type": "string" + }, + "Sid": { + "type": "number" + }, + "Timezone": { + "type": "string" + } + }, + "type": "object" + }, + "NielsenWatermarksSettings": { + "additionalProperties": false, + "properties": { + "NielsenCbetSettings": { + "$ref": "#/definitions/NielsenCBET" + }, + "NielsenDistributionType": { + "type": "string" + }, + "NielsenNaesIiNwSettings": { + "$ref": "#/definitions/NielsenNaesIiNw" + } + }, + "type": "object" + }, + "Output": { + "additionalProperties": false, + "properties": { + "AudioDescriptionNames": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "CaptionDescriptionNames": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "OutputName": { + "type": "string" + }, + "OutputSettings": { + "$ref": "#/definitions/OutputSettings" + }, + "VideoDescriptionName": { + "type": "string" + } + }, + "type": "object" + }, + "OutputDestination": { + "additionalProperties": false, + "properties": { + "Id": { + "type": "string" + }, + "MediaPackageSettings": { + "items": { + "$ref": "#/definitions/MediaPackageOutputDestinationSettings" + }, + "type": "array", + "uniqueItems": false + }, + "MultiplexSettings": { + "$ref": "#/definitions/MultiplexProgramChannelDestinationSettings" + }, + "Settings": { + "items": { + "$ref": "#/definitions/OutputDestinationSettings" + }, + "type": "array", + "uniqueItems": false + }, + "SrtSettings": { + "items": { + "$ref": "#/definitions/SrtOutputDestinationSettings" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "OutputDestinationSettings": { + "additionalProperties": false, + "properties": { + "PasswordParam": { + "type": "string" + }, + "StreamName": { + "type": "string" + }, + "Url": { + "type": "string" + }, + "Username": { + "type": "string" + } + }, + "type": "object" + }, + "OutputGroup": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "OutputGroupSettings": { + "$ref": "#/definitions/OutputGroupSettings" + }, + "Outputs": { + "items": { + "$ref": "#/definitions/Output" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "OutputGroupSettings": { + "additionalProperties": false, + "properties": { + "ArchiveGroupSettings": { + "$ref": "#/definitions/ArchiveGroupSettings" + }, + "CmafIngestGroupSettings": { + "$ref": "#/definitions/CmafIngestGroupSettings" + }, + "FrameCaptureGroupSettings": { + "$ref": "#/definitions/FrameCaptureGroupSettings" + }, + "HlsGroupSettings": { + "$ref": "#/definitions/HlsGroupSettings" + }, + "MediaPackageGroupSettings": { + "$ref": "#/definitions/MediaPackageGroupSettings" + }, + "MsSmoothGroupSettings": { + "$ref": "#/definitions/MsSmoothGroupSettings" + }, + "MultiplexGroupSettings": { + "$ref": "#/definitions/MultiplexGroupSettings" + }, + "RtmpGroupSettings": { + "$ref": "#/definitions/RtmpGroupSettings" + }, + "SrtGroupSettings": { + "$ref": "#/definitions/SrtGroupSettings" + }, + "UdpGroupSettings": { + "$ref": "#/definitions/UdpGroupSettings" + } + }, + "type": "object" + }, + "OutputLocationRef": { + "additionalProperties": false, + "properties": { + "DestinationRefId": { + "type": "string" + } + }, + "type": "object" + }, + "OutputLockingSettings": { + "additionalProperties": false, + "properties": { + "EpochLockingSettings": { + "$ref": "#/definitions/EpochLockingSettings" + }, + "PipelineLockingSettings": { + "$ref": "#/definitions/PipelineLockingSettings" + } + }, + "type": "object" + }, + "OutputSettings": { + "additionalProperties": false, + "properties": { + "ArchiveOutputSettings": { + "$ref": "#/definitions/ArchiveOutputSettings" + }, + "CmafIngestOutputSettings": { + "$ref": "#/definitions/CmafIngestOutputSettings" + }, + "FrameCaptureOutputSettings": { + "$ref": "#/definitions/FrameCaptureOutputSettings" + }, + "HlsOutputSettings": { + "$ref": "#/definitions/HlsOutputSettings" + }, + "MediaPackageOutputSettings": { + "$ref": "#/definitions/MediaPackageOutputSettings" + }, + "MsSmoothOutputSettings": { + "$ref": "#/definitions/MsSmoothOutputSettings" + }, + "MultiplexOutputSettings": { + "$ref": "#/definitions/MultiplexOutputSettings" + }, + "RtmpOutputSettings": { + "$ref": "#/definitions/RtmpOutputSettings" + }, + "SrtOutputSettings": { + "$ref": "#/definitions/SrtOutputSettings" + }, + "UdpOutputSettings": { + "$ref": "#/definitions/UdpOutputSettings" + } + }, + "type": "object" + }, + "PassThroughSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "PipelineLockingSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "RawSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "Rec601Settings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "Rec709Settings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "RemixSettings": { + "additionalProperties": false, + "properties": { + "ChannelMappings": { + "items": { + "$ref": "#/definitions/AudioChannelMapping" + }, + "type": "array", + "uniqueItems": false + }, + "ChannelsIn": { + "type": "integer" + }, + "ChannelsOut": { + "type": "integer" + } + }, + "type": "object" + }, + "RtmpCaptionInfoDestinationSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "RtmpGroupSettings": { + "additionalProperties": false, + "properties": { + "AdMarkers": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "AuthenticationScheme": { + "type": "string" + }, + "CacheFullBehavior": { + "type": "string" + }, + "CacheLength": { + "type": "integer" + }, + "CaptionData": { + "type": "string" + }, + "IncludeFillerNalUnits": { + "type": "string" + }, + "InputLossAction": { + "type": "string" + }, + "RestartDelay": { + "type": "integer" + } + }, + "type": "object" + }, + "RtmpOutputSettings": { + "additionalProperties": false, + "properties": { + "CertificateMode": { + "type": "string" + }, + "ConnectionRetryInterval": { + "type": "integer" + }, + "Destination": { + "$ref": "#/definitions/OutputLocationRef" + }, + "NumRetries": { + "type": "integer" + } + }, + "type": "object" + }, + "Scte20PlusEmbeddedDestinationSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "Scte20SourceSettings": { + "additionalProperties": false, + "properties": { + "Convert608To708": { + "type": "string" + }, + "Source608ChannelNumber": { + "type": "integer" + } + }, + "type": "object" + }, + "Scte27DestinationSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "Scte27SourceSettings": { + "additionalProperties": false, + "properties": { + "OcrLanguage": { + "type": "string" + }, + "Pid": { + "type": "integer" + } + }, + "type": "object" + }, + "Scte35SpliceInsert": { + "additionalProperties": false, + "properties": { + "AdAvailOffset": { + "type": "integer" + }, + "NoRegionalBlackoutFlag": { + "type": "string" + }, + "WebDeliveryAllowedFlag": { + "type": "string" + } + }, + "type": "object" + }, + "Scte35TimeSignalApos": { + "additionalProperties": false, + "properties": { + "AdAvailOffset": { + "type": "integer" + }, + "NoRegionalBlackoutFlag": { + "type": "string" + }, + "WebDeliveryAllowedFlag": { + "type": "string" + } + }, + "type": "object" + }, + "SmpteTtDestinationSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "SrtGroupSettings": { + "additionalProperties": false, + "properties": { + "InputLossAction": { + "type": "string" + } + }, + "type": "object" + }, + "SrtOutputDestinationSettings": { + "additionalProperties": false, + "properties": { + "EncryptionPassphraseSecretArn": { + "type": "string" + }, + "StreamId": { + "type": "string" + }, + "Url": { + "type": "string" + } + }, + "type": "object" + }, + "SrtOutputSettings": { + "additionalProperties": false, + "properties": { + "BufferMsec": { + "type": "integer" + }, + "ContainerSettings": { + "$ref": "#/definitions/UdpContainerSettings" + }, + "Destination": { + "$ref": "#/definitions/OutputLocationRef" + }, + "EncryptionType": { + "type": "string" + }, + "Latency": { + "type": "integer" + } + }, + "type": "object" + }, + "StandardHlsSettings": { + "additionalProperties": false, + "properties": { + "AudioRenditionSets": { + "type": "string" + }, + "M3u8Settings": { + "$ref": "#/definitions/M3u8Settings" + } + }, + "type": "object" + }, + "StaticKeySettings": { + "additionalProperties": false, + "properties": { + "KeyProviderServer": { + "$ref": "#/definitions/InputLocation" + }, + "StaticKeyValue": { + "type": "string" + } + }, + "type": "object" + }, + "TeletextDestinationSettings": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "TeletextSourceSettings": { + "additionalProperties": false, + "properties": { + "OutputRectangle": { + "$ref": "#/definitions/CaptionRectangle" + }, + "PageNumber": { + "type": "string" + } + }, + "type": "object" + }, + "TemporalFilterSettings": { + "additionalProperties": false, + "properties": { + "PostFilterSharpening": { + "type": "string" + }, + "Strength": { + "type": "string" + } + }, + "type": "object" + }, + "ThumbnailConfiguration": { + "additionalProperties": false, + "properties": { + "State": { + "type": "string" + } + }, + "type": "object" + }, + "TimecodeBurninSettings": { + "additionalProperties": false, + "properties": { + "FontSize": { + "type": "string" + }, + "Position": { + "type": "string" + }, + "Prefix": { + "type": "string" + } + }, + "type": "object" + }, + "TimecodeConfig": { + "additionalProperties": false, + "properties": { + "Source": { + "type": "string" + }, + "SyncThreshold": { + "type": "integer" + } + }, + "type": "object" + }, + "TtmlDestinationSettings": { + "additionalProperties": false, + "properties": { + "StyleControl": { + "type": "string" + } + }, + "type": "object" + }, + "UdpContainerSettings": { + "additionalProperties": false, + "properties": { + "M2tsSettings": { + "$ref": "#/definitions/M2tsSettings" + } + }, + "type": "object" + }, + "UdpGroupSettings": { + "additionalProperties": false, + "properties": { + "InputLossAction": { + "type": "string" + }, + "TimedMetadataId3Frame": { + "type": "string" + }, + "TimedMetadataId3Period": { + "type": "integer" + } + }, + "type": "object" + }, + "UdpOutputSettings": { + "additionalProperties": false, + "properties": { + "BufferMsec": { + "type": "integer" + }, + "ContainerSettings": { + "$ref": "#/definitions/UdpContainerSettings" + }, + "Destination": { + "$ref": "#/definitions/OutputLocationRef" + }, + "FecOutputSettings": { + "$ref": "#/definitions/FecOutputSettings" + } + }, + "type": "object" + }, + "VideoBlackFailoverSettings": { + "additionalProperties": false, + "properties": { + "BlackDetectThreshold": { + "type": "number" + }, + "VideoBlackThresholdMsec": { + "type": "integer" + } + }, + "type": "object" + }, + "VideoCodecSettings": { + "additionalProperties": false, + "properties": { + "Av1Settings": { + "$ref": "#/definitions/Av1Settings" + }, + "FrameCaptureSettings": { + "$ref": "#/definitions/FrameCaptureSettings" + }, + "H264Settings": { + "$ref": "#/definitions/H264Settings" + }, + "H265Settings": { + "$ref": "#/definitions/H265Settings" + }, + "Mpeg2Settings": { + "$ref": "#/definitions/Mpeg2Settings" + } + }, + "type": "object" + }, + "VideoDescription": { + "additionalProperties": false, + "properties": { + "CodecSettings": { + "$ref": "#/definitions/VideoCodecSettings" + }, + "Height": { + "type": "integer" + }, + "Name": { + "type": "string" + }, + "RespondToAfd": { + "type": "string" + }, + "ScalingBehavior": { + "type": "string" + }, + "Sharpness": { + "type": "integer" + }, + "Width": { + "type": "integer" + } + }, + "type": "object" + }, + "VideoSelector": { + "additionalProperties": false, + "properties": { + "ColorSpace": { + "type": "string" + }, + "ColorSpaceSettings": { + "$ref": "#/definitions/VideoSelectorColorSpaceSettings" + }, + "ColorSpaceUsage": { + "type": "string" + }, + "SelectorSettings": { + "$ref": "#/definitions/VideoSelectorSettings" + } + }, + "type": "object" + }, + "VideoSelectorColorSpaceSettings": { + "additionalProperties": false, + "properties": { + "Hdr10Settings": { + "$ref": "#/definitions/Hdr10Settings" + } + }, + "type": "object" + }, + "VideoSelectorPid": { + "additionalProperties": false, + "properties": { + "Pid": { + "type": "integer" + } + }, + "type": "object" + }, + "VideoSelectorProgramId": { + "additionalProperties": false, + "properties": { + "ProgramId": { + "type": "integer" + } + }, + "type": "object" + }, + "VideoSelectorSettings": { + "additionalProperties": false, + "properties": { + "VideoSelectorPid": { + "$ref": "#/definitions/VideoSelectorPid" + }, + "VideoSelectorProgramId": { + "$ref": "#/definitions/VideoSelectorProgramId" + } + }, + "type": "object" + }, + "VpcOutputSettings": { + "additionalProperties": false, + "properties": { + "PublicAddressAllocationIds": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "SecurityGroupIds": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "SubnetIds": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "WavSettings": { + "additionalProperties": false, + "properties": { + "BitDepth": { + "type": "number" + }, + "CodingMode": { + "type": "string" + }, + "SampleRate": { + "type": "number" + } + }, + "type": "object" + }, + "WebvttDestinationSettings": { + "additionalProperties": false, + "properties": { + "StyleControl": { + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "AnywhereSettings": { + "$ref": "#/definitions/AnywhereSettings" + }, + "Arn": { + "type": "string" + }, + "CdiInputSpecification": { + "$ref": "#/definitions/CdiInputSpecification" + }, + "ChannelClass": { + "type": "string" + }, + "Destinations": { + "items": { + "$ref": "#/definitions/OutputDestination" + }, + "type": "array", + "uniqueItems": false + }, + "EncoderSettings": { + "$ref": "#/definitions/EncoderSettings" + }, + "Id": { + "type": "string" + }, + "InputAttachments": { + "items": { + "$ref": "#/definitions/InputAttachment" + }, + "type": "array", + "uniqueItems": false + }, + "InputSpecification": { + "$ref": "#/definitions/InputSpecification" + }, + "Inputs": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "LogLevel": { + "type": "string" + }, + "Maintenance": { + "$ref": "#/definitions/MaintenanceCreateSettings" + }, + "Name": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "Tags": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "Vpc": { + "$ref": "#/definitions/VpcOutputSettings" + } + }, + "readOnlyProperties": [ + "/properties/Inputs", + "/properties/Id", + "/properties/Arn" + ], + "typeName": "AWS::MediaLive::Channel" +} diff --git a/src/cfnlint/data/schemas/providers/eu_west_1/aws-medialive-input.json b/src/cfnlint/data/schemas/providers/eu_west_1/aws-medialive-input.json new file mode 100644 index 0000000000..da0d73a7e8 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_west_1/aws-medialive-input.json @@ -0,0 +1,249 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Vpc", + "/properties/Type", + "/properties/InputNetworkLocation" + ], + "definitions": { + "InputDestinationRequest": { + "additionalProperties": false, + "properties": { + "Network": { + "type": "string" + }, + "NetworkRoutes": { + "items": { + "$ref": "#/definitions/InputRequestDestinationRoute" + }, + "type": "array", + "uniqueItems": false + }, + "StaticIpAddress": { + "type": "string" + }, + "StreamName": { + "type": "string" + } + }, + "type": "object" + }, + "InputDeviceSettings": { + "additionalProperties": false, + "properties": { + "Id": { + "type": "string" + } + }, + "type": "object" + }, + "InputRequestDestinationRoute": { + "additionalProperties": false, + "properties": { + "Cidr": { + "type": "string" + }, + "Gateway": { + "type": "string" + } + }, + "type": "object" + }, + "InputSourceRequest": { + "additionalProperties": false, + "properties": { + "PasswordParam": { + "type": "string" + }, + "Url": { + "type": "string" + }, + "Username": { + "type": "string" + } + }, + "type": "object" + }, + "InputVpcRequest": { + "additionalProperties": false, + "properties": { + "SecurityGroupIds": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "SubnetIds": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "MediaConnectFlowRequest": { + "additionalProperties": false, + "properties": { + "FlowArn": { + "type": "string" + } + }, + "type": "object" + }, + "MulticastSettingsCreateRequest": { + "additionalProperties": false, + "properties": { + "Sources": { + "items": { + "$ref": "#/definitions/MulticastSourceCreateRequest" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "MulticastSourceCreateRequest": { + "additionalProperties": false, + "properties": { + "SourceIp": { + "type": "string" + }, + "Url": { + "type": "string" + } + }, + "type": "object" + }, + "SrtCallerDecryptionRequest": { + "additionalProperties": false, + "properties": { + "Algorithm": { + "type": "string" + }, + "PassphraseSecretArn": { + "type": "string" + } + }, + "type": "object" + }, + "SrtCallerSourceRequest": { + "additionalProperties": false, + "properties": { + "Decryption": { + "$ref": "#/definitions/SrtCallerDecryptionRequest" + }, + "MinimumLatency": { + "type": "integer" + }, + "SrtListenerAddress": { + "type": "string" + }, + "SrtListenerPort": { + "type": "string" + }, + "StreamId": { + "type": "string" + } + }, + "type": "object" + }, + "SrtSettingsRequest": { + "additionalProperties": false, + "properties": { + "SrtCallerSources": { + "items": { + "$ref": "#/definitions/SrtCallerSourceRequest" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "Arn": { + "type": "string" + }, + "Destinations": { + "items": { + "$ref": "#/definitions/InputDestinationRequest" + }, + "type": "array", + "uniqueItems": false + }, + "Id": { + "type": "string" + }, + "InputDevices": { + "items": { + "$ref": "#/definitions/InputDeviceSettings" + }, + "type": "array", + "uniqueItems": false + }, + "InputNetworkLocation": { + "type": "string" + }, + "InputSecurityGroups": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "MediaConnectFlows": { + "items": { + "$ref": "#/definitions/MediaConnectFlowRequest" + }, + "type": "array", + "uniqueItems": false + }, + "MulticastSettings": { + "$ref": "#/definitions/MulticastSettingsCreateRequest" + }, + "Name": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "Sources": { + "items": { + "$ref": "#/definitions/InputSourceRequest" + }, + "type": "array", + "uniqueItems": false + }, + "SrtSettings": { + "$ref": "#/definitions/SrtSettingsRequest" + }, + "Tags": { + "format": "json", + "type": [ + "object", + "string" + ] + }, + "Type": { + "type": "string" + }, + "Vpc": { + "$ref": "#/definitions/InputVpcRequest" + } + }, + "readOnlyProperties": [ + "/properties/Id", + "/properties/Arn" + ], + "typeName": "AWS::MediaLive::Input" +} diff --git a/src/cfnlint/data/schemas/providers/eu_west_1/aws-networkfirewall-firewallpolicy.json b/src/cfnlint/data/schemas/providers/eu_west_1/aws-networkfirewall-firewallpolicy.json new file mode 100644 index 0000000000..973b595561 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_west_1/aws-networkfirewall-firewallpolicy.json @@ -0,0 +1,332 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/FirewallPolicyName" + ], + "definitions": { + "ActionDefinition": { + "additionalProperties": false, + "properties": { + "PublishMetricAction": { + "$ref": "#/definitions/PublishMetricAction" + } + }, + "type": "object" + }, + "CustomAction": { + "additionalProperties": false, + "properties": { + "ActionDefinition": { + "$ref": "#/definitions/ActionDefinition" + }, + "ActionName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + } + }, + "required": [ + "ActionName", + "ActionDefinition" + ], + "type": "object" + }, + "Dimension": { + "additionalProperties": false, + "properties": { + "Value": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-_ ]+$", + "type": "string" + } + }, + "required": [ + "Value" + ], + "type": "object" + }, + "FirewallPolicy": { + "additionalProperties": false, + "properties": { + "PolicyVariables": { + "additionalProperties": false, + "properties": { + "RuleVariables": { + "$ref": "#/definitions/RuleVariables" + } + }, + "type": "object" + }, + "StatefulDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatefulEngineOptions": { + "$ref": "#/definitions/StatefulEngineOptions" + }, + "StatefulRuleGroupReferences": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/StatefulRuleGroupReference" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessCustomActions": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/CustomAction" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessFragmentDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessRuleGroupReferences": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/StatelessRuleGroupReference" + }, + "type": "array", + "uniqueItems": false + }, + "TLSInspectionConfigurationArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "StatelessDefaultActions", + "StatelessFragmentDefaultActions" + ], + "type": "object" + }, + "IPSet": { + "additionalProperties": false, + "properties": { + "Definition": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/VariableDefinition" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "OverrideAction": { + "enum": [ + "DROP_TO_ALERT" + ], + "type": "string" + }, + "Priority": { + "maximum": 65535, + "minimum": 1, + "type": "integer" + }, + "PublishMetricAction": { + "additionalProperties": false, + "properties": { + "Dimensions": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/Dimension" + }, + "type": "array", + "uniqueItems": false + } + }, + "required": [ + "Dimensions" + ], + "type": "object" + }, + "ResourceArn": { + "maxLength": 256, + "minLength": 1, + "pattern": "^(arn:aws.*)$", + "type": "string" + }, + "RuleOrder": { + "enum": [ + "DEFAULT_ACTION_ORDER", + "STRICT_ORDER" + ], + "type": "string" + }, + "RuleVariables": { + "additionalProperties": false, + "patternProperties": { + "^[A-Za-z0-9_]{1,32}$": { + "$ref": "#/definitions/IPSet" + } + }, + "type": "object" + }, + "StatefulEngineOptions": { + "additionalProperties": false, + "properties": { + "RuleOrder": { + "$ref": "#/definitions/RuleOrder" + }, + "StreamExceptionPolicy": { + "$ref": "#/definitions/StreamExceptionPolicy" + } + }, + "type": "object" + }, + "StatefulRuleGroupOverride": { + "additionalProperties": false, + "properties": { + "Action": { + "$ref": "#/definitions/OverrideAction" + } + }, + "type": "object" + }, + "StatefulRuleGroupReference": { + "additionalProperties": false, + "properties": { + "Override": { + "$ref": "#/definitions/StatefulRuleGroupOverride" + }, + "Priority": { + "$ref": "#/definitions/Priority" + }, + "ResourceArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "ResourceArn" + ], + "type": "object" + }, + "StatelessRuleGroupReference": { + "additionalProperties": false, + "properties": { + "Priority": { + "$ref": "#/definitions/Priority" + }, + "ResourceArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "ResourceArn", + "Priority" + ], + "type": "object" + }, + "StreamExceptionPolicy": { + "enum": [ + "DROP", + "CONTINUE", + "REJECT" + ], + "type": "string" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "^.*$", + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 0, + "pattern": "^.*$", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "VariableDefinition": { + "minLength": 1, + "pattern": "^.*$", + "type": "string" + } + }, + "primaryIdentifier": [ + "/properties/FirewallPolicyArn" + ], + "properties": { + "Description": { + "maxLength": 512, + "minLength": 1, + "pattern": "^.*$", + "type": "string" + }, + "FirewallPolicy": { + "$ref": "#/definitions/FirewallPolicy" + }, + "FirewallPolicyArn": { + "$ref": "#/definitions/ResourceArn" + }, + "FirewallPolicyId": { + "maxLength": 36, + "minLength": 36, + "pattern": "^([0-9a-f]{8})-([0-9a-f]{4}-){3}([0-9a-f]{12})$", + "type": "string" + }, + "FirewallPolicyName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-]+$", + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + } + }, + "readOnlyProperties": [ + "/properties/FirewallPolicyArn", + "/properties/FirewallPolicyId" + ], + "required": [ + "FirewallPolicyName", + "FirewallPolicy" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-networkfirewall.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::NetworkFirewall::FirewallPolicy" +} diff --git a/src/cfnlint/data/schemas/providers/eu_west_1/aws-route53resolver-resolverrule.json b/src/cfnlint/data/schemas/providers/eu_west_1/aws-route53resolver-resolverrule.json new file mode 100644 index 0000000000..7b24325ca2 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_west_1/aws-route53resolver-resolverrule.json @@ -0,0 +1,130 @@ +{ + "additionalProperties": false, + "conditionalCreateOnlyProperties": [ + "/properties/DomainName" + ], + "createOnlyProperties": [ + "/properties/RuleType" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + }, + "TargetAddress": { + "additionalProperties": false, + "properties": { + "Ip": { + "type": "string" + }, + "Ipv6": { + "type": "string" + }, + "Port": { + "maxLength": 65535, + "minLength": 0, + "type": "string" + }, + "Protocol": { + "enum": [ + "Do53", + "DoH" + ], + "type": "string" + }, + "ServerNameIndication": { + "maxLength": 255, + "minLength": 0, + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/ResolverRuleId" + ], + "properties": { + "Arn": { + "type": "string" + }, + "DomainName": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "Name": { + "maxLength": 64, + "minLength": 0, + "type": "string" + }, + "ResolverEndpointId": { + "maxLength": 64, + "minLength": 1, + "type": "string" + }, + "ResolverRuleId": { + "type": "string" + }, + "RuleType": { + "enum": [ + "FORWARD", + "SYSTEM", + "RECURSIVE", + "DELEGATE" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": false + }, + "TargetIps": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TargetAddress" + }, + "type": "array", + "uniqueItems": false + } + }, + "propertyTransform": { + "/properties/DomainName": "$join([DomainName, \".\"]) $OR DomainName" + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/ResolverRuleId" + ], + "required": [ + "RuleType" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-route53resolver.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Route53Resolver::ResolverRule" +} diff --git a/src/cfnlint/data/schemas/providers/eu_west_1/aws-sagemaker-imageversion.json b/src/cfnlint/data/schemas/providers/eu_west_1/aws-sagemaker-imageversion.json new file mode 100644 index 0000000000..3b09dc9bad --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_west_1/aws-sagemaker-imageversion.json @@ -0,0 +1,171 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/ImageName", + "/properties/BaseImage" + ], + "definitions": { + "Alias": { + "maxLength": 128, + "minLength": 1, + "pattern": "(?!^[.-])^([a-zA-Z0-9-_.]+)$", + "type": "string" + }, + "Aliases": { + "items": { + "$ref": "#/definitions/Alias" + }, + "type": "array" + }, + "BaseImage": { + "maxLength": 255, + "minLength": 1, + "pattern": ".+", + "type": "string" + }, + "ContainerImage": { + "maxLength": 255, + "minLength": 1, + "pattern": ".+", + "type": "string" + }, + "Horovod": { + "type": "boolean" + }, + "ImageArn": { + "maxLength": 256, + "minLength": 1, + "pattern": "^arn:aws(-[\\w]+)*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:image\\/[a-zA-Z0-9]([-.]?[a-zA-Z0-9])*$", + "type": "string" + }, + "ImageName": { + "maxLength": 63, + "minLength": 1, + "pattern": "^[A-Za-z0-9]([-.]?[A-Za-z0-9])*$", + "type": "string" + }, + "ImageVersionArn": { + "maxLength": 256, + "minLength": 1, + "pattern": "^arn:aws(-[\\w]+)*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:image-version\\/[a-zA-Z0-9]([-.]?[a-zA-Z0-9])*\\/[0-9]+$", + "type": "string" + }, + "JobType": { + "enum": [ + "TRAINING", + "INFERENCE", + "NOTEBOOK_KERNEL" + ], + "type": "string" + }, + "MLFramework": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z]+ ?\\d+\\.\\d+(\\.\\d+)?$", + "type": "string" + }, + "Processor": { + "enum": [ + "CPU", + "GPU" + ], + "type": "string" + }, + "ProgrammingLang": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z]+ ?\\d+\\.\\d+(\\.\\d+)?$", + "type": "string" + }, + "ReleaseNotes": { + "maxLength": 255, + "minLength": 1, + "pattern": ".*", + "type": "string" + }, + "VendorGuidance": { + "enum": [ + "NOT_PROVIDED", + "STABLE", + "TO_BE_ARCHIVED", + "ARCHIVED" + ], + "type": "string" + }, + "Version": { + "minimum": 1, + "type": "integer" + } + }, + "primaryIdentifier": [ + "/properties/ImageVersionArn" + ], + "properties": { + "Alias": { + "$ref": "#/definitions/Alias" + }, + "Aliases": { + "$ref": "#/definitions/Aliases" + }, + "BaseImage": { + "$ref": "#/definitions/BaseImage" + }, + "ContainerImage": { + "$ref": "#/definitions/ContainerImage" + }, + "Horovod": { + "$ref": "#/definitions/Horovod" + }, + "ImageArn": { + "$ref": "#/definitions/ImageArn" + }, + "ImageName": { + "$ref": "#/definitions/ImageName" + }, + "ImageVersionArn": { + "$ref": "#/definitions/ImageVersionArn" + }, + "JobType": { + "$ref": "#/definitions/JobType" + }, + "MLFramework": { + "$ref": "#/definitions/MLFramework" + }, + "Processor": { + "$ref": "#/definitions/Processor" + }, + "ProgrammingLang": { + "$ref": "#/definitions/ProgrammingLang" + }, + "ReleaseNotes": { + "$ref": "#/definitions/ReleaseNotes" + }, + "VendorGuidance": { + "$ref": "#/definitions/VendorGuidance" + }, + "Version": { + "$ref": "#/definitions/Version" + } + }, + "readOnlyProperties": [ + "/properties/ImageVersionArn", + "/properties/ImageArn", + "/properties/ContainerImage" + ], + "required": [ + "ImageName", + "BaseImage" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sagemaker", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": false, + "tagUpdatable": false, + "taggable": false + }, + "typeName": "AWS::SageMaker::ImageVersion", + "writeOnlyProperties": [ + "/properties/Aliases", + "/properties/Alias" + ] +} diff --git a/src/cfnlint/data/schemas/providers/eu_west_1/aws-workspacesweb-identityprovider.json b/src/cfnlint/data/schemas/providers/eu_west_1/aws-workspacesweb-identityprovider.json deleted file mode 100644 index 5cc12fe4b3..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_west_1/aws-workspacesweb-identityprovider.json +++ /dev/null @@ -1,79 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/PortalArn" - ], - "definitions": { - "IdentityProviderDetails": { - "additionalProperties": false, - "patternProperties": { - "^[\\s\\S]*$": { - "maxLength": 131072, - "minLength": 0, - "pattern": "^[\\s\\S]*$", - "type": "string" - } - }, - "type": "object" - }, - "IdentityProviderType": { - "enum": [ - "SAML", - "Facebook", - "Google", - "LoginWithAmazon", - "SignInWithApple", - "OIDC" - ], - "type": "string" - } - }, - "primaryIdentifier": [ - "/properties/IdentityProviderArn" - ], - "properties": { - "IdentityProviderArn": { - "maxLength": 2048, - "minLength": 20, - "pattern": "^arn:[\\w+=\\/,.@-]+:[a-zA-Z0-9\\-]+:[a-zA-Z0-9\\-]*:[a-zA-Z0-9]{1,12}:[a-zA-Z]+(\\/[a-fA-F0-9\\-]{36}){2,}$", - "type": "string" - }, - "IdentityProviderDetails": { - "$ref": "#/definitions/IdentityProviderDetails" - }, - "IdentityProviderName": { - "maxLength": 32, - "minLength": 1, - "pattern": "^[^_][\\p{L}\\p{M}\\p{S}\\p{N}\\p{P}][^_]+$", - "type": "string" - }, - "IdentityProviderType": { - "$ref": "#/definitions/IdentityProviderType" - }, - "PortalArn": { - "maxLength": 2048, - "minLength": 20, - "pattern": "^arn:[\\w+=\\/,.@-]+:[a-zA-Z0-9\\-]+:[a-zA-Z0-9\\-]*:[a-zA-Z0-9]{1,12}:[a-zA-Z]+(\\/[a-fA-F0-9\\-]{36})+$", - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/IdentityProviderArn" - ], - "required": [ - "IdentityProviderDetails", - "IdentityProviderName", - "IdentityProviderType" - ], - "sourceUrl": "https://github.com/shivankgoel/aws-cloudformation-resource-providers-workspaces-web", - "tagging": { - "cloudFormationSystemTags": false, - "tagOnCreate": false, - "tagUpdatable": false, - "taggable": false - }, - "typeName": "AWS::WorkSpacesWeb::IdentityProvider", - "writeOnlyProperties": [ - "/properties/PortalArn" - ] -} diff --git a/src/cfnlint/data/schemas/providers/eu_west_1/aws-workspacesweb-usersettings.json b/src/cfnlint/data/schemas/providers/eu_west_1/aws-workspacesweb-usersettings.json deleted file mode 100644 index b27367123f..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_west_1/aws-workspacesweb-usersettings.json +++ /dev/null @@ -1,194 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/AdditionalEncryptionContext", - "/properties/CustomerManagedKey" - ], - "definitions": { - "CookieSpecification": { - "additionalProperties": false, - "properties": { - "Domain": { - "maxLength": 253, - "minLength": 0, - "pattern": "^(\\.?)(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\\.)*[a-z0-9][a-z0-9-]{0,61}[a-z0-9]$", - "type": "string" - }, - "Name": { - "maxLength": 4096, - "minLength": 0, - "type": "string" - }, - "Path": { - "maxLength": 2000, - "minLength": 0, - "pattern": "^/(\\S)*$", - "type": "string" - } - }, - "required": [ - "Domain" - ], - "type": "object" - }, - "CookieSynchronizationConfiguration": { - "additionalProperties": false, - "properties": { - "Allowlist": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/CookieSpecification" - }, - "maxItems": 10, - "minItems": 0, - "type": "array" - }, - "Blocklist": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/CookieSpecification" - }, - "maxItems": 10, - "minItems": 0, - "type": "array" - } - }, - "required": [ - "Allowlist" - ], - "type": "object" - }, - "EnabledType": { - "enum": [ - "Disabled", - "Enabled" - ], - "type": "string" - }, - "EncryptionContextMap": { - "additionalProperties": false, - "patternProperties": { - "^[\\s\\S]*$": { - "maxLength": 131072, - "minLength": 0, - "pattern": "^[\\s\\S]*$", - "type": "string" - } - }, - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "pattern": "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$", - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "pattern": "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$", - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/UserSettingsArn" - ], - "properties": { - "AdditionalEncryptionContext": { - "$ref": "#/definitions/EncryptionContextMap" - }, - "AssociatedPortalArns": { - "insertionOrder": false, - "items": { - "maxLength": 2048, - "minLength": 20, - "pattern": "^arn:[\\w+=\\/,.@-]+:[a-zA-Z0-9\\-]+:[a-zA-Z0-9\\-]*:[a-zA-Z0-9]{1,12}:[a-zA-Z]+(\\/[a-fA-F0-9\\-]{36})+$", - "type": "string" - }, - "type": "array" - }, - "CookieSynchronizationConfiguration": { - "$ref": "#/definitions/CookieSynchronizationConfiguration" - }, - "CopyAllowed": { - "$ref": "#/definitions/EnabledType" - }, - "CustomerManagedKey": { - "maxLength": 2048, - "minLength": 20, - "pattern": "^arn:[\\w+=\\/,.@-]+:kms:[a-zA-Z0-9\\-]*:[a-zA-Z0-9]{1,12}:key\\/[a-zA-Z0-9-]+$", - "type": "string" - }, - "DeepLinkAllowed": { - "$ref": "#/definitions/EnabledType" - }, - "DisconnectTimeoutInMinutes": { - "default": null, - "maximum": 600, - "minimum": 1, - "type": "number" - }, - "DownloadAllowed": { - "$ref": "#/definitions/EnabledType" - }, - "IdleDisconnectTimeoutInMinutes": { - "default": null, - "maximum": 60, - "minimum": 0, - "type": "number" - }, - "PasteAllowed": { - "$ref": "#/definitions/EnabledType" - }, - "PrintAllowed": { - "$ref": "#/definitions/EnabledType" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 200, - "minItems": 0, - "type": "array" - }, - "UploadAllowed": { - "$ref": "#/definitions/EnabledType" - }, - "UserSettingsArn": { - "maxLength": 2048, - "minLength": 20, - "pattern": "^arn:[\\w+=\\/,.@-]+:[a-zA-Z0-9\\-]+:[a-zA-Z0-9\\-]*:[a-zA-Z0-9]{1,12}:[a-zA-Z]+(\\/[a-fA-F0-9\\-]{36})+$", - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/AssociatedPortalArns", - "/properties/UserSettingsArn" - ], - "required": [ - "CopyAllowed", - "DownloadAllowed", - "PasteAllowed", - "PrintAllowed", - "UploadAllowed" - ], - "tagging": { - "cloudFormationSystemTags": false, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::WorkSpacesWeb::UserSettings" -} diff --git a/src/cfnlint/data/schemas/providers/eu_west_2/__init__.py b/src/cfnlint/data/schemas/providers/eu_west_2/__init__.py index d778236ad9..97a05e7ce2 100644 --- a/src/cfnlint/data/schemas/providers/eu_west_2/__init__.py +++ b/src/cfnlint/data/schemas/providers/eu_west_2/__init__.py @@ -1589,9 +1589,7 @@ "aws-ecs-cluster.json", "aws-ecs-clustercapacityproviderassociations.json", "aws-ecs-primarytaskset.json", - "aws-ecs-service.json", "aws-ecs-taskdefinition.json", - "aws-ecs-taskset.json", "aws-efs-accesspoint.json", "aws-efs-filesystem.json", "aws-efs-mounttarget.json", @@ -1789,7 +1787,6 @@ "aws-kendra-datasource.json", "aws-kendra-faq.json", "aws-kendra-index.json", - "aws-kinesis-stream.json", "aws-kinesis-streamconsumer.json", "aws-kinesisanalytics-application.json", "aws-kinesisanalytics-applicationoutput.json", @@ -1922,7 +1919,6 @@ "aws-neptunegraph-graph.json", "aws-neptunegraph-privategraphendpoint.json", "aws-networkfirewall-firewall.json", - "aws-networkfirewall-firewallpolicy.json", "aws-networkfirewall-loggingconfiguration.json", "aws-networkfirewall-rulegroup.json", "aws-networkfirewall-tlsinspectionconfiguration.json", @@ -2013,7 +2009,6 @@ "aws-ram-permission.json", "aws-ram-resourceshare.json", "aws-rds-customdbengineversion.json", - "aws-rds-dbcluster.json", "aws-rds-dbclusterparametergroup.json", "aws-rds-dbinstance.json", "aws-rds-dbparametergroup.json", @@ -2022,7 +2017,6 @@ "aws-rds-dbproxytargetgroup.json", "aws-rds-dbsecuritygroup.json", "aws-rds-dbsecuritygroupingress.json", - "aws-rds-dbsubnetgroup.json", "aws-rds-eventsubscription.json", "aws-rds-globalcluster.json", "aws-rds-integration.json", @@ -2071,7 +2065,6 @@ "aws-route53resolver-resolverendpoint.json", "aws-route53resolver-resolverqueryloggingconfig.json", "aws-route53resolver-resolverqueryloggingconfigassociation.json", - "aws-route53resolver-resolverrule.json", "aws-route53resolver-resolverruleassociation.json", "aws-rum-appmonitor.json", "aws-s3-accessgrant.json", @@ -2099,6 +2092,7 @@ "aws-sagemaker-endpointconfig.json", "aws-sagemaker-featuregroup.json", "aws-sagemaker-image.json", + "aws-sagemaker-imageversion.json", "aws-sagemaker-inferencecomponent.json", "aws-sagemaker-inferenceexperiment.json", "aws-sagemaker-mlflowtrackingserver.json", diff --git a/src/cfnlint/data/schemas/providers/eu_west_2/aws-ecs-service.json b/src/cfnlint/data/schemas/providers/eu_west_2/aws-ecs-service.json new file mode 100644 index 0000000000..ba7baa1de3 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_west_2/aws-ecs-service.json @@ -0,0 +1,585 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/DeploymentController", + "/properties/LaunchType", + "/properties/Role", + "/properties/SchedulingStrategy", + "/properties/ServiceName" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "CapacityProviderStrategyItem": { + "additionalProperties": false, + "properties": { + "Base": { + "type": "integer" + }, + "CapacityProvider": { + "type": "string" + }, + "Weight": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentAlarms": { + "additionalProperties": false, + "properties": { + "AlarmNames": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "AlarmNames", + "Rollback", + "Enable" + ], + "type": "object" + }, + "DeploymentCircuitBreaker": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "Enable", + "Rollback" + ], + "type": "object" + }, + "DeploymentConfiguration": { + "additionalProperties": false, + "properties": { + "Alarms": { + "$ref": "#/definitions/DeploymentAlarms" + }, + "DeploymentCircuitBreaker": { + "$ref": "#/definitions/DeploymentCircuitBreaker" + }, + "MaximumPercent": { + "type": "integer" + }, + "MinimumHealthyPercent": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentController": { + "additionalProperties": false, + "properties": { + "Type": { + "enum": [ + "CODE_DEPLOY", + "ECS", + "EXTERNAL" + ], + "type": "string" + } + }, + "type": "object" + }, + "EBSTagSpecification": { + "additionalProperties": false, + "properties": { + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "ResourceType": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "ResourceType" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "LoadBalancerName": { + "type": "string" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "LogConfiguration": { + "additionalProperties": false, + "properties": { + "LogDriver": { + "type": "string" + }, + "Options": { + "additionalProperties": false, + "patternProperties": { + ".{1,}": { + "type": "string" + } + }, + "type": "object" + }, + "SecretOptions": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Secret" + }, + "type": "array" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsvpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "PlacementConstraint": { + "additionalProperties": false, + "properties": { + "Expression": { + "type": "string" + }, + "Type": { + "enum": [ + "distinctInstance", + "memberOf" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "PlacementStrategy": { + "additionalProperties": false, + "properties": { + "Field": { + "type": "string" + }, + "Type": { + "enum": [ + "binpack", + "random", + "spread" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "Secret": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "ValueFrom": { + "type": "string" + } + }, + "required": [ + "Name", + "ValueFrom" + ], + "type": "object" + }, + "ServiceConnectClientAlias": { + "additionalProperties": false, + "properties": { + "DnsName": { + "type": "string" + }, + "Port": { + "type": "integer" + } + }, + "required": [ + "Port" + ], + "type": "object" + }, + "ServiceConnectConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + }, + "LogConfiguration": { + "$ref": "#/definitions/LogConfiguration" + }, + "Namespace": { + "type": "string" + }, + "Services": { + "items": { + "$ref": "#/definitions/ServiceConnectService" + }, + "type": "array" + } + }, + "required": [ + "Enabled" + ], + "type": "object" + }, + "ServiceConnectService": { + "additionalProperties": false, + "properties": { + "ClientAliases": { + "items": { + "$ref": "#/definitions/ServiceConnectClientAlias" + }, + "type": "array" + }, + "DiscoveryName": { + "type": "string" + }, + "IngressPortOverride": { + "type": "integer" + }, + "PortName": { + "type": "string" + }, + "Timeout": { + "$ref": "#/definitions/TimeoutConfiguration" + }, + "Tls": { + "$ref": "#/definitions/ServiceConnectTlsConfiguration" + } + }, + "required": [ + "PortName" + ], + "type": "object" + }, + "ServiceConnectTlsCertificateAuthority": { + "additionalProperties": false, + "properties": { + "AwsPcaAuthorityArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceConnectTlsConfiguration": { + "additionalProperties": false, + "properties": { + "IssuerCertificateAuthority": { + "$ref": "#/definitions/ServiceConnectTlsCertificateAuthority" + }, + "KmsKey": { + "type": "string" + }, + "RoleArn": { + "type": "string" + } + }, + "required": [ + "IssuerCertificateAuthority" + ], + "type": "object" + }, + "ServiceManagedEBSVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "Encrypted": { + "type": "boolean" + }, + "FilesystemType": { + "type": "string" + }, + "Iops": { + "type": "integer" + }, + "KmsKeyId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SizeInGiB": { + "type": "integer" + }, + "SnapshotId": { + "type": "string" + }, + "TagSpecifications": { + "items": { + "$ref": "#/definitions/EBSTagSpecification" + }, + "type": "array" + }, + "Throughput": { + "type": "integer" + }, + "VolumeType": { + "type": "string" + } + }, + "required": [ + "RoleArn" + ], + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "ManagedEBSVolume": { + "$ref": "#/definitions/ServiceManagedEBSVolumeConfiguration" + }, + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + }, + "TimeoutConfiguration": { + "additionalProperties": false, + "properties": { + "IdleTimeoutSeconds": { + "type": "integer" + }, + "PerRequestTimeoutSeconds": { + "type": "integer" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/ServiceArn", + "/properties/Cluster" + ], + "properties": { + "CapacityProviderStrategy": { + "items": { + "$ref": "#/definitions/CapacityProviderStrategyItem" + }, + "type": "array" + }, + "Cluster": { + "type": "string" + }, + "DeploymentConfiguration": { + "$ref": "#/definitions/DeploymentConfiguration" + }, + "DeploymentController": { + "$ref": "#/definitions/DeploymentController" + }, + "DesiredCount": { + "type": "integer" + }, + "EnableECSManagedTags": { + "type": "boolean" + }, + "EnableExecuteCommand": { + "type": "boolean" + }, + "HealthCheckGracePeriodSeconds": { + "type": "integer" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE", + "EXTERNAL" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "Name": { + "type": "string" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlacementConstraints": { + "items": { + "$ref": "#/definitions/PlacementConstraint" + }, + "type": "array" + }, + "PlacementStrategies": { + "items": { + "$ref": "#/definitions/PlacementStrategy" + }, + "type": "array" + }, + "PlatformVersion": { + "default": "LATEST", + "type": "string" + }, + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "Role": { + "type": "string" + }, + "SchedulingStrategy": { + "enum": [ + "DAEMON", + "REPLICA" + ], + "type": "string" + }, + "ServiceArn": { + "type": "string" + }, + "ServiceConnectConfiguration": { + "$ref": "#/definitions/ServiceConnectConfiguration" + }, + "ServiceName": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + }, + "VolumeConfigurations": { + "items": { + "$ref": "#/definitions/ServiceVolumeConfiguration" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/ServiceArn", + "/properties/Name" + ], + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::Service", + "writeOnlyProperties": [ + "/properties/ServiceConnectConfiguration", + "/properties/VolumeConfigurations" + ] +} diff --git a/src/cfnlint/data/schemas/providers/eu_west_2/aws-ecs-taskset.json b/src/cfnlint/data/schemas/providers/eu_west_2/aws-ecs-taskset.json new file mode 100644 index 0000000000..3491488499 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_west_2/aws-ecs-taskset.json @@ -0,0 +1,191 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/ExternalId", + "/properties/LaunchType", + "/properties/LoadBalancers", + "/properties/NetworkConfiguration", + "/properties/PlatformVersion", + "/properties/Service", + "/properties/ServiceRegistries", + "/properties/TaskDefinition" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "maxItems": 5, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "maxItems": 16, + "type": "array" + } + }, + "required": [ + "Subnets" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsVpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "Scale": { + "additionalProperties": false, + "properties": { + "Unit": { + "enum": [ + "PERCENT" + ], + "type": "string" + }, + "Value": { + "maximum": 100, + "minimum": 0, + "type": "number" + } + }, + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Cluster", + "/properties/Service", + "/properties/Id" + ], + "properties": { + "Cluster": { + "type": "string" + }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlatformVersion": { + "type": "string" + }, + "Scale": { + "$ref": "#/definitions/Scale" + }, + "Service": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "Cluster", + "Service", + "TaskDefinition" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-ecs.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::TaskSet" +} diff --git a/src/cfnlint/data/schemas/providers/eu_west_2/aws-kinesis-stream.json b/src/cfnlint/data/schemas/providers/eu_west_2/aws-kinesis-stream.json new file mode 100644 index 0000000000..be1bc65c07 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_west_2/aws-kinesis-stream.json @@ -0,0 +1,133 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "StreamEncryption": { + "additionalProperties": false, + "properties": { + "EncryptionType": { + "enum": [ + "KMS" + ], + "type": "string" + }, + "KeyId": { + "anyOf": [ + { + "relationshipRef": { + "propertyPath": "/properties/Arn", + "typeName": "AWS::KMS::Key" + } + }, + { + "relationshipRef": { + "propertyPath": "/properties/KeyId", + "typeName": "AWS::KMS::Key" + } + } + ], + "maxLength": 2048, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "EncryptionType", + "KeyId" + ], + "type": "object" + }, + "StreamModeDetails": { + "additionalProperties": false, + "properties": { + "StreamMode": { + "enum": [ + "ON_DEMAND", + "PROVISIONED" + ], + "type": "string" + } + }, + "required": [ + "StreamMode" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Name" + ], + "properties": { + "Arn": { + "type": "string" + }, + "Name": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9_.-]+$", + "type": "string" + }, + "RetentionPeriodHours": { + "maximum": 8760, + "minimum": 1, + "type": "integer" + }, + "ShardCount": { + "maximum": 100000, + "minimum": 1, + "type": "integer" + }, + "StreamEncryption": { + "$ref": "#/definitions/StreamEncryption" + }, + "StreamModeDetails": { + "$ref": "#/definitions/StreamModeDetails", + "default": { + "StreamMode": "PROVISIONED" + } + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 50, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-kinesis.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Kinesis::Stream" +} diff --git a/src/cfnlint/data/schemas/providers/eu_west_2/aws-networkfirewall-firewallpolicy.json b/src/cfnlint/data/schemas/providers/eu_west_2/aws-networkfirewall-firewallpolicy.json new file mode 100644 index 0000000000..973b595561 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_west_2/aws-networkfirewall-firewallpolicy.json @@ -0,0 +1,332 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/FirewallPolicyName" + ], + "definitions": { + "ActionDefinition": { + "additionalProperties": false, + "properties": { + "PublishMetricAction": { + "$ref": "#/definitions/PublishMetricAction" + } + }, + "type": "object" + }, + "CustomAction": { + "additionalProperties": false, + "properties": { + "ActionDefinition": { + "$ref": "#/definitions/ActionDefinition" + }, + "ActionName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + } + }, + "required": [ + "ActionName", + "ActionDefinition" + ], + "type": "object" + }, + "Dimension": { + "additionalProperties": false, + "properties": { + "Value": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-_ ]+$", + "type": "string" + } + }, + "required": [ + "Value" + ], + "type": "object" + }, + "FirewallPolicy": { + "additionalProperties": false, + "properties": { + "PolicyVariables": { + "additionalProperties": false, + "properties": { + "RuleVariables": { + "$ref": "#/definitions/RuleVariables" + } + }, + "type": "object" + }, + "StatefulDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatefulEngineOptions": { + "$ref": "#/definitions/StatefulEngineOptions" + }, + "StatefulRuleGroupReferences": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/StatefulRuleGroupReference" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessCustomActions": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/CustomAction" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessFragmentDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessRuleGroupReferences": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/StatelessRuleGroupReference" + }, + "type": "array", + "uniqueItems": false + }, + "TLSInspectionConfigurationArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "StatelessDefaultActions", + "StatelessFragmentDefaultActions" + ], + "type": "object" + }, + "IPSet": { + "additionalProperties": false, + "properties": { + "Definition": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/VariableDefinition" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "OverrideAction": { + "enum": [ + "DROP_TO_ALERT" + ], + "type": "string" + }, + "Priority": { + "maximum": 65535, + "minimum": 1, + "type": "integer" + }, + "PublishMetricAction": { + "additionalProperties": false, + "properties": { + "Dimensions": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/Dimension" + }, + "type": "array", + "uniqueItems": false + } + }, + "required": [ + "Dimensions" + ], + "type": "object" + }, + "ResourceArn": { + "maxLength": 256, + "minLength": 1, + "pattern": "^(arn:aws.*)$", + "type": "string" + }, + "RuleOrder": { + "enum": [ + "DEFAULT_ACTION_ORDER", + "STRICT_ORDER" + ], + "type": "string" + }, + "RuleVariables": { + "additionalProperties": false, + "patternProperties": { + "^[A-Za-z0-9_]{1,32}$": { + "$ref": "#/definitions/IPSet" + } + }, + "type": "object" + }, + "StatefulEngineOptions": { + "additionalProperties": false, + "properties": { + "RuleOrder": { + "$ref": "#/definitions/RuleOrder" + }, + "StreamExceptionPolicy": { + "$ref": "#/definitions/StreamExceptionPolicy" + } + }, + "type": "object" + }, + "StatefulRuleGroupOverride": { + "additionalProperties": false, + "properties": { + "Action": { + "$ref": "#/definitions/OverrideAction" + } + }, + "type": "object" + }, + "StatefulRuleGroupReference": { + "additionalProperties": false, + "properties": { + "Override": { + "$ref": "#/definitions/StatefulRuleGroupOverride" + }, + "Priority": { + "$ref": "#/definitions/Priority" + }, + "ResourceArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "ResourceArn" + ], + "type": "object" + }, + "StatelessRuleGroupReference": { + "additionalProperties": false, + "properties": { + "Priority": { + "$ref": "#/definitions/Priority" + }, + "ResourceArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "ResourceArn", + "Priority" + ], + "type": "object" + }, + "StreamExceptionPolicy": { + "enum": [ + "DROP", + "CONTINUE", + "REJECT" + ], + "type": "string" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "^.*$", + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 0, + "pattern": "^.*$", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "VariableDefinition": { + "minLength": 1, + "pattern": "^.*$", + "type": "string" + } + }, + "primaryIdentifier": [ + "/properties/FirewallPolicyArn" + ], + "properties": { + "Description": { + "maxLength": 512, + "minLength": 1, + "pattern": "^.*$", + "type": "string" + }, + "FirewallPolicy": { + "$ref": "#/definitions/FirewallPolicy" + }, + "FirewallPolicyArn": { + "$ref": "#/definitions/ResourceArn" + }, + "FirewallPolicyId": { + "maxLength": 36, + "minLength": 36, + "pattern": "^([0-9a-f]{8})-([0-9a-f]{4}-){3}([0-9a-f]{12})$", + "type": "string" + }, + "FirewallPolicyName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-]+$", + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + } + }, + "readOnlyProperties": [ + "/properties/FirewallPolicyArn", + "/properties/FirewallPolicyId" + ], + "required": [ + "FirewallPolicyName", + "FirewallPolicy" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-networkfirewall.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::NetworkFirewall::FirewallPolicy" +} diff --git a/src/cfnlint/data/schemas/providers/eu_west_2/aws-rds-dbcluster.json b/src/cfnlint/data/schemas/providers/eu_west_2/aws-rds-dbcluster.json new file mode 100644 index 0000000000..46000178b5 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_west_2/aws-rds-dbcluster.json @@ -0,0 +1,397 @@ +{ + "additionalProperties": false, + "conditionalCreateOnlyProperties": [ + "/properties/Engine", + "/properties/GlobalClusterIdentifier", + "/properties/MasterUsername" + ], + "createOnlyProperties": [ + "/properties/AvailabilityZones", + "/properties/DBClusterIdentifier", + "/properties/DBSubnetGroupName", + "/properties/DBSystemId", + "/properties/DatabaseName", + "/properties/EngineMode", + "/properties/KmsKeyId", + "/properties/PubliclyAccessible", + "/properties/RestoreToTime", + "/properties/RestoreType", + "/properties/SnapshotIdentifier", + "/properties/SourceDBClusterIdentifier", + "/properties/SourceRegion", + "/properties/StorageEncrypted", + "/properties/UseLatestRestorableTime" + ], + "definitions": { + "DBClusterRole": { + "additionalProperties": false, + "properties": { + "FeatureName": { + "type": "string" + }, + "RoleArn": { + "type": "string" + } + }, + "required": [ + "RoleArn" + ], + "type": "object" + }, + "Endpoint": { + "additionalProperties": false, + "properties": { + "Address": { + "type": "string" + }, + "Port": { + "type": "string" + } + }, + "type": "object" + }, + "MasterUserSecret": { + "additionalProperties": false, + "properties": { + "KmsKeyId": { + "type": "string" + }, + "SecretArn": { + "type": "string" + } + }, + "type": "object" + }, + "ReadEndpoint": { + "additionalProperties": false, + "properties": { + "Address": { + "type": "string" + } + }, + "type": "object" + }, + "ScalingConfiguration": { + "additionalProperties": false, + "properties": { + "AutoPause": { + "type": "boolean" + }, + "MaxCapacity": { + "type": "integer" + }, + "MinCapacity": { + "type": "integer" + }, + "SecondsBeforeTimeout": { + "type": "integer" + }, + "SecondsUntilAutoPause": { + "type": "integer" + }, + "TimeoutAction": { + "type": "string" + } + }, + "type": "object" + }, + "ServerlessV2ScalingConfiguration": { + "additionalProperties": false, + "properties": { + "MaxCapacity": { + "type": "number" + }, + "MinCapacity": { + "type": "number" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/DBClusterIdentifier" + ], + "properties": { + "AllocatedStorage": { + "type": "integer" + }, + "AssociatedRoles": { + "items": { + "$ref": "#/definitions/DBClusterRole" + }, + "type": "array", + "uniqueItems": true + }, + "AutoMinorVersionUpgrade": { + "type": "boolean" + }, + "AvailabilityZones": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "BacktrackWindow": { + "minimum": 0, + "type": "integer" + }, + "BackupRetentionPeriod": { + "default": 1, + "maximum": 35, + "minimum": 1, + "type": "integer" + }, + "CopyTagsToSnapshot": { + "type": "boolean" + }, + "DBClusterArn": { + "type": "string" + }, + "DBClusterIdentifier": { + "maxLength": 63, + "minLength": 1, + "pattern": "^[a-zA-Z]{1}(?:-?[a-zA-Z0-9]){0,62}$", + "type": "string" + }, + "DBClusterInstanceClass": { + "type": "string" + }, + "DBClusterParameterGroupName": { + "type": "string" + }, + "DBClusterResourceId": { + "type": "string" + }, + "DBInstanceParameterGroupName": { + "type": "string" + }, + "DBSubnetGroupName": { + "type": "string" + }, + "DBSystemId": { + "type": "string" + }, + "DatabaseName": { + "type": "string" + }, + "DeletionProtection": { + "type": "boolean" + }, + "Domain": { + "type": "string" + }, + "DomainIAMRoleName": { + "type": "string" + }, + "EnableCloudwatchLogsExports": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "EnableGlobalWriteForwarding": { + "type": "boolean" + }, + "EnableHttpEndpoint": { + "type": "boolean" + }, + "EnableIAMDatabaseAuthentication": { + "type": "boolean" + }, + "EnableLocalWriteForwarding": { + "type": "boolean" + }, + "Endpoint": { + "$ref": "#/definitions/Endpoint" + }, + "Engine": { + "type": "string" + }, + "EngineLifecycleSupport": { + "type": "string" + }, + "EngineMode": { + "type": "string" + }, + "EngineVersion": { + "type": "string" + }, + "GlobalClusterIdentifier": { + "maxLength": 63, + "minLength": 0, + "pattern": "^$|^[a-zA-Z]{1}(?:-?[a-zA-Z0-9]){0,62}$", + "type": "string" + }, + "Iops": { + "type": "integer" + }, + "KmsKeyId": { + "type": "string" + }, + "ManageMasterUserPassword": { + "type": "boolean" + }, + "MasterUserPassword": { + "type": "string" + }, + "MasterUserSecret": { + "$ref": "#/definitions/MasterUserSecret" + }, + "MasterUsername": { + "minLength": 1, + "pattern": "^[a-zA-Z]{1}[a-zA-Z0-9_]*$", + "type": "string" + }, + "MonitoringInterval": { + "type": "integer" + }, + "MonitoringRoleArn": { + "type": "string" + }, + "NetworkType": { + "type": "string" + }, + "PerformanceInsightsEnabled": { + "type": "boolean" + }, + "PerformanceInsightsKmsKeyId": { + "type": "string" + }, + "PerformanceInsightsRetentionPeriod": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "PreferredBackupWindow": { + "type": "string" + }, + "PreferredMaintenanceWindow": { + "type": "string" + }, + "PubliclyAccessible": { + "type": "boolean" + }, + "ReadEndpoint": { + "$ref": "#/definitions/ReadEndpoint" + }, + "ReplicationSourceIdentifier": { + "type": "string" + }, + "RestoreToTime": { + "type": "string" + }, + "RestoreType": { + "type": "string" + }, + "ScalingConfiguration": { + "$ref": "#/definitions/ScalingConfiguration" + }, + "ServerlessV2ScalingConfiguration": { + "$ref": "#/definitions/ServerlessV2ScalingConfiguration" + }, + "SnapshotIdentifier": { + "type": "string" + }, + "SourceDBClusterIdentifier": { + "type": "string" + }, + "SourceRegion": { + "type": "string" + }, + "StorageEncrypted": { + "type": "boolean" + }, + "StorageThroughput": { + "type": "integer" + }, + "StorageType": { + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 50, + "type": "array", + "uniqueItems": true + }, + "UseLatestRestorableTime": { + "type": "boolean" + }, + "VpcSecurityGroupIds": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": true + } + }, + "propertyTransform": { + "/properties/DBClusterIdentifier": "$lowercase(DBClusterIdentifier)", + "/properties/DBClusterParameterGroupName": "$lowercase(DBClusterParameterGroupName)", + "/properties/DBSubnetGroupName": "$lowercase(DBSubnetGroupName)", + "/properties/EnableHttpEndpoint": "$lowercase($string(EngineMode)) = 'serverless' ? EnableHttpEndpoint : ($lowercase($string(Engine)) in ['aurora-postgresql', 'aurora-mysql'] ? EnableHttpEndpoint : false )", + "/properties/Engine": "$lowercase(Engine)", + "/properties/EngineVersion": "$join([$string(EngineVersion), \".*\"])", + "/properties/KmsKeyId": "$join([\"arn:(aws)[-]{0,1}[a-z]{0,2}[-]{0,1}[a-z]{0,3}:kms:[a-z]{2}[-]{1}[a-z]{3,10}[-]{0,1}[a-z]{0,10}[-]{1}[1-3]{1}:[0-9]{12}[:]{1}key\\/\", KmsKeyId])", + "/properties/MasterUserSecret/KmsKeyId": "$join([\"arn:(aws)[-]{0,1}[a-z]{0,2}[-]{0,1}[a-z]{0,3}:kms:[a-z]{2}[-]{1}[a-z]{3,10}[-]{0,1}[a-z]{0,10}[-]{1}[1-3]{1}:[0-9]{12}[:]{1}key\\/\", MasterUserSecret.KmsKeyId])", + "/properties/NetworkType": "$lowercase(NetworkType)", + "/properties/PerformanceInsightsKmsKeyId": "$join([\"arn:(aws)[-]{0,1}[a-z]{0,2}[-]{0,1}[a-z]{0,3}:kms:[a-z]{2}[-]{1}[a-z]{3,10}[-]{0,1}[a-z]{0,10}[-]{1}[1-3]{1}:[0-9]{12}[:]{1}key\\/\", PerformanceInsightsKmsKeyId])", + "/properties/PreferredMaintenanceWindow": "$lowercase(PreferredMaintenanceWindow)", + "/properties/SnapshotIdentifier": "$lowercase(SnapshotIdentifier)", + "/properties/SourceDBClusterIdentifier": "$lowercase(SourceDBClusterIdentifier)", + "/properties/StorageType": "$lowercase(StorageType)" + }, + "readOnlyProperties": [ + "/properties/DBClusterArn", + "/properties/DBClusterResourceId", + "/properties/Endpoint", + "/properties/Endpoint/Address", + "/properties/Endpoint/Port", + "/properties/ReadEndpoint/Address", + "/properties/MasterUserSecret/SecretArn", + "/properties/StorageThroughput" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-rds", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::RDS::DBCluster", + "writeOnlyProperties": [ + "/properties/DBInstanceParameterGroupName", + "/properties/MasterUserPassword", + "/properties/RestoreToTime", + "/properties/RestoreType", + "/properties/SnapshotIdentifier", + "/properties/SourceDBClusterIdentifier", + "/properties/SourceRegion", + "/properties/UseLatestRestorableTime" + ] +} diff --git a/src/cfnlint/data/schemas/providers/eu_west_2/aws-rds-dbsubnetgroup.json b/src/cfnlint/data/schemas/providers/eu_west_2/aws-rds-dbsubnetgroup.json new file mode 100644 index 0000000000..d228afbbad --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_west_2/aws-rds-dbsubnetgroup.json @@ -0,0 +1,71 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/DBSubnetGroupName" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/DBSubnetGroupName" + ], + "properties": { + "DBSubnetGroupDescription": { + "type": "string" + }, + "DBSubnetGroupName": { + "type": "string" + }, + "SubnetIds": { + "insertionOrder": false, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 50, + "type": "array", + "uniqueItems": false + } + }, + "propertyTransform": { + "/properties/DBSubnetGroupName": "$lowercase(DBSubnetGroupName)" + }, + "required": [ + "DBSubnetGroupDescription", + "SubnetIds" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-rds", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::RDS::DBSubnetGroup" +} diff --git a/src/cfnlint/data/schemas/providers/eu_west_2/aws-route53resolver-resolverrule.json b/src/cfnlint/data/schemas/providers/eu_west_2/aws-route53resolver-resolverrule.json new file mode 100644 index 0000000000..7b24325ca2 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_west_2/aws-route53resolver-resolverrule.json @@ -0,0 +1,130 @@ +{ + "additionalProperties": false, + "conditionalCreateOnlyProperties": [ + "/properties/DomainName" + ], + "createOnlyProperties": [ + "/properties/RuleType" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + }, + "TargetAddress": { + "additionalProperties": false, + "properties": { + "Ip": { + "type": "string" + }, + "Ipv6": { + "type": "string" + }, + "Port": { + "maxLength": 65535, + "minLength": 0, + "type": "string" + }, + "Protocol": { + "enum": [ + "Do53", + "DoH" + ], + "type": "string" + }, + "ServerNameIndication": { + "maxLength": 255, + "minLength": 0, + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/ResolverRuleId" + ], + "properties": { + "Arn": { + "type": "string" + }, + "DomainName": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "Name": { + "maxLength": 64, + "minLength": 0, + "type": "string" + }, + "ResolverEndpointId": { + "maxLength": 64, + "minLength": 1, + "type": "string" + }, + "ResolverRuleId": { + "type": "string" + }, + "RuleType": { + "enum": [ + "FORWARD", + "SYSTEM", + "RECURSIVE", + "DELEGATE" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": false + }, + "TargetIps": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TargetAddress" + }, + "type": "array", + "uniqueItems": false + } + }, + "propertyTransform": { + "/properties/DomainName": "$join([DomainName, \".\"]) $OR DomainName" + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/ResolverRuleId" + ], + "required": [ + "RuleType" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-route53resolver.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Route53Resolver::ResolverRule" +} diff --git a/src/cfnlint/data/schemas/providers/eu_west_2/aws-sagemaker-imageversion.json b/src/cfnlint/data/schemas/providers/eu_west_2/aws-sagemaker-imageversion.json deleted file mode 100644 index e7c91ccc8d..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_west_2/aws-sagemaker-imageversion.json +++ /dev/null @@ -1,172 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/ImageName", - "/properties/BaseImage" - ], - "definitions": { - "Alias": { - "maxLength": 128, - "minLength": 1, - "pattern": "(?!^[.-])^([a-zA-Z0-9-_.]+)$", - "type": "string" - }, - "Aliases": { - "items": { - "$ref": "#/definitions/Alias" - }, - "type": "array" - }, - "BaseImage": { - "maxLength": 255, - "minLength": 1, - "pattern": ".+", - "type": "string" - }, - "ContainerImage": { - "maxLength": 255, - "minLength": 1, - "pattern": ".+", - "type": "string" - }, - "Horovod": { - "type": "boolean" - }, - "ImageArn": { - "maxLength": 256, - "minLength": 1, - "pattern": "^arn:aws(-[\\w]+)*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:image\\/[a-zA-Z0-9]([-.]?[a-zA-Z0-9])*$", - "type": "string" - }, - "ImageName": { - "maxLength": 63, - "minLength": 1, - "pattern": "^[A-Za-z0-9]([-.]?[A-Za-z0-9])*$", - "type": "string" - }, - "ImageVersionArn": { - "maxLength": 256, - "minLength": 1, - "pattern": "^arn:aws(-[\\w]+)*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:image-version\\/[a-zA-Z0-9]([-.]?[a-zA-Z0-9])*\\/[0-9]+$", - "type": "string" - }, - "JobType": { - "enum": [ - "TRAINING", - "INFERENCE", - "NOTEBOOK_KERNEL" - ], - "type": "string" - }, - "MLFramework": { - "maxLength": 128, - "minLength": 1, - "pattern": "^[a-zA-Z]+ ?\\d+\\.\\d+(\\.\\d+)?$", - "type": "string" - }, - "Processor": { - "enum": [ - "CPU", - "GPU" - ], - "type": "string" - }, - "ProgrammingLang": { - "maxLength": 128, - "minLength": 1, - "pattern": "^[a-zA-Z]+ ?\\d+\\.\\d+(\\.\\d+)?$", - "type": "string" - }, - "ReleaseNotes": { - "maxLength": 255, - "minLength": 1, - "pattern": ".*", - "type": "string" - }, - "VendorGuidance": { - "enum": [ - "NOT_PROVIDED", - "STABLE", - "TO_BE_ARCHIVED", - "ARCHIVED" - ], - "type": "string" - }, - "Version": { - "minimum": 1, - "type": "integer" - } - }, - "primaryIdentifier": [ - "/properties/ImageVersionArn" - ], - "properties": { - "Alias": { - "$ref": "#/definitions/Alias" - }, - "Aliases": { - "$ref": "#/definitions/Aliases" - }, - "BaseImage": { - "$ref": "#/definitions/BaseImage" - }, - "ContainerImage": { - "$ref": "#/definitions/ContainerImage" - }, - "Horovod": { - "$ref": "#/definitions/Horovod" - }, - "ImageArn": { - "$ref": "#/definitions/ImageArn" - }, - "ImageName": { - "$ref": "#/definitions/ImageName" - }, - "ImageVersionArn": { - "$ref": "#/definitions/ImageVersionArn" - }, - "JobType": { - "$ref": "#/definitions/JobType" - }, - "MLFramework": { - "$ref": "#/definitions/MLFramework" - }, - "Processor": { - "$ref": "#/definitions/Processor" - }, - "ProgrammingLang": { - "$ref": "#/definitions/ProgrammingLang" - }, - "ReleaseNotes": { - "$ref": "#/definitions/ReleaseNotes" - }, - "VendorGuidance": { - "$ref": "#/definitions/VendorGuidance" - }, - "Version": { - "$ref": "#/definitions/Version" - } - }, - "readOnlyProperties": [ - "/properties/ImageVersionArn", - "/properties/ImageArn", - "/properties/Version", - "/properties/ContainerImage" - ], - "required": [ - "ImageName", - "BaseImage" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sagemaker", - "tagging": { - "cloudFormationSystemTags": false, - "tagOnCreate": false, - "tagUpdatable": false, - "taggable": false - }, - "typeName": "AWS::SageMaker::ImageVersion", - "writeOnlyProperties": [ - "/properties/Aliases", - "/properties/Alias" - ] -} diff --git a/src/cfnlint/data/schemas/providers/eu_west_3/__init__.py b/src/cfnlint/data/schemas/providers/eu_west_3/__init__.py index 715049fee0..4e05e9661f 100644 --- a/src/cfnlint/data/schemas/providers/eu_west_3/__init__.py +++ b/src/cfnlint/data/schemas/providers/eu_west_3/__init__.py @@ -1330,9 +1330,7 @@ "aws-ecs-cluster.json", "aws-ecs-clustercapacityproviderassociations.json", "aws-ecs-primarytaskset.json", - "aws-ecs-service.json", "aws-ecs-taskdefinition.json", - "aws-ecs-taskset.json", "aws-efs-accesspoint.json", "aws-efs-filesystem.json", "aws-efs-mounttarget.json", @@ -1416,7 +1414,6 @@ "aws-glue-trigger.json", "aws-glue-usageprofile.json", "aws-glue-workflow.json", - "aws-guardduty-detector.json", "aws-guardduty-filter.json", "aws-guardduty-ipset.json", "aws-guardduty-malwareprotectionplan.json", @@ -1483,7 +1480,6 @@ "aws-kafkaconnect-connector.json", "aws-kafkaconnect-customplugin.json", "aws-kafkaconnect-workerconfiguration.json", - "aws-kinesis-stream.json", "aws-kinesis-streamconsumer.json", "aws-kinesisanalytics-applicationoutput.json", "aws-kinesisanalyticsv2-application.json", @@ -1594,7 +1590,6 @@ "aws-neptune-dbsubnetgroup.json", "aws-neptune-eventsubscription.json", "aws-networkfirewall-firewall.json", - "aws-networkfirewall-firewallpolicy.json", "aws-networkfirewall-loggingconfiguration.json", "aws-networkfirewall-rulegroup.json", "aws-networkfirewall-tlsinspectionconfiguration.json", @@ -1737,6 +1732,7 @@ "aws-sagemaker-endpointconfig.json", "aws-sagemaker-featuregroup.json", "aws-sagemaker-image.json", + "aws-sagemaker-imageversion.json", "aws-sagemaker-inferenceexperiment.json", "aws-sagemaker-mlflowtrackingserver.json", "aws-sagemaker-model.json", diff --git a/src/cfnlint/data/schemas/providers/eu_west_3/aws-ecs-service.json b/src/cfnlint/data/schemas/providers/eu_west_3/aws-ecs-service.json new file mode 100644 index 0000000000..ba7baa1de3 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_west_3/aws-ecs-service.json @@ -0,0 +1,585 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/DeploymentController", + "/properties/LaunchType", + "/properties/Role", + "/properties/SchedulingStrategy", + "/properties/ServiceName" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "CapacityProviderStrategyItem": { + "additionalProperties": false, + "properties": { + "Base": { + "type": "integer" + }, + "CapacityProvider": { + "type": "string" + }, + "Weight": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentAlarms": { + "additionalProperties": false, + "properties": { + "AlarmNames": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "AlarmNames", + "Rollback", + "Enable" + ], + "type": "object" + }, + "DeploymentCircuitBreaker": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "Enable", + "Rollback" + ], + "type": "object" + }, + "DeploymentConfiguration": { + "additionalProperties": false, + "properties": { + "Alarms": { + "$ref": "#/definitions/DeploymentAlarms" + }, + "DeploymentCircuitBreaker": { + "$ref": "#/definitions/DeploymentCircuitBreaker" + }, + "MaximumPercent": { + "type": "integer" + }, + "MinimumHealthyPercent": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentController": { + "additionalProperties": false, + "properties": { + "Type": { + "enum": [ + "CODE_DEPLOY", + "ECS", + "EXTERNAL" + ], + "type": "string" + } + }, + "type": "object" + }, + "EBSTagSpecification": { + "additionalProperties": false, + "properties": { + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "ResourceType": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "ResourceType" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "LoadBalancerName": { + "type": "string" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "LogConfiguration": { + "additionalProperties": false, + "properties": { + "LogDriver": { + "type": "string" + }, + "Options": { + "additionalProperties": false, + "patternProperties": { + ".{1,}": { + "type": "string" + } + }, + "type": "object" + }, + "SecretOptions": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Secret" + }, + "type": "array" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsvpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "PlacementConstraint": { + "additionalProperties": false, + "properties": { + "Expression": { + "type": "string" + }, + "Type": { + "enum": [ + "distinctInstance", + "memberOf" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "PlacementStrategy": { + "additionalProperties": false, + "properties": { + "Field": { + "type": "string" + }, + "Type": { + "enum": [ + "binpack", + "random", + "spread" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "Secret": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "ValueFrom": { + "type": "string" + } + }, + "required": [ + "Name", + "ValueFrom" + ], + "type": "object" + }, + "ServiceConnectClientAlias": { + "additionalProperties": false, + "properties": { + "DnsName": { + "type": "string" + }, + "Port": { + "type": "integer" + } + }, + "required": [ + "Port" + ], + "type": "object" + }, + "ServiceConnectConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + }, + "LogConfiguration": { + "$ref": "#/definitions/LogConfiguration" + }, + "Namespace": { + "type": "string" + }, + "Services": { + "items": { + "$ref": "#/definitions/ServiceConnectService" + }, + "type": "array" + } + }, + "required": [ + "Enabled" + ], + "type": "object" + }, + "ServiceConnectService": { + "additionalProperties": false, + "properties": { + "ClientAliases": { + "items": { + "$ref": "#/definitions/ServiceConnectClientAlias" + }, + "type": "array" + }, + "DiscoveryName": { + "type": "string" + }, + "IngressPortOverride": { + "type": "integer" + }, + "PortName": { + "type": "string" + }, + "Timeout": { + "$ref": "#/definitions/TimeoutConfiguration" + }, + "Tls": { + "$ref": "#/definitions/ServiceConnectTlsConfiguration" + } + }, + "required": [ + "PortName" + ], + "type": "object" + }, + "ServiceConnectTlsCertificateAuthority": { + "additionalProperties": false, + "properties": { + "AwsPcaAuthorityArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceConnectTlsConfiguration": { + "additionalProperties": false, + "properties": { + "IssuerCertificateAuthority": { + "$ref": "#/definitions/ServiceConnectTlsCertificateAuthority" + }, + "KmsKey": { + "type": "string" + }, + "RoleArn": { + "type": "string" + } + }, + "required": [ + "IssuerCertificateAuthority" + ], + "type": "object" + }, + "ServiceManagedEBSVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "Encrypted": { + "type": "boolean" + }, + "FilesystemType": { + "type": "string" + }, + "Iops": { + "type": "integer" + }, + "KmsKeyId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SizeInGiB": { + "type": "integer" + }, + "SnapshotId": { + "type": "string" + }, + "TagSpecifications": { + "items": { + "$ref": "#/definitions/EBSTagSpecification" + }, + "type": "array" + }, + "Throughput": { + "type": "integer" + }, + "VolumeType": { + "type": "string" + } + }, + "required": [ + "RoleArn" + ], + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "ManagedEBSVolume": { + "$ref": "#/definitions/ServiceManagedEBSVolumeConfiguration" + }, + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + }, + "TimeoutConfiguration": { + "additionalProperties": false, + "properties": { + "IdleTimeoutSeconds": { + "type": "integer" + }, + "PerRequestTimeoutSeconds": { + "type": "integer" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/ServiceArn", + "/properties/Cluster" + ], + "properties": { + "CapacityProviderStrategy": { + "items": { + "$ref": "#/definitions/CapacityProviderStrategyItem" + }, + "type": "array" + }, + "Cluster": { + "type": "string" + }, + "DeploymentConfiguration": { + "$ref": "#/definitions/DeploymentConfiguration" + }, + "DeploymentController": { + "$ref": "#/definitions/DeploymentController" + }, + "DesiredCount": { + "type": "integer" + }, + "EnableECSManagedTags": { + "type": "boolean" + }, + "EnableExecuteCommand": { + "type": "boolean" + }, + "HealthCheckGracePeriodSeconds": { + "type": "integer" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE", + "EXTERNAL" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "Name": { + "type": "string" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlacementConstraints": { + "items": { + "$ref": "#/definitions/PlacementConstraint" + }, + "type": "array" + }, + "PlacementStrategies": { + "items": { + "$ref": "#/definitions/PlacementStrategy" + }, + "type": "array" + }, + "PlatformVersion": { + "default": "LATEST", + "type": "string" + }, + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "Role": { + "type": "string" + }, + "SchedulingStrategy": { + "enum": [ + "DAEMON", + "REPLICA" + ], + "type": "string" + }, + "ServiceArn": { + "type": "string" + }, + "ServiceConnectConfiguration": { + "$ref": "#/definitions/ServiceConnectConfiguration" + }, + "ServiceName": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + }, + "VolumeConfigurations": { + "items": { + "$ref": "#/definitions/ServiceVolumeConfiguration" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/ServiceArn", + "/properties/Name" + ], + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::Service", + "writeOnlyProperties": [ + "/properties/ServiceConnectConfiguration", + "/properties/VolumeConfigurations" + ] +} diff --git a/src/cfnlint/data/schemas/providers/eu_west_3/aws-ecs-taskset.json b/src/cfnlint/data/schemas/providers/eu_west_3/aws-ecs-taskset.json new file mode 100644 index 0000000000..3491488499 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_west_3/aws-ecs-taskset.json @@ -0,0 +1,191 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/ExternalId", + "/properties/LaunchType", + "/properties/LoadBalancers", + "/properties/NetworkConfiguration", + "/properties/PlatformVersion", + "/properties/Service", + "/properties/ServiceRegistries", + "/properties/TaskDefinition" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "maxItems": 5, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "maxItems": 16, + "type": "array" + } + }, + "required": [ + "Subnets" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsVpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "Scale": { + "additionalProperties": false, + "properties": { + "Unit": { + "enum": [ + "PERCENT" + ], + "type": "string" + }, + "Value": { + "maximum": 100, + "minimum": 0, + "type": "number" + } + }, + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Cluster", + "/properties/Service", + "/properties/Id" + ], + "properties": { + "Cluster": { + "type": "string" + }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlatformVersion": { + "type": "string" + }, + "Scale": { + "$ref": "#/definitions/Scale" + }, + "Service": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "Cluster", + "Service", + "TaskDefinition" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-ecs.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::TaskSet" +} diff --git a/src/cfnlint/data/schemas/providers/eu_west_3/aws-guardduty-detector.json b/src/cfnlint/data/schemas/providers/eu_west_3/aws-guardduty-detector.json new file mode 100644 index 0000000000..efaad17ff9 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_west_3/aws-guardduty-detector.json @@ -0,0 +1,184 @@ +{ + "additionalProperties": false, + "definitions": { + "CFNDataSourceConfigurations": { + "additionalProperties": false, + "properties": { + "Kubernetes": { + "$ref": "#/definitions/CFNKubernetesConfiguration" + }, + "MalwareProtection": { + "$ref": "#/definitions/CFNMalwareProtectionConfiguration" + }, + "S3Logs": { + "$ref": "#/definitions/CFNS3LogsConfiguration" + } + }, + "type": "object" + }, + "CFNFeatureAdditionalConfiguration": { + "additionalProperties": false, + "properties": { + "Name": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "Status": { + "maxLength": 128, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "CFNFeatureConfiguration": { + "additionalProperties": false, + "properties": { + "AdditionalConfiguration": { + "items": { + "$ref": "#/definitions/CFNFeatureAdditionalConfiguration" + }, + "type": "array" + }, + "Name": { + "maxLength": 128, + "type": "string" + }, + "Status": { + "enum": [ + "ENABLED", + "DISABLED" + ], + "type": "string" + } + }, + "required": [ + "Name", + "Status" + ], + "type": "object" + }, + "CFNKubernetesAuditLogsConfiguration": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + } + }, + "required": [ + "Enable" + ], + "type": "object" + }, + "CFNKubernetesConfiguration": { + "additionalProperties": false, + "properties": { + "AuditLogs": { + "$ref": "#/definitions/CFNKubernetesAuditLogsConfiguration" + } + }, + "required": [ + "AuditLogs" + ], + "type": "object" + }, + "CFNMalwareProtectionConfiguration": { + "additionalProperties": false, + "properties": { + "ScanEc2InstanceWithFindings": { + "$ref": "#/definitions/CFNScanEc2InstanceWithFindingsConfiguration" + } + }, + "type": "object" + }, + "CFNS3LogsConfiguration": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + } + }, + "required": [ + "Enable" + ], + "type": "object" + }, + "CFNScanEc2InstanceWithFindingsConfiguration": { + "additionalProperties": false, + "properties": { + "EbsVolumes": { + "type": "boolean" + } + }, + "type": "object" + }, + "TagItem": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "DataSources": { + "$ref": "#/definitions/CFNDataSourceConfigurations" + }, + "Enable": { + "type": "boolean" + }, + "Features": { + "items": { + "$ref": "#/definitions/CFNFeatureConfiguration" + }, + "type": "array" + }, + "FindingPublishingFrequency": { + "enum": [ + "FIFTEEN_MINUTES", + "ONE_HOUR", + "SIX_HOURS" + ], + "type": "string" + }, + "Id": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/TagItem" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "Enable" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": false, + "taggable": true + }, + "typeName": "AWS::GuardDuty::Detector" +} diff --git a/src/cfnlint/data/schemas/providers/eu_west_3/aws-kinesis-stream.json b/src/cfnlint/data/schemas/providers/eu_west_3/aws-kinesis-stream.json new file mode 100644 index 0000000000..be1bc65c07 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_west_3/aws-kinesis-stream.json @@ -0,0 +1,133 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "StreamEncryption": { + "additionalProperties": false, + "properties": { + "EncryptionType": { + "enum": [ + "KMS" + ], + "type": "string" + }, + "KeyId": { + "anyOf": [ + { + "relationshipRef": { + "propertyPath": "/properties/Arn", + "typeName": "AWS::KMS::Key" + } + }, + { + "relationshipRef": { + "propertyPath": "/properties/KeyId", + "typeName": "AWS::KMS::Key" + } + } + ], + "maxLength": 2048, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "EncryptionType", + "KeyId" + ], + "type": "object" + }, + "StreamModeDetails": { + "additionalProperties": false, + "properties": { + "StreamMode": { + "enum": [ + "ON_DEMAND", + "PROVISIONED" + ], + "type": "string" + } + }, + "required": [ + "StreamMode" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Name" + ], + "properties": { + "Arn": { + "type": "string" + }, + "Name": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9_.-]+$", + "type": "string" + }, + "RetentionPeriodHours": { + "maximum": 8760, + "minimum": 1, + "type": "integer" + }, + "ShardCount": { + "maximum": 100000, + "minimum": 1, + "type": "integer" + }, + "StreamEncryption": { + "$ref": "#/definitions/StreamEncryption" + }, + "StreamModeDetails": { + "$ref": "#/definitions/StreamModeDetails", + "default": { + "StreamMode": "PROVISIONED" + } + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 50, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-kinesis.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Kinesis::Stream" +} diff --git a/src/cfnlint/data/schemas/providers/eu_west_3/aws-networkfirewall-firewallpolicy.json b/src/cfnlint/data/schemas/providers/eu_west_3/aws-networkfirewall-firewallpolicy.json new file mode 100644 index 0000000000..973b595561 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_west_3/aws-networkfirewall-firewallpolicy.json @@ -0,0 +1,332 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/FirewallPolicyName" + ], + "definitions": { + "ActionDefinition": { + "additionalProperties": false, + "properties": { + "PublishMetricAction": { + "$ref": "#/definitions/PublishMetricAction" + } + }, + "type": "object" + }, + "CustomAction": { + "additionalProperties": false, + "properties": { + "ActionDefinition": { + "$ref": "#/definitions/ActionDefinition" + }, + "ActionName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + } + }, + "required": [ + "ActionName", + "ActionDefinition" + ], + "type": "object" + }, + "Dimension": { + "additionalProperties": false, + "properties": { + "Value": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-_ ]+$", + "type": "string" + } + }, + "required": [ + "Value" + ], + "type": "object" + }, + "FirewallPolicy": { + "additionalProperties": false, + "properties": { + "PolicyVariables": { + "additionalProperties": false, + "properties": { + "RuleVariables": { + "$ref": "#/definitions/RuleVariables" + } + }, + "type": "object" + }, + "StatefulDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatefulEngineOptions": { + "$ref": "#/definitions/StatefulEngineOptions" + }, + "StatefulRuleGroupReferences": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/StatefulRuleGroupReference" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessCustomActions": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/CustomAction" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessFragmentDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessRuleGroupReferences": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/StatelessRuleGroupReference" + }, + "type": "array", + "uniqueItems": false + }, + "TLSInspectionConfigurationArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "StatelessDefaultActions", + "StatelessFragmentDefaultActions" + ], + "type": "object" + }, + "IPSet": { + "additionalProperties": false, + "properties": { + "Definition": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/VariableDefinition" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "OverrideAction": { + "enum": [ + "DROP_TO_ALERT" + ], + "type": "string" + }, + "Priority": { + "maximum": 65535, + "minimum": 1, + "type": "integer" + }, + "PublishMetricAction": { + "additionalProperties": false, + "properties": { + "Dimensions": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/Dimension" + }, + "type": "array", + "uniqueItems": false + } + }, + "required": [ + "Dimensions" + ], + "type": "object" + }, + "ResourceArn": { + "maxLength": 256, + "minLength": 1, + "pattern": "^(arn:aws.*)$", + "type": "string" + }, + "RuleOrder": { + "enum": [ + "DEFAULT_ACTION_ORDER", + "STRICT_ORDER" + ], + "type": "string" + }, + "RuleVariables": { + "additionalProperties": false, + "patternProperties": { + "^[A-Za-z0-9_]{1,32}$": { + "$ref": "#/definitions/IPSet" + } + }, + "type": "object" + }, + "StatefulEngineOptions": { + "additionalProperties": false, + "properties": { + "RuleOrder": { + "$ref": "#/definitions/RuleOrder" + }, + "StreamExceptionPolicy": { + "$ref": "#/definitions/StreamExceptionPolicy" + } + }, + "type": "object" + }, + "StatefulRuleGroupOverride": { + "additionalProperties": false, + "properties": { + "Action": { + "$ref": "#/definitions/OverrideAction" + } + }, + "type": "object" + }, + "StatefulRuleGroupReference": { + "additionalProperties": false, + "properties": { + "Override": { + "$ref": "#/definitions/StatefulRuleGroupOverride" + }, + "Priority": { + "$ref": "#/definitions/Priority" + }, + "ResourceArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "ResourceArn" + ], + "type": "object" + }, + "StatelessRuleGroupReference": { + "additionalProperties": false, + "properties": { + "Priority": { + "$ref": "#/definitions/Priority" + }, + "ResourceArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "ResourceArn", + "Priority" + ], + "type": "object" + }, + "StreamExceptionPolicy": { + "enum": [ + "DROP", + "CONTINUE", + "REJECT" + ], + "type": "string" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "^.*$", + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 0, + "pattern": "^.*$", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "VariableDefinition": { + "minLength": 1, + "pattern": "^.*$", + "type": "string" + } + }, + "primaryIdentifier": [ + "/properties/FirewallPolicyArn" + ], + "properties": { + "Description": { + "maxLength": 512, + "minLength": 1, + "pattern": "^.*$", + "type": "string" + }, + "FirewallPolicy": { + "$ref": "#/definitions/FirewallPolicy" + }, + "FirewallPolicyArn": { + "$ref": "#/definitions/ResourceArn" + }, + "FirewallPolicyId": { + "maxLength": 36, + "minLength": 36, + "pattern": "^([0-9a-f]{8})-([0-9a-f]{4}-){3}([0-9a-f]{12})$", + "type": "string" + }, + "FirewallPolicyName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-]+$", + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + } + }, + "readOnlyProperties": [ + "/properties/FirewallPolicyArn", + "/properties/FirewallPolicyId" + ], + "required": [ + "FirewallPolicyName", + "FirewallPolicy" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-networkfirewall.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::NetworkFirewall::FirewallPolicy" +} diff --git a/src/cfnlint/data/schemas/providers/eu_west_3/aws-sagemaker-imageversion.json b/src/cfnlint/data/schemas/providers/eu_west_3/aws-sagemaker-imageversion.json deleted file mode 100644 index e7c91ccc8d..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_west_3/aws-sagemaker-imageversion.json +++ /dev/null @@ -1,172 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/ImageName", - "/properties/BaseImage" - ], - "definitions": { - "Alias": { - "maxLength": 128, - "minLength": 1, - "pattern": "(?!^[.-])^([a-zA-Z0-9-_.]+)$", - "type": "string" - }, - "Aliases": { - "items": { - "$ref": "#/definitions/Alias" - }, - "type": "array" - }, - "BaseImage": { - "maxLength": 255, - "minLength": 1, - "pattern": ".+", - "type": "string" - }, - "ContainerImage": { - "maxLength": 255, - "minLength": 1, - "pattern": ".+", - "type": "string" - }, - "Horovod": { - "type": "boolean" - }, - "ImageArn": { - "maxLength": 256, - "minLength": 1, - "pattern": "^arn:aws(-[\\w]+)*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:image\\/[a-zA-Z0-9]([-.]?[a-zA-Z0-9])*$", - "type": "string" - }, - "ImageName": { - "maxLength": 63, - "minLength": 1, - "pattern": "^[A-Za-z0-9]([-.]?[A-Za-z0-9])*$", - "type": "string" - }, - "ImageVersionArn": { - "maxLength": 256, - "minLength": 1, - "pattern": "^arn:aws(-[\\w]+)*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:image-version\\/[a-zA-Z0-9]([-.]?[a-zA-Z0-9])*\\/[0-9]+$", - "type": "string" - }, - "JobType": { - "enum": [ - "TRAINING", - "INFERENCE", - "NOTEBOOK_KERNEL" - ], - "type": "string" - }, - "MLFramework": { - "maxLength": 128, - "minLength": 1, - "pattern": "^[a-zA-Z]+ ?\\d+\\.\\d+(\\.\\d+)?$", - "type": "string" - }, - "Processor": { - "enum": [ - "CPU", - "GPU" - ], - "type": "string" - }, - "ProgrammingLang": { - "maxLength": 128, - "minLength": 1, - "pattern": "^[a-zA-Z]+ ?\\d+\\.\\d+(\\.\\d+)?$", - "type": "string" - }, - "ReleaseNotes": { - "maxLength": 255, - "minLength": 1, - "pattern": ".*", - "type": "string" - }, - "VendorGuidance": { - "enum": [ - "NOT_PROVIDED", - "STABLE", - "TO_BE_ARCHIVED", - "ARCHIVED" - ], - "type": "string" - }, - "Version": { - "minimum": 1, - "type": "integer" - } - }, - "primaryIdentifier": [ - "/properties/ImageVersionArn" - ], - "properties": { - "Alias": { - "$ref": "#/definitions/Alias" - }, - "Aliases": { - "$ref": "#/definitions/Aliases" - }, - "BaseImage": { - "$ref": "#/definitions/BaseImage" - }, - "ContainerImage": { - "$ref": "#/definitions/ContainerImage" - }, - "Horovod": { - "$ref": "#/definitions/Horovod" - }, - "ImageArn": { - "$ref": "#/definitions/ImageArn" - }, - "ImageName": { - "$ref": "#/definitions/ImageName" - }, - "ImageVersionArn": { - "$ref": "#/definitions/ImageVersionArn" - }, - "JobType": { - "$ref": "#/definitions/JobType" - }, - "MLFramework": { - "$ref": "#/definitions/MLFramework" - }, - "Processor": { - "$ref": "#/definitions/Processor" - }, - "ProgrammingLang": { - "$ref": "#/definitions/ProgrammingLang" - }, - "ReleaseNotes": { - "$ref": "#/definitions/ReleaseNotes" - }, - "VendorGuidance": { - "$ref": "#/definitions/VendorGuidance" - }, - "Version": { - "$ref": "#/definitions/Version" - } - }, - "readOnlyProperties": [ - "/properties/ImageVersionArn", - "/properties/ImageArn", - "/properties/Version", - "/properties/ContainerImage" - ], - "required": [ - "ImageName", - "BaseImage" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sagemaker", - "tagging": { - "cloudFormationSystemTags": false, - "tagOnCreate": false, - "tagUpdatable": false, - "taggable": false - }, - "typeName": "AWS::SageMaker::ImageVersion", - "writeOnlyProperties": [ - "/properties/Aliases", - "/properties/Alias" - ] -} diff --git a/src/cfnlint/data/schemas/providers/il_central_1/__init__.py b/src/cfnlint/data/schemas/providers/il_central_1/__init__.py index f29477f428..e5e5523f94 100644 --- a/src/cfnlint/data/schemas/providers/il_central_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/il_central_1/__init__.py @@ -367,6 +367,7 @@ "AWS::GuardDuty::ThreatIntelSet", "AWS::IAM::AccessKey", "AWS::IAM::Group", + "AWS::IAM::GroupPolicy", "AWS::IAM::InstanceProfile", "AWS::IAM::ManagedPolicy", "AWS::IAM::OIDCProvider", @@ -377,6 +378,7 @@ "AWS::IAM::ServerCertificate", "AWS::IAM::ServiceLinkedRole", "AWS::IAM::User", + "AWS::IAM::UserPolicy", "AWS::IAM::UserToGroupAddition", "AWS::IdentityStore::Group", "AWS::IdentityStore::GroupMembership", @@ -912,9 +914,7 @@ "aws-ecs-capacityprovider.json", "aws-ecs-clustercapacityproviderassociations.json", "aws-ecs-primarytaskset.json", - "aws-ecs-service.json", "aws-ecs-taskdefinition.json", - "aws-ecs-taskset.json", "aws-efs-accesspoint.json", "aws-efs-filesystem.json", "aws-efs-mounttarget.json", @@ -976,7 +976,6 @@ "aws-glue-trigger.json", "aws-glue-usageprofile.json", "aws-glue-workflow.json", - "aws-guardduty-detector.json", "aws-guardduty-filter.json", "aws-guardduty-ipset.json", "aws-guardduty-malwareprotectionplan.json", @@ -984,6 +983,7 @@ "aws-guardduty-member.json", "aws-guardduty-threatintelset.json", "aws-iam-group.json", + "aws-iam-grouppolicy.json", "aws-iam-oidcprovider.json", "aws-iam-role.json", "aws-iam-rolepolicy.json", @@ -991,6 +991,7 @@ "aws-iam-servercertificate.json", "aws-iam-servicelinkedrole.json", "aws-iam-user.json", + "aws-iam-userpolicy.json", "aws-iam-usertogroupaddition.json", "aws-identitystore-group.json", "aws-identitystore-groupmembership.json", @@ -1002,7 +1003,6 @@ "aws-imagebuilder-imagerecipe.json", "aws-imagebuilder-infrastructureconfiguration.json", "aws-imagebuilder-workflow.json", - "aws-kinesis-stream.json", "aws-kinesisanalyticsv2-application.json", "aws-kinesisfirehose-deliverystream.json", "aws-kms-alias.json", @@ -1048,7 +1048,6 @@ "aws-neptune-dbsubnetgroup.json", "aws-neptune-eventsubscription.json", "aws-networkfirewall-firewall.json", - "aws-networkfirewall-firewallpolicy.json", "aws-networkfirewall-loggingconfiguration.json", "aws-networkfirewall-rulegroup.json", "aws-networkfirewall-tlsinspectionconfiguration.json", @@ -1081,7 +1080,6 @@ "aws-pcaconnectorscep-connector.json", "aws-ram-permission.json", "aws-ram-resourceshare.json", - "aws-rds-dbcluster.json", "aws-rds-dbclusterparametergroup.json", "aws-rds-dbinstance.json", "aws-rds-dbparametergroup.json", @@ -1090,7 +1088,6 @@ "aws-rds-dbproxytargetgroup.json", "aws-rds-dbsecuritygroup.json", "aws-rds-dbsecuritygroupingress.json", - "aws-rds-dbsubnetgroup.json", "aws-rds-eventsubscription.json", "aws-rds-globalcluster.json", "aws-rds-integration.json", @@ -1149,6 +1146,7 @@ "aws-sagemaker-domain.json", "aws-sagemaker-featuregroup.json", "aws-sagemaker-image.json", + "aws-sagemaker-imageversion.json", "aws-sagemaker-mlflowtrackingserver.json", "aws-sagemaker-modelcard.json", "aws-sagemaker-modelpackage.json", @@ -1162,6 +1160,7 @@ "aws-secretsmanager-resourcepolicy.json", "aws-secretsmanager-rotationschedule.json", "aws-secretsmanager-secret.json", + "aws-secretsmanager-secrettargetattachment.json", "aws-securityhub-automationrule.json", "aws-securityhub-delegatedadmin.json", "aws-securityhub-hub.json", diff --git a/src/cfnlint/data/schemas/providers/il_central_1/aws-ecs-service.json b/src/cfnlint/data/schemas/providers/il_central_1/aws-ecs-service.json new file mode 100644 index 0000000000..ba7baa1de3 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/il_central_1/aws-ecs-service.json @@ -0,0 +1,585 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/DeploymentController", + "/properties/LaunchType", + "/properties/Role", + "/properties/SchedulingStrategy", + "/properties/ServiceName" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "CapacityProviderStrategyItem": { + "additionalProperties": false, + "properties": { + "Base": { + "type": "integer" + }, + "CapacityProvider": { + "type": "string" + }, + "Weight": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentAlarms": { + "additionalProperties": false, + "properties": { + "AlarmNames": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "AlarmNames", + "Rollback", + "Enable" + ], + "type": "object" + }, + "DeploymentCircuitBreaker": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "Enable", + "Rollback" + ], + "type": "object" + }, + "DeploymentConfiguration": { + "additionalProperties": false, + "properties": { + "Alarms": { + "$ref": "#/definitions/DeploymentAlarms" + }, + "DeploymentCircuitBreaker": { + "$ref": "#/definitions/DeploymentCircuitBreaker" + }, + "MaximumPercent": { + "type": "integer" + }, + "MinimumHealthyPercent": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentController": { + "additionalProperties": false, + "properties": { + "Type": { + "enum": [ + "CODE_DEPLOY", + "ECS", + "EXTERNAL" + ], + "type": "string" + } + }, + "type": "object" + }, + "EBSTagSpecification": { + "additionalProperties": false, + "properties": { + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "ResourceType": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "ResourceType" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "LoadBalancerName": { + "type": "string" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "LogConfiguration": { + "additionalProperties": false, + "properties": { + "LogDriver": { + "type": "string" + }, + "Options": { + "additionalProperties": false, + "patternProperties": { + ".{1,}": { + "type": "string" + } + }, + "type": "object" + }, + "SecretOptions": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Secret" + }, + "type": "array" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsvpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "PlacementConstraint": { + "additionalProperties": false, + "properties": { + "Expression": { + "type": "string" + }, + "Type": { + "enum": [ + "distinctInstance", + "memberOf" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "PlacementStrategy": { + "additionalProperties": false, + "properties": { + "Field": { + "type": "string" + }, + "Type": { + "enum": [ + "binpack", + "random", + "spread" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "Secret": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "ValueFrom": { + "type": "string" + } + }, + "required": [ + "Name", + "ValueFrom" + ], + "type": "object" + }, + "ServiceConnectClientAlias": { + "additionalProperties": false, + "properties": { + "DnsName": { + "type": "string" + }, + "Port": { + "type": "integer" + } + }, + "required": [ + "Port" + ], + "type": "object" + }, + "ServiceConnectConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + }, + "LogConfiguration": { + "$ref": "#/definitions/LogConfiguration" + }, + "Namespace": { + "type": "string" + }, + "Services": { + "items": { + "$ref": "#/definitions/ServiceConnectService" + }, + "type": "array" + } + }, + "required": [ + "Enabled" + ], + "type": "object" + }, + "ServiceConnectService": { + "additionalProperties": false, + "properties": { + "ClientAliases": { + "items": { + "$ref": "#/definitions/ServiceConnectClientAlias" + }, + "type": "array" + }, + "DiscoveryName": { + "type": "string" + }, + "IngressPortOverride": { + "type": "integer" + }, + "PortName": { + "type": "string" + }, + "Timeout": { + "$ref": "#/definitions/TimeoutConfiguration" + }, + "Tls": { + "$ref": "#/definitions/ServiceConnectTlsConfiguration" + } + }, + "required": [ + "PortName" + ], + "type": "object" + }, + "ServiceConnectTlsCertificateAuthority": { + "additionalProperties": false, + "properties": { + "AwsPcaAuthorityArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceConnectTlsConfiguration": { + "additionalProperties": false, + "properties": { + "IssuerCertificateAuthority": { + "$ref": "#/definitions/ServiceConnectTlsCertificateAuthority" + }, + "KmsKey": { + "type": "string" + }, + "RoleArn": { + "type": "string" + } + }, + "required": [ + "IssuerCertificateAuthority" + ], + "type": "object" + }, + "ServiceManagedEBSVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "Encrypted": { + "type": "boolean" + }, + "FilesystemType": { + "type": "string" + }, + "Iops": { + "type": "integer" + }, + "KmsKeyId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SizeInGiB": { + "type": "integer" + }, + "SnapshotId": { + "type": "string" + }, + "TagSpecifications": { + "items": { + "$ref": "#/definitions/EBSTagSpecification" + }, + "type": "array" + }, + "Throughput": { + "type": "integer" + }, + "VolumeType": { + "type": "string" + } + }, + "required": [ + "RoleArn" + ], + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "ManagedEBSVolume": { + "$ref": "#/definitions/ServiceManagedEBSVolumeConfiguration" + }, + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + }, + "TimeoutConfiguration": { + "additionalProperties": false, + "properties": { + "IdleTimeoutSeconds": { + "type": "integer" + }, + "PerRequestTimeoutSeconds": { + "type": "integer" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/ServiceArn", + "/properties/Cluster" + ], + "properties": { + "CapacityProviderStrategy": { + "items": { + "$ref": "#/definitions/CapacityProviderStrategyItem" + }, + "type": "array" + }, + "Cluster": { + "type": "string" + }, + "DeploymentConfiguration": { + "$ref": "#/definitions/DeploymentConfiguration" + }, + "DeploymentController": { + "$ref": "#/definitions/DeploymentController" + }, + "DesiredCount": { + "type": "integer" + }, + "EnableECSManagedTags": { + "type": "boolean" + }, + "EnableExecuteCommand": { + "type": "boolean" + }, + "HealthCheckGracePeriodSeconds": { + "type": "integer" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE", + "EXTERNAL" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "Name": { + "type": "string" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlacementConstraints": { + "items": { + "$ref": "#/definitions/PlacementConstraint" + }, + "type": "array" + }, + "PlacementStrategies": { + "items": { + "$ref": "#/definitions/PlacementStrategy" + }, + "type": "array" + }, + "PlatformVersion": { + "default": "LATEST", + "type": "string" + }, + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "Role": { + "type": "string" + }, + "SchedulingStrategy": { + "enum": [ + "DAEMON", + "REPLICA" + ], + "type": "string" + }, + "ServiceArn": { + "type": "string" + }, + "ServiceConnectConfiguration": { + "$ref": "#/definitions/ServiceConnectConfiguration" + }, + "ServiceName": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + }, + "VolumeConfigurations": { + "items": { + "$ref": "#/definitions/ServiceVolumeConfiguration" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/ServiceArn", + "/properties/Name" + ], + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::Service", + "writeOnlyProperties": [ + "/properties/ServiceConnectConfiguration", + "/properties/VolumeConfigurations" + ] +} diff --git a/src/cfnlint/data/schemas/providers/il_central_1/aws-ecs-taskset.json b/src/cfnlint/data/schemas/providers/il_central_1/aws-ecs-taskset.json new file mode 100644 index 0000000000..3491488499 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/il_central_1/aws-ecs-taskset.json @@ -0,0 +1,191 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/ExternalId", + "/properties/LaunchType", + "/properties/LoadBalancers", + "/properties/NetworkConfiguration", + "/properties/PlatformVersion", + "/properties/Service", + "/properties/ServiceRegistries", + "/properties/TaskDefinition" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "maxItems": 5, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "maxItems": 16, + "type": "array" + } + }, + "required": [ + "Subnets" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsVpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "Scale": { + "additionalProperties": false, + "properties": { + "Unit": { + "enum": [ + "PERCENT" + ], + "type": "string" + }, + "Value": { + "maximum": 100, + "minimum": 0, + "type": "number" + } + }, + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Cluster", + "/properties/Service", + "/properties/Id" + ], + "properties": { + "Cluster": { + "type": "string" + }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlatformVersion": { + "type": "string" + }, + "Scale": { + "$ref": "#/definitions/Scale" + }, + "Service": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "Cluster", + "Service", + "TaskDefinition" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-ecs.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::TaskSet" +} diff --git a/src/cfnlint/data/schemas/providers/il_central_1/aws-guardduty-detector.json b/src/cfnlint/data/schemas/providers/il_central_1/aws-guardduty-detector.json new file mode 100644 index 0000000000..efaad17ff9 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/il_central_1/aws-guardduty-detector.json @@ -0,0 +1,184 @@ +{ + "additionalProperties": false, + "definitions": { + "CFNDataSourceConfigurations": { + "additionalProperties": false, + "properties": { + "Kubernetes": { + "$ref": "#/definitions/CFNKubernetesConfiguration" + }, + "MalwareProtection": { + "$ref": "#/definitions/CFNMalwareProtectionConfiguration" + }, + "S3Logs": { + "$ref": "#/definitions/CFNS3LogsConfiguration" + } + }, + "type": "object" + }, + "CFNFeatureAdditionalConfiguration": { + "additionalProperties": false, + "properties": { + "Name": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "Status": { + "maxLength": 128, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "CFNFeatureConfiguration": { + "additionalProperties": false, + "properties": { + "AdditionalConfiguration": { + "items": { + "$ref": "#/definitions/CFNFeatureAdditionalConfiguration" + }, + "type": "array" + }, + "Name": { + "maxLength": 128, + "type": "string" + }, + "Status": { + "enum": [ + "ENABLED", + "DISABLED" + ], + "type": "string" + } + }, + "required": [ + "Name", + "Status" + ], + "type": "object" + }, + "CFNKubernetesAuditLogsConfiguration": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + } + }, + "required": [ + "Enable" + ], + "type": "object" + }, + "CFNKubernetesConfiguration": { + "additionalProperties": false, + "properties": { + "AuditLogs": { + "$ref": "#/definitions/CFNKubernetesAuditLogsConfiguration" + } + }, + "required": [ + "AuditLogs" + ], + "type": "object" + }, + "CFNMalwareProtectionConfiguration": { + "additionalProperties": false, + "properties": { + "ScanEc2InstanceWithFindings": { + "$ref": "#/definitions/CFNScanEc2InstanceWithFindingsConfiguration" + } + }, + "type": "object" + }, + "CFNS3LogsConfiguration": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + } + }, + "required": [ + "Enable" + ], + "type": "object" + }, + "CFNScanEc2InstanceWithFindingsConfiguration": { + "additionalProperties": false, + "properties": { + "EbsVolumes": { + "type": "boolean" + } + }, + "type": "object" + }, + "TagItem": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "DataSources": { + "$ref": "#/definitions/CFNDataSourceConfigurations" + }, + "Enable": { + "type": "boolean" + }, + "Features": { + "items": { + "$ref": "#/definitions/CFNFeatureConfiguration" + }, + "type": "array" + }, + "FindingPublishingFrequency": { + "enum": [ + "FIFTEEN_MINUTES", + "ONE_HOUR", + "SIX_HOURS" + ], + "type": "string" + }, + "Id": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/TagItem" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "Enable" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": false, + "taggable": true + }, + "typeName": "AWS::GuardDuty::Detector" +} diff --git a/src/cfnlint/data/schemas/providers/il_central_1/aws-kinesis-stream.json b/src/cfnlint/data/schemas/providers/il_central_1/aws-kinesis-stream.json new file mode 100644 index 0000000000..be1bc65c07 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/il_central_1/aws-kinesis-stream.json @@ -0,0 +1,133 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "StreamEncryption": { + "additionalProperties": false, + "properties": { + "EncryptionType": { + "enum": [ + "KMS" + ], + "type": "string" + }, + "KeyId": { + "anyOf": [ + { + "relationshipRef": { + "propertyPath": "/properties/Arn", + "typeName": "AWS::KMS::Key" + } + }, + { + "relationshipRef": { + "propertyPath": "/properties/KeyId", + "typeName": "AWS::KMS::Key" + } + } + ], + "maxLength": 2048, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "EncryptionType", + "KeyId" + ], + "type": "object" + }, + "StreamModeDetails": { + "additionalProperties": false, + "properties": { + "StreamMode": { + "enum": [ + "ON_DEMAND", + "PROVISIONED" + ], + "type": "string" + } + }, + "required": [ + "StreamMode" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Name" + ], + "properties": { + "Arn": { + "type": "string" + }, + "Name": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9_.-]+$", + "type": "string" + }, + "RetentionPeriodHours": { + "maximum": 8760, + "minimum": 1, + "type": "integer" + }, + "ShardCount": { + "maximum": 100000, + "minimum": 1, + "type": "integer" + }, + "StreamEncryption": { + "$ref": "#/definitions/StreamEncryption" + }, + "StreamModeDetails": { + "$ref": "#/definitions/StreamModeDetails", + "default": { + "StreamMode": "PROVISIONED" + } + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 50, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-kinesis.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Kinesis::Stream" +} diff --git a/src/cfnlint/data/schemas/providers/il_central_1/aws-networkfirewall-firewallpolicy.json b/src/cfnlint/data/schemas/providers/il_central_1/aws-networkfirewall-firewallpolicy.json new file mode 100644 index 0000000000..973b595561 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/il_central_1/aws-networkfirewall-firewallpolicy.json @@ -0,0 +1,332 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/FirewallPolicyName" + ], + "definitions": { + "ActionDefinition": { + "additionalProperties": false, + "properties": { + "PublishMetricAction": { + "$ref": "#/definitions/PublishMetricAction" + } + }, + "type": "object" + }, + "CustomAction": { + "additionalProperties": false, + "properties": { + "ActionDefinition": { + "$ref": "#/definitions/ActionDefinition" + }, + "ActionName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + } + }, + "required": [ + "ActionName", + "ActionDefinition" + ], + "type": "object" + }, + "Dimension": { + "additionalProperties": false, + "properties": { + "Value": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-_ ]+$", + "type": "string" + } + }, + "required": [ + "Value" + ], + "type": "object" + }, + "FirewallPolicy": { + "additionalProperties": false, + "properties": { + "PolicyVariables": { + "additionalProperties": false, + "properties": { + "RuleVariables": { + "$ref": "#/definitions/RuleVariables" + } + }, + "type": "object" + }, + "StatefulDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatefulEngineOptions": { + "$ref": "#/definitions/StatefulEngineOptions" + }, + "StatefulRuleGroupReferences": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/StatefulRuleGroupReference" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessCustomActions": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/CustomAction" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessFragmentDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessRuleGroupReferences": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/StatelessRuleGroupReference" + }, + "type": "array", + "uniqueItems": false + }, + "TLSInspectionConfigurationArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "StatelessDefaultActions", + "StatelessFragmentDefaultActions" + ], + "type": "object" + }, + "IPSet": { + "additionalProperties": false, + "properties": { + "Definition": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/VariableDefinition" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "OverrideAction": { + "enum": [ + "DROP_TO_ALERT" + ], + "type": "string" + }, + "Priority": { + "maximum": 65535, + "minimum": 1, + "type": "integer" + }, + "PublishMetricAction": { + "additionalProperties": false, + "properties": { + "Dimensions": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/Dimension" + }, + "type": "array", + "uniqueItems": false + } + }, + "required": [ + "Dimensions" + ], + "type": "object" + }, + "ResourceArn": { + "maxLength": 256, + "minLength": 1, + "pattern": "^(arn:aws.*)$", + "type": "string" + }, + "RuleOrder": { + "enum": [ + "DEFAULT_ACTION_ORDER", + "STRICT_ORDER" + ], + "type": "string" + }, + "RuleVariables": { + "additionalProperties": false, + "patternProperties": { + "^[A-Za-z0-9_]{1,32}$": { + "$ref": "#/definitions/IPSet" + } + }, + "type": "object" + }, + "StatefulEngineOptions": { + "additionalProperties": false, + "properties": { + "RuleOrder": { + "$ref": "#/definitions/RuleOrder" + }, + "StreamExceptionPolicy": { + "$ref": "#/definitions/StreamExceptionPolicy" + } + }, + "type": "object" + }, + "StatefulRuleGroupOverride": { + "additionalProperties": false, + "properties": { + "Action": { + "$ref": "#/definitions/OverrideAction" + } + }, + "type": "object" + }, + "StatefulRuleGroupReference": { + "additionalProperties": false, + "properties": { + "Override": { + "$ref": "#/definitions/StatefulRuleGroupOverride" + }, + "Priority": { + "$ref": "#/definitions/Priority" + }, + "ResourceArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "ResourceArn" + ], + "type": "object" + }, + "StatelessRuleGroupReference": { + "additionalProperties": false, + "properties": { + "Priority": { + "$ref": "#/definitions/Priority" + }, + "ResourceArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "ResourceArn", + "Priority" + ], + "type": "object" + }, + "StreamExceptionPolicy": { + "enum": [ + "DROP", + "CONTINUE", + "REJECT" + ], + "type": "string" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "^.*$", + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 0, + "pattern": "^.*$", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "VariableDefinition": { + "minLength": 1, + "pattern": "^.*$", + "type": "string" + } + }, + "primaryIdentifier": [ + "/properties/FirewallPolicyArn" + ], + "properties": { + "Description": { + "maxLength": 512, + "minLength": 1, + "pattern": "^.*$", + "type": "string" + }, + "FirewallPolicy": { + "$ref": "#/definitions/FirewallPolicy" + }, + "FirewallPolicyArn": { + "$ref": "#/definitions/ResourceArn" + }, + "FirewallPolicyId": { + "maxLength": 36, + "minLength": 36, + "pattern": "^([0-9a-f]{8})-([0-9a-f]{4}-){3}([0-9a-f]{12})$", + "type": "string" + }, + "FirewallPolicyName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-]+$", + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + } + }, + "readOnlyProperties": [ + "/properties/FirewallPolicyArn", + "/properties/FirewallPolicyId" + ], + "required": [ + "FirewallPolicyName", + "FirewallPolicy" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-networkfirewall.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::NetworkFirewall::FirewallPolicy" +} diff --git a/src/cfnlint/data/schemas/providers/il_central_1/aws-rds-dbcluster.json b/src/cfnlint/data/schemas/providers/il_central_1/aws-rds-dbcluster.json new file mode 100644 index 0000000000..46000178b5 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/il_central_1/aws-rds-dbcluster.json @@ -0,0 +1,397 @@ +{ + "additionalProperties": false, + "conditionalCreateOnlyProperties": [ + "/properties/Engine", + "/properties/GlobalClusterIdentifier", + "/properties/MasterUsername" + ], + "createOnlyProperties": [ + "/properties/AvailabilityZones", + "/properties/DBClusterIdentifier", + "/properties/DBSubnetGroupName", + "/properties/DBSystemId", + "/properties/DatabaseName", + "/properties/EngineMode", + "/properties/KmsKeyId", + "/properties/PubliclyAccessible", + "/properties/RestoreToTime", + "/properties/RestoreType", + "/properties/SnapshotIdentifier", + "/properties/SourceDBClusterIdentifier", + "/properties/SourceRegion", + "/properties/StorageEncrypted", + "/properties/UseLatestRestorableTime" + ], + "definitions": { + "DBClusterRole": { + "additionalProperties": false, + "properties": { + "FeatureName": { + "type": "string" + }, + "RoleArn": { + "type": "string" + } + }, + "required": [ + "RoleArn" + ], + "type": "object" + }, + "Endpoint": { + "additionalProperties": false, + "properties": { + "Address": { + "type": "string" + }, + "Port": { + "type": "string" + } + }, + "type": "object" + }, + "MasterUserSecret": { + "additionalProperties": false, + "properties": { + "KmsKeyId": { + "type": "string" + }, + "SecretArn": { + "type": "string" + } + }, + "type": "object" + }, + "ReadEndpoint": { + "additionalProperties": false, + "properties": { + "Address": { + "type": "string" + } + }, + "type": "object" + }, + "ScalingConfiguration": { + "additionalProperties": false, + "properties": { + "AutoPause": { + "type": "boolean" + }, + "MaxCapacity": { + "type": "integer" + }, + "MinCapacity": { + "type": "integer" + }, + "SecondsBeforeTimeout": { + "type": "integer" + }, + "SecondsUntilAutoPause": { + "type": "integer" + }, + "TimeoutAction": { + "type": "string" + } + }, + "type": "object" + }, + "ServerlessV2ScalingConfiguration": { + "additionalProperties": false, + "properties": { + "MaxCapacity": { + "type": "number" + }, + "MinCapacity": { + "type": "number" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/DBClusterIdentifier" + ], + "properties": { + "AllocatedStorage": { + "type": "integer" + }, + "AssociatedRoles": { + "items": { + "$ref": "#/definitions/DBClusterRole" + }, + "type": "array", + "uniqueItems": true + }, + "AutoMinorVersionUpgrade": { + "type": "boolean" + }, + "AvailabilityZones": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "BacktrackWindow": { + "minimum": 0, + "type": "integer" + }, + "BackupRetentionPeriod": { + "default": 1, + "maximum": 35, + "minimum": 1, + "type": "integer" + }, + "CopyTagsToSnapshot": { + "type": "boolean" + }, + "DBClusterArn": { + "type": "string" + }, + "DBClusterIdentifier": { + "maxLength": 63, + "minLength": 1, + "pattern": "^[a-zA-Z]{1}(?:-?[a-zA-Z0-9]){0,62}$", + "type": "string" + }, + "DBClusterInstanceClass": { + "type": "string" + }, + "DBClusterParameterGroupName": { + "type": "string" + }, + "DBClusterResourceId": { + "type": "string" + }, + "DBInstanceParameterGroupName": { + "type": "string" + }, + "DBSubnetGroupName": { + "type": "string" + }, + "DBSystemId": { + "type": "string" + }, + "DatabaseName": { + "type": "string" + }, + "DeletionProtection": { + "type": "boolean" + }, + "Domain": { + "type": "string" + }, + "DomainIAMRoleName": { + "type": "string" + }, + "EnableCloudwatchLogsExports": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "EnableGlobalWriteForwarding": { + "type": "boolean" + }, + "EnableHttpEndpoint": { + "type": "boolean" + }, + "EnableIAMDatabaseAuthentication": { + "type": "boolean" + }, + "EnableLocalWriteForwarding": { + "type": "boolean" + }, + "Endpoint": { + "$ref": "#/definitions/Endpoint" + }, + "Engine": { + "type": "string" + }, + "EngineLifecycleSupport": { + "type": "string" + }, + "EngineMode": { + "type": "string" + }, + "EngineVersion": { + "type": "string" + }, + "GlobalClusterIdentifier": { + "maxLength": 63, + "minLength": 0, + "pattern": "^$|^[a-zA-Z]{1}(?:-?[a-zA-Z0-9]){0,62}$", + "type": "string" + }, + "Iops": { + "type": "integer" + }, + "KmsKeyId": { + "type": "string" + }, + "ManageMasterUserPassword": { + "type": "boolean" + }, + "MasterUserPassword": { + "type": "string" + }, + "MasterUserSecret": { + "$ref": "#/definitions/MasterUserSecret" + }, + "MasterUsername": { + "minLength": 1, + "pattern": "^[a-zA-Z]{1}[a-zA-Z0-9_]*$", + "type": "string" + }, + "MonitoringInterval": { + "type": "integer" + }, + "MonitoringRoleArn": { + "type": "string" + }, + "NetworkType": { + "type": "string" + }, + "PerformanceInsightsEnabled": { + "type": "boolean" + }, + "PerformanceInsightsKmsKeyId": { + "type": "string" + }, + "PerformanceInsightsRetentionPeriod": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "PreferredBackupWindow": { + "type": "string" + }, + "PreferredMaintenanceWindow": { + "type": "string" + }, + "PubliclyAccessible": { + "type": "boolean" + }, + "ReadEndpoint": { + "$ref": "#/definitions/ReadEndpoint" + }, + "ReplicationSourceIdentifier": { + "type": "string" + }, + "RestoreToTime": { + "type": "string" + }, + "RestoreType": { + "type": "string" + }, + "ScalingConfiguration": { + "$ref": "#/definitions/ScalingConfiguration" + }, + "ServerlessV2ScalingConfiguration": { + "$ref": "#/definitions/ServerlessV2ScalingConfiguration" + }, + "SnapshotIdentifier": { + "type": "string" + }, + "SourceDBClusterIdentifier": { + "type": "string" + }, + "SourceRegion": { + "type": "string" + }, + "StorageEncrypted": { + "type": "boolean" + }, + "StorageThroughput": { + "type": "integer" + }, + "StorageType": { + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 50, + "type": "array", + "uniqueItems": true + }, + "UseLatestRestorableTime": { + "type": "boolean" + }, + "VpcSecurityGroupIds": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": true + } + }, + "propertyTransform": { + "/properties/DBClusterIdentifier": "$lowercase(DBClusterIdentifier)", + "/properties/DBClusterParameterGroupName": "$lowercase(DBClusterParameterGroupName)", + "/properties/DBSubnetGroupName": "$lowercase(DBSubnetGroupName)", + "/properties/EnableHttpEndpoint": "$lowercase($string(EngineMode)) = 'serverless' ? EnableHttpEndpoint : ($lowercase($string(Engine)) in ['aurora-postgresql', 'aurora-mysql'] ? EnableHttpEndpoint : false )", + "/properties/Engine": "$lowercase(Engine)", + "/properties/EngineVersion": "$join([$string(EngineVersion), \".*\"])", + "/properties/KmsKeyId": "$join([\"arn:(aws)[-]{0,1}[a-z]{0,2}[-]{0,1}[a-z]{0,3}:kms:[a-z]{2}[-]{1}[a-z]{3,10}[-]{0,1}[a-z]{0,10}[-]{1}[1-3]{1}:[0-9]{12}[:]{1}key\\/\", KmsKeyId])", + "/properties/MasterUserSecret/KmsKeyId": "$join([\"arn:(aws)[-]{0,1}[a-z]{0,2}[-]{0,1}[a-z]{0,3}:kms:[a-z]{2}[-]{1}[a-z]{3,10}[-]{0,1}[a-z]{0,10}[-]{1}[1-3]{1}:[0-9]{12}[:]{1}key\\/\", MasterUserSecret.KmsKeyId])", + "/properties/NetworkType": "$lowercase(NetworkType)", + "/properties/PerformanceInsightsKmsKeyId": "$join([\"arn:(aws)[-]{0,1}[a-z]{0,2}[-]{0,1}[a-z]{0,3}:kms:[a-z]{2}[-]{1}[a-z]{3,10}[-]{0,1}[a-z]{0,10}[-]{1}[1-3]{1}:[0-9]{12}[:]{1}key\\/\", PerformanceInsightsKmsKeyId])", + "/properties/PreferredMaintenanceWindow": "$lowercase(PreferredMaintenanceWindow)", + "/properties/SnapshotIdentifier": "$lowercase(SnapshotIdentifier)", + "/properties/SourceDBClusterIdentifier": "$lowercase(SourceDBClusterIdentifier)", + "/properties/StorageType": "$lowercase(StorageType)" + }, + "readOnlyProperties": [ + "/properties/DBClusterArn", + "/properties/DBClusterResourceId", + "/properties/Endpoint", + "/properties/Endpoint/Address", + "/properties/Endpoint/Port", + "/properties/ReadEndpoint/Address", + "/properties/MasterUserSecret/SecretArn", + "/properties/StorageThroughput" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-rds", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::RDS::DBCluster", + "writeOnlyProperties": [ + "/properties/DBInstanceParameterGroupName", + "/properties/MasterUserPassword", + "/properties/RestoreToTime", + "/properties/RestoreType", + "/properties/SnapshotIdentifier", + "/properties/SourceDBClusterIdentifier", + "/properties/SourceRegion", + "/properties/UseLatestRestorableTime" + ] +} diff --git a/src/cfnlint/data/schemas/providers/il_central_1/aws-rds-dbsubnetgroup.json b/src/cfnlint/data/schemas/providers/il_central_1/aws-rds-dbsubnetgroup.json new file mode 100644 index 0000000000..d228afbbad --- /dev/null +++ b/src/cfnlint/data/schemas/providers/il_central_1/aws-rds-dbsubnetgroup.json @@ -0,0 +1,71 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/DBSubnetGroupName" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/DBSubnetGroupName" + ], + "properties": { + "DBSubnetGroupDescription": { + "type": "string" + }, + "DBSubnetGroupName": { + "type": "string" + }, + "SubnetIds": { + "insertionOrder": false, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 50, + "type": "array", + "uniqueItems": false + } + }, + "propertyTransform": { + "/properties/DBSubnetGroupName": "$lowercase(DBSubnetGroupName)" + }, + "required": [ + "DBSubnetGroupDescription", + "SubnetIds" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-rds", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::RDS::DBSubnetGroup" +} diff --git a/src/cfnlint/data/schemas/providers/il_central_1/aws-sagemaker-imageversion.json b/src/cfnlint/data/schemas/providers/il_central_1/aws-sagemaker-imageversion.json deleted file mode 100644 index e7c91ccc8d..0000000000 --- a/src/cfnlint/data/schemas/providers/il_central_1/aws-sagemaker-imageversion.json +++ /dev/null @@ -1,172 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/ImageName", - "/properties/BaseImage" - ], - "definitions": { - "Alias": { - "maxLength": 128, - "minLength": 1, - "pattern": "(?!^[.-])^([a-zA-Z0-9-_.]+)$", - "type": "string" - }, - "Aliases": { - "items": { - "$ref": "#/definitions/Alias" - }, - "type": "array" - }, - "BaseImage": { - "maxLength": 255, - "minLength": 1, - "pattern": ".+", - "type": "string" - }, - "ContainerImage": { - "maxLength": 255, - "minLength": 1, - "pattern": ".+", - "type": "string" - }, - "Horovod": { - "type": "boolean" - }, - "ImageArn": { - "maxLength": 256, - "minLength": 1, - "pattern": "^arn:aws(-[\\w]+)*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:image\\/[a-zA-Z0-9]([-.]?[a-zA-Z0-9])*$", - "type": "string" - }, - "ImageName": { - "maxLength": 63, - "minLength": 1, - "pattern": "^[A-Za-z0-9]([-.]?[A-Za-z0-9])*$", - "type": "string" - }, - "ImageVersionArn": { - "maxLength": 256, - "minLength": 1, - "pattern": "^arn:aws(-[\\w]+)*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:image-version\\/[a-zA-Z0-9]([-.]?[a-zA-Z0-9])*\\/[0-9]+$", - "type": "string" - }, - "JobType": { - "enum": [ - "TRAINING", - "INFERENCE", - "NOTEBOOK_KERNEL" - ], - "type": "string" - }, - "MLFramework": { - "maxLength": 128, - "minLength": 1, - "pattern": "^[a-zA-Z]+ ?\\d+\\.\\d+(\\.\\d+)?$", - "type": "string" - }, - "Processor": { - "enum": [ - "CPU", - "GPU" - ], - "type": "string" - }, - "ProgrammingLang": { - "maxLength": 128, - "minLength": 1, - "pattern": "^[a-zA-Z]+ ?\\d+\\.\\d+(\\.\\d+)?$", - "type": "string" - }, - "ReleaseNotes": { - "maxLength": 255, - "minLength": 1, - "pattern": ".*", - "type": "string" - }, - "VendorGuidance": { - "enum": [ - "NOT_PROVIDED", - "STABLE", - "TO_BE_ARCHIVED", - "ARCHIVED" - ], - "type": "string" - }, - "Version": { - "minimum": 1, - "type": "integer" - } - }, - "primaryIdentifier": [ - "/properties/ImageVersionArn" - ], - "properties": { - "Alias": { - "$ref": "#/definitions/Alias" - }, - "Aliases": { - "$ref": "#/definitions/Aliases" - }, - "BaseImage": { - "$ref": "#/definitions/BaseImage" - }, - "ContainerImage": { - "$ref": "#/definitions/ContainerImage" - }, - "Horovod": { - "$ref": "#/definitions/Horovod" - }, - "ImageArn": { - "$ref": "#/definitions/ImageArn" - }, - "ImageName": { - "$ref": "#/definitions/ImageName" - }, - "ImageVersionArn": { - "$ref": "#/definitions/ImageVersionArn" - }, - "JobType": { - "$ref": "#/definitions/JobType" - }, - "MLFramework": { - "$ref": "#/definitions/MLFramework" - }, - "Processor": { - "$ref": "#/definitions/Processor" - }, - "ProgrammingLang": { - "$ref": "#/definitions/ProgrammingLang" - }, - "ReleaseNotes": { - "$ref": "#/definitions/ReleaseNotes" - }, - "VendorGuidance": { - "$ref": "#/definitions/VendorGuidance" - }, - "Version": { - "$ref": "#/definitions/Version" - } - }, - "readOnlyProperties": [ - "/properties/ImageVersionArn", - "/properties/ImageArn", - "/properties/Version", - "/properties/ContainerImage" - ], - "required": [ - "ImageName", - "BaseImage" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sagemaker", - "tagging": { - "cloudFormationSystemTags": false, - "tagOnCreate": false, - "tagUpdatable": false, - "taggable": false - }, - "typeName": "AWS::SageMaker::ImageVersion", - "writeOnlyProperties": [ - "/properties/Aliases", - "/properties/Alias" - ] -} diff --git a/src/cfnlint/data/schemas/providers/il_central_1/aws-secretsmanager-secrettargetattachment.json b/src/cfnlint/data/schemas/providers/il_central_1/aws-secretsmanager-secrettargetattachment.json deleted file mode 100644 index 8b5501d290..0000000000 --- a/src/cfnlint/data/schemas/providers/il_central_1/aws-secretsmanager-secrettargetattachment.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "additionalProperties": false, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "Id": { - "type": "string" - }, - "SecretId": { - "type": "string" - }, - "TargetId": { - "type": "string" - }, - "TargetType": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "SecretId", - "TargetType", - "TargetId" - ], - "typeName": "AWS::SecretsManager::SecretTargetAttachment" -} diff --git a/src/cfnlint/data/schemas/providers/me_central_1/__init__.py b/src/cfnlint/data/schemas/providers/me_central_1/__init__.py index f956801503..dc964f9d7b 100644 --- a/src/cfnlint/data/schemas/providers/me_central_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/me_central_1/__init__.py @@ -927,9 +927,7 @@ "aws-ecs-cluster.json", "aws-ecs-clustercapacityproviderassociations.json", "aws-ecs-primarytaskset.json", - "aws-ecs-service.json", "aws-ecs-taskdefinition.json", - "aws-ecs-taskset.json", "aws-efs-accesspoint.json", "aws-efs-filesystem.json", "aws-efs-mounttarget.json", @@ -1003,7 +1001,6 @@ "aws-glue-trigger.json", "aws-glue-usageprofile.json", "aws-glue-workflow.json", - "aws-guardduty-detector.json", "aws-guardduty-filter.json", "aws-guardduty-ipset.json", "aws-guardduty-malwareprotectionplan.json", @@ -1062,7 +1059,6 @@ "aws-iot-thingtype.json", "aws-iot-topicrule.json", "aws-iot-topicruledestination.json", - "aws-kinesis-stream.json", "aws-kinesisanalyticsv2-application.json", "aws-kinesisfirehose-deliverystream.json", "aws-kms-alias.json", @@ -1119,7 +1115,6 @@ "aws-neptune-dbsubnetgroup.json", "aws-neptune-eventsubscription.json", "aws-networkfirewall-firewall.json", - "aws-networkfirewall-firewallpolicy.json", "aws-networkfirewall-loggingconfiguration.json", "aws-networkfirewall-rulegroup.json", "aws-networkfirewall-tlsinspectionconfiguration.json", @@ -1223,6 +1218,7 @@ "aws-sagemaker-appimageconfig.json", "aws-sagemaker-domain.json", "aws-sagemaker-image.json", + "aws-sagemaker-imageversion.json", "aws-sagemaker-inferencecomponent.json", "aws-sagemaker-mlflowtrackingserver.json", "aws-sagemaker-modelcard.json", diff --git a/src/cfnlint/data/schemas/providers/me_central_1/aws-ecs-service.json b/src/cfnlint/data/schemas/providers/me_central_1/aws-ecs-service.json new file mode 100644 index 0000000000..ba7baa1de3 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/me_central_1/aws-ecs-service.json @@ -0,0 +1,585 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/DeploymentController", + "/properties/LaunchType", + "/properties/Role", + "/properties/SchedulingStrategy", + "/properties/ServiceName" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "CapacityProviderStrategyItem": { + "additionalProperties": false, + "properties": { + "Base": { + "type": "integer" + }, + "CapacityProvider": { + "type": "string" + }, + "Weight": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentAlarms": { + "additionalProperties": false, + "properties": { + "AlarmNames": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "AlarmNames", + "Rollback", + "Enable" + ], + "type": "object" + }, + "DeploymentCircuitBreaker": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "Enable", + "Rollback" + ], + "type": "object" + }, + "DeploymentConfiguration": { + "additionalProperties": false, + "properties": { + "Alarms": { + "$ref": "#/definitions/DeploymentAlarms" + }, + "DeploymentCircuitBreaker": { + "$ref": "#/definitions/DeploymentCircuitBreaker" + }, + "MaximumPercent": { + "type": "integer" + }, + "MinimumHealthyPercent": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentController": { + "additionalProperties": false, + "properties": { + "Type": { + "enum": [ + "CODE_DEPLOY", + "ECS", + "EXTERNAL" + ], + "type": "string" + } + }, + "type": "object" + }, + "EBSTagSpecification": { + "additionalProperties": false, + "properties": { + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "ResourceType": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "ResourceType" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "LoadBalancerName": { + "type": "string" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "LogConfiguration": { + "additionalProperties": false, + "properties": { + "LogDriver": { + "type": "string" + }, + "Options": { + "additionalProperties": false, + "patternProperties": { + ".{1,}": { + "type": "string" + } + }, + "type": "object" + }, + "SecretOptions": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Secret" + }, + "type": "array" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsvpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "PlacementConstraint": { + "additionalProperties": false, + "properties": { + "Expression": { + "type": "string" + }, + "Type": { + "enum": [ + "distinctInstance", + "memberOf" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "PlacementStrategy": { + "additionalProperties": false, + "properties": { + "Field": { + "type": "string" + }, + "Type": { + "enum": [ + "binpack", + "random", + "spread" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "Secret": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "ValueFrom": { + "type": "string" + } + }, + "required": [ + "Name", + "ValueFrom" + ], + "type": "object" + }, + "ServiceConnectClientAlias": { + "additionalProperties": false, + "properties": { + "DnsName": { + "type": "string" + }, + "Port": { + "type": "integer" + } + }, + "required": [ + "Port" + ], + "type": "object" + }, + "ServiceConnectConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + }, + "LogConfiguration": { + "$ref": "#/definitions/LogConfiguration" + }, + "Namespace": { + "type": "string" + }, + "Services": { + "items": { + "$ref": "#/definitions/ServiceConnectService" + }, + "type": "array" + } + }, + "required": [ + "Enabled" + ], + "type": "object" + }, + "ServiceConnectService": { + "additionalProperties": false, + "properties": { + "ClientAliases": { + "items": { + "$ref": "#/definitions/ServiceConnectClientAlias" + }, + "type": "array" + }, + "DiscoveryName": { + "type": "string" + }, + "IngressPortOverride": { + "type": "integer" + }, + "PortName": { + "type": "string" + }, + "Timeout": { + "$ref": "#/definitions/TimeoutConfiguration" + }, + "Tls": { + "$ref": "#/definitions/ServiceConnectTlsConfiguration" + } + }, + "required": [ + "PortName" + ], + "type": "object" + }, + "ServiceConnectTlsCertificateAuthority": { + "additionalProperties": false, + "properties": { + "AwsPcaAuthorityArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceConnectTlsConfiguration": { + "additionalProperties": false, + "properties": { + "IssuerCertificateAuthority": { + "$ref": "#/definitions/ServiceConnectTlsCertificateAuthority" + }, + "KmsKey": { + "type": "string" + }, + "RoleArn": { + "type": "string" + } + }, + "required": [ + "IssuerCertificateAuthority" + ], + "type": "object" + }, + "ServiceManagedEBSVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "Encrypted": { + "type": "boolean" + }, + "FilesystemType": { + "type": "string" + }, + "Iops": { + "type": "integer" + }, + "KmsKeyId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SizeInGiB": { + "type": "integer" + }, + "SnapshotId": { + "type": "string" + }, + "TagSpecifications": { + "items": { + "$ref": "#/definitions/EBSTagSpecification" + }, + "type": "array" + }, + "Throughput": { + "type": "integer" + }, + "VolumeType": { + "type": "string" + } + }, + "required": [ + "RoleArn" + ], + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "ManagedEBSVolume": { + "$ref": "#/definitions/ServiceManagedEBSVolumeConfiguration" + }, + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + }, + "TimeoutConfiguration": { + "additionalProperties": false, + "properties": { + "IdleTimeoutSeconds": { + "type": "integer" + }, + "PerRequestTimeoutSeconds": { + "type": "integer" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/ServiceArn", + "/properties/Cluster" + ], + "properties": { + "CapacityProviderStrategy": { + "items": { + "$ref": "#/definitions/CapacityProviderStrategyItem" + }, + "type": "array" + }, + "Cluster": { + "type": "string" + }, + "DeploymentConfiguration": { + "$ref": "#/definitions/DeploymentConfiguration" + }, + "DeploymentController": { + "$ref": "#/definitions/DeploymentController" + }, + "DesiredCount": { + "type": "integer" + }, + "EnableECSManagedTags": { + "type": "boolean" + }, + "EnableExecuteCommand": { + "type": "boolean" + }, + "HealthCheckGracePeriodSeconds": { + "type": "integer" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE", + "EXTERNAL" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "Name": { + "type": "string" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlacementConstraints": { + "items": { + "$ref": "#/definitions/PlacementConstraint" + }, + "type": "array" + }, + "PlacementStrategies": { + "items": { + "$ref": "#/definitions/PlacementStrategy" + }, + "type": "array" + }, + "PlatformVersion": { + "default": "LATEST", + "type": "string" + }, + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "Role": { + "type": "string" + }, + "SchedulingStrategy": { + "enum": [ + "DAEMON", + "REPLICA" + ], + "type": "string" + }, + "ServiceArn": { + "type": "string" + }, + "ServiceConnectConfiguration": { + "$ref": "#/definitions/ServiceConnectConfiguration" + }, + "ServiceName": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + }, + "VolumeConfigurations": { + "items": { + "$ref": "#/definitions/ServiceVolumeConfiguration" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/ServiceArn", + "/properties/Name" + ], + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::Service", + "writeOnlyProperties": [ + "/properties/ServiceConnectConfiguration", + "/properties/VolumeConfigurations" + ] +} diff --git a/src/cfnlint/data/schemas/providers/me_central_1/aws-ecs-taskset.json b/src/cfnlint/data/schemas/providers/me_central_1/aws-ecs-taskset.json new file mode 100644 index 0000000000..3491488499 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/me_central_1/aws-ecs-taskset.json @@ -0,0 +1,191 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/ExternalId", + "/properties/LaunchType", + "/properties/LoadBalancers", + "/properties/NetworkConfiguration", + "/properties/PlatformVersion", + "/properties/Service", + "/properties/ServiceRegistries", + "/properties/TaskDefinition" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "maxItems": 5, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "maxItems": 16, + "type": "array" + } + }, + "required": [ + "Subnets" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsVpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "Scale": { + "additionalProperties": false, + "properties": { + "Unit": { + "enum": [ + "PERCENT" + ], + "type": "string" + }, + "Value": { + "maximum": 100, + "minimum": 0, + "type": "number" + } + }, + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Cluster", + "/properties/Service", + "/properties/Id" + ], + "properties": { + "Cluster": { + "type": "string" + }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlatformVersion": { + "type": "string" + }, + "Scale": { + "$ref": "#/definitions/Scale" + }, + "Service": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "Cluster", + "Service", + "TaskDefinition" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-ecs.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::TaskSet" +} diff --git a/src/cfnlint/data/schemas/providers/me_central_1/aws-guardduty-detector.json b/src/cfnlint/data/schemas/providers/me_central_1/aws-guardduty-detector.json new file mode 100644 index 0000000000..efaad17ff9 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/me_central_1/aws-guardduty-detector.json @@ -0,0 +1,184 @@ +{ + "additionalProperties": false, + "definitions": { + "CFNDataSourceConfigurations": { + "additionalProperties": false, + "properties": { + "Kubernetes": { + "$ref": "#/definitions/CFNKubernetesConfiguration" + }, + "MalwareProtection": { + "$ref": "#/definitions/CFNMalwareProtectionConfiguration" + }, + "S3Logs": { + "$ref": "#/definitions/CFNS3LogsConfiguration" + } + }, + "type": "object" + }, + "CFNFeatureAdditionalConfiguration": { + "additionalProperties": false, + "properties": { + "Name": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "Status": { + "maxLength": 128, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "CFNFeatureConfiguration": { + "additionalProperties": false, + "properties": { + "AdditionalConfiguration": { + "items": { + "$ref": "#/definitions/CFNFeatureAdditionalConfiguration" + }, + "type": "array" + }, + "Name": { + "maxLength": 128, + "type": "string" + }, + "Status": { + "enum": [ + "ENABLED", + "DISABLED" + ], + "type": "string" + } + }, + "required": [ + "Name", + "Status" + ], + "type": "object" + }, + "CFNKubernetesAuditLogsConfiguration": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + } + }, + "required": [ + "Enable" + ], + "type": "object" + }, + "CFNKubernetesConfiguration": { + "additionalProperties": false, + "properties": { + "AuditLogs": { + "$ref": "#/definitions/CFNKubernetesAuditLogsConfiguration" + } + }, + "required": [ + "AuditLogs" + ], + "type": "object" + }, + "CFNMalwareProtectionConfiguration": { + "additionalProperties": false, + "properties": { + "ScanEc2InstanceWithFindings": { + "$ref": "#/definitions/CFNScanEc2InstanceWithFindingsConfiguration" + } + }, + "type": "object" + }, + "CFNS3LogsConfiguration": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + } + }, + "required": [ + "Enable" + ], + "type": "object" + }, + "CFNScanEc2InstanceWithFindingsConfiguration": { + "additionalProperties": false, + "properties": { + "EbsVolumes": { + "type": "boolean" + } + }, + "type": "object" + }, + "TagItem": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "DataSources": { + "$ref": "#/definitions/CFNDataSourceConfigurations" + }, + "Enable": { + "type": "boolean" + }, + "Features": { + "items": { + "$ref": "#/definitions/CFNFeatureConfiguration" + }, + "type": "array" + }, + "FindingPublishingFrequency": { + "enum": [ + "FIFTEEN_MINUTES", + "ONE_HOUR", + "SIX_HOURS" + ], + "type": "string" + }, + "Id": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/TagItem" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "Enable" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": false, + "taggable": true + }, + "typeName": "AWS::GuardDuty::Detector" +} diff --git a/src/cfnlint/data/schemas/providers/me_central_1/aws-kinesis-stream.json b/src/cfnlint/data/schemas/providers/me_central_1/aws-kinesis-stream.json new file mode 100644 index 0000000000..be1bc65c07 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/me_central_1/aws-kinesis-stream.json @@ -0,0 +1,133 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "StreamEncryption": { + "additionalProperties": false, + "properties": { + "EncryptionType": { + "enum": [ + "KMS" + ], + "type": "string" + }, + "KeyId": { + "anyOf": [ + { + "relationshipRef": { + "propertyPath": "/properties/Arn", + "typeName": "AWS::KMS::Key" + } + }, + { + "relationshipRef": { + "propertyPath": "/properties/KeyId", + "typeName": "AWS::KMS::Key" + } + } + ], + "maxLength": 2048, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "EncryptionType", + "KeyId" + ], + "type": "object" + }, + "StreamModeDetails": { + "additionalProperties": false, + "properties": { + "StreamMode": { + "enum": [ + "ON_DEMAND", + "PROVISIONED" + ], + "type": "string" + } + }, + "required": [ + "StreamMode" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Name" + ], + "properties": { + "Arn": { + "type": "string" + }, + "Name": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9_.-]+$", + "type": "string" + }, + "RetentionPeriodHours": { + "maximum": 8760, + "minimum": 1, + "type": "integer" + }, + "ShardCount": { + "maximum": 100000, + "minimum": 1, + "type": "integer" + }, + "StreamEncryption": { + "$ref": "#/definitions/StreamEncryption" + }, + "StreamModeDetails": { + "$ref": "#/definitions/StreamModeDetails", + "default": { + "StreamMode": "PROVISIONED" + } + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 50, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-kinesis.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Kinesis::Stream" +} diff --git a/src/cfnlint/data/schemas/providers/me_central_1/aws-networkfirewall-firewallpolicy.json b/src/cfnlint/data/schemas/providers/me_central_1/aws-networkfirewall-firewallpolicy.json new file mode 100644 index 0000000000..973b595561 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/me_central_1/aws-networkfirewall-firewallpolicy.json @@ -0,0 +1,332 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/FirewallPolicyName" + ], + "definitions": { + "ActionDefinition": { + "additionalProperties": false, + "properties": { + "PublishMetricAction": { + "$ref": "#/definitions/PublishMetricAction" + } + }, + "type": "object" + }, + "CustomAction": { + "additionalProperties": false, + "properties": { + "ActionDefinition": { + "$ref": "#/definitions/ActionDefinition" + }, + "ActionName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + } + }, + "required": [ + "ActionName", + "ActionDefinition" + ], + "type": "object" + }, + "Dimension": { + "additionalProperties": false, + "properties": { + "Value": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-_ ]+$", + "type": "string" + } + }, + "required": [ + "Value" + ], + "type": "object" + }, + "FirewallPolicy": { + "additionalProperties": false, + "properties": { + "PolicyVariables": { + "additionalProperties": false, + "properties": { + "RuleVariables": { + "$ref": "#/definitions/RuleVariables" + } + }, + "type": "object" + }, + "StatefulDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatefulEngineOptions": { + "$ref": "#/definitions/StatefulEngineOptions" + }, + "StatefulRuleGroupReferences": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/StatefulRuleGroupReference" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessCustomActions": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/CustomAction" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessFragmentDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessRuleGroupReferences": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/StatelessRuleGroupReference" + }, + "type": "array", + "uniqueItems": false + }, + "TLSInspectionConfigurationArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "StatelessDefaultActions", + "StatelessFragmentDefaultActions" + ], + "type": "object" + }, + "IPSet": { + "additionalProperties": false, + "properties": { + "Definition": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/VariableDefinition" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "OverrideAction": { + "enum": [ + "DROP_TO_ALERT" + ], + "type": "string" + }, + "Priority": { + "maximum": 65535, + "minimum": 1, + "type": "integer" + }, + "PublishMetricAction": { + "additionalProperties": false, + "properties": { + "Dimensions": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/Dimension" + }, + "type": "array", + "uniqueItems": false + } + }, + "required": [ + "Dimensions" + ], + "type": "object" + }, + "ResourceArn": { + "maxLength": 256, + "minLength": 1, + "pattern": "^(arn:aws.*)$", + "type": "string" + }, + "RuleOrder": { + "enum": [ + "DEFAULT_ACTION_ORDER", + "STRICT_ORDER" + ], + "type": "string" + }, + "RuleVariables": { + "additionalProperties": false, + "patternProperties": { + "^[A-Za-z0-9_]{1,32}$": { + "$ref": "#/definitions/IPSet" + } + }, + "type": "object" + }, + "StatefulEngineOptions": { + "additionalProperties": false, + "properties": { + "RuleOrder": { + "$ref": "#/definitions/RuleOrder" + }, + "StreamExceptionPolicy": { + "$ref": "#/definitions/StreamExceptionPolicy" + } + }, + "type": "object" + }, + "StatefulRuleGroupOverride": { + "additionalProperties": false, + "properties": { + "Action": { + "$ref": "#/definitions/OverrideAction" + } + }, + "type": "object" + }, + "StatefulRuleGroupReference": { + "additionalProperties": false, + "properties": { + "Override": { + "$ref": "#/definitions/StatefulRuleGroupOverride" + }, + "Priority": { + "$ref": "#/definitions/Priority" + }, + "ResourceArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "ResourceArn" + ], + "type": "object" + }, + "StatelessRuleGroupReference": { + "additionalProperties": false, + "properties": { + "Priority": { + "$ref": "#/definitions/Priority" + }, + "ResourceArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "ResourceArn", + "Priority" + ], + "type": "object" + }, + "StreamExceptionPolicy": { + "enum": [ + "DROP", + "CONTINUE", + "REJECT" + ], + "type": "string" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "^.*$", + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 0, + "pattern": "^.*$", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "VariableDefinition": { + "minLength": 1, + "pattern": "^.*$", + "type": "string" + } + }, + "primaryIdentifier": [ + "/properties/FirewallPolicyArn" + ], + "properties": { + "Description": { + "maxLength": 512, + "minLength": 1, + "pattern": "^.*$", + "type": "string" + }, + "FirewallPolicy": { + "$ref": "#/definitions/FirewallPolicy" + }, + "FirewallPolicyArn": { + "$ref": "#/definitions/ResourceArn" + }, + "FirewallPolicyId": { + "maxLength": 36, + "minLength": 36, + "pattern": "^([0-9a-f]{8})-([0-9a-f]{4}-){3}([0-9a-f]{12})$", + "type": "string" + }, + "FirewallPolicyName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-]+$", + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + } + }, + "readOnlyProperties": [ + "/properties/FirewallPolicyArn", + "/properties/FirewallPolicyId" + ], + "required": [ + "FirewallPolicyName", + "FirewallPolicy" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-networkfirewall.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::NetworkFirewall::FirewallPolicy" +} diff --git a/src/cfnlint/data/schemas/providers/me_central_1/aws-sagemaker-imageversion.json b/src/cfnlint/data/schemas/providers/me_central_1/aws-sagemaker-imageversion.json deleted file mode 100644 index e7c91ccc8d..0000000000 --- a/src/cfnlint/data/schemas/providers/me_central_1/aws-sagemaker-imageversion.json +++ /dev/null @@ -1,172 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/ImageName", - "/properties/BaseImage" - ], - "definitions": { - "Alias": { - "maxLength": 128, - "minLength": 1, - "pattern": "(?!^[.-])^([a-zA-Z0-9-_.]+)$", - "type": "string" - }, - "Aliases": { - "items": { - "$ref": "#/definitions/Alias" - }, - "type": "array" - }, - "BaseImage": { - "maxLength": 255, - "minLength": 1, - "pattern": ".+", - "type": "string" - }, - "ContainerImage": { - "maxLength": 255, - "minLength": 1, - "pattern": ".+", - "type": "string" - }, - "Horovod": { - "type": "boolean" - }, - "ImageArn": { - "maxLength": 256, - "minLength": 1, - "pattern": "^arn:aws(-[\\w]+)*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:image\\/[a-zA-Z0-9]([-.]?[a-zA-Z0-9])*$", - "type": "string" - }, - "ImageName": { - "maxLength": 63, - "minLength": 1, - "pattern": "^[A-Za-z0-9]([-.]?[A-Za-z0-9])*$", - "type": "string" - }, - "ImageVersionArn": { - "maxLength": 256, - "minLength": 1, - "pattern": "^arn:aws(-[\\w]+)*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:image-version\\/[a-zA-Z0-9]([-.]?[a-zA-Z0-9])*\\/[0-9]+$", - "type": "string" - }, - "JobType": { - "enum": [ - "TRAINING", - "INFERENCE", - "NOTEBOOK_KERNEL" - ], - "type": "string" - }, - "MLFramework": { - "maxLength": 128, - "minLength": 1, - "pattern": "^[a-zA-Z]+ ?\\d+\\.\\d+(\\.\\d+)?$", - "type": "string" - }, - "Processor": { - "enum": [ - "CPU", - "GPU" - ], - "type": "string" - }, - "ProgrammingLang": { - "maxLength": 128, - "minLength": 1, - "pattern": "^[a-zA-Z]+ ?\\d+\\.\\d+(\\.\\d+)?$", - "type": "string" - }, - "ReleaseNotes": { - "maxLength": 255, - "minLength": 1, - "pattern": ".*", - "type": "string" - }, - "VendorGuidance": { - "enum": [ - "NOT_PROVIDED", - "STABLE", - "TO_BE_ARCHIVED", - "ARCHIVED" - ], - "type": "string" - }, - "Version": { - "minimum": 1, - "type": "integer" - } - }, - "primaryIdentifier": [ - "/properties/ImageVersionArn" - ], - "properties": { - "Alias": { - "$ref": "#/definitions/Alias" - }, - "Aliases": { - "$ref": "#/definitions/Aliases" - }, - "BaseImage": { - "$ref": "#/definitions/BaseImage" - }, - "ContainerImage": { - "$ref": "#/definitions/ContainerImage" - }, - "Horovod": { - "$ref": "#/definitions/Horovod" - }, - "ImageArn": { - "$ref": "#/definitions/ImageArn" - }, - "ImageName": { - "$ref": "#/definitions/ImageName" - }, - "ImageVersionArn": { - "$ref": "#/definitions/ImageVersionArn" - }, - "JobType": { - "$ref": "#/definitions/JobType" - }, - "MLFramework": { - "$ref": "#/definitions/MLFramework" - }, - "Processor": { - "$ref": "#/definitions/Processor" - }, - "ProgrammingLang": { - "$ref": "#/definitions/ProgrammingLang" - }, - "ReleaseNotes": { - "$ref": "#/definitions/ReleaseNotes" - }, - "VendorGuidance": { - "$ref": "#/definitions/VendorGuidance" - }, - "Version": { - "$ref": "#/definitions/Version" - } - }, - "readOnlyProperties": [ - "/properties/ImageVersionArn", - "/properties/ImageArn", - "/properties/Version", - "/properties/ContainerImage" - ], - "required": [ - "ImageName", - "BaseImage" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sagemaker", - "tagging": { - "cloudFormationSystemTags": false, - "tagOnCreate": false, - "tagUpdatable": false, - "taggable": false - }, - "typeName": "AWS::SageMaker::ImageVersion", - "writeOnlyProperties": [ - "/properties/Aliases", - "/properties/Alias" - ] -} diff --git a/src/cfnlint/data/schemas/providers/me_south_1/__init__.py b/src/cfnlint/data/schemas/providers/me_south_1/__init__.py index 0bd3a7efdc..45da35bc5c 100644 --- a/src/cfnlint/data/schemas/providers/me_south_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/me_south_1/__init__.py @@ -1115,9 +1115,7 @@ "aws-ecs-cluster.json", "aws-ecs-clustercapacityproviderassociations.json", "aws-ecs-primarytaskset.json", - "aws-ecs-service.json", "aws-ecs-taskdefinition.json", - "aws-ecs-taskset.json", "aws-efs-accesspoint.json", "aws-efs-filesystem.json", "aws-efs-mounttarget.json", @@ -1205,7 +1203,6 @@ "aws-groundstation-config.json", "aws-groundstation-dataflowendpointgroup.json", "aws-groundstation-missionprofile.json", - "aws-guardduty-detector.json", "aws-guardduty-filter.json", "aws-guardduty-ipset.json", "aws-guardduty-malwareprotectionplan.json", @@ -1269,7 +1266,6 @@ "aws-iot-thingtype.json", "aws-iot-topicrule.json", "aws-iot-topicruledestination.json", - "aws-kinesis-stream.json", "aws-kinesisanalytics-applicationoutput.json", "aws-kinesisanalyticsv2-application.json", "aws-kinesisanalyticsv2-applicationoutput.json", @@ -1322,7 +1318,6 @@ "aws-neptune-dbsubnetgroup.json", "aws-neptune-eventsubscription.json", "aws-networkfirewall-firewall.json", - "aws-networkfirewall-firewallpolicy.json", "aws-networkfirewall-loggingconfiguration.json", "aws-networkfirewall-rulegroup.json", "aws-networkfirewall-tlsinspectionconfiguration.json", @@ -1365,7 +1360,6 @@ "aws-pipes-pipe.json", "aws-ram-permission.json", "aws-ram-resourceshare.json", - "aws-rds-dbcluster.json", "aws-rds-dbclusterparametergroup.json", "aws-rds-dbinstance.json", "aws-rds-dbparametergroup.json", @@ -1374,7 +1368,6 @@ "aws-rds-dbproxytargetgroup.json", "aws-rds-dbsecuritygroup.json", "aws-rds-dbsecuritygroupingress.json", - "aws-rds-dbsubnetgroup.json", "aws-rds-eventsubscription.json", "aws-rds-globalcluster.json", "aws-rds-integration.json", @@ -1440,6 +1433,7 @@ "aws-sagemaker-endpointconfig.json", "aws-sagemaker-featuregroup.json", "aws-sagemaker-image.json", + "aws-sagemaker-imageversion.json", "aws-sagemaker-inferenceexperiment.json", "aws-sagemaker-mlflowtrackingserver.json", "aws-sagemaker-model.json", @@ -1464,6 +1458,7 @@ "aws-secretsmanager-resourcepolicy.json", "aws-secretsmanager-rotationschedule.json", "aws-secretsmanager-secret.json", + "aws-secretsmanager-secrettargetattachment.json", "aws-securityhub-automationrule.json", "aws-securityhub-delegatedadmin.json", "aws-securityhub-hub.json", diff --git a/src/cfnlint/data/schemas/providers/me_south_1/aws-ecs-service.json b/src/cfnlint/data/schemas/providers/me_south_1/aws-ecs-service.json new file mode 100644 index 0000000000..ba7baa1de3 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/me_south_1/aws-ecs-service.json @@ -0,0 +1,585 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/DeploymentController", + "/properties/LaunchType", + "/properties/Role", + "/properties/SchedulingStrategy", + "/properties/ServiceName" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "CapacityProviderStrategyItem": { + "additionalProperties": false, + "properties": { + "Base": { + "type": "integer" + }, + "CapacityProvider": { + "type": "string" + }, + "Weight": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentAlarms": { + "additionalProperties": false, + "properties": { + "AlarmNames": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "AlarmNames", + "Rollback", + "Enable" + ], + "type": "object" + }, + "DeploymentCircuitBreaker": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "Enable", + "Rollback" + ], + "type": "object" + }, + "DeploymentConfiguration": { + "additionalProperties": false, + "properties": { + "Alarms": { + "$ref": "#/definitions/DeploymentAlarms" + }, + "DeploymentCircuitBreaker": { + "$ref": "#/definitions/DeploymentCircuitBreaker" + }, + "MaximumPercent": { + "type": "integer" + }, + "MinimumHealthyPercent": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentController": { + "additionalProperties": false, + "properties": { + "Type": { + "enum": [ + "CODE_DEPLOY", + "ECS", + "EXTERNAL" + ], + "type": "string" + } + }, + "type": "object" + }, + "EBSTagSpecification": { + "additionalProperties": false, + "properties": { + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "ResourceType": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "ResourceType" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "LoadBalancerName": { + "type": "string" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "LogConfiguration": { + "additionalProperties": false, + "properties": { + "LogDriver": { + "type": "string" + }, + "Options": { + "additionalProperties": false, + "patternProperties": { + ".{1,}": { + "type": "string" + } + }, + "type": "object" + }, + "SecretOptions": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Secret" + }, + "type": "array" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsvpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "PlacementConstraint": { + "additionalProperties": false, + "properties": { + "Expression": { + "type": "string" + }, + "Type": { + "enum": [ + "distinctInstance", + "memberOf" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "PlacementStrategy": { + "additionalProperties": false, + "properties": { + "Field": { + "type": "string" + }, + "Type": { + "enum": [ + "binpack", + "random", + "spread" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "Secret": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "ValueFrom": { + "type": "string" + } + }, + "required": [ + "Name", + "ValueFrom" + ], + "type": "object" + }, + "ServiceConnectClientAlias": { + "additionalProperties": false, + "properties": { + "DnsName": { + "type": "string" + }, + "Port": { + "type": "integer" + } + }, + "required": [ + "Port" + ], + "type": "object" + }, + "ServiceConnectConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + }, + "LogConfiguration": { + "$ref": "#/definitions/LogConfiguration" + }, + "Namespace": { + "type": "string" + }, + "Services": { + "items": { + "$ref": "#/definitions/ServiceConnectService" + }, + "type": "array" + } + }, + "required": [ + "Enabled" + ], + "type": "object" + }, + "ServiceConnectService": { + "additionalProperties": false, + "properties": { + "ClientAliases": { + "items": { + "$ref": "#/definitions/ServiceConnectClientAlias" + }, + "type": "array" + }, + "DiscoveryName": { + "type": "string" + }, + "IngressPortOverride": { + "type": "integer" + }, + "PortName": { + "type": "string" + }, + "Timeout": { + "$ref": "#/definitions/TimeoutConfiguration" + }, + "Tls": { + "$ref": "#/definitions/ServiceConnectTlsConfiguration" + } + }, + "required": [ + "PortName" + ], + "type": "object" + }, + "ServiceConnectTlsCertificateAuthority": { + "additionalProperties": false, + "properties": { + "AwsPcaAuthorityArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceConnectTlsConfiguration": { + "additionalProperties": false, + "properties": { + "IssuerCertificateAuthority": { + "$ref": "#/definitions/ServiceConnectTlsCertificateAuthority" + }, + "KmsKey": { + "type": "string" + }, + "RoleArn": { + "type": "string" + } + }, + "required": [ + "IssuerCertificateAuthority" + ], + "type": "object" + }, + "ServiceManagedEBSVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "Encrypted": { + "type": "boolean" + }, + "FilesystemType": { + "type": "string" + }, + "Iops": { + "type": "integer" + }, + "KmsKeyId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SizeInGiB": { + "type": "integer" + }, + "SnapshotId": { + "type": "string" + }, + "TagSpecifications": { + "items": { + "$ref": "#/definitions/EBSTagSpecification" + }, + "type": "array" + }, + "Throughput": { + "type": "integer" + }, + "VolumeType": { + "type": "string" + } + }, + "required": [ + "RoleArn" + ], + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "ManagedEBSVolume": { + "$ref": "#/definitions/ServiceManagedEBSVolumeConfiguration" + }, + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + }, + "TimeoutConfiguration": { + "additionalProperties": false, + "properties": { + "IdleTimeoutSeconds": { + "type": "integer" + }, + "PerRequestTimeoutSeconds": { + "type": "integer" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/ServiceArn", + "/properties/Cluster" + ], + "properties": { + "CapacityProviderStrategy": { + "items": { + "$ref": "#/definitions/CapacityProviderStrategyItem" + }, + "type": "array" + }, + "Cluster": { + "type": "string" + }, + "DeploymentConfiguration": { + "$ref": "#/definitions/DeploymentConfiguration" + }, + "DeploymentController": { + "$ref": "#/definitions/DeploymentController" + }, + "DesiredCount": { + "type": "integer" + }, + "EnableECSManagedTags": { + "type": "boolean" + }, + "EnableExecuteCommand": { + "type": "boolean" + }, + "HealthCheckGracePeriodSeconds": { + "type": "integer" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE", + "EXTERNAL" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "Name": { + "type": "string" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlacementConstraints": { + "items": { + "$ref": "#/definitions/PlacementConstraint" + }, + "type": "array" + }, + "PlacementStrategies": { + "items": { + "$ref": "#/definitions/PlacementStrategy" + }, + "type": "array" + }, + "PlatformVersion": { + "default": "LATEST", + "type": "string" + }, + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "Role": { + "type": "string" + }, + "SchedulingStrategy": { + "enum": [ + "DAEMON", + "REPLICA" + ], + "type": "string" + }, + "ServiceArn": { + "type": "string" + }, + "ServiceConnectConfiguration": { + "$ref": "#/definitions/ServiceConnectConfiguration" + }, + "ServiceName": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + }, + "VolumeConfigurations": { + "items": { + "$ref": "#/definitions/ServiceVolumeConfiguration" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/ServiceArn", + "/properties/Name" + ], + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::Service", + "writeOnlyProperties": [ + "/properties/ServiceConnectConfiguration", + "/properties/VolumeConfigurations" + ] +} diff --git a/src/cfnlint/data/schemas/providers/me_south_1/aws-ecs-taskset.json b/src/cfnlint/data/schemas/providers/me_south_1/aws-ecs-taskset.json new file mode 100644 index 0000000000..3491488499 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/me_south_1/aws-ecs-taskset.json @@ -0,0 +1,191 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/ExternalId", + "/properties/LaunchType", + "/properties/LoadBalancers", + "/properties/NetworkConfiguration", + "/properties/PlatformVersion", + "/properties/Service", + "/properties/ServiceRegistries", + "/properties/TaskDefinition" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "maxItems": 5, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "maxItems": 16, + "type": "array" + } + }, + "required": [ + "Subnets" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsVpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "Scale": { + "additionalProperties": false, + "properties": { + "Unit": { + "enum": [ + "PERCENT" + ], + "type": "string" + }, + "Value": { + "maximum": 100, + "minimum": 0, + "type": "number" + } + }, + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Cluster", + "/properties/Service", + "/properties/Id" + ], + "properties": { + "Cluster": { + "type": "string" + }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlatformVersion": { + "type": "string" + }, + "Scale": { + "$ref": "#/definitions/Scale" + }, + "Service": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "Cluster", + "Service", + "TaskDefinition" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-ecs.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::TaskSet" +} diff --git a/src/cfnlint/data/schemas/providers/me_south_1/aws-guardduty-detector.json b/src/cfnlint/data/schemas/providers/me_south_1/aws-guardduty-detector.json new file mode 100644 index 0000000000..efaad17ff9 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/me_south_1/aws-guardduty-detector.json @@ -0,0 +1,184 @@ +{ + "additionalProperties": false, + "definitions": { + "CFNDataSourceConfigurations": { + "additionalProperties": false, + "properties": { + "Kubernetes": { + "$ref": "#/definitions/CFNKubernetesConfiguration" + }, + "MalwareProtection": { + "$ref": "#/definitions/CFNMalwareProtectionConfiguration" + }, + "S3Logs": { + "$ref": "#/definitions/CFNS3LogsConfiguration" + } + }, + "type": "object" + }, + "CFNFeatureAdditionalConfiguration": { + "additionalProperties": false, + "properties": { + "Name": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "Status": { + "maxLength": 128, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "CFNFeatureConfiguration": { + "additionalProperties": false, + "properties": { + "AdditionalConfiguration": { + "items": { + "$ref": "#/definitions/CFNFeatureAdditionalConfiguration" + }, + "type": "array" + }, + "Name": { + "maxLength": 128, + "type": "string" + }, + "Status": { + "enum": [ + "ENABLED", + "DISABLED" + ], + "type": "string" + } + }, + "required": [ + "Name", + "Status" + ], + "type": "object" + }, + "CFNKubernetesAuditLogsConfiguration": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + } + }, + "required": [ + "Enable" + ], + "type": "object" + }, + "CFNKubernetesConfiguration": { + "additionalProperties": false, + "properties": { + "AuditLogs": { + "$ref": "#/definitions/CFNKubernetesAuditLogsConfiguration" + } + }, + "required": [ + "AuditLogs" + ], + "type": "object" + }, + "CFNMalwareProtectionConfiguration": { + "additionalProperties": false, + "properties": { + "ScanEc2InstanceWithFindings": { + "$ref": "#/definitions/CFNScanEc2InstanceWithFindingsConfiguration" + } + }, + "type": "object" + }, + "CFNS3LogsConfiguration": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + } + }, + "required": [ + "Enable" + ], + "type": "object" + }, + "CFNScanEc2InstanceWithFindingsConfiguration": { + "additionalProperties": false, + "properties": { + "EbsVolumes": { + "type": "boolean" + } + }, + "type": "object" + }, + "TagItem": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "DataSources": { + "$ref": "#/definitions/CFNDataSourceConfigurations" + }, + "Enable": { + "type": "boolean" + }, + "Features": { + "items": { + "$ref": "#/definitions/CFNFeatureConfiguration" + }, + "type": "array" + }, + "FindingPublishingFrequency": { + "enum": [ + "FIFTEEN_MINUTES", + "ONE_HOUR", + "SIX_HOURS" + ], + "type": "string" + }, + "Id": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/TagItem" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "Enable" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": false, + "taggable": true + }, + "typeName": "AWS::GuardDuty::Detector" +} diff --git a/src/cfnlint/data/schemas/providers/me_south_1/aws-kinesis-stream.json b/src/cfnlint/data/schemas/providers/me_south_1/aws-kinesis-stream.json new file mode 100644 index 0000000000..be1bc65c07 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/me_south_1/aws-kinesis-stream.json @@ -0,0 +1,133 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "StreamEncryption": { + "additionalProperties": false, + "properties": { + "EncryptionType": { + "enum": [ + "KMS" + ], + "type": "string" + }, + "KeyId": { + "anyOf": [ + { + "relationshipRef": { + "propertyPath": "/properties/Arn", + "typeName": "AWS::KMS::Key" + } + }, + { + "relationshipRef": { + "propertyPath": "/properties/KeyId", + "typeName": "AWS::KMS::Key" + } + } + ], + "maxLength": 2048, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "EncryptionType", + "KeyId" + ], + "type": "object" + }, + "StreamModeDetails": { + "additionalProperties": false, + "properties": { + "StreamMode": { + "enum": [ + "ON_DEMAND", + "PROVISIONED" + ], + "type": "string" + } + }, + "required": [ + "StreamMode" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Name" + ], + "properties": { + "Arn": { + "type": "string" + }, + "Name": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9_.-]+$", + "type": "string" + }, + "RetentionPeriodHours": { + "maximum": 8760, + "minimum": 1, + "type": "integer" + }, + "ShardCount": { + "maximum": 100000, + "minimum": 1, + "type": "integer" + }, + "StreamEncryption": { + "$ref": "#/definitions/StreamEncryption" + }, + "StreamModeDetails": { + "$ref": "#/definitions/StreamModeDetails", + "default": { + "StreamMode": "PROVISIONED" + } + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 50, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-kinesis.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Kinesis::Stream" +} diff --git a/src/cfnlint/data/schemas/providers/me_south_1/aws-networkfirewall-firewallpolicy.json b/src/cfnlint/data/schemas/providers/me_south_1/aws-networkfirewall-firewallpolicy.json new file mode 100644 index 0000000000..973b595561 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/me_south_1/aws-networkfirewall-firewallpolicy.json @@ -0,0 +1,332 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/FirewallPolicyName" + ], + "definitions": { + "ActionDefinition": { + "additionalProperties": false, + "properties": { + "PublishMetricAction": { + "$ref": "#/definitions/PublishMetricAction" + } + }, + "type": "object" + }, + "CustomAction": { + "additionalProperties": false, + "properties": { + "ActionDefinition": { + "$ref": "#/definitions/ActionDefinition" + }, + "ActionName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + } + }, + "required": [ + "ActionName", + "ActionDefinition" + ], + "type": "object" + }, + "Dimension": { + "additionalProperties": false, + "properties": { + "Value": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-_ ]+$", + "type": "string" + } + }, + "required": [ + "Value" + ], + "type": "object" + }, + "FirewallPolicy": { + "additionalProperties": false, + "properties": { + "PolicyVariables": { + "additionalProperties": false, + "properties": { + "RuleVariables": { + "$ref": "#/definitions/RuleVariables" + } + }, + "type": "object" + }, + "StatefulDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatefulEngineOptions": { + "$ref": "#/definitions/StatefulEngineOptions" + }, + "StatefulRuleGroupReferences": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/StatefulRuleGroupReference" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessCustomActions": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/CustomAction" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessFragmentDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessRuleGroupReferences": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/StatelessRuleGroupReference" + }, + "type": "array", + "uniqueItems": false + }, + "TLSInspectionConfigurationArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "StatelessDefaultActions", + "StatelessFragmentDefaultActions" + ], + "type": "object" + }, + "IPSet": { + "additionalProperties": false, + "properties": { + "Definition": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/VariableDefinition" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "OverrideAction": { + "enum": [ + "DROP_TO_ALERT" + ], + "type": "string" + }, + "Priority": { + "maximum": 65535, + "minimum": 1, + "type": "integer" + }, + "PublishMetricAction": { + "additionalProperties": false, + "properties": { + "Dimensions": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/Dimension" + }, + "type": "array", + "uniqueItems": false + } + }, + "required": [ + "Dimensions" + ], + "type": "object" + }, + "ResourceArn": { + "maxLength": 256, + "minLength": 1, + "pattern": "^(arn:aws.*)$", + "type": "string" + }, + "RuleOrder": { + "enum": [ + "DEFAULT_ACTION_ORDER", + "STRICT_ORDER" + ], + "type": "string" + }, + "RuleVariables": { + "additionalProperties": false, + "patternProperties": { + "^[A-Za-z0-9_]{1,32}$": { + "$ref": "#/definitions/IPSet" + } + }, + "type": "object" + }, + "StatefulEngineOptions": { + "additionalProperties": false, + "properties": { + "RuleOrder": { + "$ref": "#/definitions/RuleOrder" + }, + "StreamExceptionPolicy": { + "$ref": "#/definitions/StreamExceptionPolicy" + } + }, + "type": "object" + }, + "StatefulRuleGroupOverride": { + "additionalProperties": false, + "properties": { + "Action": { + "$ref": "#/definitions/OverrideAction" + } + }, + "type": "object" + }, + "StatefulRuleGroupReference": { + "additionalProperties": false, + "properties": { + "Override": { + "$ref": "#/definitions/StatefulRuleGroupOverride" + }, + "Priority": { + "$ref": "#/definitions/Priority" + }, + "ResourceArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "ResourceArn" + ], + "type": "object" + }, + "StatelessRuleGroupReference": { + "additionalProperties": false, + "properties": { + "Priority": { + "$ref": "#/definitions/Priority" + }, + "ResourceArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "ResourceArn", + "Priority" + ], + "type": "object" + }, + "StreamExceptionPolicy": { + "enum": [ + "DROP", + "CONTINUE", + "REJECT" + ], + "type": "string" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "^.*$", + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 0, + "pattern": "^.*$", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "VariableDefinition": { + "minLength": 1, + "pattern": "^.*$", + "type": "string" + } + }, + "primaryIdentifier": [ + "/properties/FirewallPolicyArn" + ], + "properties": { + "Description": { + "maxLength": 512, + "minLength": 1, + "pattern": "^.*$", + "type": "string" + }, + "FirewallPolicy": { + "$ref": "#/definitions/FirewallPolicy" + }, + "FirewallPolicyArn": { + "$ref": "#/definitions/ResourceArn" + }, + "FirewallPolicyId": { + "maxLength": 36, + "minLength": 36, + "pattern": "^([0-9a-f]{8})-([0-9a-f]{4}-){3}([0-9a-f]{12})$", + "type": "string" + }, + "FirewallPolicyName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-]+$", + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + } + }, + "readOnlyProperties": [ + "/properties/FirewallPolicyArn", + "/properties/FirewallPolicyId" + ], + "required": [ + "FirewallPolicyName", + "FirewallPolicy" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-networkfirewall.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::NetworkFirewall::FirewallPolicy" +} diff --git a/src/cfnlint/data/schemas/providers/me_south_1/aws-rds-dbcluster.json b/src/cfnlint/data/schemas/providers/me_south_1/aws-rds-dbcluster.json new file mode 100644 index 0000000000..46000178b5 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/me_south_1/aws-rds-dbcluster.json @@ -0,0 +1,397 @@ +{ + "additionalProperties": false, + "conditionalCreateOnlyProperties": [ + "/properties/Engine", + "/properties/GlobalClusterIdentifier", + "/properties/MasterUsername" + ], + "createOnlyProperties": [ + "/properties/AvailabilityZones", + "/properties/DBClusterIdentifier", + "/properties/DBSubnetGroupName", + "/properties/DBSystemId", + "/properties/DatabaseName", + "/properties/EngineMode", + "/properties/KmsKeyId", + "/properties/PubliclyAccessible", + "/properties/RestoreToTime", + "/properties/RestoreType", + "/properties/SnapshotIdentifier", + "/properties/SourceDBClusterIdentifier", + "/properties/SourceRegion", + "/properties/StorageEncrypted", + "/properties/UseLatestRestorableTime" + ], + "definitions": { + "DBClusterRole": { + "additionalProperties": false, + "properties": { + "FeatureName": { + "type": "string" + }, + "RoleArn": { + "type": "string" + } + }, + "required": [ + "RoleArn" + ], + "type": "object" + }, + "Endpoint": { + "additionalProperties": false, + "properties": { + "Address": { + "type": "string" + }, + "Port": { + "type": "string" + } + }, + "type": "object" + }, + "MasterUserSecret": { + "additionalProperties": false, + "properties": { + "KmsKeyId": { + "type": "string" + }, + "SecretArn": { + "type": "string" + } + }, + "type": "object" + }, + "ReadEndpoint": { + "additionalProperties": false, + "properties": { + "Address": { + "type": "string" + } + }, + "type": "object" + }, + "ScalingConfiguration": { + "additionalProperties": false, + "properties": { + "AutoPause": { + "type": "boolean" + }, + "MaxCapacity": { + "type": "integer" + }, + "MinCapacity": { + "type": "integer" + }, + "SecondsBeforeTimeout": { + "type": "integer" + }, + "SecondsUntilAutoPause": { + "type": "integer" + }, + "TimeoutAction": { + "type": "string" + } + }, + "type": "object" + }, + "ServerlessV2ScalingConfiguration": { + "additionalProperties": false, + "properties": { + "MaxCapacity": { + "type": "number" + }, + "MinCapacity": { + "type": "number" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/DBClusterIdentifier" + ], + "properties": { + "AllocatedStorage": { + "type": "integer" + }, + "AssociatedRoles": { + "items": { + "$ref": "#/definitions/DBClusterRole" + }, + "type": "array", + "uniqueItems": true + }, + "AutoMinorVersionUpgrade": { + "type": "boolean" + }, + "AvailabilityZones": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "BacktrackWindow": { + "minimum": 0, + "type": "integer" + }, + "BackupRetentionPeriod": { + "default": 1, + "maximum": 35, + "minimum": 1, + "type": "integer" + }, + "CopyTagsToSnapshot": { + "type": "boolean" + }, + "DBClusterArn": { + "type": "string" + }, + "DBClusterIdentifier": { + "maxLength": 63, + "minLength": 1, + "pattern": "^[a-zA-Z]{1}(?:-?[a-zA-Z0-9]){0,62}$", + "type": "string" + }, + "DBClusterInstanceClass": { + "type": "string" + }, + "DBClusterParameterGroupName": { + "type": "string" + }, + "DBClusterResourceId": { + "type": "string" + }, + "DBInstanceParameterGroupName": { + "type": "string" + }, + "DBSubnetGroupName": { + "type": "string" + }, + "DBSystemId": { + "type": "string" + }, + "DatabaseName": { + "type": "string" + }, + "DeletionProtection": { + "type": "boolean" + }, + "Domain": { + "type": "string" + }, + "DomainIAMRoleName": { + "type": "string" + }, + "EnableCloudwatchLogsExports": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "EnableGlobalWriteForwarding": { + "type": "boolean" + }, + "EnableHttpEndpoint": { + "type": "boolean" + }, + "EnableIAMDatabaseAuthentication": { + "type": "boolean" + }, + "EnableLocalWriteForwarding": { + "type": "boolean" + }, + "Endpoint": { + "$ref": "#/definitions/Endpoint" + }, + "Engine": { + "type": "string" + }, + "EngineLifecycleSupport": { + "type": "string" + }, + "EngineMode": { + "type": "string" + }, + "EngineVersion": { + "type": "string" + }, + "GlobalClusterIdentifier": { + "maxLength": 63, + "minLength": 0, + "pattern": "^$|^[a-zA-Z]{1}(?:-?[a-zA-Z0-9]){0,62}$", + "type": "string" + }, + "Iops": { + "type": "integer" + }, + "KmsKeyId": { + "type": "string" + }, + "ManageMasterUserPassword": { + "type": "boolean" + }, + "MasterUserPassword": { + "type": "string" + }, + "MasterUserSecret": { + "$ref": "#/definitions/MasterUserSecret" + }, + "MasterUsername": { + "minLength": 1, + "pattern": "^[a-zA-Z]{1}[a-zA-Z0-9_]*$", + "type": "string" + }, + "MonitoringInterval": { + "type": "integer" + }, + "MonitoringRoleArn": { + "type": "string" + }, + "NetworkType": { + "type": "string" + }, + "PerformanceInsightsEnabled": { + "type": "boolean" + }, + "PerformanceInsightsKmsKeyId": { + "type": "string" + }, + "PerformanceInsightsRetentionPeriod": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "PreferredBackupWindow": { + "type": "string" + }, + "PreferredMaintenanceWindow": { + "type": "string" + }, + "PubliclyAccessible": { + "type": "boolean" + }, + "ReadEndpoint": { + "$ref": "#/definitions/ReadEndpoint" + }, + "ReplicationSourceIdentifier": { + "type": "string" + }, + "RestoreToTime": { + "type": "string" + }, + "RestoreType": { + "type": "string" + }, + "ScalingConfiguration": { + "$ref": "#/definitions/ScalingConfiguration" + }, + "ServerlessV2ScalingConfiguration": { + "$ref": "#/definitions/ServerlessV2ScalingConfiguration" + }, + "SnapshotIdentifier": { + "type": "string" + }, + "SourceDBClusterIdentifier": { + "type": "string" + }, + "SourceRegion": { + "type": "string" + }, + "StorageEncrypted": { + "type": "boolean" + }, + "StorageThroughput": { + "type": "integer" + }, + "StorageType": { + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 50, + "type": "array", + "uniqueItems": true + }, + "UseLatestRestorableTime": { + "type": "boolean" + }, + "VpcSecurityGroupIds": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": true + } + }, + "propertyTransform": { + "/properties/DBClusterIdentifier": "$lowercase(DBClusterIdentifier)", + "/properties/DBClusterParameterGroupName": "$lowercase(DBClusterParameterGroupName)", + "/properties/DBSubnetGroupName": "$lowercase(DBSubnetGroupName)", + "/properties/EnableHttpEndpoint": "$lowercase($string(EngineMode)) = 'serverless' ? EnableHttpEndpoint : ($lowercase($string(Engine)) in ['aurora-postgresql', 'aurora-mysql'] ? EnableHttpEndpoint : false )", + "/properties/Engine": "$lowercase(Engine)", + "/properties/EngineVersion": "$join([$string(EngineVersion), \".*\"])", + "/properties/KmsKeyId": "$join([\"arn:(aws)[-]{0,1}[a-z]{0,2}[-]{0,1}[a-z]{0,3}:kms:[a-z]{2}[-]{1}[a-z]{3,10}[-]{0,1}[a-z]{0,10}[-]{1}[1-3]{1}:[0-9]{12}[:]{1}key\\/\", KmsKeyId])", + "/properties/MasterUserSecret/KmsKeyId": "$join([\"arn:(aws)[-]{0,1}[a-z]{0,2}[-]{0,1}[a-z]{0,3}:kms:[a-z]{2}[-]{1}[a-z]{3,10}[-]{0,1}[a-z]{0,10}[-]{1}[1-3]{1}:[0-9]{12}[:]{1}key\\/\", MasterUserSecret.KmsKeyId])", + "/properties/NetworkType": "$lowercase(NetworkType)", + "/properties/PerformanceInsightsKmsKeyId": "$join([\"arn:(aws)[-]{0,1}[a-z]{0,2}[-]{0,1}[a-z]{0,3}:kms:[a-z]{2}[-]{1}[a-z]{3,10}[-]{0,1}[a-z]{0,10}[-]{1}[1-3]{1}:[0-9]{12}[:]{1}key\\/\", PerformanceInsightsKmsKeyId])", + "/properties/PreferredMaintenanceWindow": "$lowercase(PreferredMaintenanceWindow)", + "/properties/SnapshotIdentifier": "$lowercase(SnapshotIdentifier)", + "/properties/SourceDBClusterIdentifier": "$lowercase(SourceDBClusterIdentifier)", + "/properties/StorageType": "$lowercase(StorageType)" + }, + "readOnlyProperties": [ + "/properties/DBClusterArn", + "/properties/DBClusterResourceId", + "/properties/Endpoint", + "/properties/Endpoint/Address", + "/properties/Endpoint/Port", + "/properties/ReadEndpoint/Address", + "/properties/MasterUserSecret/SecretArn", + "/properties/StorageThroughput" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-rds", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::RDS::DBCluster", + "writeOnlyProperties": [ + "/properties/DBInstanceParameterGroupName", + "/properties/MasterUserPassword", + "/properties/RestoreToTime", + "/properties/RestoreType", + "/properties/SnapshotIdentifier", + "/properties/SourceDBClusterIdentifier", + "/properties/SourceRegion", + "/properties/UseLatestRestorableTime" + ] +} diff --git a/src/cfnlint/data/schemas/providers/me_south_1/aws-rds-dbsubnetgroup.json b/src/cfnlint/data/schemas/providers/me_south_1/aws-rds-dbsubnetgroup.json new file mode 100644 index 0000000000..d228afbbad --- /dev/null +++ b/src/cfnlint/data/schemas/providers/me_south_1/aws-rds-dbsubnetgroup.json @@ -0,0 +1,71 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/DBSubnetGroupName" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/DBSubnetGroupName" + ], + "properties": { + "DBSubnetGroupDescription": { + "type": "string" + }, + "DBSubnetGroupName": { + "type": "string" + }, + "SubnetIds": { + "insertionOrder": false, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 50, + "type": "array", + "uniqueItems": false + } + }, + "propertyTransform": { + "/properties/DBSubnetGroupName": "$lowercase(DBSubnetGroupName)" + }, + "required": [ + "DBSubnetGroupDescription", + "SubnetIds" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-rds", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::RDS::DBSubnetGroup" +} diff --git a/src/cfnlint/data/schemas/providers/me_south_1/aws-sagemaker-imageversion.json b/src/cfnlint/data/schemas/providers/me_south_1/aws-sagemaker-imageversion.json deleted file mode 100644 index e7c91ccc8d..0000000000 --- a/src/cfnlint/data/schemas/providers/me_south_1/aws-sagemaker-imageversion.json +++ /dev/null @@ -1,172 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/ImageName", - "/properties/BaseImage" - ], - "definitions": { - "Alias": { - "maxLength": 128, - "minLength": 1, - "pattern": "(?!^[.-])^([a-zA-Z0-9-_.]+)$", - "type": "string" - }, - "Aliases": { - "items": { - "$ref": "#/definitions/Alias" - }, - "type": "array" - }, - "BaseImage": { - "maxLength": 255, - "minLength": 1, - "pattern": ".+", - "type": "string" - }, - "ContainerImage": { - "maxLength": 255, - "minLength": 1, - "pattern": ".+", - "type": "string" - }, - "Horovod": { - "type": "boolean" - }, - "ImageArn": { - "maxLength": 256, - "minLength": 1, - "pattern": "^arn:aws(-[\\w]+)*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:image\\/[a-zA-Z0-9]([-.]?[a-zA-Z0-9])*$", - "type": "string" - }, - "ImageName": { - "maxLength": 63, - "minLength": 1, - "pattern": "^[A-Za-z0-9]([-.]?[A-Za-z0-9])*$", - "type": "string" - }, - "ImageVersionArn": { - "maxLength": 256, - "minLength": 1, - "pattern": "^arn:aws(-[\\w]+)*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:image-version\\/[a-zA-Z0-9]([-.]?[a-zA-Z0-9])*\\/[0-9]+$", - "type": "string" - }, - "JobType": { - "enum": [ - "TRAINING", - "INFERENCE", - "NOTEBOOK_KERNEL" - ], - "type": "string" - }, - "MLFramework": { - "maxLength": 128, - "minLength": 1, - "pattern": "^[a-zA-Z]+ ?\\d+\\.\\d+(\\.\\d+)?$", - "type": "string" - }, - "Processor": { - "enum": [ - "CPU", - "GPU" - ], - "type": "string" - }, - "ProgrammingLang": { - "maxLength": 128, - "minLength": 1, - "pattern": "^[a-zA-Z]+ ?\\d+\\.\\d+(\\.\\d+)?$", - "type": "string" - }, - "ReleaseNotes": { - "maxLength": 255, - "minLength": 1, - "pattern": ".*", - "type": "string" - }, - "VendorGuidance": { - "enum": [ - "NOT_PROVIDED", - "STABLE", - "TO_BE_ARCHIVED", - "ARCHIVED" - ], - "type": "string" - }, - "Version": { - "minimum": 1, - "type": "integer" - } - }, - "primaryIdentifier": [ - "/properties/ImageVersionArn" - ], - "properties": { - "Alias": { - "$ref": "#/definitions/Alias" - }, - "Aliases": { - "$ref": "#/definitions/Aliases" - }, - "BaseImage": { - "$ref": "#/definitions/BaseImage" - }, - "ContainerImage": { - "$ref": "#/definitions/ContainerImage" - }, - "Horovod": { - "$ref": "#/definitions/Horovod" - }, - "ImageArn": { - "$ref": "#/definitions/ImageArn" - }, - "ImageName": { - "$ref": "#/definitions/ImageName" - }, - "ImageVersionArn": { - "$ref": "#/definitions/ImageVersionArn" - }, - "JobType": { - "$ref": "#/definitions/JobType" - }, - "MLFramework": { - "$ref": "#/definitions/MLFramework" - }, - "Processor": { - "$ref": "#/definitions/Processor" - }, - "ProgrammingLang": { - "$ref": "#/definitions/ProgrammingLang" - }, - "ReleaseNotes": { - "$ref": "#/definitions/ReleaseNotes" - }, - "VendorGuidance": { - "$ref": "#/definitions/VendorGuidance" - }, - "Version": { - "$ref": "#/definitions/Version" - } - }, - "readOnlyProperties": [ - "/properties/ImageVersionArn", - "/properties/ImageArn", - "/properties/Version", - "/properties/ContainerImage" - ], - "required": [ - "ImageName", - "BaseImage" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sagemaker", - "tagging": { - "cloudFormationSystemTags": false, - "tagOnCreate": false, - "tagUpdatable": false, - "taggable": false - }, - "typeName": "AWS::SageMaker::ImageVersion", - "writeOnlyProperties": [ - "/properties/Aliases", - "/properties/Alias" - ] -} diff --git a/src/cfnlint/data/schemas/providers/me_south_1/aws-secretsmanager-secrettargetattachment.json b/src/cfnlint/data/schemas/providers/me_south_1/aws-secretsmanager-secrettargetattachment.json deleted file mode 100644 index 8b5501d290..0000000000 --- a/src/cfnlint/data/schemas/providers/me_south_1/aws-secretsmanager-secrettargetattachment.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "additionalProperties": false, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "Id": { - "type": "string" - }, - "SecretId": { - "type": "string" - }, - "TargetId": { - "type": "string" - }, - "TargetType": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "SecretId", - "TargetType", - "TargetId" - ], - "typeName": "AWS::SecretsManager::SecretTargetAttachment" -} diff --git a/src/cfnlint/data/schemas/providers/sa_east_1/__init__.py b/src/cfnlint/data/schemas/providers/sa_east_1/__init__.py index 1b7a713b3e..6567bacc5a 100644 --- a/src/cfnlint/data/schemas/providers/sa_east_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/sa_east_1/__init__.py @@ -559,6 +559,7 @@ "AWS::KafkaConnect::Connector", "AWS::KafkaConnect::CustomPlugin", "AWS::KafkaConnect::WorkerConfiguration", + "AWS::Kinesis::ResourcePolicy", "AWS::Kinesis::Stream", "AWS::Kinesis::StreamConsumer", "AWS::KinesisAnalytics::Application", @@ -1371,9 +1372,7 @@ "aws-ecs-cluster.json", "aws-ecs-clustercapacityproviderassociations.json", "aws-ecs-primarytaskset.json", - "aws-ecs-service.json", "aws-ecs-taskdefinition.json", - "aws-ecs-taskset.json", "aws-efs-accesspoint.json", "aws-efs-filesystem.json", "aws-efs-mounttarget.json", @@ -1542,6 +1541,7 @@ "aws-kafkaconnect-connector.json", "aws-kafkaconnect-customplugin.json", "aws-kafkaconnect-workerconfiguration.json", + "aws-kinesis-resourcepolicy.json", "aws-kinesis-stream.json", "aws-kinesis-streamconsumer.json", "aws-kinesisanalytics-applicationoutput.json", @@ -1794,7 +1794,6 @@ "aws-sagemaker-endpointconfig.json", "aws-sagemaker-featuregroup.json", "aws-sagemaker-image.json", - "aws-sagemaker-imageversion.json", "aws-sagemaker-inferencecomponent.json", "aws-sagemaker-inferenceexperiment.json", "aws-sagemaker-mlflowtrackingserver.json", diff --git a/src/cfnlint/data/schemas/providers/sa_east_1/aws-ecs-service.json b/src/cfnlint/data/schemas/providers/sa_east_1/aws-ecs-service.json new file mode 100644 index 0000000000..ba7baa1de3 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/sa_east_1/aws-ecs-service.json @@ -0,0 +1,585 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/DeploymentController", + "/properties/LaunchType", + "/properties/Role", + "/properties/SchedulingStrategy", + "/properties/ServiceName" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "CapacityProviderStrategyItem": { + "additionalProperties": false, + "properties": { + "Base": { + "type": "integer" + }, + "CapacityProvider": { + "type": "string" + }, + "Weight": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentAlarms": { + "additionalProperties": false, + "properties": { + "AlarmNames": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "AlarmNames", + "Rollback", + "Enable" + ], + "type": "object" + }, + "DeploymentCircuitBreaker": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "Enable", + "Rollback" + ], + "type": "object" + }, + "DeploymentConfiguration": { + "additionalProperties": false, + "properties": { + "Alarms": { + "$ref": "#/definitions/DeploymentAlarms" + }, + "DeploymentCircuitBreaker": { + "$ref": "#/definitions/DeploymentCircuitBreaker" + }, + "MaximumPercent": { + "type": "integer" + }, + "MinimumHealthyPercent": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentController": { + "additionalProperties": false, + "properties": { + "Type": { + "enum": [ + "CODE_DEPLOY", + "ECS", + "EXTERNAL" + ], + "type": "string" + } + }, + "type": "object" + }, + "EBSTagSpecification": { + "additionalProperties": false, + "properties": { + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "ResourceType": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "ResourceType" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "LoadBalancerName": { + "type": "string" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "LogConfiguration": { + "additionalProperties": false, + "properties": { + "LogDriver": { + "type": "string" + }, + "Options": { + "additionalProperties": false, + "patternProperties": { + ".{1,}": { + "type": "string" + } + }, + "type": "object" + }, + "SecretOptions": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Secret" + }, + "type": "array" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsvpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "PlacementConstraint": { + "additionalProperties": false, + "properties": { + "Expression": { + "type": "string" + }, + "Type": { + "enum": [ + "distinctInstance", + "memberOf" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "PlacementStrategy": { + "additionalProperties": false, + "properties": { + "Field": { + "type": "string" + }, + "Type": { + "enum": [ + "binpack", + "random", + "spread" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "Secret": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "ValueFrom": { + "type": "string" + } + }, + "required": [ + "Name", + "ValueFrom" + ], + "type": "object" + }, + "ServiceConnectClientAlias": { + "additionalProperties": false, + "properties": { + "DnsName": { + "type": "string" + }, + "Port": { + "type": "integer" + } + }, + "required": [ + "Port" + ], + "type": "object" + }, + "ServiceConnectConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + }, + "LogConfiguration": { + "$ref": "#/definitions/LogConfiguration" + }, + "Namespace": { + "type": "string" + }, + "Services": { + "items": { + "$ref": "#/definitions/ServiceConnectService" + }, + "type": "array" + } + }, + "required": [ + "Enabled" + ], + "type": "object" + }, + "ServiceConnectService": { + "additionalProperties": false, + "properties": { + "ClientAliases": { + "items": { + "$ref": "#/definitions/ServiceConnectClientAlias" + }, + "type": "array" + }, + "DiscoveryName": { + "type": "string" + }, + "IngressPortOverride": { + "type": "integer" + }, + "PortName": { + "type": "string" + }, + "Timeout": { + "$ref": "#/definitions/TimeoutConfiguration" + }, + "Tls": { + "$ref": "#/definitions/ServiceConnectTlsConfiguration" + } + }, + "required": [ + "PortName" + ], + "type": "object" + }, + "ServiceConnectTlsCertificateAuthority": { + "additionalProperties": false, + "properties": { + "AwsPcaAuthorityArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceConnectTlsConfiguration": { + "additionalProperties": false, + "properties": { + "IssuerCertificateAuthority": { + "$ref": "#/definitions/ServiceConnectTlsCertificateAuthority" + }, + "KmsKey": { + "type": "string" + }, + "RoleArn": { + "type": "string" + } + }, + "required": [ + "IssuerCertificateAuthority" + ], + "type": "object" + }, + "ServiceManagedEBSVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "Encrypted": { + "type": "boolean" + }, + "FilesystemType": { + "type": "string" + }, + "Iops": { + "type": "integer" + }, + "KmsKeyId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SizeInGiB": { + "type": "integer" + }, + "SnapshotId": { + "type": "string" + }, + "TagSpecifications": { + "items": { + "$ref": "#/definitions/EBSTagSpecification" + }, + "type": "array" + }, + "Throughput": { + "type": "integer" + }, + "VolumeType": { + "type": "string" + } + }, + "required": [ + "RoleArn" + ], + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "ManagedEBSVolume": { + "$ref": "#/definitions/ServiceManagedEBSVolumeConfiguration" + }, + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + }, + "TimeoutConfiguration": { + "additionalProperties": false, + "properties": { + "IdleTimeoutSeconds": { + "type": "integer" + }, + "PerRequestTimeoutSeconds": { + "type": "integer" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/ServiceArn", + "/properties/Cluster" + ], + "properties": { + "CapacityProviderStrategy": { + "items": { + "$ref": "#/definitions/CapacityProviderStrategyItem" + }, + "type": "array" + }, + "Cluster": { + "type": "string" + }, + "DeploymentConfiguration": { + "$ref": "#/definitions/DeploymentConfiguration" + }, + "DeploymentController": { + "$ref": "#/definitions/DeploymentController" + }, + "DesiredCount": { + "type": "integer" + }, + "EnableECSManagedTags": { + "type": "boolean" + }, + "EnableExecuteCommand": { + "type": "boolean" + }, + "HealthCheckGracePeriodSeconds": { + "type": "integer" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE", + "EXTERNAL" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "Name": { + "type": "string" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlacementConstraints": { + "items": { + "$ref": "#/definitions/PlacementConstraint" + }, + "type": "array" + }, + "PlacementStrategies": { + "items": { + "$ref": "#/definitions/PlacementStrategy" + }, + "type": "array" + }, + "PlatformVersion": { + "default": "LATEST", + "type": "string" + }, + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "Role": { + "type": "string" + }, + "SchedulingStrategy": { + "enum": [ + "DAEMON", + "REPLICA" + ], + "type": "string" + }, + "ServiceArn": { + "type": "string" + }, + "ServiceConnectConfiguration": { + "$ref": "#/definitions/ServiceConnectConfiguration" + }, + "ServiceName": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + }, + "VolumeConfigurations": { + "items": { + "$ref": "#/definitions/ServiceVolumeConfiguration" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/ServiceArn", + "/properties/Name" + ], + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::Service", + "writeOnlyProperties": [ + "/properties/ServiceConnectConfiguration", + "/properties/VolumeConfigurations" + ] +} diff --git a/src/cfnlint/data/schemas/providers/sa_east_1/aws-ecs-taskset.json b/src/cfnlint/data/schemas/providers/sa_east_1/aws-ecs-taskset.json new file mode 100644 index 0000000000..3491488499 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/sa_east_1/aws-ecs-taskset.json @@ -0,0 +1,191 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/ExternalId", + "/properties/LaunchType", + "/properties/LoadBalancers", + "/properties/NetworkConfiguration", + "/properties/PlatformVersion", + "/properties/Service", + "/properties/ServiceRegistries", + "/properties/TaskDefinition" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "maxItems": 5, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "maxItems": 16, + "type": "array" + } + }, + "required": [ + "Subnets" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsVpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "Scale": { + "additionalProperties": false, + "properties": { + "Unit": { + "enum": [ + "PERCENT" + ], + "type": "string" + }, + "Value": { + "maximum": 100, + "minimum": 0, + "type": "number" + } + }, + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Cluster", + "/properties/Service", + "/properties/Id" + ], + "properties": { + "Cluster": { + "type": "string" + }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlatformVersion": { + "type": "string" + }, + "Scale": { + "$ref": "#/definitions/Scale" + }, + "Service": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "Cluster", + "Service", + "TaskDefinition" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-ecs.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::TaskSet" +} diff --git a/src/cfnlint/data/schemas/providers/sa_east_1/aws-sagemaker-imageversion.json b/src/cfnlint/data/schemas/providers/sa_east_1/aws-sagemaker-imageversion.json new file mode 100644 index 0000000000..3b09dc9bad --- /dev/null +++ b/src/cfnlint/data/schemas/providers/sa_east_1/aws-sagemaker-imageversion.json @@ -0,0 +1,171 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/ImageName", + "/properties/BaseImage" + ], + "definitions": { + "Alias": { + "maxLength": 128, + "minLength": 1, + "pattern": "(?!^[.-])^([a-zA-Z0-9-_.]+)$", + "type": "string" + }, + "Aliases": { + "items": { + "$ref": "#/definitions/Alias" + }, + "type": "array" + }, + "BaseImage": { + "maxLength": 255, + "minLength": 1, + "pattern": ".+", + "type": "string" + }, + "ContainerImage": { + "maxLength": 255, + "minLength": 1, + "pattern": ".+", + "type": "string" + }, + "Horovod": { + "type": "boolean" + }, + "ImageArn": { + "maxLength": 256, + "minLength": 1, + "pattern": "^arn:aws(-[\\w]+)*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:image\\/[a-zA-Z0-9]([-.]?[a-zA-Z0-9])*$", + "type": "string" + }, + "ImageName": { + "maxLength": 63, + "minLength": 1, + "pattern": "^[A-Za-z0-9]([-.]?[A-Za-z0-9])*$", + "type": "string" + }, + "ImageVersionArn": { + "maxLength": 256, + "minLength": 1, + "pattern": "^arn:aws(-[\\w]+)*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:image-version\\/[a-zA-Z0-9]([-.]?[a-zA-Z0-9])*\\/[0-9]+$", + "type": "string" + }, + "JobType": { + "enum": [ + "TRAINING", + "INFERENCE", + "NOTEBOOK_KERNEL" + ], + "type": "string" + }, + "MLFramework": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z]+ ?\\d+\\.\\d+(\\.\\d+)?$", + "type": "string" + }, + "Processor": { + "enum": [ + "CPU", + "GPU" + ], + "type": "string" + }, + "ProgrammingLang": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z]+ ?\\d+\\.\\d+(\\.\\d+)?$", + "type": "string" + }, + "ReleaseNotes": { + "maxLength": 255, + "minLength": 1, + "pattern": ".*", + "type": "string" + }, + "VendorGuidance": { + "enum": [ + "NOT_PROVIDED", + "STABLE", + "TO_BE_ARCHIVED", + "ARCHIVED" + ], + "type": "string" + }, + "Version": { + "minimum": 1, + "type": "integer" + } + }, + "primaryIdentifier": [ + "/properties/ImageVersionArn" + ], + "properties": { + "Alias": { + "$ref": "#/definitions/Alias" + }, + "Aliases": { + "$ref": "#/definitions/Aliases" + }, + "BaseImage": { + "$ref": "#/definitions/BaseImage" + }, + "ContainerImage": { + "$ref": "#/definitions/ContainerImage" + }, + "Horovod": { + "$ref": "#/definitions/Horovod" + }, + "ImageArn": { + "$ref": "#/definitions/ImageArn" + }, + "ImageName": { + "$ref": "#/definitions/ImageName" + }, + "ImageVersionArn": { + "$ref": "#/definitions/ImageVersionArn" + }, + "JobType": { + "$ref": "#/definitions/JobType" + }, + "MLFramework": { + "$ref": "#/definitions/MLFramework" + }, + "Processor": { + "$ref": "#/definitions/Processor" + }, + "ProgrammingLang": { + "$ref": "#/definitions/ProgrammingLang" + }, + "ReleaseNotes": { + "$ref": "#/definitions/ReleaseNotes" + }, + "VendorGuidance": { + "$ref": "#/definitions/VendorGuidance" + }, + "Version": { + "$ref": "#/definitions/Version" + } + }, + "readOnlyProperties": [ + "/properties/ImageVersionArn", + "/properties/ImageArn", + "/properties/ContainerImage" + ], + "required": [ + "ImageName", + "BaseImage" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sagemaker", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": false, + "tagUpdatable": false, + "taggable": false + }, + "typeName": "AWS::SageMaker::ImageVersion", + "writeOnlyProperties": [ + "/properties/Aliases", + "/properties/Alias" + ] +} diff --git a/src/cfnlint/data/schemas/providers/us_east_1/__init__.py b/src/cfnlint/data/schemas/providers/us_east_1/__init__.py index 4e6656278b..d1cbd4cf14 100644 --- a/src/cfnlint/data/schemas/providers/us_east_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/us_east_1/__init__.py @@ -748,6 +748,7 @@ "AWS::Kendra::Faq", "AWS::Kendra::Index", "AWS::KendraRanking::ExecutionPlan", + "AWS::Kinesis::ResourcePolicy", "AWS::Kinesis::Stream", "AWS::Kinesis::StreamConsumer", "AWS::KinesisAnalytics::Application", diff --git a/src/cfnlint/data/schemas/providers/us_east_1/aws-dms-replicationinstance.json b/src/cfnlint/data/schemas/providers/us_east_1/aws-dms-replicationinstance.json index ad4fa6be64..3d4dfcb1dc 100644 --- a/src/cfnlint/data/schemas/providers/us_east_1/aws-dms-replicationinstance.json +++ b/src/cfnlint/data/schemas/providers/us_east_1/aws-dms-replicationinstance.json @@ -52,6 +52,9 @@ "MultiAZ": { "type": "boolean" }, + "NetworkType": { + "type": "string" + }, "PreferredMaintenanceWindow": { "type": "string" }, diff --git a/src/cfnlint/data/schemas/providers/us_east_1/aws-ecs-service.json b/src/cfnlint/data/schemas/providers/us_east_1/aws-ecs-service.json index ba7baa1de3..37e099399e 100644 --- a/src/cfnlint/data/schemas/providers/us_east_1/aws-ecs-service.json +++ b/src/cfnlint/data/schemas/providers/us_east_1/aws-ecs-service.json @@ -566,6 +566,9 @@ "type": "array" } }, + "propertyTransform": { + "/properties/Role": "Role $OR $join([\"arn:(aws)[-]{0,1}[a-z]{0,2}[-]{0,1}[a-z]{0,3}:iam::[0-9]{12}[:]role/{1}\", Role])" + }, "readOnlyProperties": [ "/properties/ServiceArn", "/properties/Name" diff --git a/src/cfnlint/data/schemas/providers/us_east_1/aws-ecs-taskset.json b/src/cfnlint/data/schemas/providers/us_east_1/aws-ecs-taskset.json index 3491488499..663d1205f9 100644 --- a/src/cfnlint/data/schemas/providers/us_east_1/aws-ecs-taskset.json +++ b/src/cfnlint/data/schemas/providers/us_east_1/aws-ecs-taskset.json @@ -9,7 +9,8 @@ "/properties/PlatformVersion", "/properties/Service", "/properties/ServiceRegistries", - "/properties/TaskDefinition" + "/properties/TaskDefinition", + "/properties/CapacityProviderStrategy" ], "definitions": { "AwsVpcConfiguration": { @@ -44,6 +45,21 @@ ], "type": "object" }, + "CapacityProviderStrategyItem": { + "additionalProperties": false, + "properties": { + "Base": { + "type": "integer" + }, + "CapacityProvider": { + "type": "string" + }, + "Weight": { + "type": "integer" + } + }, + "type": "object" + }, "LoadBalancer": { "additionalProperties": false, "properties": { @@ -122,6 +138,12 @@ "/properties/Id" ], "properties": { + "CapacityProviderStrategy": { + "items": { + "$ref": "#/definitions/CapacityProviderStrategyItem" + }, + "type": "array" + }, "Cluster": { "type": "string" }, diff --git a/src/cfnlint/data/schemas/providers/us_east_1/aws-guardduty-detector.json b/src/cfnlint/data/schemas/providers/us_east_1/aws-guardduty-detector.json index efaad17ff9..0632b1017c 100644 --- a/src/cfnlint/data/schemas/providers/us_east_1/aws-guardduty-detector.json +++ b/src/cfnlint/data/schemas/providers/us_east_1/aws-guardduty-detector.json @@ -36,6 +36,7 @@ "additionalProperties": false, "properties": { "AdditionalConfiguration": { + "insertionOrder": false, "items": { "$ref": "#/definitions/CFNFeatureAdditionalConfiguration" }, @@ -145,6 +146,7 @@ "type": "boolean" }, "Features": { + "insertionOrder": false, "items": { "$ref": "#/definitions/CFNFeatureConfiguration" }, @@ -162,6 +164,7 @@ "type": "string" }, "Tags": { + "insertionOrder": false, "items": { "$ref": "#/definitions/TagItem" }, @@ -177,7 +180,8 @@ "tagging": { "cloudFormationSystemTags": false, "tagOnCreate": true, - "tagUpdatable": false, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, "taggable": true }, "typeName": "AWS::GuardDuty::Detector" diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/aws-kinesis-resourcepolicy.json b/src/cfnlint/data/schemas/providers/us_east_1/aws-kinesis-resourcepolicy.json similarity index 100% rename from src/cfnlint/data/schemas/providers/eu_central_1/aws-kinesis-resourcepolicy.json rename to src/cfnlint/data/schemas/providers/us_east_1/aws-kinesis-resourcepolicy.json diff --git a/src/cfnlint/data/schemas/providers/us_east_1/aws-kinesis-stream.json b/src/cfnlint/data/schemas/providers/us_east_1/aws-kinesis-stream.json index be1bc65c07..45b4ce6a6b 100644 --- a/src/cfnlint/data/schemas/providers/us_east_1/aws-kinesis-stream.json +++ b/src/cfnlint/data/schemas/providers/us_east_1/aws-kinesis-stream.json @@ -1,4 +1,5 @@ { + "$comment": "Do not set SystemTags to true without implementing a fail-open mechanism. It should not fail when adding systemTags for customers without AddTagsToStream Permission. Cloudformation will automatically add system tags even if customer does not have the AddTagsToStream permission. COE: https://www.coe.a2z.com/coe/236297/content", "additionalProperties": false, "createOnlyProperties": [ "/properties/Name" diff --git a/src/cfnlint/data/schemas/providers/us_east_1/aws-networkfirewall-firewallpolicy.json b/src/cfnlint/data/schemas/providers/us_east_1/aws-networkfirewall-firewallpolicy.json index 973b595561..6c4c8f2af1 100644 --- a/src/cfnlint/data/schemas/providers/us_east_1/aws-networkfirewall-firewallpolicy.json +++ b/src/cfnlint/data/schemas/providers/us_east_1/aws-networkfirewall-firewallpolicy.json @@ -187,6 +187,17 @@ "StatefulEngineOptions": { "additionalProperties": false, "properties": { + "FlowTimeouts": { + "additionalProperties": false, + "properties": { + "TcpIdleTimeoutSeconds": { + "maximum": 600, + "minimum": 60, + "type": "integer" + } + }, + "type": "object" + }, "RuleOrder": { "$ref": "#/definitions/RuleOrder" }, diff --git a/src/cfnlint/data/schemas/providers/us_east_1/aws-sagemaker-imageversion.json b/src/cfnlint/data/schemas/providers/us_east_1/aws-sagemaker-imageversion.json index 3b09dc9bad..e7c91ccc8d 100644 --- a/src/cfnlint/data/schemas/providers/us_east_1/aws-sagemaker-imageversion.json +++ b/src/cfnlint/data/schemas/providers/us_east_1/aws-sagemaker-imageversion.json @@ -150,6 +150,7 @@ "readOnlyProperties": [ "/properties/ImageVersionArn", "/properties/ImageArn", + "/properties/Version", "/properties/ContainerImage" ], "required": [ diff --git a/src/cfnlint/data/schemas/providers/us_east_2/__init__.py b/src/cfnlint/data/schemas/providers/us_east_2/__init__.py index 145b97772b..55efcd6b59 100644 --- a/src/cfnlint/data/schemas/providers/us_east_2/__init__.py +++ b/src/cfnlint/data/schemas/providers/us_east_2/__init__.py @@ -1557,9 +1557,7 @@ "aws-ecs-cluster.json", "aws-ecs-clustercapacityproviderassociations.json", "aws-ecs-primarytaskset.json", - "aws-ecs-service.json", "aws-ecs-taskdefinition.json", - "aws-ecs-taskset.json", "aws-efs-accesspoint.json", "aws-efs-filesystem.json", "aws-efs-mounttarget.json", @@ -1697,7 +1695,6 @@ "aws-groundstation-config.json", "aws-groundstation-dataflowendpointgroup.json", "aws-groundstation-missionprofile.json", - "aws-guardduty-detector.json", "aws-guardduty-filter.json", "aws-guardduty-ipset.json", "aws-guardduty-malwareprotectionplan.json", @@ -1791,7 +1788,6 @@ "aws-kendra-faq.json", "aws-kendra-index.json", "aws-kendraranking-executionplan.json", - "aws-kinesis-stream.json", "aws-kinesis-streamconsumer.json", "aws-kinesisanalytics-application.json", "aws-kinesisanalytics-applicationoutput.json", @@ -1926,7 +1922,6 @@ "aws-neptunegraph-graph.json", "aws-neptunegraph-privategraphendpoint.json", "aws-networkfirewall-firewall.json", - "aws-networkfirewall-firewallpolicy.json", "aws-networkfirewall-loggingconfiguration.json", "aws-networkfirewall-rulegroup.json", "aws-networkfirewall-tlsinspectionconfiguration.json", @@ -2097,6 +2092,7 @@ "aws-sagemaker-endpointconfig.json", "aws-sagemaker-featuregroup.json", "aws-sagemaker-image.json", + "aws-sagemaker-imageversion.json", "aws-sagemaker-inferencecomponent.json", "aws-sagemaker-inferenceexperiment.json", "aws-sagemaker-mlflowtrackingserver.json", diff --git a/src/cfnlint/data/schemas/providers/us_east_2/aws-ecs-service.json b/src/cfnlint/data/schemas/providers/us_east_2/aws-ecs-service.json new file mode 100644 index 0000000000..ba7baa1de3 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_east_2/aws-ecs-service.json @@ -0,0 +1,585 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/DeploymentController", + "/properties/LaunchType", + "/properties/Role", + "/properties/SchedulingStrategy", + "/properties/ServiceName" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "CapacityProviderStrategyItem": { + "additionalProperties": false, + "properties": { + "Base": { + "type": "integer" + }, + "CapacityProvider": { + "type": "string" + }, + "Weight": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentAlarms": { + "additionalProperties": false, + "properties": { + "AlarmNames": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "AlarmNames", + "Rollback", + "Enable" + ], + "type": "object" + }, + "DeploymentCircuitBreaker": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "Enable", + "Rollback" + ], + "type": "object" + }, + "DeploymentConfiguration": { + "additionalProperties": false, + "properties": { + "Alarms": { + "$ref": "#/definitions/DeploymentAlarms" + }, + "DeploymentCircuitBreaker": { + "$ref": "#/definitions/DeploymentCircuitBreaker" + }, + "MaximumPercent": { + "type": "integer" + }, + "MinimumHealthyPercent": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentController": { + "additionalProperties": false, + "properties": { + "Type": { + "enum": [ + "CODE_DEPLOY", + "ECS", + "EXTERNAL" + ], + "type": "string" + } + }, + "type": "object" + }, + "EBSTagSpecification": { + "additionalProperties": false, + "properties": { + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "ResourceType": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "ResourceType" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "LoadBalancerName": { + "type": "string" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "LogConfiguration": { + "additionalProperties": false, + "properties": { + "LogDriver": { + "type": "string" + }, + "Options": { + "additionalProperties": false, + "patternProperties": { + ".{1,}": { + "type": "string" + } + }, + "type": "object" + }, + "SecretOptions": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Secret" + }, + "type": "array" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsvpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "PlacementConstraint": { + "additionalProperties": false, + "properties": { + "Expression": { + "type": "string" + }, + "Type": { + "enum": [ + "distinctInstance", + "memberOf" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "PlacementStrategy": { + "additionalProperties": false, + "properties": { + "Field": { + "type": "string" + }, + "Type": { + "enum": [ + "binpack", + "random", + "spread" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "Secret": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "ValueFrom": { + "type": "string" + } + }, + "required": [ + "Name", + "ValueFrom" + ], + "type": "object" + }, + "ServiceConnectClientAlias": { + "additionalProperties": false, + "properties": { + "DnsName": { + "type": "string" + }, + "Port": { + "type": "integer" + } + }, + "required": [ + "Port" + ], + "type": "object" + }, + "ServiceConnectConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + }, + "LogConfiguration": { + "$ref": "#/definitions/LogConfiguration" + }, + "Namespace": { + "type": "string" + }, + "Services": { + "items": { + "$ref": "#/definitions/ServiceConnectService" + }, + "type": "array" + } + }, + "required": [ + "Enabled" + ], + "type": "object" + }, + "ServiceConnectService": { + "additionalProperties": false, + "properties": { + "ClientAliases": { + "items": { + "$ref": "#/definitions/ServiceConnectClientAlias" + }, + "type": "array" + }, + "DiscoveryName": { + "type": "string" + }, + "IngressPortOverride": { + "type": "integer" + }, + "PortName": { + "type": "string" + }, + "Timeout": { + "$ref": "#/definitions/TimeoutConfiguration" + }, + "Tls": { + "$ref": "#/definitions/ServiceConnectTlsConfiguration" + } + }, + "required": [ + "PortName" + ], + "type": "object" + }, + "ServiceConnectTlsCertificateAuthority": { + "additionalProperties": false, + "properties": { + "AwsPcaAuthorityArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceConnectTlsConfiguration": { + "additionalProperties": false, + "properties": { + "IssuerCertificateAuthority": { + "$ref": "#/definitions/ServiceConnectTlsCertificateAuthority" + }, + "KmsKey": { + "type": "string" + }, + "RoleArn": { + "type": "string" + } + }, + "required": [ + "IssuerCertificateAuthority" + ], + "type": "object" + }, + "ServiceManagedEBSVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "Encrypted": { + "type": "boolean" + }, + "FilesystemType": { + "type": "string" + }, + "Iops": { + "type": "integer" + }, + "KmsKeyId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SizeInGiB": { + "type": "integer" + }, + "SnapshotId": { + "type": "string" + }, + "TagSpecifications": { + "items": { + "$ref": "#/definitions/EBSTagSpecification" + }, + "type": "array" + }, + "Throughput": { + "type": "integer" + }, + "VolumeType": { + "type": "string" + } + }, + "required": [ + "RoleArn" + ], + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "ManagedEBSVolume": { + "$ref": "#/definitions/ServiceManagedEBSVolumeConfiguration" + }, + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + }, + "TimeoutConfiguration": { + "additionalProperties": false, + "properties": { + "IdleTimeoutSeconds": { + "type": "integer" + }, + "PerRequestTimeoutSeconds": { + "type": "integer" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/ServiceArn", + "/properties/Cluster" + ], + "properties": { + "CapacityProviderStrategy": { + "items": { + "$ref": "#/definitions/CapacityProviderStrategyItem" + }, + "type": "array" + }, + "Cluster": { + "type": "string" + }, + "DeploymentConfiguration": { + "$ref": "#/definitions/DeploymentConfiguration" + }, + "DeploymentController": { + "$ref": "#/definitions/DeploymentController" + }, + "DesiredCount": { + "type": "integer" + }, + "EnableECSManagedTags": { + "type": "boolean" + }, + "EnableExecuteCommand": { + "type": "boolean" + }, + "HealthCheckGracePeriodSeconds": { + "type": "integer" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE", + "EXTERNAL" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "Name": { + "type": "string" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlacementConstraints": { + "items": { + "$ref": "#/definitions/PlacementConstraint" + }, + "type": "array" + }, + "PlacementStrategies": { + "items": { + "$ref": "#/definitions/PlacementStrategy" + }, + "type": "array" + }, + "PlatformVersion": { + "default": "LATEST", + "type": "string" + }, + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "Role": { + "type": "string" + }, + "SchedulingStrategy": { + "enum": [ + "DAEMON", + "REPLICA" + ], + "type": "string" + }, + "ServiceArn": { + "type": "string" + }, + "ServiceConnectConfiguration": { + "$ref": "#/definitions/ServiceConnectConfiguration" + }, + "ServiceName": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + }, + "VolumeConfigurations": { + "items": { + "$ref": "#/definitions/ServiceVolumeConfiguration" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/ServiceArn", + "/properties/Name" + ], + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::Service", + "writeOnlyProperties": [ + "/properties/ServiceConnectConfiguration", + "/properties/VolumeConfigurations" + ] +} diff --git a/src/cfnlint/data/schemas/providers/us_east_2/aws-ecs-taskset.json b/src/cfnlint/data/schemas/providers/us_east_2/aws-ecs-taskset.json new file mode 100644 index 0000000000..3491488499 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_east_2/aws-ecs-taskset.json @@ -0,0 +1,191 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/ExternalId", + "/properties/LaunchType", + "/properties/LoadBalancers", + "/properties/NetworkConfiguration", + "/properties/PlatformVersion", + "/properties/Service", + "/properties/ServiceRegistries", + "/properties/TaskDefinition" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "maxItems": 5, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "maxItems": 16, + "type": "array" + } + }, + "required": [ + "Subnets" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsVpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "Scale": { + "additionalProperties": false, + "properties": { + "Unit": { + "enum": [ + "PERCENT" + ], + "type": "string" + }, + "Value": { + "maximum": 100, + "minimum": 0, + "type": "number" + } + }, + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Cluster", + "/properties/Service", + "/properties/Id" + ], + "properties": { + "Cluster": { + "type": "string" + }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlatformVersion": { + "type": "string" + }, + "Scale": { + "$ref": "#/definitions/Scale" + }, + "Service": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "Cluster", + "Service", + "TaskDefinition" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-ecs.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::TaskSet" +} diff --git a/src/cfnlint/data/schemas/providers/us_east_2/aws-guardduty-detector.json b/src/cfnlint/data/schemas/providers/us_east_2/aws-guardduty-detector.json new file mode 100644 index 0000000000..efaad17ff9 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_east_2/aws-guardduty-detector.json @@ -0,0 +1,184 @@ +{ + "additionalProperties": false, + "definitions": { + "CFNDataSourceConfigurations": { + "additionalProperties": false, + "properties": { + "Kubernetes": { + "$ref": "#/definitions/CFNKubernetesConfiguration" + }, + "MalwareProtection": { + "$ref": "#/definitions/CFNMalwareProtectionConfiguration" + }, + "S3Logs": { + "$ref": "#/definitions/CFNS3LogsConfiguration" + } + }, + "type": "object" + }, + "CFNFeatureAdditionalConfiguration": { + "additionalProperties": false, + "properties": { + "Name": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "Status": { + "maxLength": 128, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "CFNFeatureConfiguration": { + "additionalProperties": false, + "properties": { + "AdditionalConfiguration": { + "items": { + "$ref": "#/definitions/CFNFeatureAdditionalConfiguration" + }, + "type": "array" + }, + "Name": { + "maxLength": 128, + "type": "string" + }, + "Status": { + "enum": [ + "ENABLED", + "DISABLED" + ], + "type": "string" + } + }, + "required": [ + "Name", + "Status" + ], + "type": "object" + }, + "CFNKubernetesAuditLogsConfiguration": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + } + }, + "required": [ + "Enable" + ], + "type": "object" + }, + "CFNKubernetesConfiguration": { + "additionalProperties": false, + "properties": { + "AuditLogs": { + "$ref": "#/definitions/CFNKubernetesAuditLogsConfiguration" + } + }, + "required": [ + "AuditLogs" + ], + "type": "object" + }, + "CFNMalwareProtectionConfiguration": { + "additionalProperties": false, + "properties": { + "ScanEc2InstanceWithFindings": { + "$ref": "#/definitions/CFNScanEc2InstanceWithFindingsConfiguration" + } + }, + "type": "object" + }, + "CFNS3LogsConfiguration": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + } + }, + "required": [ + "Enable" + ], + "type": "object" + }, + "CFNScanEc2InstanceWithFindingsConfiguration": { + "additionalProperties": false, + "properties": { + "EbsVolumes": { + "type": "boolean" + } + }, + "type": "object" + }, + "TagItem": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "DataSources": { + "$ref": "#/definitions/CFNDataSourceConfigurations" + }, + "Enable": { + "type": "boolean" + }, + "Features": { + "items": { + "$ref": "#/definitions/CFNFeatureConfiguration" + }, + "type": "array" + }, + "FindingPublishingFrequency": { + "enum": [ + "FIFTEEN_MINUTES", + "ONE_HOUR", + "SIX_HOURS" + ], + "type": "string" + }, + "Id": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/TagItem" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "Enable" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": false, + "taggable": true + }, + "typeName": "AWS::GuardDuty::Detector" +} diff --git a/src/cfnlint/data/schemas/providers/us_east_2/aws-kinesis-stream.json b/src/cfnlint/data/schemas/providers/us_east_2/aws-kinesis-stream.json new file mode 100644 index 0000000000..be1bc65c07 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_east_2/aws-kinesis-stream.json @@ -0,0 +1,133 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "StreamEncryption": { + "additionalProperties": false, + "properties": { + "EncryptionType": { + "enum": [ + "KMS" + ], + "type": "string" + }, + "KeyId": { + "anyOf": [ + { + "relationshipRef": { + "propertyPath": "/properties/Arn", + "typeName": "AWS::KMS::Key" + } + }, + { + "relationshipRef": { + "propertyPath": "/properties/KeyId", + "typeName": "AWS::KMS::Key" + } + } + ], + "maxLength": 2048, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "EncryptionType", + "KeyId" + ], + "type": "object" + }, + "StreamModeDetails": { + "additionalProperties": false, + "properties": { + "StreamMode": { + "enum": [ + "ON_DEMAND", + "PROVISIONED" + ], + "type": "string" + } + }, + "required": [ + "StreamMode" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Name" + ], + "properties": { + "Arn": { + "type": "string" + }, + "Name": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9_.-]+$", + "type": "string" + }, + "RetentionPeriodHours": { + "maximum": 8760, + "minimum": 1, + "type": "integer" + }, + "ShardCount": { + "maximum": 100000, + "minimum": 1, + "type": "integer" + }, + "StreamEncryption": { + "$ref": "#/definitions/StreamEncryption" + }, + "StreamModeDetails": { + "$ref": "#/definitions/StreamModeDetails", + "default": { + "StreamMode": "PROVISIONED" + } + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 50, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-kinesis.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Kinesis::Stream" +} diff --git a/src/cfnlint/data/schemas/providers/us_east_2/aws-networkfirewall-firewallpolicy.json b/src/cfnlint/data/schemas/providers/us_east_2/aws-networkfirewall-firewallpolicy.json new file mode 100644 index 0000000000..973b595561 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_east_2/aws-networkfirewall-firewallpolicy.json @@ -0,0 +1,332 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/FirewallPolicyName" + ], + "definitions": { + "ActionDefinition": { + "additionalProperties": false, + "properties": { + "PublishMetricAction": { + "$ref": "#/definitions/PublishMetricAction" + } + }, + "type": "object" + }, + "CustomAction": { + "additionalProperties": false, + "properties": { + "ActionDefinition": { + "$ref": "#/definitions/ActionDefinition" + }, + "ActionName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + } + }, + "required": [ + "ActionName", + "ActionDefinition" + ], + "type": "object" + }, + "Dimension": { + "additionalProperties": false, + "properties": { + "Value": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-_ ]+$", + "type": "string" + } + }, + "required": [ + "Value" + ], + "type": "object" + }, + "FirewallPolicy": { + "additionalProperties": false, + "properties": { + "PolicyVariables": { + "additionalProperties": false, + "properties": { + "RuleVariables": { + "$ref": "#/definitions/RuleVariables" + } + }, + "type": "object" + }, + "StatefulDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatefulEngineOptions": { + "$ref": "#/definitions/StatefulEngineOptions" + }, + "StatefulRuleGroupReferences": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/StatefulRuleGroupReference" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessCustomActions": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/CustomAction" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessFragmentDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessRuleGroupReferences": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/StatelessRuleGroupReference" + }, + "type": "array", + "uniqueItems": false + }, + "TLSInspectionConfigurationArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "StatelessDefaultActions", + "StatelessFragmentDefaultActions" + ], + "type": "object" + }, + "IPSet": { + "additionalProperties": false, + "properties": { + "Definition": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/VariableDefinition" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "OverrideAction": { + "enum": [ + "DROP_TO_ALERT" + ], + "type": "string" + }, + "Priority": { + "maximum": 65535, + "minimum": 1, + "type": "integer" + }, + "PublishMetricAction": { + "additionalProperties": false, + "properties": { + "Dimensions": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/Dimension" + }, + "type": "array", + "uniqueItems": false + } + }, + "required": [ + "Dimensions" + ], + "type": "object" + }, + "ResourceArn": { + "maxLength": 256, + "minLength": 1, + "pattern": "^(arn:aws.*)$", + "type": "string" + }, + "RuleOrder": { + "enum": [ + "DEFAULT_ACTION_ORDER", + "STRICT_ORDER" + ], + "type": "string" + }, + "RuleVariables": { + "additionalProperties": false, + "patternProperties": { + "^[A-Za-z0-9_]{1,32}$": { + "$ref": "#/definitions/IPSet" + } + }, + "type": "object" + }, + "StatefulEngineOptions": { + "additionalProperties": false, + "properties": { + "RuleOrder": { + "$ref": "#/definitions/RuleOrder" + }, + "StreamExceptionPolicy": { + "$ref": "#/definitions/StreamExceptionPolicy" + } + }, + "type": "object" + }, + "StatefulRuleGroupOverride": { + "additionalProperties": false, + "properties": { + "Action": { + "$ref": "#/definitions/OverrideAction" + } + }, + "type": "object" + }, + "StatefulRuleGroupReference": { + "additionalProperties": false, + "properties": { + "Override": { + "$ref": "#/definitions/StatefulRuleGroupOverride" + }, + "Priority": { + "$ref": "#/definitions/Priority" + }, + "ResourceArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "ResourceArn" + ], + "type": "object" + }, + "StatelessRuleGroupReference": { + "additionalProperties": false, + "properties": { + "Priority": { + "$ref": "#/definitions/Priority" + }, + "ResourceArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "ResourceArn", + "Priority" + ], + "type": "object" + }, + "StreamExceptionPolicy": { + "enum": [ + "DROP", + "CONTINUE", + "REJECT" + ], + "type": "string" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "^.*$", + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 0, + "pattern": "^.*$", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "VariableDefinition": { + "minLength": 1, + "pattern": "^.*$", + "type": "string" + } + }, + "primaryIdentifier": [ + "/properties/FirewallPolicyArn" + ], + "properties": { + "Description": { + "maxLength": 512, + "minLength": 1, + "pattern": "^.*$", + "type": "string" + }, + "FirewallPolicy": { + "$ref": "#/definitions/FirewallPolicy" + }, + "FirewallPolicyArn": { + "$ref": "#/definitions/ResourceArn" + }, + "FirewallPolicyId": { + "maxLength": 36, + "minLength": 36, + "pattern": "^([0-9a-f]{8})-([0-9a-f]{4}-){3}([0-9a-f]{12})$", + "type": "string" + }, + "FirewallPolicyName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-]+$", + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + } + }, + "readOnlyProperties": [ + "/properties/FirewallPolicyArn", + "/properties/FirewallPolicyId" + ], + "required": [ + "FirewallPolicyName", + "FirewallPolicy" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-networkfirewall.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::NetworkFirewall::FirewallPolicy" +} diff --git a/src/cfnlint/data/schemas/providers/us_east_2/aws-sagemaker-imageversion.json b/src/cfnlint/data/schemas/providers/us_east_2/aws-sagemaker-imageversion.json deleted file mode 100644 index e7c91ccc8d..0000000000 --- a/src/cfnlint/data/schemas/providers/us_east_2/aws-sagemaker-imageversion.json +++ /dev/null @@ -1,172 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/ImageName", - "/properties/BaseImage" - ], - "definitions": { - "Alias": { - "maxLength": 128, - "minLength": 1, - "pattern": "(?!^[.-])^([a-zA-Z0-9-_.]+)$", - "type": "string" - }, - "Aliases": { - "items": { - "$ref": "#/definitions/Alias" - }, - "type": "array" - }, - "BaseImage": { - "maxLength": 255, - "minLength": 1, - "pattern": ".+", - "type": "string" - }, - "ContainerImage": { - "maxLength": 255, - "minLength": 1, - "pattern": ".+", - "type": "string" - }, - "Horovod": { - "type": "boolean" - }, - "ImageArn": { - "maxLength": 256, - "minLength": 1, - "pattern": "^arn:aws(-[\\w]+)*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:image\\/[a-zA-Z0-9]([-.]?[a-zA-Z0-9])*$", - "type": "string" - }, - "ImageName": { - "maxLength": 63, - "minLength": 1, - "pattern": "^[A-Za-z0-9]([-.]?[A-Za-z0-9])*$", - "type": "string" - }, - "ImageVersionArn": { - "maxLength": 256, - "minLength": 1, - "pattern": "^arn:aws(-[\\w]+)*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:image-version\\/[a-zA-Z0-9]([-.]?[a-zA-Z0-9])*\\/[0-9]+$", - "type": "string" - }, - "JobType": { - "enum": [ - "TRAINING", - "INFERENCE", - "NOTEBOOK_KERNEL" - ], - "type": "string" - }, - "MLFramework": { - "maxLength": 128, - "minLength": 1, - "pattern": "^[a-zA-Z]+ ?\\d+\\.\\d+(\\.\\d+)?$", - "type": "string" - }, - "Processor": { - "enum": [ - "CPU", - "GPU" - ], - "type": "string" - }, - "ProgrammingLang": { - "maxLength": 128, - "minLength": 1, - "pattern": "^[a-zA-Z]+ ?\\d+\\.\\d+(\\.\\d+)?$", - "type": "string" - }, - "ReleaseNotes": { - "maxLength": 255, - "minLength": 1, - "pattern": ".*", - "type": "string" - }, - "VendorGuidance": { - "enum": [ - "NOT_PROVIDED", - "STABLE", - "TO_BE_ARCHIVED", - "ARCHIVED" - ], - "type": "string" - }, - "Version": { - "minimum": 1, - "type": "integer" - } - }, - "primaryIdentifier": [ - "/properties/ImageVersionArn" - ], - "properties": { - "Alias": { - "$ref": "#/definitions/Alias" - }, - "Aliases": { - "$ref": "#/definitions/Aliases" - }, - "BaseImage": { - "$ref": "#/definitions/BaseImage" - }, - "ContainerImage": { - "$ref": "#/definitions/ContainerImage" - }, - "Horovod": { - "$ref": "#/definitions/Horovod" - }, - "ImageArn": { - "$ref": "#/definitions/ImageArn" - }, - "ImageName": { - "$ref": "#/definitions/ImageName" - }, - "ImageVersionArn": { - "$ref": "#/definitions/ImageVersionArn" - }, - "JobType": { - "$ref": "#/definitions/JobType" - }, - "MLFramework": { - "$ref": "#/definitions/MLFramework" - }, - "Processor": { - "$ref": "#/definitions/Processor" - }, - "ProgrammingLang": { - "$ref": "#/definitions/ProgrammingLang" - }, - "ReleaseNotes": { - "$ref": "#/definitions/ReleaseNotes" - }, - "VendorGuidance": { - "$ref": "#/definitions/VendorGuidance" - }, - "Version": { - "$ref": "#/definitions/Version" - } - }, - "readOnlyProperties": [ - "/properties/ImageVersionArn", - "/properties/ImageArn", - "/properties/Version", - "/properties/ContainerImage" - ], - "required": [ - "ImageName", - "BaseImage" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sagemaker", - "tagging": { - "cloudFormationSystemTags": false, - "tagOnCreate": false, - "tagUpdatable": false, - "taggable": false - }, - "typeName": "AWS::SageMaker::ImageVersion", - "writeOnlyProperties": [ - "/properties/Aliases", - "/properties/Alias" - ] -} diff --git a/src/cfnlint/data/schemas/providers/us_gov_east_1/__init__.py b/src/cfnlint/data/schemas/providers/us_gov_east_1/__init__.py index 585c6d16d3..333526747f 100644 --- a/src/cfnlint/data/schemas/providers/us_gov_east_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/us_gov_east_1/__init__.py @@ -917,9 +917,7 @@ "aws-ecs-cluster.json", "aws-ecs-clustercapacityproviderassociations.json", "aws-ecs-primarytaskset.json", - "aws-ecs-service.json", "aws-ecs-taskdefinition.json", - "aws-ecs-taskset.json", "aws-efs-accesspoint.json", "aws-efs-filesystem.json", "aws-eks-accessentry.json", @@ -982,7 +980,6 @@ "aws-greengrass-resourcedefinitionversion.json", "aws-greengrassv2-componentversion.json", "aws-greengrassv2-deployment.json", - "aws-guardduty-detector.json", "aws-guardduty-filter.json", "aws-guardduty-ipset.json", "aws-guardduty-master.json", @@ -1036,7 +1033,6 @@ "aws-iot-thingtype.json", "aws-iot-topicrule.json", "aws-iot-topicruledestination.json", - "aws-kinesis-stream.json", "aws-kinesis-streamconsumer.json", "aws-kinesisanalytics-applicationoutput.json", "aws-kinesisanalyticsv2-application.json", @@ -1083,7 +1079,6 @@ "aws-neptune-dbcluster.json", "aws-neptune-dbsubnetgroup.json", "aws-networkfirewall-firewall.json", - "aws-networkfirewall-firewallpolicy.json", "aws-networkfirewall-loggingconfiguration.json", "aws-networkfirewall-rulegroup.json", "aws-networkfirewall-tlsinspectionconfiguration.json", @@ -1164,6 +1159,7 @@ "aws-sagemaker-appimageconfig.json", "aws-sagemaker-domain.json", "aws-sagemaker-image.json", + "aws-sagemaker-imageversion.json", "aws-sagemaker-modelcard.json", "aws-sagemaker-studiolifecycleconfig.json", "aws-sagemaker-userprofile.json", @@ -1171,6 +1167,7 @@ "aws-secretsmanager-resourcepolicy.json", "aws-secretsmanager-rotationschedule.json", "aws-secretsmanager-secret.json", + "aws-secretsmanager-secrettargetattachment.json", "aws-securityhub-automationrule.json", "aws-securityhub-configurationpolicy.json", "aws-securityhub-delegatedadmin.json", diff --git a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-ecs-service.json b/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-ecs-service.json new file mode 100644 index 0000000000..ba7baa1de3 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-ecs-service.json @@ -0,0 +1,585 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/DeploymentController", + "/properties/LaunchType", + "/properties/Role", + "/properties/SchedulingStrategy", + "/properties/ServiceName" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "CapacityProviderStrategyItem": { + "additionalProperties": false, + "properties": { + "Base": { + "type": "integer" + }, + "CapacityProvider": { + "type": "string" + }, + "Weight": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentAlarms": { + "additionalProperties": false, + "properties": { + "AlarmNames": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "AlarmNames", + "Rollback", + "Enable" + ], + "type": "object" + }, + "DeploymentCircuitBreaker": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "Enable", + "Rollback" + ], + "type": "object" + }, + "DeploymentConfiguration": { + "additionalProperties": false, + "properties": { + "Alarms": { + "$ref": "#/definitions/DeploymentAlarms" + }, + "DeploymentCircuitBreaker": { + "$ref": "#/definitions/DeploymentCircuitBreaker" + }, + "MaximumPercent": { + "type": "integer" + }, + "MinimumHealthyPercent": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentController": { + "additionalProperties": false, + "properties": { + "Type": { + "enum": [ + "CODE_DEPLOY", + "ECS", + "EXTERNAL" + ], + "type": "string" + } + }, + "type": "object" + }, + "EBSTagSpecification": { + "additionalProperties": false, + "properties": { + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "ResourceType": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "ResourceType" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "LoadBalancerName": { + "type": "string" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "LogConfiguration": { + "additionalProperties": false, + "properties": { + "LogDriver": { + "type": "string" + }, + "Options": { + "additionalProperties": false, + "patternProperties": { + ".{1,}": { + "type": "string" + } + }, + "type": "object" + }, + "SecretOptions": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Secret" + }, + "type": "array" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsvpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "PlacementConstraint": { + "additionalProperties": false, + "properties": { + "Expression": { + "type": "string" + }, + "Type": { + "enum": [ + "distinctInstance", + "memberOf" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "PlacementStrategy": { + "additionalProperties": false, + "properties": { + "Field": { + "type": "string" + }, + "Type": { + "enum": [ + "binpack", + "random", + "spread" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "Secret": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "ValueFrom": { + "type": "string" + } + }, + "required": [ + "Name", + "ValueFrom" + ], + "type": "object" + }, + "ServiceConnectClientAlias": { + "additionalProperties": false, + "properties": { + "DnsName": { + "type": "string" + }, + "Port": { + "type": "integer" + } + }, + "required": [ + "Port" + ], + "type": "object" + }, + "ServiceConnectConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + }, + "LogConfiguration": { + "$ref": "#/definitions/LogConfiguration" + }, + "Namespace": { + "type": "string" + }, + "Services": { + "items": { + "$ref": "#/definitions/ServiceConnectService" + }, + "type": "array" + } + }, + "required": [ + "Enabled" + ], + "type": "object" + }, + "ServiceConnectService": { + "additionalProperties": false, + "properties": { + "ClientAliases": { + "items": { + "$ref": "#/definitions/ServiceConnectClientAlias" + }, + "type": "array" + }, + "DiscoveryName": { + "type": "string" + }, + "IngressPortOverride": { + "type": "integer" + }, + "PortName": { + "type": "string" + }, + "Timeout": { + "$ref": "#/definitions/TimeoutConfiguration" + }, + "Tls": { + "$ref": "#/definitions/ServiceConnectTlsConfiguration" + } + }, + "required": [ + "PortName" + ], + "type": "object" + }, + "ServiceConnectTlsCertificateAuthority": { + "additionalProperties": false, + "properties": { + "AwsPcaAuthorityArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceConnectTlsConfiguration": { + "additionalProperties": false, + "properties": { + "IssuerCertificateAuthority": { + "$ref": "#/definitions/ServiceConnectTlsCertificateAuthority" + }, + "KmsKey": { + "type": "string" + }, + "RoleArn": { + "type": "string" + } + }, + "required": [ + "IssuerCertificateAuthority" + ], + "type": "object" + }, + "ServiceManagedEBSVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "Encrypted": { + "type": "boolean" + }, + "FilesystemType": { + "type": "string" + }, + "Iops": { + "type": "integer" + }, + "KmsKeyId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SizeInGiB": { + "type": "integer" + }, + "SnapshotId": { + "type": "string" + }, + "TagSpecifications": { + "items": { + "$ref": "#/definitions/EBSTagSpecification" + }, + "type": "array" + }, + "Throughput": { + "type": "integer" + }, + "VolumeType": { + "type": "string" + } + }, + "required": [ + "RoleArn" + ], + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "ManagedEBSVolume": { + "$ref": "#/definitions/ServiceManagedEBSVolumeConfiguration" + }, + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + }, + "TimeoutConfiguration": { + "additionalProperties": false, + "properties": { + "IdleTimeoutSeconds": { + "type": "integer" + }, + "PerRequestTimeoutSeconds": { + "type": "integer" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/ServiceArn", + "/properties/Cluster" + ], + "properties": { + "CapacityProviderStrategy": { + "items": { + "$ref": "#/definitions/CapacityProviderStrategyItem" + }, + "type": "array" + }, + "Cluster": { + "type": "string" + }, + "DeploymentConfiguration": { + "$ref": "#/definitions/DeploymentConfiguration" + }, + "DeploymentController": { + "$ref": "#/definitions/DeploymentController" + }, + "DesiredCount": { + "type": "integer" + }, + "EnableECSManagedTags": { + "type": "boolean" + }, + "EnableExecuteCommand": { + "type": "boolean" + }, + "HealthCheckGracePeriodSeconds": { + "type": "integer" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE", + "EXTERNAL" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "Name": { + "type": "string" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlacementConstraints": { + "items": { + "$ref": "#/definitions/PlacementConstraint" + }, + "type": "array" + }, + "PlacementStrategies": { + "items": { + "$ref": "#/definitions/PlacementStrategy" + }, + "type": "array" + }, + "PlatformVersion": { + "default": "LATEST", + "type": "string" + }, + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "Role": { + "type": "string" + }, + "SchedulingStrategy": { + "enum": [ + "DAEMON", + "REPLICA" + ], + "type": "string" + }, + "ServiceArn": { + "type": "string" + }, + "ServiceConnectConfiguration": { + "$ref": "#/definitions/ServiceConnectConfiguration" + }, + "ServiceName": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + }, + "VolumeConfigurations": { + "items": { + "$ref": "#/definitions/ServiceVolumeConfiguration" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/ServiceArn", + "/properties/Name" + ], + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::Service", + "writeOnlyProperties": [ + "/properties/ServiceConnectConfiguration", + "/properties/VolumeConfigurations" + ] +} diff --git a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-ecs-taskset.json b/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-ecs-taskset.json new file mode 100644 index 0000000000..3491488499 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-ecs-taskset.json @@ -0,0 +1,191 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/ExternalId", + "/properties/LaunchType", + "/properties/LoadBalancers", + "/properties/NetworkConfiguration", + "/properties/PlatformVersion", + "/properties/Service", + "/properties/ServiceRegistries", + "/properties/TaskDefinition" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "maxItems": 5, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "maxItems": 16, + "type": "array" + } + }, + "required": [ + "Subnets" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsVpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "Scale": { + "additionalProperties": false, + "properties": { + "Unit": { + "enum": [ + "PERCENT" + ], + "type": "string" + }, + "Value": { + "maximum": 100, + "minimum": 0, + "type": "number" + } + }, + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Cluster", + "/properties/Service", + "/properties/Id" + ], + "properties": { + "Cluster": { + "type": "string" + }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlatformVersion": { + "type": "string" + }, + "Scale": { + "$ref": "#/definitions/Scale" + }, + "Service": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "Cluster", + "Service", + "TaskDefinition" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-ecs.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::TaskSet" +} diff --git a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-guardduty-detector.json b/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-guardduty-detector.json new file mode 100644 index 0000000000..efaad17ff9 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-guardduty-detector.json @@ -0,0 +1,184 @@ +{ + "additionalProperties": false, + "definitions": { + "CFNDataSourceConfigurations": { + "additionalProperties": false, + "properties": { + "Kubernetes": { + "$ref": "#/definitions/CFNKubernetesConfiguration" + }, + "MalwareProtection": { + "$ref": "#/definitions/CFNMalwareProtectionConfiguration" + }, + "S3Logs": { + "$ref": "#/definitions/CFNS3LogsConfiguration" + } + }, + "type": "object" + }, + "CFNFeatureAdditionalConfiguration": { + "additionalProperties": false, + "properties": { + "Name": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "Status": { + "maxLength": 128, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "CFNFeatureConfiguration": { + "additionalProperties": false, + "properties": { + "AdditionalConfiguration": { + "items": { + "$ref": "#/definitions/CFNFeatureAdditionalConfiguration" + }, + "type": "array" + }, + "Name": { + "maxLength": 128, + "type": "string" + }, + "Status": { + "enum": [ + "ENABLED", + "DISABLED" + ], + "type": "string" + } + }, + "required": [ + "Name", + "Status" + ], + "type": "object" + }, + "CFNKubernetesAuditLogsConfiguration": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + } + }, + "required": [ + "Enable" + ], + "type": "object" + }, + "CFNKubernetesConfiguration": { + "additionalProperties": false, + "properties": { + "AuditLogs": { + "$ref": "#/definitions/CFNKubernetesAuditLogsConfiguration" + } + }, + "required": [ + "AuditLogs" + ], + "type": "object" + }, + "CFNMalwareProtectionConfiguration": { + "additionalProperties": false, + "properties": { + "ScanEc2InstanceWithFindings": { + "$ref": "#/definitions/CFNScanEc2InstanceWithFindingsConfiguration" + } + }, + "type": "object" + }, + "CFNS3LogsConfiguration": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + } + }, + "required": [ + "Enable" + ], + "type": "object" + }, + "CFNScanEc2InstanceWithFindingsConfiguration": { + "additionalProperties": false, + "properties": { + "EbsVolumes": { + "type": "boolean" + } + }, + "type": "object" + }, + "TagItem": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "DataSources": { + "$ref": "#/definitions/CFNDataSourceConfigurations" + }, + "Enable": { + "type": "boolean" + }, + "Features": { + "items": { + "$ref": "#/definitions/CFNFeatureConfiguration" + }, + "type": "array" + }, + "FindingPublishingFrequency": { + "enum": [ + "FIFTEEN_MINUTES", + "ONE_HOUR", + "SIX_HOURS" + ], + "type": "string" + }, + "Id": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/TagItem" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "Enable" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": false, + "taggable": true + }, + "typeName": "AWS::GuardDuty::Detector" +} diff --git a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-kinesis-stream.json b/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-kinesis-stream.json new file mode 100644 index 0000000000..be1bc65c07 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-kinesis-stream.json @@ -0,0 +1,133 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "StreamEncryption": { + "additionalProperties": false, + "properties": { + "EncryptionType": { + "enum": [ + "KMS" + ], + "type": "string" + }, + "KeyId": { + "anyOf": [ + { + "relationshipRef": { + "propertyPath": "/properties/Arn", + "typeName": "AWS::KMS::Key" + } + }, + { + "relationshipRef": { + "propertyPath": "/properties/KeyId", + "typeName": "AWS::KMS::Key" + } + } + ], + "maxLength": 2048, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "EncryptionType", + "KeyId" + ], + "type": "object" + }, + "StreamModeDetails": { + "additionalProperties": false, + "properties": { + "StreamMode": { + "enum": [ + "ON_DEMAND", + "PROVISIONED" + ], + "type": "string" + } + }, + "required": [ + "StreamMode" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Name" + ], + "properties": { + "Arn": { + "type": "string" + }, + "Name": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9_.-]+$", + "type": "string" + }, + "RetentionPeriodHours": { + "maximum": 8760, + "minimum": 1, + "type": "integer" + }, + "ShardCount": { + "maximum": 100000, + "minimum": 1, + "type": "integer" + }, + "StreamEncryption": { + "$ref": "#/definitions/StreamEncryption" + }, + "StreamModeDetails": { + "$ref": "#/definitions/StreamModeDetails", + "default": { + "StreamMode": "PROVISIONED" + } + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 50, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-kinesis.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Kinesis::Stream" +} diff --git a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-networkfirewall-firewallpolicy.json b/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-networkfirewall-firewallpolicy.json new file mode 100644 index 0000000000..973b595561 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-networkfirewall-firewallpolicy.json @@ -0,0 +1,332 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/FirewallPolicyName" + ], + "definitions": { + "ActionDefinition": { + "additionalProperties": false, + "properties": { + "PublishMetricAction": { + "$ref": "#/definitions/PublishMetricAction" + } + }, + "type": "object" + }, + "CustomAction": { + "additionalProperties": false, + "properties": { + "ActionDefinition": { + "$ref": "#/definitions/ActionDefinition" + }, + "ActionName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + } + }, + "required": [ + "ActionName", + "ActionDefinition" + ], + "type": "object" + }, + "Dimension": { + "additionalProperties": false, + "properties": { + "Value": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-_ ]+$", + "type": "string" + } + }, + "required": [ + "Value" + ], + "type": "object" + }, + "FirewallPolicy": { + "additionalProperties": false, + "properties": { + "PolicyVariables": { + "additionalProperties": false, + "properties": { + "RuleVariables": { + "$ref": "#/definitions/RuleVariables" + } + }, + "type": "object" + }, + "StatefulDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatefulEngineOptions": { + "$ref": "#/definitions/StatefulEngineOptions" + }, + "StatefulRuleGroupReferences": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/StatefulRuleGroupReference" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessCustomActions": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/CustomAction" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessFragmentDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessRuleGroupReferences": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/StatelessRuleGroupReference" + }, + "type": "array", + "uniqueItems": false + }, + "TLSInspectionConfigurationArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "StatelessDefaultActions", + "StatelessFragmentDefaultActions" + ], + "type": "object" + }, + "IPSet": { + "additionalProperties": false, + "properties": { + "Definition": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/VariableDefinition" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "OverrideAction": { + "enum": [ + "DROP_TO_ALERT" + ], + "type": "string" + }, + "Priority": { + "maximum": 65535, + "minimum": 1, + "type": "integer" + }, + "PublishMetricAction": { + "additionalProperties": false, + "properties": { + "Dimensions": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/Dimension" + }, + "type": "array", + "uniqueItems": false + } + }, + "required": [ + "Dimensions" + ], + "type": "object" + }, + "ResourceArn": { + "maxLength": 256, + "minLength": 1, + "pattern": "^(arn:aws.*)$", + "type": "string" + }, + "RuleOrder": { + "enum": [ + "DEFAULT_ACTION_ORDER", + "STRICT_ORDER" + ], + "type": "string" + }, + "RuleVariables": { + "additionalProperties": false, + "patternProperties": { + "^[A-Za-z0-9_]{1,32}$": { + "$ref": "#/definitions/IPSet" + } + }, + "type": "object" + }, + "StatefulEngineOptions": { + "additionalProperties": false, + "properties": { + "RuleOrder": { + "$ref": "#/definitions/RuleOrder" + }, + "StreamExceptionPolicy": { + "$ref": "#/definitions/StreamExceptionPolicy" + } + }, + "type": "object" + }, + "StatefulRuleGroupOverride": { + "additionalProperties": false, + "properties": { + "Action": { + "$ref": "#/definitions/OverrideAction" + } + }, + "type": "object" + }, + "StatefulRuleGroupReference": { + "additionalProperties": false, + "properties": { + "Override": { + "$ref": "#/definitions/StatefulRuleGroupOverride" + }, + "Priority": { + "$ref": "#/definitions/Priority" + }, + "ResourceArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "ResourceArn" + ], + "type": "object" + }, + "StatelessRuleGroupReference": { + "additionalProperties": false, + "properties": { + "Priority": { + "$ref": "#/definitions/Priority" + }, + "ResourceArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "ResourceArn", + "Priority" + ], + "type": "object" + }, + "StreamExceptionPolicy": { + "enum": [ + "DROP", + "CONTINUE", + "REJECT" + ], + "type": "string" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "^.*$", + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 0, + "pattern": "^.*$", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "VariableDefinition": { + "minLength": 1, + "pattern": "^.*$", + "type": "string" + } + }, + "primaryIdentifier": [ + "/properties/FirewallPolicyArn" + ], + "properties": { + "Description": { + "maxLength": 512, + "minLength": 1, + "pattern": "^.*$", + "type": "string" + }, + "FirewallPolicy": { + "$ref": "#/definitions/FirewallPolicy" + }, + "FirewallPolicyArn": { + "$ref": "#/definitions/ResourceArn" + }, + "FirewallPolicyId": { + "maxLength": 36, + "minLength": 36, + "pattern": "^([0-9a-f]{8})-([0-9a-f]{4}-){3}([0-9a-f]{12})$", + "type": "string" + }, + "FirewallPolicyName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-]+$", + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + } + }, + "readOnlyProperties": [ + "/properties/FirewallPolicyArn", + "/properties/FirewallPolicyId" + ], + "required": [ + "FirewallPolicyName", + "FirewallPolicy" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-networkfirewall.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::NetworkFirewall::FirewallPolicy" +} diff --git a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-sagemaker-imageversion.json b/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-sagemaker-imageversion.json deleted file mode 100644 index e7c91ccc8d..0000000000 --- a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-sagemaker-imageversion.json +++ /dev/null @@ -1,172 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/ImageName", - "/properties/BaseImage" - ], - "definitions": { - "Alias": { - "maxLength": 128, - "minLength": 1, - "pattern": "(?!^[.-])^([a-zA-Z0-9-_.]+)$", - "type": "string" - }, - "Aliases": { - "items": { - "$ref": "#/definitions/Alias" - }, - "type": "array" - }, - "BaseImage": { - "maxLength": 255, - "minLength": 1, - "pattern": ".+", - "type": "string" - }, - "ContainerImage": { - "maxLength": 255, - "minLength": 1, - "pattern": ".+", - "type": "string" - }, - "Horovod": { - "type": "boolean" - }, - "ImageArn": { - "maxLength": 256, - "minLength": 1, - "pattern": "^arn:aws(-[\\w]+)*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:image\\/[a-zA-Z0-9]([-.]?[a-zA-Z0-9])*$", - "type": "string" - }, - "ImageName": { - "maxLength": 63, - "minLength": 1, - "pattern": "^[A-Za-z0-9]([-.]?[A-Za-z0-9])*$", - "type": "string" - }, - "ImageVersionArn": { - "maxLength": 256, - "minLength": 1, - "pattern": "^arn:aws(-[\\w]+)*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:image-version\\/[a-zA-Z0-9]([-.]?[a-zA-Z0-9])*\\/[0-9]+$", - "type": "string" - }, - "JobType": { - "enum": [ - "TRAINING", - "INFERENCE", - "NOTEBOOK_KERNEL" - ], - "type": "string" - }, - "MLFramework": { - "maxLength": 128, - "minLength": 1, - "pattern": "^[a-zA-Z]+ ?\\d+\\.\\d+(\\.\\d+)?$", - "type": "string" - }, - "Processor": { - "enum": [ - "CPU", - "GPU" - ], - "type": "string" - }, - "ProgrammingLang": { - "maxLength": 128, - "minLength": 1, - "pattern": "^[a-zA-Z]+ ?\\d+\\.\\d+(\\.\\d+)?$", - "type": "string" - }, - "ReleaseNotes": { - "maxLength": 255, - "minLength": 1, - "pattern": ".*", - "type": "string" - }, - "VendorGuidance": { - "enum": [ - "NOT_PROVIDED", - "STABLE", - "TO_BE_ARCHIVED", - "ARCHIVED" - ], - "type": "string" - }, - "Version": { - "minimum": 1, - "type": "integer" - } - }, - "primaryIdentifier": [ - "/properties/ImageVersionArn" - ], - "properties": { - "Alias": { - "$ref": "#/definitions/Alias" - }, - "Aliases": { - "$ref": "#/definitions/Aliases" - }, - "BaseImage": { - "$ref": "#/definitions/BaseImage" - }, - "ContainerImage": { - "$ref": "#/definitions/ContainerImage" - }, - "Horovod": { - "$ref": "#/definitions/Horovod" - }, - "ImageArn": { - "$ref": "#/definitions/ImageArn" - }, - "ImageName": { - "$ref": "#/definitions/ImageName" - }, - "ImageVersionArn": { - "$ref": "#/definitions/ImageVersionArn" - }, - "JobType": { - "$ref": "#/definitions/JobType" - }, - "MLFramework": { - "$ref": "#/definitions/MLFramework" - }, - "Processor": { - "$ref": "#/definitions/Processor" - }, - "ProgrammingLang": { - "$ref": "#/definitions/ProgrammingLang" - }, - "ReleaseNotes": { - "$ref": "#/definitions/ReleaseNotes" - }, - "VendorGuidance": { - "$ref": "#/definitions/VendorGuidance" - }, - "Version": { - "$ref": "#/definitions/Version" - } - }, - "readOnlyProperties": [ - "/properties/ImageVersionArn", - "/properties/ImageArn", - "/properties/Version", - "/properties/ContainerImage" - ], - "required": [ - "ImageName", - "BaseImage" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sagemaker", - "tagging": { - "cloudFormationSystemTags": false, - "tagOnCreate": false, - "tagUpdatable": false, - "taggable": false - }, - "typeName": "AWS::SageMaker::ImageVersion", - "writeOnlyProperties": [ - "/properties/Aliases", - "/properties/Alias" - ] -} diff --git a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-secretsmanager-secrettargetattachment.json b/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-secretsmanager-secrettargetattachment.json deleted file mode 100644 index 8b5501d290..0000000000 --- a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-secretsmanager-secrettargetattachment.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "additionalProperties": false, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "Id": { - "type": "string" - }, - "SecretId": { - "type": "string" - }, - "TargetId": { - "type": "string" - }, - "TargetType": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "SecretId", - "TargetType", - "TargetId" - ], - "typeName": "AWS::SecretsManager::SecretTargetAttachment" -} diff --git a/src/cfnlint/data/schemas/providers/us_gov_west_1/__init__.py b/src/cfnlint/data/schemas/providers/us_gov_west_1/__init__.py index a27b5a1762..eda258640a 100644 --- a/src/cfnlint/data/schemas/providers/us_gov_west_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/us_gov_west_1/__init__.py @@ -1072,9 +1072,7 @@ "aws-ecs-cluster.json", "aws-ecs-clustercapacityproviderassociations.json", "aws-ecs-primarytaskset.json", - "aws-ecs-service.json", "aws-ecs-taskdefinition.json", - "aws-ecs-taskset.json", "aws-efs-accesspoint.json", "aws-efs-filesystem.json", "aws-eks-accessentry.json", @@ -1148,7 +1146,6 @@ "aws-greengrass-subscriptiondefinitionversion.json", "aws-greengrassv2-componentversion.json", "aws-greengrassv2-deployment.json", - "aws-guardduty-detector.json", "aws-guardduty-filter.json", "aws-guardduty-ipset.json", "aws-guardduty-master.json", @@ -1216,7 +1213,6 @@ "aws-iottwinmaker-scene.json", "aws-iottwinmaker-syncjob.json", "aws-iottwinmaker-workspace.json", - "aws-kinesis-stream.json", "aws-kinesis-streamconsumer.json", "aws-kinesisanalytics-applicationoutput.json", "aws-kinesisanalyticsv2-application.json", @@ -1267,7 +1263,6 @@ "aws-neptune-dbcluster.json", "aws-neptune-dbsubnetgroup.json", "aws-networkfirewall-firewall.json", - "aws-networkfirewall-firewallpolicy.json", "aws-networkfirewall-loggingconfiguration.json", "aws-networkfirewall-rulegroup.json", "aws-networkfirewall-tlsinspectionconfiguration.json", @@ -1380,6 +1375,7 @@ "aws-sagemaker-endpoint.json", "aws-sagemaker-endpointconfig.json", "aws-sagemaker-image.json", + "aws-sagemaker-imageversion.json", "aws-sagemaker-model.json", "aws-sagemaker-modelcard.json", "aws-sagemaker-modelpackage.json", @@ -1394,6 +1390,7 @@ "aws-secretsmanager-resourcepolicy.json", "aws-secretsmanager-rotationschedule.json", "aws-secretsmanager-secret.json", + "aws-secretsmanager-secrettargetattachment.json", "aws-securityhub-automationrule.json", "aws-securityhub-configurationpolicy.json", "aws-securityhub-delegatedadmin.json", diff --git a/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-ecs-service.json b/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-ecs-service.json new file mode 100644 index 0000000000..ba7baa1de3 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-ecs-service.json @@ -0,0 +1,585 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/DeploymentController", + "/properties/LaunchType", + "/properties/Role", + "/properties/SchedulingStrategy", + "/properties/ServiceName" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "CapacityProviderStrategyItem": { + "additionalProperties": false, + "properties": { + "Base": { + "type": "integer" + }, + "CapacityProvider": { + "type": "string" + }, + "Weight": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentAlarms": { + "additionalProperties": false, + "properties": { + "AlarmNames": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "AlarmNames", + "Rollback", + "Enable" + ], + "type": "object" + }, + "DeploymentCircuitBreaker": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "Enable", + "Rollback" + ], + "type": "object" + }, + "DeploymentConfiguration": { + "additionalProperties": false, + "properties": { + "Alarms": { + "$ref": "#/definitions/DeploymentAlarms" + }, + "DeploymentCircuitBreaker": { + "$ref": "#/definitions/DeploymentCircuitBreaker" + }, + "MaximumPercent": { + "type": "integer" + }, + "MinimumHealthyPercent": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentController": { + "additionalProperties": false, + "properties": { + "Type": { + "enum": [ + "CODE_DEPLOY", + "ECS", + "EXTERNAL" + ], + "type": "string" + } + }, + "type": "object" + }, + "EBSTagSpecification": { + "additionalProperties": false, + "properties": { + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "ResourceType": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "ResourceType" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "LoadBalancerName": { + "type": "string" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "LogConfiguration": { + "additionalProperties": false, + "properties": { + "LogDriver": { + "type": "string" + }, + "Options": { + "additionalProperties": false, + "patternProperties": { + ".{1,}": { + "type": "string" + } + }, + "type": "object" + }, + "SecretOptions": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Secret" + }, + "type": "array" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsvpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "PlacementConstraint": { + "additionalProperties": false, + "properties": { + "Expression": { + "type": "string" + }, + "Type": { + "enum": [ + "distinctInstance", + "memberOf" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "PlacementStrategy": { + "additionalProperties": false, + "properties": { + "Field": { + "type": "string" + }, + "Type": { + "enum": [ + "binpack", + "random", + "spread" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "Secret": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "ValueFrom": { + "type": "string" + } + }, + "required": [ + "Name", + "ValueFrom" + ], + "type": "object" + }, + "ServiceConnectClientAlias": { + "additionalProperties": false, + "properties": { + "DnsName": { + "type": "string" + }, + "Port": { + "type": "integer" + } + }, + "required": [ + "Port" + ], + "type": "object" + }, + "ServiceConnectConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + }, + "LogConfiguration": { + "$ref": "#/definitions/LogConfiguration" + }, + "Namespace": { + "type": "string" + }, + "Services": { + "items": { + "$ref": "#/definitions/ServiceConnectService" + }, + "type": "array" + } + }, + "required": [ + "Enabled" + ], + "type": "object" + }, + "ServiceConnectService": { + "additionalProperties": false, + "properties": { + "ClientAliases": { + "items": { + "$ref": "#/definitions/ServiceConnectClientAlias" + }, + "type": "array" + }, + "DiscoveryName": { + "type": "string" + }, + "IngressPortOverride": { + "type": "integer" + }, + "PortName": { + "type": "string" + }, + "Timeout": { + "$ref": "#/definitions/TimeoutConfiguration" + }, + "Tls": { + "$ref": "#/definitions/ServiceConnectTlsConfiguration" + } + }, + "required": [ + "PortName" + ], + "type": "object" + }, + "ServiceConnectTlsCertificateAuthority": { + "additionalProperties": false, + "properties": { + "AwsPcaAuthorityArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceConnectTlsConfiguration": { + "additionalProperties": false, + "properties": { + "IssuerCertificateAuthority": { + "$ref": "#/definitions/ServiceConnectTlsCertificateAuthority" + }, + "KmsKey": { + "type": "string" + }, + "RoleArn": { + "type": "string" + } + }, + "required": [ + "IssuerCertificateAuthority" + ], + "type": "object" + }, + "ServiceManagedEBSVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "Encrypted": { + "type": "boolean" + }, + "FilesystemType": { + "type": "string" + }, + "Iops": { + "type": "integer" + }, + "KmsKeyId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SizeInGiB": { + "type": "integer" + }, + "SnapshotId": { + "type": "string" + }, + "TagSpecifications": { + "items": { + "$ref": "#/definitions/EBSTagSpecification" + }, + "type": "array" + }, + "Throughput": { + "type": "integer" + }, + "VolumeType": { + "type": "string" + } + }, + "required": [ + "RoleArn" + ], + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "ManagedEBSVolume": { + "$ref": "#/definitions/ServiceManagedEBSVolumeConfiguration" + }, + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + }, + "TimeoutConfiguration": { + "additionalProperties": false, + "properties": { + "IdleTimeoutSeconds": { + "type": "integer" + }, + "PerRequestTimeoutSeconds": { + "type": "integer" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/ServiceArn", + "/properties/Cluster" + ], + "properties": { + "CapacityProviderStrategy": { + "items": { + "$ref": "#/definitions/CapacityProviderStrategyItem" + }, + "type": "array" + }, + "Cluster": { + "type": "string" + }, + "DeploymentConfiguration": { + "$ref": "#/definitions/DeploymentConfiguration" + }, + "DeploymentController": { + "$ref": "#/definitions/DeploymentController" + }, + "DesiredCount": { + "type": "integer" + }, + "EnableECSManagedTags": { + "type": "boolean" + }, + "EnableExecuteCommand": { + "type": "boolean" + }, + "HealthCheckGracePeriodSeconds": { + "type": "integer" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE", + "EXTERNAL" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "Name": { + "type": "string" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlacementConstraints": { + "items": { + "$ref": "#/definitions/PlacementConstraint" + }, + "type": "array" + }, + "PlacementStrategies": { + "items": { + "$ref": "#/definitions/PlacementStrategy" + }, + "type": "array" + }, + "PlatformVersion": { + "default": "LATEST", + "type": "string" + }, + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "Role": { + "type": "string" + }, + "SchedulingStrategy": { + "enum": [ + "DAEMON", + "REPLICA" + ], + "type": "string" + }, + "ServiceArn": { + "type": "string" + }, + "ServiceConnectConfiguration": { + "$ref": "#/definitions/ServiceConnectConfiguration" + }, + "ServiceName": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + }, + "VolumeConfigurations": { + "items": { + "$ref": "#/definitions/ServiceVolumeConfiguration" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/ServiceArn", + "/properties/Name" + ], + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::Service", + "writeOnlyProperties": [ + "/properties/ServiceConnectConfiguration", + "/properties/VolumeConfigurations" + ] +} diff --git a/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-ecs-taskset.json b/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-ecs-taskset.json new file mode 100644 index 0000000000..3491488499 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-ecs-taskset.json @@ -0,0 +1,191 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/ExternalId", + "/properties/LaunchType", + "/properties/LoadBalancers", + "/properties/NetworkConfiguration", + "/properties/PlatformVersion", + "/properties/Service", + "/properties/ServiceRegistries", + "/properties/TaskDefinition" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "maxItems": 5, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "maxItems": 16, + "type": "array" + } + }, + "required": [ + "Subnets" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsVpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "Scale": { + "additionalProperties": false, + "properties": { + "Unit": { + "enum": [ + "PERCENT" + ], + "type": "string" + }, + "Value": { + "maximum": 100, + "minimum": 0, + "type": "number" + } + }, + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Cluster", + "/properties/Service", + "/properties/Id" + ], + "properties": { + "Cluster": { + "type": "string" + }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlatformVersion": { + "type": "string" + }, + "Scale": { + "$ref": "#/definitions/Scale" + }, + "Service": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "Cluster", + "Service", + "TaskDefinition" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-ecs.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::TaskSet" +} diff --git a/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-guardduty-detector.json b/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-guardduty-detector.json new file mode 100644 index 0000000000..efaad17ff9 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-guardduty-detector.json @@ -0,0 +1,184 @@ +{ + "additionalProperties": false, + "definitions": { + "CFNDataSourceConfigurations": { + "additionalProperties": false, + "properties": { + "Kubernetes": { + "$ref": "#/definitions/CFNKubernetesConfiguration" + }, + "MalwareProtection": { + "$ref": "#/definitions/CFNMalwareProtectionConfiguration" + }, + "S3Logs": { + "$ref": "#/definitions/CFNS3LogsConfiguration" + } + }, + "type": "object" + }, + "CFNFeatureAdditionalConfiguration": { + "additionalProperties": false, + "properties": { + "Name": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "Status": { + "maxLength": 128, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "CFNFeatureConfiguration": { + "additionalProperties": false, + "properties": { + "AdditionalConfiguration": { + "items": { + "$ref": "#/definitions/CFNFeatureAdditionalConfiguration" + }, + "type": "array" + }, + "Name": { + "maxLength": 128, + "type": "string" + }, + "Status": { + "enum": [ + "ENABLED", + "DISABLED" + ], + "type": "string" + } + }, + "required": [ + "Name", + "Status" + ], + "type": "object" + }, + "CFNKubernetesAuditLogsConfiguration": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + } + }, + "required": [ + "Enable" + ], + "type": "object" + }, + "CFNKubernetesConfiguration": { + "additionalProperties": false, + "properties": { + "AuditLogs": { + "$ref": "#/definitions/CFNKubernetesAuditLogsConfiguration" + } + }, + "required": [ + "AuditLogs" + ], + "type": "object" + }, + "CFNMalwareProtectionConfiguration": { + "additionalProperties": false, + "properties": { + "ScanEc2InstanceWithFindings": { + "$ref": "#/definitions/CFNScanEc2InstanceWithFindingsConfiguration" + } + }, + "type": "object" + }, + "CFNS3LogsConfiguration": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + } + }, + "required": [ + "Enable" + ], + "type": "object" + }, + "CFNScanEc2InstanceWithFindingsConfiguration": { + "additionalProperties": false, + "properties": { + "EbsVolumes": { + "type": "boolean" + } + }, + "type": "object" + }, + "TagItem": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "DataSources": { + "$ref": "#/definitions/CFNDataSourceConfigurations" + }, + "Enable": { + "type": "boolean" + }, + "Features": { + "items": { + "$ref": "#/definitions/CFNFeatureConfiguration" + }, + "type": "array" + }, + "FindingPublishingFrequency": { + "enum": [ + "FIFTEEN_MINUTES", + "ONE_HOUR", + "SIX_HOURS" + ], + "type": "string" + }, + "Id": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/TagItem" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "Enable" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": false, + "taggable": true + }, + "typeName": "AWS::GuardDuty::Detector" +} diff --git a/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-kinesis-stream.json b/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-kinesis-stream.json new file mode 100644 index 0000000000..be1bc65c07 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-kinesis-stream.json @@ -0,0 +1,133 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "StreamEncryption": { + "additionalProperties": false, + "properties": { + "EncryptionType": { + "enum": [ + "KMS" + ], + "type": "string" + }, + "KeyId": { + "anyOf": [ + { + "relationshipRef": { + "propertyPath": "/properties/Arn", + "typeName": "AWS::KMS::Key" + } + }, + { + "relationshipRef": { + "propertyPath": "/properties/KeyId", + "typeName": "AWS::KMS::Key" + } + } + ], + "maxLength": 2048, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "EncryptionType", + "KeyId" + ], + "type": "object" + }, + "StreamModeDetails": { + "additionalProperties": false, + "properties": { + "StreamMode": { + "enum": [ + "ON_DEMAND", + "PROVISIONED" + ], + "type": "string" + } + }, + "required": [ + "StreamMode" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Name" + ], + "properties": { + "Arn": { + "type": "string" + }, + "Name": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9_.-]+$", + "type": "string" + }, + "RetentionPeriodHours": { + "maximum": 8760, + "minimum": 1, + "type": "integer" + }, + "ShardCount": { + "maximum": 100000, + "minimum": 1, + "type": "integer" + }, + "StreamEncryption": { + "$ref": "#/definitions/StreamEncryption" + }, + "StreamModeDetails": { + "$ref": "#/definitions/StreamModeDetails", + "default": { + "StreamMode": "PROVISIONED" + } + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 50, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-kinesis.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Kinesis::Stream" +} diff --git a/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-networkfirewall-firewallpolicy.json b/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-networkfirewall-firewallpolicy.json new file mode 100644 index 0000000000..973b595561 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-networkfirewall-firewallpolicy.json @@ -0,0 +1,332 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/FirewallPolicyName" + ], + "definitions": { + "ActionDefinition": { + "additionalProperties": false, + "properties": { + "PublishMetricAction": { + "$ref": "#/definitions/PublishMetricAction" + } + }, + "type": "object" + }, + "CustomAction": { + "additionalProperties": false, + "properties": { + "ActionDefinition": { + "$ref": "#/definitions/ActionDefinition" + }, + "ActionName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + } + }, + "required": [ + "ActionName", + "ActionDefinition" + ], + "type": "object" + }, + "Dimension": { + "additionalProperties": false, + "properties": { + "Value": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-_ ]+$", + "type": "string" + } + }, + "required": [ + "Value" + ], + "type": "object" + }, + "FirewallPolicy": { + "additionalProperties": false, + "properties": { + "PolicyVariables": { + "additionalProperties": false, + "properties": { + "RuleVariables": { + "$ref": "#/definitions/RuleVariables" + } + }, + "type": "object" + }, + "StatefulDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatefulEngineOptions": { + "$ref": "#/definitions/StatefulEngineOptions" + }, + "StatefulRuleGroupReferences": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/StatefulRuleGroupReference" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessCustomActions": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/CustomAction" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessFragmentDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessRuleGroupReferences": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/StatelessRuleGroupReference" + }, + "type": "array", + "uniqueItems": false + }, + "TLSInspectionConfigurationArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "StatelessDefaultActions", + "StatelessFragmentDefaultActions" + ], + "type": "object" + }, + "IPSet": { + "additionalProperties": false, + "properties": { + "Definition": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/VariableDefinition" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "OverrideAction": { + "enum": [ + "DROP_TO_ALERT" + ], + "type": "string" + }, + "Priority": { + "maximum": 65535, + "minimum": 1, + "type": "integer" + }, + "PublishMetricAction": { + "additionalProperties": false, + "properties": { + "Dimensions": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/Dimension" + }, + "type": "array", + "uniqueItems": false + } + }, + "required": [ + "Dimensions" + ], + "type": "object" + }, + "ResourceArn": { + "maxLength": 256, + "minLength": 1, + "pattern": "^(arn:aws.*)$", + "type": "string" + }, + "RuleOrder": { + "enum": [ + "DEFAULT_ACTION_ORDER", + "STRICT_ORDER" + ], + "type": "string" + }, + "RuleVariables": { + "additionalProperties": false, + "patternProperties": { + "^[A-Za-z0-9_]{1,32}$": { + "$ref": "#/definitions/IPSet" + } + }, + "type": "object" + }, + "StatefulEngineOptions": { + "additionalProperties": false, + "properties": { + "RuleOrder": { + "$ref": "#/definitions/RuleOrder" + }, + "StreamExceptionPolicy": { + "$ref": "#/definitions/StreamExceptionPolicy" + } + }, + "type": "object" + }, + "StatefulRuleGroupOverride": { + "additionalProperties": false, + "properties": { + "Action": { + "$ref": "#/definitions/OverrideAction" + } + }, + "type": "object" + }, + "StatefulRuleGroupReference": { + "additionalProperties": false, + "properties": { + "Override": { + "$ref": "#/definitions/StatefulRuleGroupOverride" + }, + "Priority": { + "$ref": "#/definitions/Priority" + }, + "ResourceArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "ResourceArn" + ], + "type": "object" + }, + "StatelessRuleGroupReference": { + "additionalProperties": false, + "properties": { + "Priority": { + "$ref": "#/definitions/Priority" + }, + "ResourceArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "ResourceArn", + "Priority" + ], + "type": "object" + }, + "StreamExceptionPolicy": { + "enum": [ + "DROP", + "CONTINUE", + "REJECT" + ], + "type": "string" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "^.*$", + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 0, + "pattern": "^.*$", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "VariableDefinition": { + "minLength": 1, + "pattern": "^.*$", + "type": "string" + } + }, + "primaryIdentifier": [ + "/properties/FirewallPolicyArn" + ], + "properties": { + "Description": { + "maxLength": 512, + "minLength": 1, + "pattern": "^.*$", + "type": "string" + }, + "FirewallPolicy": { + "$ref": "#/definitions/FirewallPolicy" + }, + "FirewallPolicyArn": { + "$ref": "#/definitions/ResourceArn" + }, + "FirewallPolicyId": { + "maxLength": 36, + "minLength": 36, + "pattern": "^([0-9a-f]{8})-([0-9a-f]{4}-){3}([0-9a-f]{12})$", + "type": "string" + }, + "FirewallPolicyName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-]+$", + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + } + }, + "readOnlyProperties": [ + "/properties/FirewallPolicyArn", + "/properties/FirewallPolicyId" + ], + "required": [ + "FirewallPolicyName", + "FirewallPolicy" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-networkfirewall.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::NetworkFirewall::FirewallPolicy" +} diff --git a/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-sagemaker-imageversion.json b/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-sagemaker-imageversion.json deleted file mode 100644 index e7c91ccc8d..0000000000 --- a/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-sagemaker-imageversion.json +++ /dev/null @@ -1,172 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/ImageName", - "/properties/BaseImage" - ], - "definitions": { - "Alias": { - "maxLength": 128, - "minLength": 1, - "pattern": "(?!^[.-])^([a-zA-Z0-9-_.]+)$", - "type": "string" - }, - "Aliases": { - "items": { - "$ref": "#/definitions/Alias" - }, - "type": "array" - }, - "BaseImage": { - "maxLength": 255, - "minLength": 1, - "pattern": ".+", - "type": "string" - }, - "ContainerImage": { - "maxLength": 255, - "minLength": 1, - "pattern": ".+", - "type": "string" - }, - "Horovod": { - "type": "boolean" - }, - "ImageArn": { - "maxLength": 256, - "minLength": 1, - "pattern": "^arn:aws(-[\\w]+)*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:image\\/[a-zA-Z0-9]([-.]?[a-zA-Z0-9])*$", - "type": "string" - }, - "ImageName": { - "maxLength": 63, - "minLength": 1, - "pattern": "^[A-Za-z0-9]([-.]?[A-Za-z0-9])*$", - "type": "string" - }, - "ImageVersionArn": { - "maxLength": 256, - "minLength": 1, - "pattern": "^arn:aws(-[\\w]+)*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:image-version\\/[a-zA-Z0-9]([-.]?[a-zA-Z0-9])*\\/[0-9]+$", - "type": "string" - }, - "JobType": { - "enum": [ - "TRAINING", - "INFERENCE", - "NOTEBOOK_KERNEL" - ], - "type": "string" - }, - "MLFramework": { - "maxLength": 128, - "minLength": 1, - "pattern": "^[a-zA-Z]+ ?\\d+\\.\\d+(\\.\\d+)?$", - "type": "string" - }, - "Processor": { - "enum": [ - "CPU", - "GPU" - ], - "type": "string" - }, - "ProgrammingLang": { - "maxLength": 128, - "minLength": 1, - "pattern": "^[a-zA-Z]+ ?\\d+\\.\\d+(\\.\\d+)?$", - "type": "string" - }, - "ReleaseNotes": { - "maxLength": 255, - "minLength": 1, - "pattern": ".*", - "type": "string" - }, - "VendorGuidance": { - "enum": [ - "NOT_PROVIDED", - "STABLE", - "TO_BE_ARCHIVED", - "ARCHIVED" - ], - "type": "string" - }, - "Version": { - "minimum": 1, - "type": "integer" - } - }, - "primaryIdentifier": [ - "/properties/ImageVersionArn" - ], - "properties": { - "Alias": { - "$ref": "#/definitions/Alias" - }, - "Aliases": { - "$ref": "#/definitions/Aliases" - }, - "BaseImage": { - "$ref": "#/definitions/BaseImage" - }, - "ContainerImage": { - "$ref": "#/definitions/ContainerImage" - }, - "Horovod": { - "$ref": "#/definitions/Horovod" - }, - "ImageArn": { - "$ref": "#/definitions/ImageArn" - }, - "ImageName": { - "$ref": "#/definitions/ImageName" - }, - "ImageVersionArn": { - "$ref": "#/definitions/ImageVersionArn" - }, - "JobType": { - "$ref": "#/definitions/JobType" - }, - "MLFramework": { - "$ref": "#/definitions/MLFramework" - }, - "Processor": { - "$ref": "#/definitions/Processor" - }, - "ProgrammingLang": { - "$ref": "#/definitions/ProgrammingLang" - }, - "ReleaseNotes": { - "$ref": "#/definitions/ReleaseNotes" - }, - "VendorGuidance": { - "$ref": "#/definitions/VendorGuidance" - }, - "Version": { - "$ref": "#/definitions/Version" - } - }, - "readOnlyProperties": [ - "/properties/ImageVersionArn", - "/properties/ImageArn", - "/properties/Version", - "/properties/ContainerImage" - ], - "required": [ - "ImageName", - "BaseImage" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sagemaker", - "tagging": { - "cloudFormationSystemTags": false, - "tagOnCreate": false, - "tagUpdatable": false, - "taggable": false - }, - "typeName": "AWS::SageMaker::ImageVersion", - "writeOnlyProperties": [ - "/properties/Aliases", - "/properties/Alias" - ] -} diff --git a/src/cfnlint/data/schemas/providers/us_west_1/__init__.py b/src/cfnlint/data/schemas/providers/us_west_1/__init__.py index cc2c2a07af..54051d3d0f 100644 --- a/src/cfnlint/data/schemas/providers/us_west_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/us_west_1/__init__.py @@ -1280,9 +1280,7 @@ "aws-ecs-cluster.json", "aws-ecs-clustercapacityproviderassociations.json", "aws-ecs-primarytaskset.json", - "aws-ecs-service.json", "aws-ecs-taskdefinition.json", - "aws-ecs-taskset.json", "aws-efs-accesspoint.json", "aws-efs-filesystem.json", "aws-efs-mounttarget.json", @@ -1453,7 +1451,6 @@ "aws-kafkaconnect-connector.json", "aws-kafkaconnect-customplugin.json", "aws-kafkaconnect-workerconfiguration.json", - "aws-kinesis-stream.json", "aws-kinesis-streamconsumer.json", "aws-kinesisanalytics-applicationoutput.json", "aws-kinesisanalyticsv2-application.json", @@ -1538,7 +1535,6 @@ "aws-neptune-dbsubnetgroup.json", "aws-neptune-eventsubscription.json", "aws-networkfirewall-firewall.json", - "aws-networkfirewall-firewallpolicy.json", "aws-networkfirewall-loggingconfiguration.json", "aws-networkfirewall-rulegroup.json", "aws-networkfirewall-tlsinspectionconfiguration.json", @@ -1582,14 +1578,20 @@ "aws-pipes-pipe.json", "aws-ram-permission.json", "aws-ram-resourceshare.json", + "aws-rds-dbcluster.json", + "aws-rds-dbclusterparametergroup.json", + "aws-rds-dbinstance.json", + "aws-rds-dbparametergroup.json", "aws-rds-dbproxy.json", "aws-rds-dbproxyendpoint.json", "aws-rds-dbproxytargetgroup.json", "aws-rds-dbsecuritygroup.json", "aws-rds-dbsecuritygroupingress.json", "aws-rds-dbsubnetgroup.json", + "aws-rds-eventsubscription.json", "aws-rds-globalcluster.json", "aws-rds-integration.json", + "aws-rds-optiongroup.json", "aws-redshift-cluster.json", "aws-redshift-clusterparametergroup.json", "aws-redshift-clustersecuritygroup.json", @@ -1661,6 +1663,7 @@ "aws-sagemaker-endpointconfig.json", "aws-sagemaker-featuregroup.json", "aws-sagemaker-image.json", + "aws-sagemaker-imageversion.json", "aws-sagemaker-inferenceexperiment.json", "aws-sagemaker-mlflowtrackingserver.json", "aws-sagemaker-model.json", diff --git a/src/cfnlint/data/schemas/providers/us_west_1/aws-ecs-service.json b/src/cfnlint/data/schemas/providers/us_west_1/aws-ecs-service.json new file mode 100644 index 0000000000..ba7baa1de3 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_west_1/aws-ecs-service.json @@ -0,0 +1,585 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/DeploymentController", + "/properties/LaunchType", + "/properties/Role", + "/properties/SchedulingStrategy", + "/properties/ServiceName" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "CapacityProviderStrategyItem": { + "additionalProperties": false, + "properties": { + "Base": { + "type": "integer" + }, + "CapacityProvider": { + "type": "string" + }, + "Weight": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentAlarms": { + "additionalProperties": false, + "properties": { + "AlarmNames": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "AlarmNames", + "Rollback", + "Enable" + ], + "type": "object" + }, + "DeploymentCircuitBreaker": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "Enable", + "Rollback" + ], + "type": "object" + }, + "DeploymentConfiguration": { + "additionalProperties": false, + "properties": { + "Alarms": { + "$ref": "#/definitions/DeploymentAlarms" + }, + "DeploymentCircuitBreaker": { + "$ref": "#/definitions/DeploymentCircuitBreaker" + }, + "MaximumPercent": { + "type": "integer" + }, + "MinimumHealthyPercent": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentController": { + "additionalProperties": false, + "properties": { + "Type": { + "enum": [ + "CODE_DEPLOY", + "ECS", + "EXTERNAL" + ], + "type": "string" + } + }, + "type": "object" + }, + "EBSTagSpecification": { + "additionalProperties": false, + "properties": { + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "ResourceType": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "ResourceType" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "LoadBalancerName": { + "type": "string" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "LogConfiguration": { + "additionalProperties": false, + "properties": { + "LogDriver": { + "type": "string" + }, + "Options": { + "additionalProperties": false, + "patternProperties": { + ".{1,}": { + "type": "string" + } + }, + "type": "object" + }, + "SecretOptions": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Secret" + }, + "type": "array" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsvpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "PlacementConstraint": { + "additionalProperties": false, + "properties": { + "Expression": { + "type": "string" + }, + "Type": { + "enum": [ + "distinctInstance", + "memberOf" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "PlacementStrategy": { + "additionalProperties": false, + "properties": { + "Field": { + "type": "string" + }, + "Type": { + "enum": [ + "binpack", + "random", + "spread" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "Secret": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "ValueFrom": { + "type": "string" + } + }, + "required": [ + "Name", + "ValueFrom" + ], + "type": "object" + }, + "ServiceConnectClientAlias": { + "additionalProperties": false, + "properties": { + "DnsName": { + "type": "string" + }, + "Port": { + "type": "integer" + } + }, + "required": [ + "Port" + ], + "type": "object" + }, + "ServiceConnectConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + }, + "LogConfiguration": { + "$ref": "#/definitions/LogConfiguration" + }, + "Namespace": { + "type": "string" + }, + "Services": { + "items": { + "$ref": "#/definitions/ServiceConnectService" + }, + "type": "array" + } + }, + "required": [ + "Enabled" + ], + "type": "object" + }, + "ServiceConnectService": { + "additionalProperties": false, + "properties": { + "ClientAliases": { + "items": { + "$ref": "#/definitions/ServiceConnectClientAlias" + }, + "type": "array" + }, + "DiscoveryName": { + "type": "string" + }, + "IngressPortOverride": { + "type": "integer" + }, + "PortName": { + "type": "string" + }, + "Timeout": { + "$ref": "#/definitions/TimeoutConfiguration" + }, + "Tls": { + "$ref": "#/definitions/ServiceConnectTlsConfiguration" + } + }, + "required": [ + "PortName" + ], + "type": "object" + }, + "ServiceConnectTlsCertificateAuthority": { + "additionalProperties": false, + "properties": { + "AwsPcaAuthorityArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceConnectTlsConfiguration": { + "additionalProperties": false, + "properties": { + "IssuerCertificateAuthority": { + "$ref": "#/definitions/ServiceConnectTlsCertificateAuthority" + }, + "KmsKey": { + "type": "string" + }, + "RoleArn": { + "type": "string" + } + }, + "required": [ + "IssuerCertificateAuthority" + ], + "type": "object" + }, + "ServiceManagedEBSVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "Encrypted": { + "type": "boolean" + }, + "FilesystemType": { + "type": "string" + }, + "Iops": { + "type": "integer" + }, + "KmsKeyId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SizeInGiB": { + "type": "integer" + }, + "SnapshotId": { + "type": "string" + }, + "TagSpecifications": { + "items": { + "$ref": "#/definitions/EBSTagSpecification" + }, + "type": "array" + }, + "Throughput": { + "type": "integer" + }, + "VolumeType": { + "type": "string" + } + }, + "required": [ + "RoleArn" + ], + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "ManagedEBSVolume": { + "$ref": "#/definitions/ServiceManagedEBSVolumeConfiguration" + }, + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + }, + "TimeoutConfiguration": { + "additionalProperties": false, + "properties": { + "IdleTimeoutSeconds": { + "type": "integer" + }, + "PerRequestTimeoutSeconds": { + "type": "integer" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/ServiceArn", + "/properties/Cluster" + ], + "properties": { + "CapacityProviderStrategy": { + "items": { + "$ref": "#/definitions/CapacityProviderStrategyItem" + }, + "type": "array" + }, + "Cluster": { + "type": "string" + }, + "DeploymentConfiguration": { + "$ref": "#/definitions/DeploymentConfiguration" + }, + "DeploymentController": { + "$ref": "#/definitions/DeploymentController" + }, + "DesiredCount": { + "type": "integer" + }, + "EnableECSManagedTags": { + "type": "boolean" + }, + "EnableExecuteCommand": { + "type": "boolean" + }, + "HealthCheckGracePeriodSeconds": { + "type": "integer" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE", + "EXTERNAL" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "Name": { + "type": "string" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlacementConstraints": { + "items": { + "$ref": "#/definitions/PlacementConstraint" + }, + "type": "array" + }, + "PlacementStrategies": { + "items": { + "$ref": "#/definitions/PlacementStrategy" + }, + "type": "array" + }, + "PlatformVersion": { + "default": "LATEST", + "type": "string" + }, + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "Role": { + "type": "string" + }, + "SchedulingStrategy": { + "enum": [ + "DAEMON", + "REPLICA" + ], + "type": "string" + }, + "ServiceArn": { + "type": "string" + }, + "ServiceConnectConfiguration": { + "$ref": "#/definitions/ServiceConnectConfiguration" + }, + "ServiceName": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + }, + "VolumeConfigurations": { + "items": { + "$ref": "#/definitions/ServiceVolumeConfiguration" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/ServiceArn", + "/properties/Name" + ], + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::Service", + "writeOnlyProperties": [ + "/properties/ServiceConnectConfiguration", + "/properties/VolumeConfigurations" + ] +} diff --git a/src/cfnlint/data/schemas/providers/us_west_1/aws-ecs-taskset.json b/src/cfnlint/data/schemas/providers/us_west_1/aws-ecs-taskset.json new file mode 100644 index 0000000000..3491488499 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_west_1/aws-ecs-taskset.json @@ -0,0 +1,191 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/ExternalId", + "/properties/LaunchType", + "/properties/LoadBalancers", + "/properties/NetworkConfiguration", + "/properties/PlatformVersion", + "/properties/Service", + "/properties/ServiceRegistries", + "/properties/TaskDefinition" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "maxItems": 5, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "maxItems": 16, + "type": "array" + } + }, + "required": [ + "Subnets" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsVpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "Scale": { + "additionalProperties": false, + "properties": { + "Unit": { + "enum": [ + "PERCENT" + ], + "type": "string" + }, + "Value": { + "maximum": 100, + "minimum": 0, + "type": "number" + } + }, + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Cluster", + "/properties/Service", + "/properties/Id" + ], + "properties": { + "Cluster": { + "type": "string" + }, + "ExternalId": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlatformVersion": { + "type": "string" + }, + "Scale": { + "$ref": "#/definitions/Scale" + }, + "Service": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "Cluster", + "Service", + "TaskDefinition" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-ecs.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::TaskSet" +} diff --git a/src/cfnlint/data/schemas/providers/us_west_1/aws-kinesis-stream.json b/src/cfnlint/data/schemas/providers/us_west_1/aws-kinesis-stream.json new file mode 100644 index 0000000000..be1bc65c07 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_west_1/aws-kinesis-stream.json @@ -0,0 +1,133 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "StreamEncryption": { + "additionalProperties": false, + "properties": { + "EncryptionType": { + "enum": [ + "KMS" + ], + "type": "string" + }, + "KeyId": { + "anyOf": [ + { + "relationshipRef": { + "propertyPath": "/properties/Arn", + "typeName": "AWS::KMS::Key" + } + }, + { + "relationshipRef": { + "propertyPath": "/properties/KeyId", + "typeName": "AWS::KMS::Key" + } + } + ], + "maxLength": 2048, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "EncryptionType", + "KeyId" + ], + "type": "object" + }, + "StreamModeDetails": { + "additionalProperties": false, + "properties": { + "StreamMode": { + "enum": [ + "ON_DEMAND", + "PROVISIONED" + ], + "type": "string" + } + }, + "required": [ + "StreamMode" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/Name" + ], + "properties": { + "Arn": { + "type": "string" + }, + "Name": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9_.-]+$", + "type": "string" + }, + "RetentionPeriodHours": { + "maximum": 8760, + "minimum": 1, + "type": "integer" + }, + "ShardCount": { + "maximum": 100000, + "minimum": 1, + "type": "integer" + }, + "StreamEncryption": { + "$ref": "#/definitions/StreamEncryption" + }, + "StreamModeDetails": { + "$ref": "#/definitions/StreamModeDetails", + "default": { + "StreamMode": "PROVISIONED" + } + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 50, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-kinesis.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Kinesis::Stream" +} diff --git a/src/cfnlint/data/schemas/providers/us_west_1/aws-networkfirewall-firewallpolicy.json b/src/cfnlint/data/schemas/providers/us_west_1/aws-networkfirewall-firewallpolicy.json new file mode 100644 index 0000000000..973b595561 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_west_1/aws-networkfirewall-firewallpolicy.json @@ -0,0 +1,332 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/FirewallPolicyName" + ], + "definitions": { + "ActionDefinition": { + "additionalProperties": false, + "properties": { + "PublishMetricAction": { + "$ref": "#/definitions/PublishMetricAction" + } + }, + "type": "object" + }, + "CustomAction": { + "additionalProperties": false, + "properties": { + "ActionDefinition": { + "$ref": "#/definitions/ActionDefinition" + }, + "ActionName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9]+$", + "type": "string" + } + }, + "required": [ + "ActionName", + "ActionDefinition" + ], + "type": "object" + }, + "Dimension": { + "additionalProperties": false, + "properties": { + "Value": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-_ ]+$", + "type": "string" + } + }, + "required": [ + "Value" + ], + "type": "object" + }, + "FirewallPolicy": { + "additionalProperties": false, + "properties": { + "PolicyVariables": { + "additionalProperties": false, + "properties": { + "RuleVariables": { + "$ref": "#/definitions/RuleVariables" + } + }, + "type": "object" + }, + "StatefulDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatefulEngineOptions": { + "$ref": "#/definitions/StatefulEngineOptions" + }, + "StatefulRuleGroupReferences": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/StatefulRuleGroupReference" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessCustomActions": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/CustomAction" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessFragmentDefaultActions": { + "insertionOrder": true, + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": false + }, + "StatelessRuleGroupReferences": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/StatelessRuleGroupReference" + }, + "type": "array", + "uniqueItems": false + }, + "TLSInspectionConfigurationArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "StatelessDefaultActions", + "StatelessFragmentDefaultActions" + ], + "type": "object" + }, + "IPSet": { + "additionalProperties": false, + "properties": { + "Definition": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/VariableDefinition" + }, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "OverrideAction": { + "enum": [ + "DROP_TO_ALERT" + ], + "type": "string" + }, + "Priority": { + "maximum": 65535, + "minimum": 1, + "type": "integer" + }, + "PublishMetricAction": { + "additionalProperties": false, + "properties": { + "Dimensions": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/Dimension" + }, + "type": "array", + "uniqueItems": false + } + }, + "required": [ + "Dimensions" + ], + "type": "object" + }, + "ResourceArn": { + "maxLength": 256, + "minLength": 1, + "pattern": "^(arn:aws.*)$", + "type": "string" + }, + "RuleOrder": { + "enum": [ + "DEFAULT_ACTION_ORDER", + "STRICT_ORDER" + ], + "type": "string" + }, + "RuleVariables": { + "additionalProperties": false, + "patternProperties": { + "^[A-Za-z0-9_]{1,32}$": { + "$ref": "#/definitions/IPSet" + } + }, + "type": "object" + }, + "StatefulEngineOptions": { + "additionalProperties": false, + "properties": { + "RuleOrder": { + "$ref": "#/definitions/RuleOrder" + }, + "StreamExceptionPolicy": { + "$ref": "#/definitions/StreamExceptionPolicy" + } + }, + "type": "object" + }, + "StatefulRuleGroupOverride": { + "additionalProperties": false, + "properties": { + "Action": { + "$ref": "#/definitions/OverrideAction" + } + }, + "type": "object" + }, + "StatefulRuleGroupReference": { + "additionalProperties": false, + "properties": { + "Override": { + "$ref": "#/definitions/StatefulRuleGroupOverride" + }, + "Priority": { + "$ref": "#/definitions/Priority" + }, + "ResourceArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "ResourceArn" + ], + "type": "object" + }, + "StatelessRuleGroupReference": { + "additionalProperties": false, + "properties": { + "Priority": { + "$ref": "#/definitions/Priority" + }, + "ResourceArn": { + "$ref": "#/definitions/ResourceArn" + } + }, + "required": [ + "ResourceArn", + "Priority" + ], + "type": "object" + }, + "StreamExceptionPolicy": { + "enum": [ + "DROP", + "CONTINUE", + "REJECT" + ], + "type": "string" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "^.*$", + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 0, + "pattern": "^.*$", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "VariableDefinition": { + "minLength": 1, + "pattern": "^.*$", + "type": "string" + } + }, + "primaryIdentifier": [ + "/properties/FirewallPolicyArn" + ], + "properties": { + "Description": { + "maxLength": 512, + "minLength": 1, + "pattern": "^.*$", + "type": "string" + }, + "FirewallPolicy": { + "$ref": "#/definitions/FirewallPolicy" + }, + "FirewallPolicyArn": { + "$ref": "#/definitions/ResourceArn" + }, + "FirewallPolicyId": { + "maxLength": 36, + "minLength": 36, + "pattern": "^([0-9a-f]{8})-([0-9a-f]{4}-){3}([0-9a-f]{12})$", + "type": "string" + }, + "FirewallPolicyName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-]+$", + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + } + }, + "readOnlyProperties": [ + "/properties/FirewallPolicyArn", + "/properties/FirewallPolicyId" + ], + "required": [ + "FirewallPolicyName", + "FirewallPolicy" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-networkfirewall.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::NetworkFirewall::FirewallPolicy" +} diff --git a/src/cfnlint/data/schemas/providers/us_west_1/aws-rds-dbclusterparametergroup.json b/src/cfnlint/data/schemas/providers/us_west_1/aws-rds-dbclusterparametergroup.json deleted file mode 100644 index 72b2c49945..0000000000 --- a/src/cfnlint/data/schemas/providers/us_west_1/aws-rds-dbclusterparametergroup.json +++ /dev/null @@ -1,69 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/DBClusterParameterGroupName", - "/properties/Description", - "/properties/Family" - ], - "definitions": { - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key" - ], - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/DBClusterParameterGroupName" - ], - "properties": { - "DBClusterParameterGroupName": { - "pattern": "^[a-zA-Z]{1}(?:-?[a-zA-Z0-9])*$", - "type": "string" - }, - "Description": { - "type": "string" - }, - "Family": { - "type": "string" - }, - "Parameters": { - "format": "json", - "type": [ - "object", - "string" - ] - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 50, - "type": "array" - } - }, - "propertyTransform": { - "/properties/DBClusterParameterGroupName": "$lowercase(DBClusterParameterGroupName)" - }, - "required": [ - "Description", - "Family", - "Parameters" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-rds", - "typeName": "AWS::RDS::DBClusterParameterGroup" -} diff --git a/src/cfnlint/data/schemas/providers/us_west_1/aws-rds-dbinstance.json b/src/cfnlint/data/schemas/providers/us_west_1/aws-rds-dbinstance.json deleted file mode 100644 index 9afcb2e658..0000000000 --- a/src/cfnlint/data/schemas/providers/us_west_1/aws-rds-dbinstance.json +++ /dev/null @@ -1,524 +0,0 @@ -{ - "additionalProperties": false, - "conditionalCreateOnlyProperties": [ - "/properties/AutoMinorVersionUpgrade", - "/properties/AvailabilityZone", - "/properties/BackupRetentionPeriod", - "/properties/DBClusterSnapshotIdentifier", - "/properties/DBParameterGroupName", - "/properties/DBSnapshotIdentifier", - "/properties/Engine", - "/properties/MultiAZ", - "/properties/PerformanceInsightsKMSKeyId", - "/properties/PreferredMaintenanceWindow", - "/properties/RestoreTime", - "/properties/SourceDBClusterIdentifier", - "/properties/SourceDBInstanceAutomatedBackupsArn", - "/properties/SourceDBInstanceIdentifier", - "/properties/SourceDbiResourceId", - "/properties/StorageType", - "/properties/UseLatestRestorableTime" - ], - "createOnlyProperties": [ - "/properties/CharacterSetName", - "/properties/CustomIAMInstanceProfile", - "/properties/DBClusterIdentifier", - "/properties/DBInstanceIdentifier", - "/properties/DBName", - "/properties/DBSubnetGroupName", - "/properties/KmsKeyId", - "/properties/MasterUsername", - "/properties/NcharCharacterSetName", - "/properties/Port", - "/properties/SourceRegion", - "/properties/StorageEncrypted", - "/properties/Timezone" - ], - "definitions": { - "CertificateDetails": { - "additionalProperties": false, - "properties": { - "CAIdentifier": { - "type": "string" - }, - "ValidTill": { - "format": "date-time", - "type": "string" - } - }, - "type": "object" - }, - "DBInstanceRole": { - "additionalProperties": false, - "properties": { - "FeatureName": { - "type": "string" - }, - "RoleArn": { - "type": "string" - } - }, - "required": [ - "FeatureName", - "RoleArn" - ], - "type": "object" - }, - "Endpoint": { - "additionalProperties": false, - "properties": { - "Address": { - "type": "string" - }, - "HostedZoneId": { - "type": "string" - }, - "Port": { - "type": "string" - } - }, - "type": "object" - }, - "MasterUserSecret": { - "additionalProperties": false, - "properties": { - "KmsKeyId": { - "type": "string" - }, - "SecretArn": { - "type": "string" - } - }, - "type": "object" - }, - "ProcessorFeature": { - "additionalProperties": false, - "properties": { - "Name": { - "enum": [ - "coreCount", - "threadsPerCore" - ], - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key" - ], - "type": "object" - } - }, - "dependencies": { - "KmsKeyId": { - "properties": { - "StorageEncrypted": { - "enum": [ - "true", - "True", - true - ] - } - }, - "required": [ - "StorageEncrypted" - ] - } - }, - "dependentExcluded": { - "SourceDBInstanceIdentifier": [ - "CharacterSetName", - "MasterUserPassword", - "MasterUsername", - "StorageEncrypted" - ] - }, - "deprecatedProperties": [ - "/properties/TdeCredentialArn", - "/properties/TdeCredentialPassword" - ], - "primaryIdentifier": [ - "/properties/DBInstanceIdentifier" - ], - "properties": { - "AllocatedStorage": { - "pattern": "^[0-9]*$", - "type": "string" - }, - "AllowMajorVersionUpgrade": { - "type": "boolean" - }, - "AssociatedRoles": { - "items": { - "$ref": "#/definitions/DBInstanceRole" - }, - "type": "array" - }, - "AutoMinorVersionUpgrade": { - "type": "boolean" - }, - "AutomaticBackupReplicationKmsKeyId": { - "type": "string" - }, - "AutomaticBackupReplicationRegion": { - "type": "string" - }, - "AvailabilityZone": { - "type": "string" - }, - "BackupRetentionPeriod": { - "default": 1, - "maximum": 35, - "minimum": 0, - "type": "integer" - }, - "CACertificateIdentifier": { - "type": "string" - }, - "CertificateDetails": { - "$ref": "#/definitions/CertificateDetails" - }, - "CertificateRotationRestart": { - "type": "boolean" - }, - "CharacterSetName": { - "type": "string" - }, - "CopyTagsToSnapshot": { - "type": "boolean" - }, - "CustomIAMInstanceProfile": { - "type": "string" - }, - "DBClusterIdentifier": { - "type": "string" - }, - "DBClusterSnapshotIdentifier": { - "type": "string" - }, - "DBInstanceArn": { - "type": "string" - }, - "DBInstanceClass": { - "type": "string" - }, - "DBInstanceIdentifier": { - "maxLength": 63, - "minLength": 1, - "pattern": "^$|^[a-zA-Z]{1}(?:-?[a-zA-Z0-9]){0,62}$", - "type": "string" - }, - "DBName": { - "type": "string" - }, - "DBParameterGroupName": { - "type": "string" - }, - "DBSecurityGroups": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "DBSnapshotIdentifier": { - "type": "string" - }, - "DBSubnetGroupName": { - "type": "string" - }, - "DBSystemId": { - "type": "string" - }, - "DbiResourceId": { - "type": "string" - }, - "DedicatedLogVolume": { - "type": "boolean" - }, - "DeleteAutomatedBackups": { - "type": "boolean" - }, - "DeletionProtection": { - "type": "boolean" - }, - "Domain": { - "type": "string" - }, - "DomainAuthSecretArn": { - "type": "string" - }, - "DomainDnsIps": { - "items": { - "type": "string" - }, - "type": "array" - }, - "DomainFqdn": { - "type": "string" - }, - "DomainIAMRoleName": { - "type": "string" - }, - "DomainOu": { - "type": "string" - }, - "EnableCloudwatchLogsExports": { - "items": { - "type": "string" - }, - "type": "array" - }, - "EnableIAMDatabaseAuthentication": { - "type": "boolean" - }, - "EnablePerformanceInsights": { - "type": "boolean" - }, - "Endpoint": { - "$ref": "#/definitions/Endpoint" - }, - "Engine": { - "type": "string" - }, - "EngineLifecycleSupport": { - "type": "string" - }, - "EngineVersion": { - "type": "string" - }, - "Iops": { - "type": "integer" - }, - "KmsKeyId": { - "type": "string" - }, - "LicenseModel": { - "type": "string" - }, - "ManageMasterUserPassword": { - "type": "boolean" - }, - "MasterUserPassword": { - "type": "string" - }, - "MasterUserSecret": { - "$ref": "#/definitions/MasterUserSecret" - }, - "MasterUsername": { - "maxLength": 128, - "minLength": 1, - "pattern": "^[a-zA-Z][a-zA-Z0-9_]{0,127}$", - "type": "string" - }, - "MaxAllocatedStorage": { - "type": "integer" - }, - "MonitoringInterval": { - "default": 0, - "type": "integer" - }, - "MonitoringRoleArn": { - "type": "string" - }, - "MultiAZ": { - "type": "boolean" - }, - "NcharCharacterSetName": { - "type": "string" - }, - "NetworkType": { - "type": "string" - }, - "OptionGroupName": { - "type": "string" - }, - "PerformanceInsightsKMSKeyId": { - "type": "string" - }, - "PerformanceInsightsRetentionPeriod": { - "enum": [ - 7, - 31, - 62, - 93, - 124, - 155, - 186, - 217, - 248, - 279, - 310, - 341, - 372, - 403, - 434, - 465, - 496, - 527, - 558, - 589, - 620, - 651, - 682, - 713, - 731 - ], - "type": "integer" - }, - "Port": { - "pattern": "^\\d*$", - "type": "string" - }, - "PreferredBackupWindow": { - "type": "string" - }, - "PreferredMaintenanceWindow": { - "type": "string" - }, - "ProcessorFeatures": { - "items": { - "$ref": "#/definitions/ProcessorFeature" - }, - "type": "array" - }, - "PromotionTier": { - "default": 1, - "maximum": 15, - "minimum": 0, - "type": "integer" - }, - "PubliclyAccessible": { - "type": "boolean" - }, - "ReplicaMode": { - "type": "string" - }, - "RestoreTime": { - "format": "date-time", - "type": "string" - }, - "SourceDBClusterIdentifier": { - "type": "string" - }, - "SourceDBInstanceAutomatedBackupsArn": { - "type": "string" - }, - "SourceDBInstanceIdentifier": { - "type": "string" - }, - "SourceDbiResourceId": { - "type": "string" - }, - "SourceRegion": { - "type": "string" - }, - "StorageEncrypted": { - "type": "boolean" - }, - "StorageThroughput": { - "type": "integer" - }, - "StorageType": { - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": false - }, - "TdeCredentialArn": { - "type": "string" - }, - "TdeCredentialPassword": { - "type": "string" - }, - "Timezone": { - "type": "string" - }, - "UseDefaultProcessorFeatures": { - "type": "boolean" - }, - "UseLatestRestorableTime": { - "type": "boolean" - }, - "VPCSecurityGroups": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - } - }, - "propertyTransform": { - "/properties/DBClusterIdentifier": "$lowercase(DBClusterIdentifier)", - "/properties/DBClusterSnapshotIdentifier": "$lowercase(DBClusterSnapshotIdentifier)", - "/properties/DBInstanceIdentifier": "$lowercase(DBInstanceIdentifier)", - "/properties/DBName": "$lowercase(DBName) $OR $uppercase(DBName)", - "/properties/DBParameterGroupName": "$lowercase(DBParameterGroupName)", - "/properties/DBSnapshotIdentifier": "$lowercase(DBSnapshotIdentifier)", - "/properties/DBSubnetGroupName": "$lowercase(DBSubnetGroupName)", - "/properties/Engine": "$lowercase(Engine)", - "/properties/EngineVersion": "$join([$string(EngineVersion), \".*\"])", - "/properties/KmsKeyId": "$join([\"arn:(aws)[-]{0,1}[a-z]{0,2}[-]{0,1}[a-z]{0,3}:kms:[a-z]{2}[-]{1}[a-z]{3,10}[-]{0,1}[a-z]{0,10}[-]{1}[1-3]{1}:[0-9]{12}[:]{1}key\\/\", KmsKeyId])", - "/properties/MasterUserSecret/KmsKeyId": "$join([\"arn:(aws)[-]{0,1}[a-z]{0,2}[-]{0,1}[a-z]{0,3}:kms:[a-z]{2}[-]{1}[a-z]{3,10}[-]{0,1}[a-z]{0,10}[-]{1}[1-3]{1}:[0-9]{12}[:]{1}key\\/\", MasterUserSecret.KmsKeyId])", - "/properties/NetworkType": "$lowercase(NetworkType)", - "/properties/OptionGroupName": "$lowercase(OptionGroupName)", - "/properties/PerformanceInsightsKMSKeyId": "$join([\"arn:(aws)[-]{0,1}[a-z]{0,2}[-]{0,1}[a-z]{0,3}:kms:[a-z]{2}[-]{1}[a-z]{3,10}[-]{0,1}[a-z]{0,10}[-]{1}[1-3]{1}:[0-9]{12}[:]{1}key\\/\", PerformanceInsightsKMSKeyId])", - "/properties/PreferredMaintenanceWindow": "$lowercase(PreferredMaintenanceWindow)", - "/properties/SourceDBInstanceAutomatedBackupsArn": "$lowercase(SourceDBInstanceAutomatedBackupsArn)", - "/properties/SourceDBInstanceIdentifier": "$lowercase(SourceDBInstanceIdentifier)", - "/properties/StorageType": "$lowercase(StorageType)" - }, - "readOnlyProperties": [ - "/properties/Endpoint/Address", - "/properties/Endpoint/Port", - "/properties/Endpoint/HostedZoneId", - "/properties/DbiResourceId", - "/properties/DBInstanceArn", - "/properties/DBSystemId", - "/properties/MasterUserSecret/SecretArn", - "/properties/CertificateDetails/CAIdentifier", - "/properties/CertificateDetails/ValidTill" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", - "typeName": "AWS::RDS::DBInstance", - "writeOnlyProperties": [ - "/properties/AllowMajorVersionUpgrade", - "/properties/AutomaticBackupReplicationKmsKeyId", - "/properties/CertificateRotationRestart", - "/properties/DBSnapshotIdentifier", - "/properties/DeleteAutomatedBackups", - "/properties/MasterUserPassword", - "/properties/Port", - "/properties/RestoreTime", - "/properties/SourceDBInstanceAutomatedBackupsArn", - "/properties/SourceDBInstanceIdentifier", - "/properties/SourceDbiResourceId", - "/properties/SourceRegion", - "/properties/TdeCredentialPassword", - "/properties/UseDefaultProcessorFeatures", - "/properties/UseLatestRestorableTime" - ] -} diff --git a/src/cfnlint/data/schemas/providers/us_west_1/aws-rds-dbparametergroup.json b/src/cfnlint/data/schemas/providers/us_west_1/aws-rds-dbparametergroup.json deleted file mode 100644 index 8d14cf78b9..0000000000 --- a/src/cfnlint/data/schemas/providers/us_west_1/aws-rds-dbparametergroup.json +++ /dev/null @@ -1,69 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/DBParameterGroupName", - "/properties/Description", - "/properties/Family" - ], - "definitions": { - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key" - ], - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/DBParameterGroupName" - ], - "properties": { - "DBParameterGroupName": { - "pattern": "^[a-zA-Z]{1}(?:-?[a-zA-Z0-9])*$", - "type": "string" - }, - "Description": { - "type": "string" - }, - "Family": { - "type": "string" - }, - "Parameters": { - "format": "json", - "type": [ - "object", - "string" - ] - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 50, - "type": "array", - "uniqueItems": false - } - }, - "propertyTransform": { - "/properties/DBParameterGroupName": "$lowercase(DBParameterGroupName)" - }, - "required": [ - "Family", - "Description" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-rds", - "typeName": "AWS::RDS::DBParameterGroup" -} diff --git a/src/cfnlint/data/schemas/providers/us_west_1/aws-rds-optiongroup.json b/src/cfnlint/data/schemas/providers/us_west_1/aws-rds-optiongroup.json deleted file mode 100644 index d0e1e7a6a9..0000000000 --- a/src/cfnlint/data/schemas/providers/us_west_1/aws-rds-optiongroup.json +++ /dev/null @@ -1,125 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/EngineName", - "/properties/MajorEngineVersion", - "/properties/OptionGroupDescription", - "/properties/OptionGroupName" - ], - "definitions": { - "OptionConfiguration": { - "additionalProperties": false, - "properties": { - "DBSecurityGroupMemberships": { - "insertionOrder": false, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "OptionName": { - "type": "string" - }, - "OptionSettings": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/OptionSetting" - }, - "type": "array" - }, - "OptionVersion": { - "type": "string" - }, - "Port": { - "type": "integer" - }, - "VpcSecurityGroupMemberships": { - "insertionOrder": false, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - } - }, - "required": [ - "OptionName" - ], - "type": "object" - }, - "OptionSetting": { - "additionalProperties": false, - "properties": { - "Name": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key" - ], - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/OptionGroupName" - ], - "properties": { - "EngineName": { - "type": "string" - }, - "MajorEngineVersion": { - "type": "string" - }, - "OptionConfigurations": { - "arrayType": "AttributeList", - "insertionOrder": false, - "items": { - "$ref": "#/definitions/OptionConfiguration" - }, - "type": "array" - }, - "OptionGroupDescription": { - "type": "string" - }, - "OptionGroupName": { - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" - } - }, - "propertyTransform": { - "/properties/OptionGroupName": "$lowercase(OptionGroupName)" - }, - "required": [ - "EngineName", - "MajorEngineVersion", - "OptionGroupDescription" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-rds", - "typeName": "AWS::RDS::OptionGroup" -} diff --git a/src/cfnlint/data/schemas/providers/us_west_1/aws-sagemaker-imageversion.json b/src/cfnlint/data/schemas/providers/us_west_1/aws-sagemaker-imageversion.json deleted file mode 100644 index e7c91ccc8d..0000000000 --- a/src/cfnlint/data/schemas/providers/us_west_1/aws-sagemaker-imageversion.json +++ /dev/null @@ -1,172 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/ImageName", - "/properties/BaseImage" - ], - "definitions": { - "Alias": { - "maxLength": 128, - "minLength": 1, - "pattern": "(?!^[.-])^([a-zA-Z0-9-_.]+)$", - "type": "string" - }, - "Aliases": { - "items": { - "$ref": "#/definitions/Alias" - }, - "type": "array" - }, - "BaseImage": { - "maxLength": 255, - "minLength": 1, - "pattern": ".+", - "type": "string" - }, - "ContainerImage": { - "maxLength": 255, - "minLength": 1, - "pattern": ".+", - "type": "string" - }, - "Horovod": { - "type": "boolean" - }, - "ImageArn": { - "maxLength": 256, - "minLength": 1, - "pattern": "^arn:aws(-[\\w]+)*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:image\\/[a-zA-Z0-9]([-.]?[a-zA-Z0-9])*$", - "type": "string" - }, - "ImageName": { - "maxLength": 63, - "minLength": 1, - "pattern": "^[A-Za-z0-9]([-.]?[A-Za-z0-9])*$", - "type": "string" - }, - "ImageVersionArn": { - "maxLength": 256, - "minLength": 1, - "pattern": "^arn:aws(-[\\w]+)*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:image-version\\/[a-zA-Z0-9]([-.]?[a-zA-Z0-9])*\\/[0-9]+$", - "type": "string" - }, - "JobType": { - "enum": [ - "TRAINING", - "INFERENCE", - "NOTEBOOK_KERNEL" - ], - "type": "string" - }, - "MLFramework": { - "maxLength": 128, - "minLength": 1, - "pattern": "^[a-zA-Z]+ ?\\d+\\.\\d+(\\.\\d+)?$", - "type": "string" - }, - "Processor": { - "enum": [ - "CPU", - "GPU" - ], - "type": "string" - }, - "ProgrammingLang": { - "maxLength": 128, - "minLength": 1, - "pattern": "^[a-zA-Z]+ ?\\d+\\.\\d+(\\.\\d+)?$", - "type": "string" - }, - "ReleaseNotes": { - "maxLength": 255, - "minLength": 1, - "pattern": ".*", - "type": "string" - }, - "VendorGuidance": { - "enum": [ - "NOT_PROVIDED", - "STABLE", - "TO_BE_ARCHIVED", - "ARCHIVED" - ], - "type": "string" - }, - "Version": { - "minimum": 1, - "type": "integer" - } - }, - "primaryIdentifier": [ - "/properties/ImageVersionArn" - ], - "properties": { - "Alias": { - "$ref": "#/definitions/Alias" - }, - "Aliases": { - "$ref": "#/definitions/Aliases" - }, - "BaseImage": { - "$ref": "#/definitions/BaseImage" - }, - "ContainerImage": { - "$ref": "#/definitions/ContainerImage" - }, - "Horovod": { - "$ref": "#/definitions/Horovod" - }, - "ImageArn": { - "$ref": "#/definitions/ImageArn" - }, - "ImageName": { - "$ref": "#/definitions/ImageName" - }, - "ImageVersionArn": { - "$ref": "#/definitions/ImageVersionArn" - }, - "JobType": { - "$ref": "#/definitions/JobType" - }, - "MLFramework": { - "$ref": "#/definitions/MLFramework" - }, - "Processor": { - "$ref": "#/definitions/Processor" - }, - "ProgrammingLang": { - "$ref": "#/definitions/ProgrammingLang" - }, - "ReleaseNotes": { - "$ref": "#/definitions/ReleaseNotes" - }, - "VendorGuidance": { - "$ref": "#/definitions/VendorGuidance" - }, - "Version": { - "$ref": "#/definitions/Version" - } - }, - "readOnlyProperties": [ - "/properties/ImageVersionArn", - "/properties/ImageArn", - "/properties/Version", - "/properties/ContainerImage" - ], - "required": [ - "ImageName", - "BaseImage" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sagemaker", - "tagging": { - "cloudFormationSystemTags": false, - "tagOnCreate": false, - "tagUpdatable": false, - "taggable": false - }, - "typeName": "AWS::SageMaker::ImageVersion", - "writeOnlyProperties": [ - "/properties/Aliases", - "/properties/Alias" - ] -} diff --git a/src/cfnlint/data/schemas/providers/us_west_2/__init__.py b/src/cfnlint/data/schemas/providers/us_west_2/__init__.py index bc0c44103a..f85f1dc3c8 100644 --- a/src/cfnlint/data/schemas/providers/us_west_2/__init__.py +++ b/src/cfnlint/data/schemas/providers/us_west_2/__init__.py @@ -1735,7 +1735,6 @@ "aws-ec2-transitgatewaymulticastgroupsource.json", "aws-ec2-transitgatewaypeeringattachment.json", "aws-ec2-transitgatewayroute.json", - "aws-ec2-transitgatewayroutetable.json", "aws-ec2-transitgatewayroutetableassociation.json", "aws-ec2-transitgatewayroutetablepropagation.json", "aws-ec2-transitgatewayvpcattachment.json", @@ -1754,7 +1753,6 @@ "aws-ec2-vpcendpointservicepermissions.json", "aws-ec2-vpcgatewayattachment.json", "aws-ec2-vpcpeeringconnection.json", - "aws-ec2-vpnconnection.json", "aws-ec2-vpnconnectionroute.json", "aws-ec2-vpngateway.json", "aws-ec2-vpngatewayroutepropagation.json", @@ -1767,7 +1765,6 @@ "aws-ecs-cluster.json", "aws-ecs-clustercapacityproviderassociations.json", "aws-ecs-primarytaskset.json", - "aws-ecs-service.json", "aws-ecs-taskdefinition.json", "aws-ecs-taskset.json", "aws-efs-accesspoint.json", @@ -1867,6 +1864,7 @@ "aws-globalaccelerator-listener.json", "aws-glue-classifier.json", "aws-glue-connection.json", + "aws-glue-crawler.json", "aws-glue-customentitytype.json", "aws-glue-database.json", "aws-glue-datacatalogencryptionsettings.json", @@ -1907,6 +1905,7 @@ "aws-groundstation-config.json", "aws-groundstation-dataflowendpointgroup.json", "aws-groundstation-missionprofile.json", + "aws-guardduty-detector.json", "aws-guardduty-filter.json", "aws-guardduty-ipset.json", "aws-guardduty-malwareprotectionplan.json", @@ -2026,6 +2025,8 @@ "aws-kendra-faq.json", "aws-kendra-index.json", "aws-kendraranking-executionplan.json", + "aws-kinesis-resourcepolicy.json", + "aws-kinesis-stream.json", "aws-kinesis-streamconsumer.json", "aws-kinesisanalytics-application.json", "aws-kinesisanalytics-applicationoutput.json", @@ -2343,10 +2344,6 @@ "aws-route53recoverycontrol-controlpanel.json", "aws-route53recoverycontrol-routingcontrol.json", "aws-route53recoverycontrol-safetyrule.json", - "aws-route53recoveryreadiness-cell.json", - "aws-route53recoveryreadiness-readinesscheck.json", - "aws-route53recoveryreadiness-recoverygroup.json", - "aws-route53recoveryreadiness-resourceset.json", "aws-route53resolver-firewalldomainlist.json", "aws-route53resolver-firewallrulegroup.json", "aws-route53resolver-firewallrulegroupassociation.json", @@ -2356,7 +2353,6 @@ "aws-route53resolver-resolverendpoint.json", "aws-route53resolver-resolverqueryloggingconfig.json", "aws-route53resolver-resolverqueryloggingconfigassociation.json", - "aws-route53resolver-resolverrule.json", "aws-route53resolver-resolverruleassociation.json", "aws-rum-appmonitor.json", "aws-s3-accessgrant.json", @@ -2389,7 +2385,6 @@ "aws-sagemaker-endpointconfig.json", "aws-sagemaker-featuregroup.json", "aws-sagemaker-image.json", - "aws-sagemaker-imageversion.json", "aws-sagemaker-inferencecomponent.json", "aws-sagemaker-inferenceexperiment.json", "aws-sagemaker-mlflowtrackingserver.json", @@ -2415,7 +2410,6 @@ "aws-secretsmanager-resourcepolicy.json", "aws-secretsmanager-rotationschedule.json", "aws-secretsmanager-secret.json", - "aws-secretsmanager-secrettargetattachment.json", "aws-securityhub-automationrule.json", "aws-securityhub-configurationpolicy.json", "aws-securityhub-delegatedadmin.json", diff --git a/src/cfnlint/data/schemas/providers/eu_west_1/aws-databrew-schedule.json b/src/cfnlint/data/schemas/providers/us_west_2/aws-ec2-transitgatewayroutetable.json similarity index 50% rename from src/cfnlint/data/schemas/providers/eu_west_1/aws-databrew-schedule.json rename to src/cfnlint/data/schemas/providers/us_west_2/aws-ec2-transitgatewayroutetable.json index 3f83422f10..268a6afe73 100644 --- a/src/cfnlint/data/schemas/providers/eu_west_1/aws-databrew-schedule.json +++ b/src/cfnlint/data/schemas/providers/us_west_2/aws-ec2-transitgatewayroutetable.json @@ -1,26 +1,16 @@ { "additionalProperties": false, "createOnlyProperties": [ - "/properties/Name", - "/properties/Tags" + "/properties/TransitGatewayId" ], "definitions": { - "JobName": { - "maxLength": 255, - "minLength": 1, - "type": "string" - }, "Tag": { "additionalProperties": false, "properties": { "Key": { - "maxLength": 128, - "minLength": 1, "type": "string" }, "Value": { - "maxLength": 256, - "minLength": 0, "type": "string" } }, @@ -32,27 +22,9 @@ } }, "primaryIdentifier": [ - "/properties/Name" + "/properties/TransitGatewayRouteTableId" ], "properties": { - "CronExpression": { - "maxLength": 512, - "minLength": 1, - "type": "string" - }, - "JobNames": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/JobName" - }, - "type": "array", - "uniqueItems": true - }, - "Name": { - "maxLength": 255, - "minLength": 1, - "type": "string" - }, "Tags": { "insertionOrder": false, "items": { @@ -60,13 +32,27 @@ }, "type": "array", "uniqueItems": false + }, + "TransitGatewayId": { + "type": "string" + }, + "TransitGatewayRouteTableId": { + "type": "string" } }, + "readOnlyProperties": [ + "/properties/TransitGatewayRouteTableId" + ], "required": [ - "Name", - "CronExpression" + "TransitGatewayId" ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-databrew.git", - "taggable": true, - "typeName": "AWS::DataBrew::Schedule" + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-transitgateway.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::EC2::TransitGatewayRouteTable" } diff --git a/src/cfnlint/data/schemas/providers/us_west_2/aws-ec2-vpnconnection.json b/src/cfnlint/data/schemas/providers/us_west_2/aws-ec2-vpnconnection.json new file mode 100644 index 0000000000..a9d5be394d --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_west_2/aws-ec2-vpnconnection.json @@ -0,0 +1,383 @@ +{ + "$schema": "https://raw.githubusercontent.com/aws-cloudformation/cloudformation-resource-schema/blob/master/src/main/resources/schema/provider.definition.schema.v1.json", + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Type", + "/properties/CustomerGatewayId", + "/properties/VpnGatewayId", + "/properties/TransitGatewayId", + "/properties/EnableAcceleration", + "/properties/LocalIpv4NetworkCidr", + "/properties/LocalIpv6NetworkCidr", + "/properties/OutsideIpAddressType", + "/properties/RemoteIpv4NetworkCidr", + "/properties/RemoteIpv6NetworkCidr", + "/properties/StaticRoutesOnly", + "/properties/TransportTransitGatewayAttachmentId", + "/properties/TunnelInsideIpVersion", + "/properties/VpnTunnelOptionsSpecifications" + ], + "definitions": { + "CloudwatchLogOptionsSpecification": { + "additionalProperties": false, + "properties": { + "LogEnabled": { + "type": "boolean" + }, + "LogGroupArn": { + "type": "string" + }, + "LogOutputFormat": { + "enum": [ + "json", + "text" + ], + "type": "string" + } + }, + "type": "object" + }, + "IKEVersionsRequestListValue": { + "additionalProperties": false, + "properties": { + "Value": { + "enum": [ + "ikev1", + "ikev2" + ], + "type": "string" + } + }, + "type": "object" + }, + "Phase1DHGroupNumbersRequestListValue": { + "additionalProperties": false, + "properties": { + "Value": { + "enum": [ + 2, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24 + ], + "type": "integer" + } + }, + "type": "object" + }, + "Phase1EncryptionAlgorithmsRequestListValue": { + "additionalProperties": false, + "properties": { + "Value": { + "enum": [ + "AES128", + "AES256", + "AES128-GCM-16", + "AES256-GCM-16" + ], + "type": "string" + } + }, + "type": "object" + }, + "Phase1IntegrityAlgorithmsRequestListValue": { + "additionalProperties": false, + "properties": { + "Value": { + "enum": [ + "SHA1", + "SHA2-256", + "SHA2-384", + "SHA2-512" + ], + "type": "string" + } + }, + "type": "object" + }, + "Phase2DHGroupNumbersRequestListValue": { + "additionalProperties": false, + "properties": { + "Value": { + "enum": [ + 2, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24 + ], + "type": "integer" + } + }, + "type": "object" + }, + "Phase2EncryptionAlgorithmsRequestListValue": { + "additionalProperties": false, + "properties": { + "Value": { + "enum": [ + "AES128", + "AES256", + "AES128-GCM-16", + "AES256-GCM-16" + ], + "type": "string" + } + }, + "type": "object" + }, + "Phase2IntegrityAlgorithmsRequestListValue": { + "additionalProperties": false, + "properties": { + "Value": { + "enum": [ + "SHA1", + "SHA2-256", + "SHA2-384", + "SHA2-512" + ], + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + }, + "VpnTunnelLogOptionsSpecification": { + "additionalProperties": false, + "properties": { + "CloudwatchLogOptions": { + "$ref": "#/definitions/CloudwatchLogOptionsSpecification" + } + }, + "type": "object" + }, + "VpnTunnelOptionsSpecification": { + "additionalProperties": false, + "properties": { + "DPDTimeoutAction": { + "enum": [ + "clear", + "none", + "restart" + ], + "type": "string" + }, + "DPDTimeoutSeconds": { + "minimum": 30, + "type": "integer" + }, + "EnableTunnelLifecycleControl": { + "type": "boolean" + }, + "IKEVersions": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/IKEVersionsRequestListValue" + }, + "type": "array", + "uniqueItems": false + }, + "LogOptions": { + "$ref": "#/definitions/VpnTunnelLogOptionsSpecification" + }, + "Phase1DHGroupNumbers": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Phase1DHGroupNumbersRequestListValue" + }, + "type": "array", + "uniqueItems": false + }, + "Phase1EncryptionAlgorithms": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Phase1EncryptionAlgorithmsRequestListValue" + }, + "type": "array", + "uniqueItems": false + }, + "Phase1IntegrityAlgorithms": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Phase1IntegrityAlgorithmsRequestListValue" + }, + "type": "array", + "uniqueItems": false + }, + "Phase1LifetimeSeconds": { + "maximum": 28800, + "minimum": 900, + "type": "integer" + }, + "Phase2DHGroupNumbers": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Phase2DHGroupNumbersRequestListValue" + }, + "type": "array", + "uniqueItems": false + }, + "Phase2EncryptionAlgorithms": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Phase2EncryptionAlgorithmsRequestListValue" + }, + "type": "array", + "uniqueItems": false + }, + "Phase2IntegrityAlgorithms": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Phase2IntegrityAlgorithmsRequestListValue" + }, + "type": "array", + "uniqueItems": false + }, + "Phase2LifetimeSeconds": { + "maximum": 3600, + "minimum": 900, + "type": "integer" + }, + "PreSharedKey": { + "type": "string" + }, + "RekeyFuzzPercentage": { + "maximum": 100, + "minimum": 0, + "type": "integer" + }, + "RekeyMarginTimeSeconds": { + "minimum": 60, + "type": "integer" + }, + "ReplayWindowSize": { + "maximum": 2048, + "minimum": 64, + "type": "integer" + }, + "StartupAction": { + "enum": [ + "add", + "start" + ], + "type": "string" + }, + "TunnelInsideCidr": { + "type": "string" + }, + "TunnelInsideIpv6Cidr": { + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/VpnConnectionId" + ], + "properties": { + "CustomerGatewayId": { + "type": "string" + }, + "EnableAcceleration": { + "type": "boolean" + }, + "LocalIpv4NetworkCidr": { + "type": "string" + }, + "LocalIpv6NetworkCidr": { + "type": "string" + }, + "OutsideIpAddressType": { + "type": "string" + }, + "RemoteIpv4NetworkCidr": { + "type": "string" + }, + "RemoteIpv6NetworkCidr": { + "type": "string" + }, + "StaticRoutesOnly": { + "type": "boolean" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": false + }, + "TransitGatewayId": { + "type": "string" + }, + "TransportTransitGatewayAttachmentId": { + "type": "string" + }, + "TunnelInsideIpVersion": { + "type": "string" + }, + "Type": { + "type": "string" + }, + "VpnConnectionId": { + "type": "string" + }, + "VpnGatewayId": { + "type": "string" + }, + "VpnTunnelOptionsSpecifications": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/VpnTunnelOptionsSpecification" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/VpnConnectionId" + ], + "required": [ + "Type", + "CustomerGatewayId" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::EC2::VPNConnection" +} diff --git a/src/cfnlint/data/schemas/providers/us_west_2/aws-ecs-service.json b/src/cfnlint/data/schemas/providers/us_west_2/aws-ecs-service.json new file mode 100644 index 0000000000..ba7baa1de3 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_west_2/aws-ecs-service.json @@ -0,0 +1,585 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Cluster", + "/properties/DeploymentController", + "/properties/LaunchType", + "/properties/Role", + "/properties/SchedulingStrategy", + "/properties/ServiceName" + ], + "definitions": { + "AwsVpcConfiguration": { + "additionalProperties": false, + "properties": { + "AssignPublicIp": { + "enum": [ + "DISABLED", + "ENABLED" + ], + "type": "string" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "type": "string" + }, + "type": "array" + }, + "Subnets": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "CapacityProviderStrategyItem": { + "additionalProperties": false, + "properties": { + "Base": { + "type": "integer" + }, + "CapacityProvider": { + "type": "string" + }, + "Weight": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentAlarms": { + "additionalProperties": false, + "properties": { + "AlarmNames": { + "items": { + "type": "string" + }, + "type": "array" + }, + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "AlarmNames", + "Rollback", + "Enable" + ], + "type": "object" + }, + "DeploymentCircuitBreaker": { + "additionalProperties": false, + "properties": { + "Enable": { + "type": "boolean" + }, + "Rollback": { + "type": "boolean" + } + }, + "required": [ + "Enable", + "Rollback" + ], + "type": "object" + }, + "DeploymentConfiguration": { + "additionalProperties": false, + "properties": { + "Alarms": { + "$ref": "#/definitions/DeploymentAlarms" + }, + "DeploymentCircuitBreaker": { + "$ref": "#/definitions/DeploymentCircuitBreaker" + }, + "MaximumPercent": { + "type": "integer" + }, + "MinimumHealthyPercent": { + "type": "integer" + } + }, + "type": "object" + }, + "DeploymentController": { + "additionalProperties": false, + "properties": { + "Type": { + "enum": [ + "CODE_DEPLOY", + "ECS", + "EXTERNAL" + ], + "type": "string" + } + }, + "type": "object" + }, + "EBSTagSpecification": { + "additionalProperties": false, + "properties": { + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "ResourceType": { + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + } + }, + "required": [ + "ResourceType" + ], + "type": "object" + }, + "LoadBalancer": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "LoadBalancerName": { + "type": "string" + }, + "TargetGroupArn": { + "type": "string" + } + }, + "type": "object" + }, + "LogConfiguration": { + "additionalProperties": false, + "properties": { + "LogDriver": { + "type": "string" + }, + "Options": { + "additionalProperties": false, + "patternProperties": { + ".{1,}": { + "type": "string" + } + }, + "type": "object" + }, + "SecretOptions": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Secret" + }, + "type": "array" + } + }, + "type": "object" + }, + "NetworkConfiguration": { + "additionalProperties": false, + "properties": { + "AwsvpcConfiguration": { + "$ref": "#/definitions/AwsVpcConfiguration" + } + }, + "type": "object" + }, + "PlacementConstraint": { + "additionalProperties": false, + "properties": { + "Expression": { + "type": "string" + }, + "Type": { + "enum": [ + "distinctInstance", + "memberOf" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "PlacementStrategy": { + "additionalProperties": false, + "properties": { + "Field": { + "type": "string" + }, + "Type": { + "enum": [ + "binpack", + "random", + "spread" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, + "Secret": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "ValueFrom": { + "type": "string" + } + }, + "required": [ + "Name", + "ValueFrom" + ], + "type": "object" + }, + "ServiceConnectClientAlias": { + "additionalProperties": false, + "properties": { + "DnsName": { + "type": "string" + }, + "Port": { + "type": "integer" + } + }, + "required": [ + "Port" + ], + "type": "object" + }, + "ServiceConnectConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + }, + "LogConfiguration": { + "$ref": "#/definitions/LogConfiguration" + }, + "Namespace": { + "type": "string" + }, + "Services": { + "items": { + "$ref": "#/definitions/ServiceConnectService" + }, + "type": "array" + } + }, + "required": [ + "Enabled" + ], + "type": "object" + }, + "ServiceConnectService": { + "additionalProperties": false, + "properties": { + "ClientAliases": { + "items": { + "$ref": "#/definitions/ServiceConnectClientAlias" + }, + "type": "array" + }, + "DiscoveryName": { + "type": "string" + }, + "IngressPortOverride": { + "type": "integer" + }, + "PortName": { + "type": "string" + }, + "Timeout": { + "$ref": "#/definitions/TimeoutConfiguration" + }, + "Tls": { + "$ref": "#/definitions/ServiceConnectTlsConfiguration" + } + }, + "required": [ + "PortName" + ], + "type": "object" + }, + "ServiceConnectTlsCertificateAuthority": { + "additionalProperties": false, + "properties": { + "AwsPcaAuthorityArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceConnectTlsConfiguration": { + "additionalProperties": false, + "properties": { + "IssuerCertificateAuthority": { + "$ref": "#/definitions/ServiceConnectTlsCertificateAuthority" + }, + "KmsKey": { + "type": "string" + }, + "RoleArn": { + "type": "string" + } + }, + "required": [ + "IssuerCertificateAuthority" + ], + "type": "object" + }, + "ServiceManagedEBSVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "Encrypted": { + "type": "boolean" + }, + "FilesystemType": { + "type": "string" + }, + "Iops": { + "type": "integer" + }, + "KmsKeyId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SizeInGiB": { + "type": "integer" + }, + "SnapshotId": { + "type": "string" + }, + "TagSpecifications": { + "items": { + "$ref": "#/definitions/EBSTagSpecification" + }, + "type": "array" + }, + "Throughput": { + "type": "integer" + }, + "VolumeType": { + "type": "string" + } + }, + "required": [ + "RoleArn" + ], + "type": "object" + }, + "ServiceRegistry": { + "additionalProperties": false, + "properties": { + "ContainerName": { + "type": "string" + }, + "ContainerPort": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "RegistryArn": { + "type": "string" + } + }, + "type": "object" + }, + "ServiceVolumeConfiguration": { + "additionalProperties": false, + "properties": { + "ManagedEBSVolume": { + "$ref": "#/definitions/ServiceManagedEBSVolumeConfiguration" + }, + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "type": "object" + }, + "TimeoutConfiguration": { + "additionalProperties": false, + "properties": { + "IdleTimeoutSeconds": { + "type": "integer" + }, + "PerRequestTimeoutSeconds": { + "type": "integer" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/ServiceArn", + "/properties/Cluster" + ], + "properties": { + "CapacityProviderStrategy": { + "items": { + "$ref": "#/definitions/CapacityProviderStrategyItem" + }, + "type": "array" + }, + "Cluster": { + "type": "string" + }, + "DeploymentConfiguration": { + "$ref": "#/definitions/DeploymentConfiguration" + }, + "DeploymentController": { + "$ref": "#/definitions/DeploymentController" + }, + "DesiredCount": { + "type": "integer" + }, + "EnableECSManagedTags": { + "type": "boolean" + }, + "EnableExecuteCommand": { + "type": "boolean" + }, + "HealthCheckGracePeriodSeconds": { + "type": "integer" + }, + "LaunchType": { + "enum": [ + "EC2", + "FARGATE", + "EXTERNAL" + ], + "type": "string" + }, + "LoadBalancers": { + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "type": "array" + }, + "Name": { + "type": "string" + }, + "NetworkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "PlacementConstraints": { + "items": { + "$ref": "#/definitions/PlacementConstraint" + }, + "type": "array" + }, + "PlacementStrategies": { + "items": { + "$ref": "#/definitions/PlacementStrategy" + }, + "type": "array" + }, + "PlatformVersion": { + "default": "LATEST", + "type": "string" + }, + "PropagateTags": { + "enum": [ + "SERVICE", + "TASK_DEFINITION" + ], + "type": "string" + }, + "Role": { + "type": "string" + }, + "SchedulingStrategy": { + "enum": [ + "DAEMON", + "REPLICA" + ], + "type": "string" + }, + "ServiceArn": { + "type": "string" + }, + "ServiceConnectConfiguration": { + "$ref": "#/definitions/ServiceConnectConfiguration" + }, + "ServiceName": { + "type": "string" + }, + "ServiceRegistries": { + "items": { + "$ref": "#/definitions/ServiceRegistry" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array" + }, + "TaskDefinition": { + "type": "string" + }, + "VolumeConfigurations": { + "items": { + "$ref": "#/definitions/ServiceVolumeConfiguration" + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/ServiceArn", + "/properties/Name" + ], + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ECS::Service", + "writeOnlyProperties": [ + "/properties/ServiceConnectConfiguration", + "/properties/VolumeConfigurations" + ] +} diff --git a/src/cfnlint/data/schemas/providers/us_west_2/aws-glue-crawler.json b/src/cfnlint/data/schemas/providers/us_west_2/aws-glue-crawler.json deleted file mode 100644 index 7dcb87f3d8..0000000000 --- a/src/cfnlint/data/schemas/providers/us_west_2/aws-glue-crawler.json +++ /dev/null @@ -1,328 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name" - ], - "definitions": { - "CatalogTarget": { - "additionalProperties": false, - "properties": { - "ConnectionName": { - "type": "string" - }, - "DatabaseName": { - "type": "string" - }, - "DlqEventQueueArn": { - "type": "string" - }, - "EventQueueArn": { - "type": "string" - }, - "Tables": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - } - }, - "type": "object" - }, - "DeltaTarget": { - "additionalProperties": false, - "properties": { - "ConnectionName": { - "type": "string" - }, - "CreateNativeDeltaTable": { - "type": "boolean" - }, - "DeltaTables": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "WriteManifest": { - "type": "boolean" - } - }, - "type": "object" - }, - "DynamoDBTarget": { - "additionalProperties": false, - "properties": { - "Path": { - "type": "string" - } - }, - "type": "object" - }, - "IcebergTarget": { - "additionalProperties": false, - "properties": { - "ConnectionName": { - "type": "string" - }, - "Exclusions": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "MaximumTraversalDepth": { - "type": "integer" - }, - "Paths": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - } - }, - "type": "object" - }, - "JdbcTarget": { - "additionalProperties": false, - "properties": { - "ConnectionName": { - "type": "string" - }, - "EnableAdditionalMetadata": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "Exclusions": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "Path": { - "type": "string" - } - }, - "type": "object" - }, - "LakeFormationConfiguration": { - "additionalProperties": false, - "properties": { - "AccountId": { - "type": "string" - }, - "UseLakeFormationCredentials": { - "type": "boolean" - } - }, - "type": "object" - }, - "MongoDBTarget": { - "additionalProperties": false, - "properties": { - "ConnectionName": { - "type": "string" - }, - "Path": { - "type": "string" - } - }, - "type": "object" - }, - "RecrawlPolicy": { - "additionalProperties": false, - "properties": { - "RecrawlBehavior": { - "type": "string" - } - }, - "type": "object" - }, - "S3Target": { - "additionalProperties": false, - "properties": { - "ConnectionName": { - "type": "string" - }, - "DlqEventQueueArn": { - "type": "string" - }, - "EventQueueArn": { - "type": "string" - }, - "Exclusions": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "Path": { - "type": "string" - }, - "SampleSize": { - "type": "integer" - } - }, - "type": "object" - }, - "Schedule": { - "additionalProperties": false, - "properties": { - "ScheduleExpression": { - "type": "string" - } - }, - "type": "object" - }, - "SchemaChangePolicy": { - "additionalProperties": false, - "properties": { - "DeleteBehavior": { - "enum": [ - "DELETE_FROM_DATABASE", - "DEPRECATE_IN_DATABASE", - "LOG" - ], - "type": "string" - }, - "UpdateBehavior": { - "enum": [ - "LOG", - "UPDATE_IN_DATABASE" - ], - "type": "string" - } - }, - "type": "object" - }, - "Targets": { - "additionalProperties": false, - "properties": { - "CatalogTargets": { - "items": { - "$ref": "#/definitions/CatalogTarget" - }, - "type": "array", - "uniqueItems": false - }, - "DeltaTargets": { - "items": { - "$ref": "#/definitions/DeltaTarget" - }, - "type": "array", - "uniqueItems": false - }, - "DynamoDBTargets": { - "items": { - "$ref": "#/definitions/DynamoDBTarget" - }, - "type": "array", - "uniqueItems": false - }, - "IcebergTargets": { - "items": { - "$ref": "#/definitions/IcebergTarget" - }, - "type": "array", - "uniqueItems": false - }, - "JdbcTargets": { - "items": { - "$ref": "#/definitions/JdbcTarget" - }, - "type": "array", - "uniqueItems": false - }, - "MongoDBTargets": { - "items": { - "$ref": "#/definitions/MongoDBTarget" - }, - "type": "array", - "uniqueItems": false - }, - "S3Targets": { - "items": { - "$ref": "#/definitions/S3Target" - }, - "type": "array", - "uniqueItems": false - } - }, - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "Classifiers": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "Configuration": { - "type": "string" - }, - "CrawlerSecurityConfiguration": { - "type": "string" - }, - "DatabaseName": { - "type": "string" - }, - "Description": { - "type": "string" - }, - "Id": { - "type": "string" - }, - "LakeFormationConfiguration": { - "$ref": "#/definitions/LakeFormationConfiguration" - }, - "Name": { - "type": "string" - }, - "RecrawlPolicy": { - "$ref": "#/definitions/RecrawlPolicy" - }, - "Role": { - "type": "string" - }, - "Schedule": { - "$ref": "#/definitions/Schedule" - }, - "SchemaChangePolicy": { - "$ref": "#/definitions/SchemaChangePolicy" - }, - "TablePrefix": { - "type": "string" - }, - "Tags": { - "format": "json", - "type": [ - "object", - "string" - ] - }, - "Targets": { - "$ref": "#/definitions/Targets" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "Role", - "Targets" - ], - "typeName": "AWS::Glue::Crawler" -} diff --git a/src/cfnlint/data/schemas/providers/us_west_2/aws-kinesis-resourcepolicy.json b/src/cfnlint/data/schemas/providers/us_west_2/aws-kinesis-resourcepolicy.json deleted file mode 100644 index 5b1878ee8e..0000000000 --- a/src/cfnlint/data/schemas/providers/us_west_2/aws-kinesis-resourcepolicy.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/ResourceArn" - ], - "primaryIdentifier": [ - "/properties/ResourceArn" - ], - "properties": { - "ResourceArn": { - "anyOf": [ - { - "relationshipRef": { - "propertyPath": "/properties/Arn", - "typeName": "AWS::Kinesis::Stream" - } - }, - { - "relationshipRef": { - "propertyPath": "/properties/ConsumerARN", - "typeName": "AWS::Kinesis::StreamConsumer" - } - } - ], - "maxLength": 2048, - "minLength": 1, - "pattern": "arn:aws.*:kinesis:.*:\\d{12}:stream/\\S+", - "type": "string" - }, - "ResourcePolicy": { - "type": "object" - } - }, - "required": [ - "ResourceArn", - "ResourcePolicy" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-kinesis.git", - "tagging": { - "taggable": false - }, - "typeName": "AWS::Kinesis::ResourcePolicy" -} diff --git a/src/cfnlint/data/schemas/providers/us_west_2/aws-route53recoveryreadiness-cell.json b/src/cfnlint/data/schemas/providers/us_west_2/aws-route53recoveryreadiness-cell.json new file mode 100644 index 0000000000..02a5074713 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_west_2/aws-route53recoveryreadiness-cell.json @@ -0,0 +1,75 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/CellName" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/CellName" + ], + "properties": { + "CellArn": { + "maxLength": 256, + "type": "string" + }, + "CellName": { + "maxLength": 64, + "pattern": "[a-zA-Z0-9_]+", + "type": "string" + }, + "Cells": { + "insertionOrder": false, + "items": { + "type": "string" + }, + "maxItems": 5, + "type": "array" + }, + "ParentReadinessScopes": { + "insertionOrder": false, + "items": { + "type": "string" + }, + "maxItems": 5, + "type": "array" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag", + "maxItems": 20 + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/CellArn", + "/properties/ParentReadinessScopes" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-reoute53-recovery-readiness.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Route53RecoveryReadiness::Cell" +} diff --git a/src/cfnlint/data/schemas/providers/us_west_2/aws-route53recoveryreadiness-readinesscheck.json b/src/cfnlint/data/schemas/providers/us_west_2/aws-route53recoveryreadiness-readinesscheck.json new file mode 100644 index 0000000000..bf82fae17c --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_west_2/aws-route53recoveryreadiness-readinesscheck.json @@ -0,0 +1,65 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/ReadinessCheckName" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/ReadinessCheckName" + ], + "properties": { + "ReadinessCheckArn": { + "maxLength": 256, + "type": "string" + }, + "ReadinessCheckName": { + "maxLength": 64, + "minLength": 1, + "pattern": "[a-zA-Z0-9_]+", + "type": "string" + }, + "ResourceSetName": { + "maxLength": 64, + "minLength": 1, + "pattern": "[a-zA-Z0-9_]+", + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag", + "maxItems": 20 + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/ReadinessCheckArn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-route53-recovery-readiness.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Route53RecoveryReadiness::ReadinessCheck" +} diff --git a/src/cfnlint/data/schemas/providers/us_west_2/aws-route53recoveryreadiness-recoverygroup.json b/src/cfnlint/data/schemas/providers/us_west_2/aws-route53recoveryreadiness-recoverygroup.json new file mode 100644 index 0000000000..9518931471 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_west_2/aws-route53recoveryreadiness-recoverygroup.json @@ -0,0 +1,69 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/RecoveryGroupName" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/RecoveryGroupName" + ], + "properties": { + "Cells": { + "insertionOrder": false, + "items": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "maxItems": 5, + "type": "array" + }, + "RecoveryGroupArn": { + "maxLength": 256, + "type": "string" + }, + "RecoveryGroupName": { + "maxLength": 64, + "minLength": 1, + "pattern": "[a-zA-Z0-9_]+", + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag", + "maxItems": 20 + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/RecoveryGroupArn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-route53-recovery-readiness-readiness.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Route53RecoveryReadiness::RecoveryGroup" +} diff --git a/src/cfnlint/data/schemas/providers/us_west_2/aws-route53recoveryreadiness-resourceset.json b/src/cfnlint/data/schemas/providers/us_west_2/aws-route53recoveryreadiness-resourceset.json new file mode 100644 index 0000000000..8a0101cd04 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_west_2/aws-route53recoveryreadiness-resourceset.json @@ -0,0 +1,163 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/ResourceSetName", + "/properties/ResourceSetType" + ], + "definitions": { + "DNSTargetResource": { + "additionalProperties": false, + "properties": { + "DomainName": { + "type": "string" + }, + "HostedZoneArn": { + "type": "string" + }, + "RecordSetId": { + "type": "string" + }, + "RecordType": { + "type": "string" + }, + "TargetResource": { + "$ref": "#/definitions/TargetResource" + } + }, + "type": "object" + }, + "NLBResource": { + "additionalProperties": false, + "properties": { + "Arn": { + "type": "string" + } + }, + "type": "object" + }, + "R53ResourceRecord": { + "additionalProperties": false, + "properties": { + "DomainName": { + "type": "string" + }, + "RecordSetId": { + "type": "string" + } + }, + "type": "object" + }, + "Resource": { + "additionalProperties": false, + "properties": { + "ComponentId": { + "type": "string" + }, + "DnsTargetResource": { + "$ref": "#/definitions/DNSTargetResource" + }, + "ReadinessScopes": { + "insertionOrder": false, + "items": { + "maxItems": 5, + "type": "string" + }, + "type": "array" + }, + "ResourceArn": { + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + }, + "TargetResource": { + "additionalProperties": false, + "oneOf": [ + { + "required": [ + "NLBResource" + ] + }, + { + "required": [ + "R53Resource" + ] + } + ], + "properties": { + "NLBResource": { + "$ref": "#/definitions/NLBResource" + }, + "R53Resource": { + "$ref": "#/definitions/R53ResourceRecord" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/ResourceSetName" + ], + "properties": { + "ResourceSetArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "ResourceSetName": { + "type": "string" + }, + "ResourceSetType": { + "type": "string" + }, + "Resources": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Resource" + }, + "maxItems": 6, + "minItems": 1, + "type": "array" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag", + "maxItems": 20 + }, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/ResourceSetArn" + ], + "required": [ + "ResourceSetType", + "Resources" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-route53-recovery-readiness.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Route53RecoveryReadiness::ResourceSet" +} diff --git a/src/cfnlint/data/schemas/providers/us_west_2/aws-route53resolver-resolverrule.json b/src/cfnlint/data/schemas/providers/us_west_2/aws-route53resolver-resolverrule.json new file mode 100644 index 0000000000..7b24325ca2 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_west_2/aws-route53resolver-resolverrule.json @@ -0,0 +1,130 @@ +{ + "additionalProperties": false, + "conditionalCreateOnlyProperties": [ + "/properties/DomainName" + ], + "createOnlyProperties": [ + "/properties/RuleType" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + }, + "TargetAddress": { + "additionalProperties": false, + "properties": { + "Ip": { + "type": "string" + }, + "Ipv6": { + "type": "string" + }, + "Port": { + "maxLength": 65535, + "minLength": 0, + "type": "string" + }, + "Protocol": { + "enum": [ + "Do53", + "DoH" + ], + "type": "string" + }, + "ServerNameIndication": { + "maxLength": 255, + "minLength": 0, + "type": "string" + } + }, + "type": "object" + } + }, + "primaryIdentifier": [ + "/properties/ResolverRuleId" + ], + "properties": { + "Arn": { + "type": "string" + }, + "DomainName": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "Name": { + "maxLength": 64, + "minLength": 0, + "type": "string" + }, + "ResolverEndpointId": { + "maxLength": 64, + "minLength": 1, + "type": "string" + }, + "ResolverRuleId": { + "type": "string" + }, + "RuleType": { + "enum": [ + "FORWARD", + "SYSTEM", + "RECURSIVE", + "DELEGATE" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": false + }, + "TargetIps": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TargetAddress" + }, + "type": "array", + "uniqueItems": false + } + }, + "propertyTransform": { + "/properties/DomainName": "$join([DomainName, \".\"]) $OR DomainName" + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/ResolverRuleId" + ], + "required": [ + "RuleType" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-route53resolver.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::Route53Resolver::ResolverRule" +} diff --git a/src/cfnlint/data/schemas/providers/us_west_2/aws-sagemaker-imageversion.json b/src/cfnlint/data/schemas/providers/us_west_2/aws-sagemaker-imageversion.json new file mode 100644 index 0000000000..3b09dc9bad --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_west_2/aws-sagemaker-imageversion.json @@ -0,0 +1,171 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/ImageName", + "/properties/BaseImage" + ], + "definitions": { + "Alias": { + "maxLength": 128, + "minLength": 1, + "pattern": "(?!^[.-])^([a-zA-Z0-9-_.]+)$", + "type": "string" + }, + "Aliases": { + "items": { + "$ref": "#/definitions/Alias" + }, + "type": "array" + }, + "BaseImage": { + "maxLength": 255, + "minLength": 1, + "pattern": ".+", + "type": "string" + }, + "ContainerImage": { + "maxLength": 255, + "minLength": 1, + "pattern": ".+", + "type": "string" + }, + "Horovod": { + "type": "boolean" + }, + "ImageArn": { + "maxLength": 256, + "minLength": 1, + "pattern": "^arn:aws(-[\\w]+)*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:image\\/[a-zA-Z0-9]([-.]?[a-zA-Z0-9])*$", + "type": "string" + }, + "ImageName": { + "maxLength": 63, + "minLength": 1, + "pattern": "^[A-Za-z0-9]([-.]?[A-Za-z0-9])*$", + "type": "string" + }, + "ImageVersionArn": { + "maxLength": 256, + "minLength": 1, + "pattern": "^arn:aws(-[\\w]+)*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:image-version\\/[a-zA-Z0-9]([-.]?[a-zA-Z0-9])*\\/[0-9]+$", + "type": "string" + }, + "JobType": { + "enum": [ + "TRAINING", + "INFERENCE", + "NOTEBOOK_KERNEL" + ], + "type": "string" + }, + "MLFramework": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z]+ ?\\d+\\.\\d+(\\.\\d+)?$", + "type": "string" + }, + "Processor": { + "enum": [ + "CPU", + "GPU" + ], + "type": "string" + }, + "ProgrammingLang": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z]+ ?\\d+\\.\\d+(\\.\\d+)?$", + "type": "string" + }, + "ReleaseNotes": { + "maxLength": 255, + "minLength": 1, + "pattern": ".*", + "type": "string" + }, + "VendorGuidance": { + "enum": [ + "NOT_PROVIDED", + "STABLE", + "TO_BE_ARCHIVED", + "ARCHIVED" + ], + "type": "string" + }, + "Version": { + "minimum": 1, + "type": "integer" + } + }, + "primaryIdentifier": [ + "/properties/ImageVersionArn" + ], + "properties": { + "Alias": { + "$ref": "#/definitions/Alias" + }, + "Aliases": { + "$ref": "#/definitions/Aliases" + }, + "BaseImage": { + "$ref": "#/definitions/BaseImage" + }, + "ContainerImage": { + "$ref": "#/definitions/ContainerImage" + }, + "Horovod": { + "$ref": "#/definitions/Horovod" + }, + "ImageArn": { + "$ref": "#/definitions/ImageArn" + }, + "ImageName": { + "$ref": "#/definitions/ImageName" + }, + "ImageVersionArn": { + "$ref": "#/definitions/ImageVersionArn" + }, + "JobType": { + "$ref": "#/definitions/JobType" + }, + "MLFramework": { + "$ref": "#/definitions/MLFramework" + }, + "Processor": { + "$ref": "#/definitions/Processor" + }, + "ProgrammingLang": { + "$ref": "#/definitions/ProgrammingLang" + }, + "ReleaseNotes": { + "$ref": "#/definitions/ReleaseNotes" + }, + "VendorGuidance": { + "$ref": "#/definitions/VendorGuidance" + }, + "Version": { + "$ref": "#/definitions/Version" + } + }, + "readOnlyProperties": [ + "/properties/ImageVersionArn", + "/properties/ImageArn", + "/properties/ContainerImage" + ], + "required": [ + "ImageName", + "BaseImage" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sagemaker", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": false, + "tagUpdatable": false, + "taggable": false + }, + "typeName": "AWS::SageMaker::ImageVersion", + "writeOnlyProperties": [ + "/properties/Aliases", + "/properties/Alias" + ] +} diff --git a/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-secretsmanager-secrettargetattachment.json b/src/cfnlint/data/schemas/providers/us_west_2/aws-secretsmanager-secrettargetattachment.json similarity index 100% rename from src/cfnlint/data/schemas/providers/us_gov_west_1/aws-secretsmanager-secrettargetattachment.json rename to src/cfnlint/data/schemas/providers/us_west_2/aws-secretsmanager-secrettargetattachment.json