diff --git a/docs/rules.md b/docs/rules.md index 1cf60332f6..167e163798 100644 --- a/docs/rules.md +++ b/docs/rules.md @@ -46,7 +46,7 @@ To include these rules, use the `-e/include-experimental` argument when running ## Rules (_This documentation is generated by running `cfn-lint --update-documentation`, do not alter this manually_) -The following **208** rules are applied by this linter: +The following **209** rules are applied by this linter: | Rule ID | Title | Description | Config
(Name:Type:Default) | Source | Tags | | -------- | ----- | ----------- | ---------- | ------ | ---- | @@ -57,6 +57,7 @@ The following **208** rules are applied by this linter: | [E1002](../src/cfnlint/rules/templates/LimitSize.py) | Validate if a template size is too large | Check the size of the template is less than the upper limit | | [Source](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cloudformation-limits.html) | `limits` | | [E1003](../src/cfnlint/rules/templates/LimitDescription.py) | Validate the max size of a description | Check if the size of the template description is less than the upper limit | | [Source](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cloudformation-limits.html) | `description`,`limits` | | [E1004](../src/cfnlint/rules/templates/Description.py) | Template description can only be a string | Template description can only be a string | | [Source](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-description-structure.html) | `description` | +| [E1005](../src/cfnlint/rules/transforms/Configuration.py) | Validate Transform configuration | Validate that the transforms section of a template is properly configured | | [Source](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-section-structure.html) | `transform` | | [E1010](../src/cfnlint/rules/functions/GetAtt.py) | GetAtt validation of parameters | Validates that GetAtt parameters are to valid resources and properties of those resources | | [Source](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-getatt.html) | `functions`,`getatt` | | [E1011](../src/cfnlint/rules/functions/FindInMap.py) | FindInMap validation of configuration | Making sure the function is a list of appropriate config | | [Source](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-findinmap.html) | `functions`,`findinmap` | | [E1015](../src/cfnlint/rules/functions/GetAz.py) | GetAz validation of parameters | Making sure the GetAz function is properly configured | | [Source](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-getavailabilityzones.html) | `functions`,`getaz` | diff --git a/src/cfnlint/data/AdditionalSpecs/Policies.json b/src/cfnlint/data/AdditionalSpecs/Policies.json index 7fde60a745..ebec0678a4 100644 --- a/src/cfnlint/data/AdditionalSpecs/Policies.json +++ b/src/cfnlint/data/AdditionalSpecs/Policies.json @@ -10334,6 +10334,31 @@ "aws:TagKeys" ] }, + "AWS Systems Manager Quick Setup": { + "ARNFormat": "arn:aws:ssm-quicksetup:${Region}:${Account}:${ResourceType}/${ResourceId}", + "ARNRegex": "^arn:aws:ssm-quicksetup:.+", + "Actions": [ + "CreateConfigurationManager", + "DeleteConfigurationManager", + "GetConfigurationManager", + "GetServiceSettings", + "ListConfigurationManagers", + "ListQuickSetupTypes", + "ListTagsForResource", + "TagResource", + "UntagResource", + "UpdateConfigurationDefinition", + "UpdateConfigurationManager", + "UpdateServiceSettings" + ], + "HasResource": true, + "StringPrefix": "ssm-quicksetup", + "conditionKeys": [ + "aws:RequestTag/${TagKey}", + "aws:ResourceTag/${TagKey}", + "aws:TagKeys" + ] + }, "AWS Systems Manager for SAP": { "ARNFormat": "arn:aws:ssm-sap:${Region}:${Account}:${ApplicationType}/${ApplicationId}", "ARNRegex": "^arn:aws:ssm-sap:.+", @@ -21149,6 +21174,7 @@ "CreateFeatureGroup", "CreateFlowDefinition", "CreateHub", + "CreateHubContentReference", "CreateHumanTaskUi", "CreateHyperParameterTuningJob", "CreateImage", @@ -21208,6 +21234,7 @@ "DeleteFlowDefinition", "DeleteHub", "DeleteHubContent", + "DeleteHubContentReference", "DeleteHumanLoop", "DeleteHumanTaskUi", "DeleteHyperParameterTuningJob", @@ -21240,6 +21267,7 @@ "DeleteUserProfile", "DeleteWorkforce", "DeleteWorkteam", + "DeployHubModel", "DeregisterDevices", "DescribeAction", "DescribeAlgorithm", diff --git a/src/cfnlint/data/DownloadsMetadata/123ba181485ae293d5bd09722af0c19d5a0d14c62111ff864923fc7b7960dda6.meta.json b/src/cfnlint/data/DownloadsMetadata/123ba181485ae293d5bd09722af0c19d5a0d14c62111ff864923fc7b7960dda6.meta.json index 814e460d5c..6fbeb098b4 100644 --- a/src/cfnlint/data/DownloadsMetadata/123ba181485ae293d5bd09722af0c19d5a0d14c62111ff864923fc7b7960dda6.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/123ba181485ae293d5bd09722af0c19d5a0d14c62111ff864923fc7b7960dda6.meta.json @@ -1 +1 @@ -{"etag": "\"c7c1511ddaa1110453cdd62af08aa0f7\"", "url": "https://schema.cloudformation.eu-south-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"6a9fea827ba62a4f7c6dc950b298df53\"", "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 1c22d0ebe1..f3960fe250 100644 --- a/src/cfnlint/data/DownloadsMetadata/164e1bfc2823fbd49d8d0e7163ebf32b2b6653d7edfe98a64577daae0b481c38.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/164e1bfc2823fbd49d8d0e7163ebf32b2b6653d7edfe98a64577daae0b481c38.meta.json @@ -1 +1 @@ -{"etag": "\"c78817fe547a0ba469def30a9c57e4a9\"", "url": "https://schema.cloudformation.cn-north-1.amazonaws.com.cn/CloudformationSchema.zip"} +{"etag": "\"a1657242251b1dda77b7c970bdfcc622\"", "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 00a2902cdc..879b7a86b0 100644 --- a/src/cfnlint/data/DownloadsMetadata/18624fcc4a1c571691d10b2508e6be565e4752bbc10d9552de8df8f81348c42b.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/18624fcc4a1c571691d10b2508e6be565e4752bbc10d9552de8df8f81348c42b.meta.json @@ -1 +1 @@ -{"etag": "\"ef4c00277e37281ef341666c6e7f5c5d\"", "url": "https://schema.cloudformation.us-gov-east-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"c3b488d7d3048f378f612eb0aac364e0\"", "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 1587925556..4b6565c528 100644 --- a/src/cfnlint/data/DownloadsMetadata/227d6e59c86482f7153466759080e65963a1bf4413531ad420ff60a5a0d7965d.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/227d6e59c86482f7153466759080e65963a1bf4413531ad420ff60a5a0d7965d.meta.json @@ -1 +1 @@ -{"etag": "\"c30eda9989c0cf9450bdaf3ed3d72cc4\"", "url": "https://schema.cloudformation.me-south-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"2a1519f5276ed3247971132624a8e43d\"", "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 b94c932c2c..07050d6300 100644 --- a/src/cfnlint/data/DownloadsMetadata/23be708e675cb6098b08969e4dbbc3f54cfc32461d10e077e7e5de1fc25d8b8f.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/23be708e675cb6098b08969e4dbbc3f54cfc32461d10e077e7e5de1fc25d8b8f.meta.json @@ -1 +1 @@ -{"etag": "\"2b32f11b2138135a347f318887513edc\"", "url": "https://schema.cloudformation.us-gov-west-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"b21d60cb56c76f34ac3d3a20ec3ba88f\"", "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 9087fefe93..5293a76198 100644 --- a/src/cfnlint/data/DownloadsMetadata/26cf4521b683d3267844178a6bcd1d0ad3fe2e7838c23f6acd054944cb2b1618.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/26cf4521b683d3267844178a6bcd1d0ad3fe2e7838c23f6acd054944cb2b1618.meta.json @@ -1 +1 @@ -{"etag": "\"60df7ae098359afe600ff2af54abb162\"", "url": "https://schema.cloudformation.me-central-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"5b52e171102004663a03c52bb79ba4a9\"", "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 b456890188..a1696c771a 100644 --- a/src/cfnlint/data/DownloadsMetadata/276cecfeb1ec5e608e2aaa06925a2da57e9907e4a512c10ddae70b98b4dada43.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/276cecfeb1ec5e608e2aaa06925a2da57e9907e4a512c10ddae70b98b4dada43.meta.json @@ -1 +1 @@ -{"etag": "\"f0808dbd84980e89033e33826bb9aed9\"", "url": "https://schema.cloudformation.eu-west-2.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"4cf6cc34f004a86cd4f3f7cb29f626aa\"", "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 157ce47584..91e5df52df 100644 --- a/src/cfnlint/data/DownloadsMetadata/371e40c90b2e47c99f6e275e060ee83a3fbf0a0fb76625ba46dbe42abd34333c.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/371e40c90b2e47c99f6e275e060ee83a3fbf0a0fb76625ba46dbe42abd34333c.meta.json @@ -1 +1 @@ -{"etag": "\"8155b6803e59180d1de92540301a8c57\"", "url": "https://schema.cloudformation.cn-northwest-1.amazonaws.com.cn/CloudformationSchema.zip"} +{"etag": "\"bc2777243a907772deacca24d0f07138\"", "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 51ff34d15c..5f0b41d7ea 100644 --- a/src/cfnlint/data/DownloadsMetadata/42155835f382d82337be3d2bf832bada376aa3fe15197e3bb0e9290ff8719b4e.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/42155835f382d82337be3d2bf832bada376aa3fe15197e3bb0e9290ff8719b4e.meta.json @@ -1 +1 @@ -{"etag": "\"826b58ee41990bac542c3842863c0944\"", "url": "https://schema.cloudformation.af-south-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"21a6ed7a091901e69eaa115331835b90\"", "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 2f18e17a85..00fe0a91b3 100644 --- a/src/cfnlint/data/DownloadsMetadata/42e9df95722b6524cd001503b6750b86f60a7b5acfc406ebb10d5748cbb8ed41.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/42e9df95722b6524cd001503b6750b86f60a7b5acfc406ebb10d5748cbb8ed41.meta.json @@ -1 +1 @@ -{"etag": "\"f2350499bc7b869870e4f754e09cef6f\"", "url": "https://schema.cloudformation.us-west-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"4e5763b502f65f0f98f055dae7d4b316\"", "url": "https://schema.cloudformation.us-west-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/4fbb29b69678acdd32c5758ed43ead9bf35136af536e92a84ccbaf062c315066.meta.json b/src/cfnlint/data/DownloadsMetadata/4fbb29b69678acdd32c5758ed43ead9bf35136af536e92a84ccbaf062c315066.meta.json index 82450e00d4..4546871dcc 100644 --- a/src/cfnlint/data/DownloadsMetadata/4fbb29b69678acdd32c5758ed43ead9bf35136af536e92a84ccbaf062c315066.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/4fbb29b69678acdd32c5758ed43ead9bf35136af536e92a84ccbaf062c315066.meta.json @@ -1 +1 @@ -{"etag": "\"eb41be60767ca10a8eb8945cf910b873\"", "url": "https://schema.cloudformation.eu-central-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"dbab1819fc94635cfa2f56715d9374f5\"", "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 1c235608a5..9b98e28775 100644 --- a/src/cfnlint/data/DownloadsMetadata/56584c7d00e444de640bef01fc2c630804470222e5e4c690bacef5312891581d.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/56584c7d00e444de640bef01fc2c630804470222e5e4c690bacef5312891581d.meta.json @@ -1 +1 @@ -{"etag": "\"fb5d52cf274e6ff166927a60fa2deb71\"", "url": "https://schema.cloudformation.ap-south-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"395a9158b87cdc3728334073eda6165b\"", "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 32f1e987e4..042dfc77df 100644 --- a/src/cfnlint/data/DownloadsMetadata/583721567eccd1d5855daa623819df1a646b563d773e34b020d0ddeab2fe195b.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/583721567eccd1d5855daa623819df1a646b563d773e34b020d0ddeab2fe195b.meta.json @@ -1 +1 @@ -{"etag": "\"a4376fb45dea76e930312c6cfdbb5833\"", "url": "https://schema.cloudformation.ap-southeast-4.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"de2b215ac9b1676ec845c823305b691c\"", "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 2bdf8cc879..50c3731337 100644 --- a/src/cfnlint/data/DownloadsMetadata/6316ae24f21cb620947aa250bebbee69548d44cc32e246ec9d7742088a2c17f8.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/6316ae24f21cb620947aa250bebbee69548d44cc32e246ec9d7742088a2c17f8.meta.json @@ -1 +1 @@ -{"etag": "\"da3fa275558167d399eef746769ceee0\"", "url": "https://schema.cloudformation.us-east-2.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"7fd0faefbfc8e4a02af5ff51fed6fb76\"", "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 62a34232aa..e7e666df6a 100644 --- a/src/cfnlint/data/DownloadsMetadata/81e1cc73ff2daf7d1e1eca393c2d1fdd98ac34d4109512e0e0947ef752dcb9c9.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/81e1cc73ff2daf7d1e1eca393c2d1fdd98ac34d4109512e0e0947ef752dcb9c9.meta.json @@ -1 +1 @@ -{"etag": "\"9586abf75e0dfef22a1c9ca52a3cc08f\"", "url": "https://schema.cloudformation.ap-southeast-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"202daa156b078da01e97032b2aba3449\"", "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 a7fe9a1c83..7310b68ac4 100644 --- a/src/cfnlint/data/DownloadsMetadata/8adeabf0a09b37a8ed924aea799005947e4a4542365d35fd75466abcf306eeca.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/8adeabf0a09b37a8ed924aea799005947e4a4542365d35fd75466abcf306eeca.meta.json @@ -1 +1 @@ -{"etag": "\"46f91f46ebddb634050110be9cbb222c\"", "url": "https://schema.cloudformation.ap-northeast-2.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"98719bf3496f55719534c6360f8346a7\"", "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 56e32f045c..d7ad437767 100644 --- a/src/cfnlint/data/DownloadsMetadata/8b8b0cee4df1ef0947a8289e8ec0c67869b7533eabab32ecfc0a00cb19e55a5f.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/8b8b0cee4df1ef0947a8289e8ec0c67869b7533eabab32ecfc0a00cb19e55a5f.meta.json @@ -1 +1 @@ -{"etag": "\"a5b13778ecbc2de50e40236fd579ed78\"", "url": "https://schema.cloudformation.ap-southeast-3.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"61b296ed6543d05a85d0ab5611cc4d3a\"", "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 baa67ccaba..5ad59f0e73 100644 --- a/src/cfnlint/data/DownloadsMetadata/b1f069477cd577cde04dfe1b323c0bb0e783fe32b6bb6b13774c32fcca1d303a.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/b1f069477cd577cde04dfe1b323c0bb0e783fe32b6bb6b13774c32fcca1d303a.meta.json @@ -1 +1 @@ -{"etag": "\"1ca658da007379b745980767bb88a37f\"", "url": "https://schema.cloudformation.ap-east-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"7187774c04713c1502263442a2d6ab3f\"", "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 e821186001..522d873be5 100644 --- a/src/cfnlint/data/DownloadsMetadata/c7ada205073390b33b7593ef8f304b9705f2567698dfdfa979bf0ccdb68cb856.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/c7ada205073390b33b7593ef8f304b9705f2567698dfdfa979bf0ccdb68cb856.meta.json @@ -1 +1 @@ -{"etag": "\"ba1523efbb30574efc803cffa30a4908\"", "url": "https://schema.cloudformation.sa-east-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"54b50841e5d209c975128bb77bb3db22\"", "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 06b8595f6e..a1e0e0d391 100644 --- a/src/cfnlint/data/DownloadsMetadata/d24ce9a45a014b1ff04d479422ea956e92030ae5c03d7451980a15735e557edb.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/d24ce9a45a014b1ff04d479422ea956e92030ae5c03d7451980a15735e557edb.meta.json @@ -1 +1 @@ -{"etag": "\"ecb26ad6b1fd0a7337fb098eaa9ace5f\"", "url": "https://schema.cloudformation.ap-southeast-2.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"64752c5c65df8bb978c4f0132b533632\"", "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 b4ac29239d..f0eef2937e 100644 --- a/src/cfnlint/data/DownloadsMetadata/d85e2e061cacfcffe4902adb1074a04e6bb7f975b606f8db57532faddfcdd8c8.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/d85e2e061cacfcffe4902adb1074a04e6bb7f975b606f8db57532faddfcdd8c8.meta.json @@ -1 +1 @@ -{"etag": "\"66e9f6be21671fcfcdda7abb82bf8ad5\"", "url": "https://schema.cloudformation.ca-west-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"25ef4c976030cb9195997ecec74c986f\"", "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 737bd3fb90..59314be054 100644 --- a/src/cfnlint/data/DownloadsMetadata/d8e41d35f4f8922b66525dea2c66d72a73ff097c685cda0a63c08a6416dc58ed.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/d8e41d35f4f8922b66525dea2c66d72a73ff097c685cda0a63c08a6416dc58ed.meta.json @@ -1 +1 @@ -{"etag": "\"019afd9079bdc692c7949a0f3e3a6df7\"", "url": "https://schema.cloudformation.eu-central-2.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"2c38db24fb827eafdef16e5f48216d9e\"", "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 27c0c033c0..c489d61959 100644 --- a/src/cfnlint/data/DownloadsMetadata/dd98171253ebc36f5b78e247f3132b5f25c8d66a1f84939600616bab42579541.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/dd98171253ebc36f5b78e247f3132b5f25c8d66a1f84939600616bab42579541.meta.json @@ -1 +1 @@ -{"etag": "\"402075d616c0fe8026e130e177984ccb\"", "url": "https://schema.cloudformation.eu-north-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"56351bb205706c6ee77bb039f82b891b\"", "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 b27790042f..4f03c331a4 100644 --- a/src/cfnlint/data/DownloadsMetadata/df4945435575c690a2651bb31e7a9b48972142778e1ff452383ede2ad4bac3d7.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/df4945435575c690a2651bb31e7a9b48972142778e1ff452383ede2ad4bac3d7.meta.json @@ -1 +1 @@ -{"etag": "\"085c828653a26a4b9cfd08b50bcaad21\"", "url": "https://schema.cloudformation.eu-south-2.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"3406d429ce93c22192066f289023d542\"", "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 be1a7e819d..f6be6dce05 100644 --- a/src/cfnlint/data/DownloadsMetadata/e5301e07e25fa2c35d2c7e1f9dcf720826b315ef6f38515840537c02de23abe2.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/e5301e07e25fa2c35d2c7e1f9dcf720826b315ef6f38515840537c02de23abe2.meta.json @@ -1 +1 @@ -{"etag": "\"42596e2dfac79720cec44f4c2ec0bd60\"", "url": "https://schema.cloudformation.ca-central-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"0dd1ed3ea43b33340d7d538500073843\"", "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 676c49c101..d83a5c6a91 100644 --- a/src/cfnlint/data/DownloadsMetadata/e8b3dacc1675b478e8c7392b51f41467cf908a34e6b4c3fb3e97e2b584f651ca.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/e8b3dacc1675b478e8c7392b51f41467cf908a34e6b4c3fb3e97e2b584f651ca.meta.json @@ -1 +1 @@ -{"etag": "\"663025669e328bfed742f374f2081625\"", "url": "https://schema.cloudformation.eu-west-3.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"3cc74cb816f819c2ba7c44f4ae87936b\"", "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 5756343a40..1dc572409e 100644 --- a/src/cfnlint/data/DownloadsMetadata/ea0f7b8f144feb225afe73a24dfdf993318c41c71c21b0a17d4f68d82c5aee21.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/ea0f7b8f144feb225afe73a24dfdf993318c41c71c21b0a17d4f68d82c5aee21.meta.json @@ -1 +1 @@ -{"etag": "\"8bb7b4bf18049be81a228f2734933bfc\"", "url": "https://schema.cloudformation.ap-northeast-3.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"38a6ce3e846c9962a498a2ef95b81dc5\"", "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 ba732424e2..465287b1ce 100644 --- a/src/cfnlint/data/DownloadsMetadata/f1896c9151984eec294af1eddf64260f6cd7e4ced378cacdb93f76ed227b5c5d.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/f1896c9151984eec294af1eddf64260f6cd7e4ced378cacdb93f76ed227b5c5d.meta.json @@ -1 +1 @@ -{"etag": "\"e7b3cb584147020b503d6ff9f5bcaaa7\"", "url": "https://schema.cloudformation.us-west-2.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"8c920f6472b95403f79cebbe365e0a9f\"", "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 e6abe10e5c..c70bb03e66 100644 --- a/src/cfnlint/data/DownloadsMetadata/f49718b210ea89ff182ae51cb7004366b9e2e4d5e38136a5be83b6a55e7a82a1.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/f49718b210ea89ff182ae51cb7004366b9e2e4d5e38136a5be83b6a55e7a82a1.meta.json @@ -1 +1 @@ -{"etag": "\"64f77c5b976afa84055d94efca73ee03\"", "url": "https://schema.cloudformation.ap-south-2.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"e3846207dba9497182ae4faaad55f9e7\"", "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 33a2ce71ff..5e100b0f77 100644 --- a/src/cfnlint/data/DownloadsMetadata/f54eee6f8ad9619f41835b700369cdbb41c64a9c91b2fa5b4928c0d9b2f780b0.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/f54eee6f8ad9619f41835b700369cdbb41c64a9c91b2fa5b4928c0d9b2f780b0.meta.json @@ -1 +1 @@ -{"etag": "\"dd2d89bf96fe328d4a1cad4f9ed91c5c\"", "url": "https://schema.cloudformation.us-east-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"9090d15775b8e346663a0c65d21deeab\"", "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 0be592d673..70c850a335 100644 --- a/src/cfnlint/data/DownloadsMetadata/f6f35a459759d6c132fa2fe798cefbd5b2d398fe33547eed780b9b70f10eb4a2.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/f6f35a459759d6c132fa2fe798cefbd5b2d398fe33547eed780b9b70f10eb4a2.meta.json @@ -1 +1 @@ -{"etag": "\"a8394179614fa45cc2605adea1cd9498\"", "url": "https://schema.cloudformation.il-central-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"91a94fe4c235b3ec62196d1fdf65de67\"", "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 54f21424fb..8c3c68a08b 100644 --- a/src/cfnlint/data/DownloadsMetadata/fa657351d8e89c40ba6b82c4b1f5e1b5e50a1638ffe0a5dba0d8805c190a05f8.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/fa657351d8e89c40ba6b82c4b1f5e1b5e50a1638ffe0a5dba0d8805c190a05f8.meta.json @@ -1 +1 @@ -{"etag": "\"adae0afd2675a6e80966f1abc9d5d8aa\"", "url": "https://schema.cloudformation.eu-west-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"6bb9fe78dc6b12012e56d835bb433fcf\"", "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 53d4cfe7ad..6d5c21ff48 100644 --- a/src/cfnlint/data/DownloadsMetadata/ff02b7d808c1c00053f09aa43a50addf3b69878d351cffd417dc9a457df808af.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/ff02b7d808c1c00053f09aa43a50addf3b69878d351cffd417dc9a457df808af.meta.json @@ -1 +1 @@ -{"etag": "\"8a183b155d6e880993ea7add527dc153\"", "url": "https://schema.cloudformation.ap-northeast-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"1e84d5bea7764517ccbc12987e5cab4e\"", "url": "https://schema.cloudformation.ap-northeast-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/schemas/extensions/aws_rds_dbcluster/engine_version.json b/src/cfnlint/data/schemas/extensions/aws_rds_dbcluster/engine_version.json index 0a7ca921e9..3d01e43500 100644 --- a/src/cfnlint/data/schemas/extensions/aws_rds_dbcluster/engine_version.json +++ b/src/cfnlint/data/schemas/extensions/aws_rds_dbcluster/engine_version.json @@ -58,6 +58,7 @@ "5.7.mysql_aurora.2.12.0", "5.7.mysql_aurora.2.12.1", "5.7.mysql_aurora.2.12.2", + "5.7.mysql_aurora.2.12.3", "8.0.mysql_aurora.3.03.0", "8.0.mysql_aurora.3.03.1", "8.0.mysql_aurora.3.03.2", diff --git a/src/cfnlint/data/schemas/extensions/aws_rds_dbinstance/engine_version.json b/src/cfnlint/data/schemas/extensions/aws_rds_dbinstance/engine_version.json index 192ddc3977..f821fb6564 100644 --- a/src/cfnlint/data/schemas/extensions/aws_rds_dbinstance/engine_version.json +++ b/src/cfnlint/data/schemas/extensions/aws_rds_dbinstance/engine_version.json @@ -74,6 +74,7 @@ "5.7.mysql_aurora.2.12.0", "5.7.mysql_aurora.2.12.1", "5.7.mysql_aurora.2.12.2", + "5.7.mysql_aurora.2.12.3", "8.0.mysql_aurora.3.03.0", "8.0.mysql_aurora.3.03.1", "8.0.mysql_aurora.3.03.2", @@ -282,7 +283,8 @@ "11.5.9.0.sb00039210.r1", "11.5.9.0.sb00039340.r1", "11.5.9.0.sb00040222.r1", - "11.5.9.0.sb00040226.r1" + "11.5.9.0.sb00040226.r1", + "11.5.9.0.sb00042449.r1" ] } } @@ -314,7 +316,8 @@ "11.5.9.0.sb00039210.r1", "11.5.9.0.sb00039340.r1", "11.5.9.0.sb00040222.r1", - "11.5.9.0.sb00040226.r1" + "11.5.9.0.sb00040226.r1", + "11.5.9.0.sb00042449.r1" ] } } 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 66d435b09c..ee96112b46 100644 --- a/src/cfnlint/data/schemas/providers/af_south_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/af_south_1/__init__.py @@ -504,6 +504,7 @@ "AWS::Lambda::Permission", "AWS::Lambda::Url", "AWS::Lambda::Version", + "AWS::LaunchWizard::Deployment", "AWS::Lex::Bot", "AWS::Lex::BotAlias", "AWS::Lex::BotVersion", @@ -1279,11 +1280,15 @@ "aws-lambda-permission.json", "aws-lambda-url.json", "aws-lambda-version.json", + "aws-launchwizard-deployment.json", "aws-lex-bot.json", "aws-lex-botalias.json", "aws-lex-botversion.json", "aws-lex-resourcepolicy.json", "aws-logs-accountpolicy.json", + "aws-logs-delivery.json", + "aws-logs-deliverydestination.json", + "aws-logs-deliverysource.json", "aws-logs-destination.json", "aws-logs-loganomalydetector.json", "aws-logs-loggroup.json", @@ -1317,6 +1322,7 @@ "aws-msk-configuration.json", "aws-msk-vpcconnection.json", "aws-mwaa-environment.json", + "aws-neptune-dbcluster.json", "aws-neptune-dbsubnetgroup.json", "aws-neptune-eventsubscription.json", "aws-networkfirewall-firewall.json", @@ -1366,6 +1372,7 @@ "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", diff --git a/src/cfnlint/data/schemas/providers/af_south_1/aws-logs-delivery.json b/src/cfnlint/data/schemas/providers/af_south_1/aws-logs-delivery.json deleted file mode 100644 index 9d504c7dc9..0000000000 --- a/src/cfnlint/data/schemas/providers/af_south_1/aws-logs-delivery.json +++ /dev/null @@ -1,130 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/DeliverySourceName", - "/properties/DeliveryDestinationArn" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:CreateDelivery", - "logs:GetDelivery", - "logs:DescribeDeliveries", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:GetDeliverySource", - "logs:GetDeliveryDestination" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDelivery", - "logs:ListTagsForResource", - "logs:UntagResource" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliveries", - "logs:ListTagsForResource" - ] - }, - "read": { - "permissions": [ - "logs:GetDelivery", - "logs:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "logs:GetDelivery", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource" - ] - } - }, - "primaryIdentifier": [ - "/properties/DeliveryId" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationArn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationType": { - "maxLength": 12, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DeliveryId": { - "maxLength": 64, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DeliverySourceName": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/DeliveryId", - "/properties/Arn", - "/properties/DeliveryDestinationType" - ], - "required": [ - "DeliverySourceName", - "DeliveryDestinationArn" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::Delivery" -} diff --git a/src/cfnlint/data/schemas/providers/af_south_1/aws-logs-deliverydestination.json b/src/cfnlint/data/schemas/providers/af_south_1/aws-logs-deliverydestination.json deleted file mode 100644 index 41e9e764ad..0000000000 --- a/src/cfnlint/data/schemas/providers/af_south_1/aws-logs-deliverydestination.json +++ /dev/null @@ -1,152 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name", - "/properties/DestinationResourceArn" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "DestinationPolicy": { - "additionalProperties": false, - "properties": { - "DeliveryDestinationName": { - "maxLength": 60, - "minLength": 1, - "type": "string" - }, - "DeliveryDestinationPolicy": { - "maxLength": 51200, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "DeliveryDestinationName", - "DeliveryDestinationPolicy" - ], - "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" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:PutDeliveryDestination", - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource", - "logs:PutDeliveryDestinationPolicy", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDeliveryDestination", - "logs:DeleteDeliveryDestinationPolicy" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliveryDestinations", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "read": { - "permissions": [ - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "update": { - "permissions": [ - "logs:PutDeliveryDestination", - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource", - "logs:DeleteDeliveryDestinationPolicy", - "logs:PutDeliveryDestinationPolicy", - "logs:GetDeliveryDestinationPolicy" - ] - } - }, - "primaryIdentifier": [ - "/properties/Name" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationPolicy": { - "items": { - "$ref": "#/definitions/DestinationPolicy" - }, - "type": "object" - }, - "DeliveryDestinationType": { - "maxLength": 12, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DestinationResourceArn": { - "$ref": "#/definitions/Arn" - }, - "Name": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/Arn", - "/properties/DeliveryDestinationType" - ], - "required": [ - "Name" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::DeliveryDestination" -} diff --git a/src/cfnlint/data/schemas/providers/af_south_1/aws-logs-deliverysource.json b/src/cfnlint/data/schemas/providers/af_south_1/aws-logs-deliverysource.json deleted file mode 100644 index 30c5c13d9e..0000000000 --- a/src/cfnlint/data/schemas/providers/af_south_1/aws-logs-deliverysource.json +++ /dev/null @@ -1,138 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:PutDeliverySource", - "logs:GetDeliverySource", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:AllowVendedLogDeliveryForResource", - "codewhisperer:AllowVendedLogDeliveryForResource", - "autoloop:AllowVendedLogDeliveryForResource", - "workmail:AllowVendedLogDeliveryForResource" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDeliverySource" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliverySources" - ] - }, - "read": { - "permissions": [ - "logs:GetDeliverySource", - "logs:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "logs:PutDeliverySource", - "logs:GetDeliverySource", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource" - ] - } - }, - "primaryIdentifier": [ - "/properties/Name" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "LogType": { - "maxLength": 255, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Name": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "ResourceArn": { - "$ref": "#/definitions/Arn" - }, - "ResourceArns": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Arn" - }, - "type": "array", - "uniqueItems": true - }, - "Service": { - "maxLength": 255, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/Service", - "/properties/ResourceArns", - "/properties/Arn" - ], - "required": [ - "Name" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::DeliverySource", - "writeOnlyProperties": [ - "/properties/ResourceArn" - ] -} diff --git a/src/cfnlint/data/schemas/providers/af_south_1/aws-neptune-dbcluster.json b/src/cfnlint/data/schemas/providers/af_south_1/aws-neptune-dbcluster.json deleted file mode 100644 index d682d355d7..0000000000 --- a/src/cfnlint/data/schemas/providers/af_south_1/aws-neptune-dbcluster.json +++ /dev/null @@ -1,292 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/AvailabilityZones", - "/properties/DBClusterIdentifier", - "/properties/DBSubnetGroupName", - "/properties/KmsKeyId", - "/properties/RestoreToTime", - "/properties/RestoreType", - "/properties/SnapshotIdentifier", - "/properties/SourceDBClusterIdentifier", - "/properties/StorageEncrypted", - "/properties/UseLatestRestorableTime" - ], - "definitions": { - "DBClusterRole": { - "additionalProperties": false, - "properties": { - "FeatureName": { - "type": "string" - }, - "RoleArn": { - "type": "string" - } - }, - "required": [ - "RoleArn" - ], - "type": "object" - }, - "ServerlessScalingConfiguration": { - "additionalProperties": false, - "properties": { - "MaxCapacity": { - "maximum": 128, - "minimum": 2.5, - "type": "number" - }, - "MinCapacity": { - "maximum": 128, - "minimum": 1, - "type": "number" - } - }, - "required": [ - "MinCapacity", - "MaxCapacity" - ], - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:CreateDBCluster", - "rds:CreateDBInstance", - "rds:DescribeDBClusters", - "rds:ListTagsForResource", - "rds:ModifyDBCluster", - "rds:RestoreDBClusterFromSnapshot", - "rds:RestoreDBClusterToPointInTime", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "rds:DeleteDBCluster", - "rds:DeleteDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeGlobalClusters", - "rds:ListTagsForResource", - "rds:RemoveFromGlobalCluster", - "rds:CreateDBClusterSnapshot", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "list": { - "permissions": [ - "rds:DescribeDBClusters", - "rds:ListTagsForResource", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "read": { - "permissions": [ - "rds:DescribeDBClusters", - "rds:ListTagsForResource", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "update": { - "permissions": [ - "ec2:DescribeSecurityGroups", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:DescribeDBClusters", - "rds:DescribeDBInstances", - "rds:DescribeDBSubnetGroups", - "rds:DescribeGlobalClusters", - "rds:ListTagsForResource", - "rds:ModifyDBCluster", - "rds:ModifyDBInstance", - "rds:RemoveFromGlobalCluster", - "rds:RemoveRoleFromDBCluster", - "rds:RemoveTagsFromResource", - "kms:*" - ], - "timeoutInMinutes": 2160 - } - }, - "primaryIdentifier": [ - "/properties/DBClusterIdentifier" - ], - "properties": { - "AssociatedRoles": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/DBClusterRole" - }, - "type": "array", - "uniqueItems": true - }, - "AvailabilityZones": { - "insertionOrder": true, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "BackupRetentionPeriod": { - "default": 1, - "minimum": 1, - "type": "integer" - }, - "ClusterResourceId": { - "type": "string" - }, - "CopyTagsToSnapshot": { - "type": "boolean" - }, - "DBClusterIdentifier": { - "maxLength": 63, - "minLength": 1, - "pattern": "^[a-zA-Z]{1}(?:-?[a-zA-Z0-9]){0,62}$", - "type": "string" - }, - "DBClusterParameterGroupName": { - "type": "string" - }, - "DBInstanceParameterGroupName": { - "type": "string" - }, - "DBPort": { - "type": "integer" - }, - "DBSubnetGroupName": { - "type": "string" - }, - "DeletionProtection": { - "type": "boolean" - }, - "EnableCloudwatchLogsExports": { - "insertionOrder": true, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "Endpoint": { - "type": "string" - }, - "EngineVersion": { - "type": "string" - }, - "IamAuthEnabled": { - "type": "boolean" - }, - "KmsKeyId": { - "type": "string" - }, - "Port": { - "type": "string" - }, - "PreferredBackupWindow": { - "type": "string" - }, - "PreferredMaintenanceWindow": { - "type": "string" - }, - "ReadEndpoint": { - "type": "string" - }, - "RestoreToTime": { - "type": "string" - }, - "RestoreType": { - "default": "full-copy", - "type": "string" - }, - "ServerlessScalingConfiguration": { - "$ref": "#/definitions/ServerlessScalingConfiguration" - }, - "SnapshotIdentifier": { - "type": "string" - }, - "SourceDBClusterIdentifier": { - "type": "string" - }, - "StorageEncrypted": { - "type": "boolean" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 50, - "type": "array", - "uniqueItems": true - }, - "UseLatestRestorableTime": { - "type": "boolean" - }, - "VpcSecurityGroupIds": { - "insertionOrder": true, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - } - }, - "propertyTransform": { - "/properties/DBClusterIdentifier": "$lowercase(DBClusterIdentifier)", - "/properties/DBClusterParameterGroupName": "$lowercase(DBClusterParameterGroupName)", - "/properties/DBSubnetGroupName": "$lowercase(DBSubnetGroupName)", - "/properties/SnapshotIdentifier": "$lowercase(SnapshotIdentifier)", - "/properties/SourceDBClusterIdentifier": "$lowercase(SourceDBClusterIdentifier)" - }, - "readOnlyProperties": [ - "/properties/Endpoint", - "/properties/ClusterResourceId", - "/properties/Port", - "/properties/ReadEndpoint" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-neptune", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Neptune::DBCluster", - "writeOnlyProperties": [ - "/properties/DBInstanceParameterGroupName", - "/properties/RestoreToTime", - "/properties/RestoreType", - "/properties/SnapshotIdentifier", - "/properties/SourceDBClusterIdentifier", - "/properties/UseLatestRestorableTime" - ] -} diff --git a/src/cfnlint/data/schemas/providers/af_south_1/aws-rds-dbcluster.json b/src/cfnlint/data/schemas/providers/af_south_1/aws-rds-dbcluster.json deleted file mode 100644 index fc3519fd59..0000000000 --- a/src/cfnlint/data/schemas/providers/af_south_1/aws-rds-dbcluster.json +++ /dev/null @@ -1,459 +0,0 @@ -{ - "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" - } - }, - "handlers": { - "create": { - "permissions": [ - "iam:CreateServiceLinkedRole", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:CreateDBCluster", - "rds:CreateDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeDBClusterSnapshots", - "rds:DescribeDBSnapshots", - "rds:DescribeEvents", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:RestoreDBClusterFromSnapshot", - "rds:RestoreDBClusterToPointInTime", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "rds:CreateDBClusterSnapshot", - "rds:DeleteDBCluster", - "rds:DeleteDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeGlobalClusters", - "rds:RemoveFromGlobalCluster" - ] - }, - "list": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "read": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "update": { - "permissions": [ - "ec2:DescribeSecurityGroups", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:DescribeDBClusters", - "rds:DescribeDBSubnetGroups", - "rds:DescribeEvents", - "rds:DescribeGlobalClusters", - "rds:DisableHttpEndpoint", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:ModifyDBInstance", - "rds:RemoveFromGlobalCluster", - "rds:RemoveRoleFromDBCluster", - "rds:RemoveTagsFromResource", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - } - }, - "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": { - "default": 0, - "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": { - "default": "default.aurora5.6", - "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": { - "default": 0, - "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": { - "default": "full-copy", - "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)) = 'aurora-postgresql' ? 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", - "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_east_1/__init__.py b/src/cfnlint/data/schemas/providers/ap_east_1/__init__.py index f077ae6928..7041ba003a 100644 --- a/src/cfnlint/data/schemas/providers/ap_east_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_east_1/__init__.py @@ -161,6 +161,7 @@ "AWS::CodePipeline::Webhook", "AWS::CodeStarNotifications::NotificationRule", "AWS::Cognito::IdentityPool", + "AWS::Cognito::IdentityPoolPrincipalTag", "AWS::Cognito::IdentityPoolRoleAttachment", "AWS::Cognito::UserPool", "AWS::Cognito::UserPoolClient", @@ -226,6 +227,7 @@ "AWS::DocDB::DBInstance", "AWS::DocDB::DBSubnetGroup", "AWS::DocDB::EventSubscription", + "AWS::DocDBElastic::Cluster", "AWS::DynamoDB::GlobalTable", "AWS::DynamoDB::Table", "AWS::EC2::CapacityReservation", @@ -511,6 +513,7 @@ "AWS::Lambda::Permission", "AWS::Lambda::Url", "AWS::Lambda::Version", + "AWS::LaunchWizard::Deployment", "AWS::Logs::AccountPolicy", "AWS::Logs::Delivery", "AWS::Logs::DeliveryDestination", @@ -943,9 +946,11 @@ "aws-codedeploy-deploymentconfig.json", "aws-codedeploy-deploymentgroup.json", "aws-codepipeline-customactiontype.json", - "aws-codepipeline-pipeline.json", "aws-codepipeline-webhook.json", "aws-codestarnotifications-notificationrule.json", + "aws-cognito-identitypool.json", + "aws-cognito-identitypoolprincipaltag.json", + "aws-cognito-identitypoolroleattachment.json", "aws-cognito-userpoolidentityprovider.json", "aws-config-aggregationauthorization.json", "aws-config-configrule.json", @@ -998,6 +1003,7 @@ "aws-docdb-dbinstance.json", "aws-docdb-dbsubnetgroup.json", "aws-docdb-eventsubscription.json", + "aws-docdbelastic-cluster.json", "aws-dynamodb-globaltable.json", "aws-dynamodb-table.json", "aws-ec2-capacityreservation.json", @@ -1117,6 +1123,7 @@ "aws-elasticbeanstalk-application.json", "aws-elasticbeanstalk-applicationversion.json", "aws-elasticbeanstalk-configurationtemplate.json", + "aws-elasticbeanstalk-environment.json", "aws-elasticloadbalancing-loadbalancer.json", "aws-elasticloadbalancingv2-listener.json", "aws-elasticloadbalancingv2-listenercertificate.json", @@ -1266,6 +1273,7 @@ "aws-lambda-permission.json", "aws-lambda-url.json", "aws-lambda-version.json", + "aws-launchwizard-deployment.json", "aws-logs-accountpolicy.json", "aws-logs-delivery.json", "aws-logs-deliverydestination.json", @@ -1340,6 +1348,7 @@ "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", diff --git a/src/cfnlint/data/schemas/providers/us_west_2/aws-codepipeline-pipeline.json b/src/cfnlint/data/schemas/providers/ap_east_1/aws-codepipeline-pipeline.json similarity index 81% rename from src/cfnlint/data/schemas/providers/us_west_2/aws-codepipeline-pipeline.json rename to src/cfnlint/data/schemas/providers/ap_east_1/aws-codepipeline-pipeline.json index 49ce5909b4..925fbfe118 100644 --- a/src/cfnlint/data/schemas/providers/us_west_2/aws-codepipeline-pipeline.json +++ b/src/cfnlint/data/schemas/providers/ap_east_1/aws-codepipeline-pipeline.json @@ -41,7 +41,6 @@ "type": "string" }, "RoleArn": { - "pattern": "arn:aws(-[\\w]+)*:iam::[0-9]{12}:role/.*", "type": "string" }, "RunOrder": { @@ -171,12 +170,12 @@ "additionalProperties": false, "properties": { "Result": { - "enum": [ - "ROLLBACK" - ], "type": "string" } }, + "required": [ + "Result" + ], "type": "object" }, "GitBranchFilterCriteria": { @@ -330,9 +329,6 @@ "$ref": "#/definitions/GitConfiguration" }, "ProviderType": { - "enum": [ - "CodeStarSourceConnection" - ], "type": "string" } }, @@ -362,8 +358,7 @@ "type": "string" }, "OnFailure": { - "$ref": "#/definitions/FailureConditions", - "type": "object" + "$ref": "#/definitions/FailureConditions" } }, "required": [ @@ -423,55 +418,8 @@ "type": "object" } }, - "handlers": { - "create": { - "permissions": [ - "iam:GetRole", - "iam:PassRole", - "codepipeline:GetPipeline", - "codepipeline:CreatePipeline", - "codepipeline:DisableStageTransition", - "codepipeline:GetPipelineState", - "codepipeline:TagResource", - "codestar-connections:PassConnection" - ] - }, - "delete": { - "permissions": [ - "codepipeline:GetPipeline", - "codepipeline:DeletePipeline" - ] - }, - "list": { - "permissions": [ - "codepipeline:ListPipelines" - ] - }, - "read": { - "permissions": [ - "codepipeline:GetPipeline", - "codepipeline:ListTagsForResource", - "codepipeline:GetPipelineState" - ] - }, - "update": { - "permissions": [ - "iam:GetRole", - "iam:PassRole", - "codepipeline:EnableStageTransition", - "codepipeline:StartPipelineExecution", - "codepipeline:GetPipeline", - "codepipeline:UpdatePipeline", - "codepipeline:GetPipelineState", - "codepipeline:DisableStageTransition", - "codepipeline:TagResource", - "codepipeline:UntagResource", - "codestar-connections:PassConnection" - ] - } - }, "primaryIdentifier": [ - "/properties/Name" + "/properties/Id" ], "properties": { "ArtifactStore": { @@ -492,29 +440,21 @@ "uniqueItems": true }, "ExecutionMode": { - "default": "SUPERSEDED", - "enum": [ - "QUEUED", - "SUPERSEDED", - "PARALLEL" - ], + "type": "string" + }, + "Id": { "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": { @@ -550,6 +490,7 @@ } }, "readOnlyProperties": [ + "/properties/Id", "/properties/Version" ], "required": [ @@ -560,16 +501,5 @@ "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" - ] + "typeName": "AWS::CodePipeline::Pipeline" } diff --git a/src/cfnlint/data/schemas/providers/ap_east_1/aws-cognito-identitypool.json b/src/cfnlint/data/schemas/providers/ap_east_1/aws-cognito-identitypool.json deleted file mode 100644 index b511032158..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_east_1/aws-cognito-identitypool.json +++ /dev/null @@ -1,123 +0,0 @@ -{ - "additionalProperties": false, - "definitions": { - "CognitoIdentityProvider": { - "additionalProperties": false, - "properties": { - "ClientId": { - "type": "string" - }, - "ProviderName": { - "type": "string" - }, - "ServerSideTokenCheck": { - "type": "boolean" - } - }, - "type": "object" - }, - "CognitoStreams": { - "additionalProperties": false, - "properties": { - "RoleArn": { - "type": "string" - }, - "StreamName": { - "type": "string" - }, - "StreamingStatus": { - "type": "string" - } - }, - "type": "object" - }, - "PushSync": { - "additionalProperties": false, - "properties": { - "ApplicationArns": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "RoleArn": { - "type": "string" - } - }, - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "AllowClassicFlow": { - "type": "boolean" - }, - "AllowUnauthenticatedIdentities": { - "type": "boolean" - }, - "CognitoEvents": { - "format": "json", - "type": [ - "object", - "string" - ] - }, - "CognitoIdentityProviders": { - "items": { - "$ref": "#/definitions/CognitoIdentityProvider" - }, - "type": "array", - "uniqueItems": false - }, - "CognitoStreams": { - "$ref": "#/definitions/CognitoStreams" - }, - "DeveloperProviderName": { - "type": "string" - }, - "Id": { - "type": "string" - }, - "IdentityPoolName": { - "type": "string" - }, - "Name": { - "type": "string" - }, - "OpenIdConnectProviderARNs": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "PushSync": { - "$ref": "#/definitions/PushSync" - }, - "SamlProviderARNs": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "SupportedLoginProviders": { - "format": "json", - "type": [ - "object", - "string" - ] - } - }, - "readOnlyProperties": [ - "/properties/Id", - "/properties/Name" - ], - "required": [ - "AllowUnauthenticatedIdentities" - ], - "typeName": "AWS::Cognito::IdentityPool" -} diff --git a/src/cfnlint/data/schemas/providers/ap_east_1/aws-cognito-identitypoolroleattachment.json b/src/cfnlint/data/schemas/providers/ap_east_1/aws-cognito-identitypoolroleattachment.json deleted file mode 100644 index ca2e8a5a88..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_east_1/aws-cognito-identitypoolroleattachment.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/IdentityPoolId" - ], - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "Id": { - "type": "string" - }, - "IdentityPoolId": { - "type": "string" - }, - "RoleMappings": { - "format": "json", - "type": [ - "object", - "string" - ] - }, - "Roles": { - "format": "json", - "type": [ - "object", - "string" - ] - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "IdentityPoolId" - ], - "typeName": "AWS::Cognito::IdentityPoolRoleAttachment" -} diff --git a/src/cfnlint/data/schemas/providers/ap_east_1/aws-elasticbeanstalk-environment.json b/src/cfnlint/data/schemas/providers/ap_east_1/aws-elasticbeanstalk-environment.json deleted file mode 100644 index 2fa4fe9b33..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_east_1/aws-elasticbeanstalk-environment.json +++ /dev/null @@ -1,183 +0,0 @@ -{ - "$schema": "https://raw.githubusercontent.com/aws-cloudformation/cloudformation-resource-schema/master/src/main/resources/schema/provider.definition.schema.v1.json", - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/CNAMEPrefix", - "/properties/EnvironmentName", - "/properties/ApplicationName", - "/properties/SolutionStackName", - "/properties/Tier/Name", - "/properties/Tier/Type" - ], - "definitions": { - "OptionSetting": { - "additionalProperties": false, - "properties": { - "Namespace": { - "type": "string" - }, - "OptionName": { - "type": "string" - }, - "ResourceName": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Namespace", - "OptionName" - ], - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - }, - "Tier": { - "additionalProperties": false, - "properties": { - "Name": { - "type": "string" - }, - "Type": { - "type": "string" - }, - "Version": { - "type": "string" - } - }, - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "elasticbeanstalk:DescribeEnvironments", - "elasticbeanstalk:CreateEnvironment", - "iam:PassRole" - ], - "timeoutInMinutes": 120 - }, - "delete": { - "permissions": [ - "elasticbeanstalk:DescribeEnvironments", - "elasticbeanstalk:TerminateEnvironment" - ], - "timeoutInMinutes": 210 - }, - "list": { - "permissions": [ - "elasticbeanstalk:DescribeEnvironments" - ] - }, - "read": { - "permissions": [ - "elasticbeanstalk:DescribeEnvironments", - "elasticbeanstalk:DescribeConfigurationSettings", - "elasticbeanstalk:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "elasticbeanstalk:DescribeEnvironments", - "elasticbeanstalk:UpdateEnvironment", - "elasticbeanstalk:UpdateTagsForResource", - "elasticbeanstalk:AssociateEnvironmentOperationsRole", - "elasticbeanstalk:DisassociateEnvironmentOperationsRole", - "iam:PassRole" - ], - "timeoutInMinutes": 300 - } - }, - "primaryIdentifier": [ - "/properties/EnvironmentName" - ], - "properties": { - "ApplicationName": { - "type": "string" - }, - "CNAMEPrefix": { - "type": "string" - }, - "Description": { - "type": "string" - }, - "EndpointURL": { - "type": "string" - }, - "EnvironmentName": { - "type": "string" - }, - "OperationsRole": { - "type": "string" - }, - "OptionSettings": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/OptionSetting" - }, - "type": "array", - "uniqueItems": false - }, - "PlatformArn": { - "type": "string" - }, - "SolutionStackName": { - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": false - }, - "TemplateName": { - "type": "string" - }, - "Tier": { - "$ref": "#/definitions/Tier" - }, - "VersionLabel": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/EndpointURL" - ], - "required": [ - "ApplicationName" - ], - "tagging": { - "cloudFormationSystemTags": false, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::ElasticBeanstalk::Environment", - "writeOnlyProperties": [ - "/properties/TemplateName", - "/properties/OptionSettings", - "/properties/OptionSettings/*/OptionName", - "/properties/OptionSettings/*/ResourceName", - "/properties/OptionSettings/*/Namespace", - "/properties/OptionSettings/*/Value" - ] -} diff --git a/src/cfnlint/data/schemas/providers/ap_east_1/aws-rds-dbcluster.json b/src/cfnlint/data/schemas/providers/ap_east_1/aws-rds-dbcluster.json deleted file mode 100644 index fc3519fd59..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_east_1/aws-rds-dbcluster.json +++ /dev/null @@ -1,459 +0,0 @@ -{ - "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" - } - }, - "handlers": { - "create": { - "permissions": [ - "iam:CreateServiceLinkedRole", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:CreateDBCluster", - "rds:CreateDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeDBClusterSnapshots", - "rds:DescribeDBSnapshots", - "rds:DescribeEvents", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:RestoreDBClusterFromSnapshot", - "rds:RestoreDBClusterToPointInTime", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "rds:CreateDBClusterSnapshot", - "rds:DeleteDBCluster", - "rds:DeleteDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeGlobalClusters", - "rds:RemoveFromGlobalCluster" - ] - }, - "list": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "read": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "update": { - "permissions": [ - "ec2:DescribeSecurityGroups", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:DescribeDBClusters", - "rds:DescribeDBSubnetGroups", - "rds:DescribeEvents", - "rds:DescribeGlobalClusters", - "rds:DisableHttpEndpoint", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:ModifyDBInstance", - "rds:RemoveFromGlobalCluster", - "rds:RemoveRoleFromDBCluster", - "rds:RemoveTagsFromResource", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - } - }, - "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": { - "default": 0, - "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": { - "default": "default.aurora5.6", - "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": { - "default": 0, - "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": { - "default": "full-copy", - "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)) = 'aurora-postgresql' ? 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", - "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_northeast_1/__init__.py b/src/cfnlint/data/schemas/providers/ap_northeast_1/__init__.py index 31f73ea90c..78e35070b8 100644 --- a/src/cfnlint/data/schemas/providers/ap_northeast_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_northeast_1/__init__.py @@ -728,6 +728,7 @@ "AWS::Lambda::Permission", "AWS::Lambda::Url", "AWS::Lambda::Version", + "AWS::LaunchWizard::Deployment", "AWS::Lex::Bot", "AWS::Lex::BotAlias", "AWS::Lex::BotVersion", @@ -1014,6 +1015,13 @@ "AWS::SES::ContactList", "AWS::SES::DedicatedIpPool", "AWS::SES::EmailIdentity", + "AWS::SES::MailManagerAddonInstance", + "AWS::SES::MailManagerAddonSubscription", + "AWS::SES::MailManagerArchive", + "AWS::SES::MailManagerIngressPoint", + "AWS::SES::MailManagerRelay", + "AWS::SES::MailManagerRuleSet", + "AWS::SES::MailManagerTrafficPolicy", "AWS::SES::ReceiptFilter", "AWS::SES::ReceiptRule", "AWS::SES::ReceiptRuleSet", @@ -1438,7 +1446,6 @@ "aws-cognito-userpoolidentityprovider.json", "aws-cognito-userpoolresourceserver.json", "aws-cognito-userpoolriskconfigurationattachment.json", - "aws-cognito-userpooluicustomizationattachment.json", "aws-cognito-userpooluser.json", "aws-cognito-userpoolusertogroupattachment.json", "aws-comprehend-documentclassifier.json", @@ -1934,6 +1941,7 @@ "aws-lambda-permission.json", "aws-lambda-url.json", "aws-lambda-version.json", + "aws-launchwizard-deployment.json", "aws-lex-bot.json", "aws-lex-botalias.json", "aws-lex-botversion.json", @@ -2026,6 +2034,7 @@ "aws-msk-serverlesscluster.json", "aws-msk-vpcconnection.json", "aws-mwaa-environment.json", + "aws-neptune-dbcluster.json", "aws-neptune-dbsubnetgroup.json", "aws-neptune-eventsubscription.json", "aws-neptunegraph-graph.json", @@ -2116,6 +2125,7 @@ "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", @@ -2283,6 +2293,13 @@ "aws-ses-contactlist.json", "aws-ses-dedicatedippool.json", "aws-ses-emailidentity.json", + "aws-ses-mailmanageraddoninstance.json", + "aws-ses-mailmanageraddonsubscription.json", + "aws-ses-mailmanagerarchive.json", + "aws-ses-mailmanageringresspoint.json", + "aws-ses-mailmanagerrelay.json", + "aws-ses-mailmanagerruleset.json", + "aws-ses-mailmanagertrafficpolicy.json", "aws-ses-receiptfilter.json", "aws-ses-receiptruleset.json", "aws-ses-template.json", diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_1/aws-cognito-userpooluicustomizationattachment.json b/src/cfnlint/data/schemas/providers/ap_northeast_1/aws-cognito-userpooluicustomizationattachment.json new file mode 100644 index 0000000000..ff8cea02ef --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_northeast_1/aws-cognito-userpooluicustomizationattachment.json @@ -0,0 +1,61 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/UserPoolId", + "/properties/ClientId" + ], + "handlers": { + "create": { + "permissions": [ + "cognito-idp:SetUICustomization", + "cognito-idp:GetUICustomization" + ], + "timeoutInMinutes": 2 + }, + "delete": { + "permissions": [ + "cognito-idp:SetUICustomization", + "cognito-idp:GetUICustomization" + ], + "timeoutInMinutes": 2 + }, + "read": { + "permissions": [ + "cognito-idp:GetUICustomization" + ] + }, + "update": { + "permissions": [ + "cognito-idp:SetUICustomization" + ], + "timeoutInMinutes": 2 + } + }, + "primaryIdentifier": [ + "/properties/UserPoolId", + "/properties/ClientId" + ], + "properties": { + "CSS": { + "type": "string" + }, + "ClientId": { + "type": "string" + }, + "UserPoolId": { + "type": "string" + } + }, + "required": [ + "UserPoolId", + "ClientId" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": false, + "tagUpdatable": false, + "taggable": false + }, + "typeName": "AWS::Cognito::UserPoolUICustomizationAttachment" +} diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_1/aws-neptune-dbcluster.json b/src/cfnlint/data/schemas/providers/ap_northeast_1/aws-neptune-dbcluster.json deleted file mode 100644 index d682d355d7..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_northeast_1/aws-neptune-dbcluster.json +++ /dev/null @@ -1,292 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/AvailabilityZones", - "/properties/DBClusterIdentifier", - "/properties/DBSubnetGroupName", - "/properties/KmsKeyId", - "/properties/RestoreToTime", - "/properties/RestoreType", - "/properties/SnapshotIdentifier", - "/properties/SourceDBClusterIdentifier", - "/properties/StorageEncrypted", - "/properties/UseLatestRestorableTime" - ], - "definitions": { - "DBClusterRole": { - "additionalProperties": false, - "properties": { - "FeatureName": { - "type": "string" - }, - "RoleArn": { - "type": "string" - } - }, - "required": [ - "RoleArn" - ], - "type": "object" - }, - "ServerlessScalingConfiguration": { - "additionalProperties": false, - "properties": { - "MaxCapacity": { - "maximum": 128, - "minimum": 2.5, - "type": "number" - }, - "MinCapacity": { - "maximum": 128, - "minimum": 1, - "type": "number" - } - }, - "required": [ - "MinCapacity", - "MaxCapacity" - ], - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:CreateDBCluster", - "rds:CreateDBInstance", - "rds:DescribeDBClusters", - "rds:ListTagsForResource", - "rds:ModifyDBCluster", - "rds:RestoreDBClusterFromSnapshot", - "rds:RestoreDBClusterToPointInTime", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "rds:DeleteDBCluster", - "rds:DeleteDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeGlobalClusters", - "rds:ListTagsForResource", - "rds:RemoveFromGlobalCluster", - "rds:CreateDBClusterSnapshot", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "list": { - "permissions": [ - "rds:DescribeDBClusters", - "rds:ListTagsForResource", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "read": { - "permissions": [ - "rds:DescribeDBClusters", - "rds:ListTagsForResource", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "update": { - "permissions": [ - "ec2:DescribeSecurityGroups", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:DescribeDBClusters", - "rds:DescribeDBInstances", - "rds:DescribeDBSubnetGroups", - "rds:DescribeGlobalClusters", - "rds:ListTagsForResource", - "rds:ModifyDBCluster", - "rds:ModifyDBInstance", - "rds:RemoveFromGlobalCluster", - "rds:RemoveRoleFromDBCluster", - "rds:RemoveTagsFromResource", - "kms:*" - ], - "timeoutInMinutes": 2160 - } - }, - "primaryIdentifier": [ - "/properties/DBClusterIdentifier" - ], - "properties": { - "AssociatedRoles": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/DBClusterRole" - }, - "type": "array", - "uniqueItems": true - }, - "AvailabilityZones": { - "insertionOrder": true, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "BackupRetentionPeriod": { - "default": 1, - "minimum": 1, - "type": "integer" - }, - "ClusterResourceId": { - "type": "string" - }, - "CopyTagsToSnapshot": { - "type": "boolean" - }, - "DBClusterIdentifier": { - "maxLength": 63, - "minLength": 1, - "pattern": "^[a-zA-Z]{1}(?:-?[a-zA-Z0-9]){0,62}$", - "type": "string" - }, - "DBClusterParameterGroupName": { - "type": "string" - }, - "DBInstanceParameterGroupName": { - "type": "string" - }, - "DBPort": { - "type": "integer" - }, - "DBSubnetGroupName": { - "type": "string" - }, - "DeletionProtection": { - "type": "boolean" - }, - "EnableCloudwatchLogsExports": { - "insertionOrder": true, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "Endpoint": { - "type": "string" - }, - "EngineVersion": { - "type": "string" - }, - "IamAuthEnabled": { - "type": "boolean" - }, - "KmsKeyId": { - "type": "string" - }, - "Port": { - "type": "string" - }, - "PreferredBackupWindow": { - "type": "string" - }, - "PreferredMaintenanceWindow": { - "type": "string" - }, - "ReadEndpoint": { - "type": "string" - }, - "RestoreToTime": { - "type": "string" - }, - "RestoreType": { - "default": "full-copy", - "type": "string" - }, - "ServerlessScalingConfiguration": { - "$ref": "#/definitions/ServerlessScalingConfiguration" - }, - "SnapshotIdentifier": { - "type": "string" - }, - "SourceDBClusterIdentifier": { - "type": "string" - }, - "StorageEncrypted": { - "type": "boolean" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 50, - "type": "array", - "uniqueItems": true - }, - "UseLatestRestorableTime": { - "type": "boolean" - }, - "VpcSecurityGroupIds": { - "insertionOrder": true, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - } - }, - "propertyTransform": { - "/properties/DBClusterIdentifier": "$lowercase(DBClusterIdentifier)", - "/properties/DBClusterParameterGroupName": "$lowercase(DBClusterParameterGroupName)", - "/properties/DBSubnetGroupName": "$lowercase(DBSubnetGroupName)", - "/properties/SnapshotIdentifier": "$lowercase(SnapshotIdentifier)", - "/properties/SourceDBClusterIdentifier": "$lowercase(SourceDBClusterIdentifier)" - }, - "readOnlyProperties": [ - "/properties/Endpoint", - "/properties/ClusterResourceId", - "/properties/Port", - "/properties/ReadEndpoint" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-neptune", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Neptune::DBCluster", - "writeOnlyProperties": [ - "/properties/DBInstanceParameterGroupName", - "/properties/RestoreToTime", - "/properties/RestoreType", - "/properties/SnapshotIdentifier", - "/properties/SourceDBClusterIdentifier", - "/properties/UseLatestRestorableTime" - ] -} diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_1/aws-rds-dbcluster.json b/src/cfnlint/data/schemas/providers/ap_northeast_1/aws-rds-dbcluster.json deleted file mode 100644 index fc3519fd59..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_northeast_1/aws-rds-dbcluster.json +++ /dev/null @@ -1,459 +0,0 @@ -{ - "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" - } - }, - "handlers": { - "create": { - "permissions": [ - "iam:CreateServiceLinkedRole", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:CreateDBCluster", - "rds:CreateDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeDBClusterSnapshots", - "rds:DescribeDBSnapshots", - "rds:DescribeEvents", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:RestoreDBClusterFromSnapshot", - "rds:RestoreDBClusterToPointInTime", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "rds:CreateDBClusterSnapshot", - "rds:DeleteDBCluster", - "rds:DeleteDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeGlobalClusters", - "rds:RemoveFromGlobalCluster" - ] - }, - "list": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "read": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "update": { - "permissions": [ - "ec2:DescribeSecurityGroups", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:DescribeDBClusters", - "rds:DescribeDBSubnetGroups", - "rds:DescribeEvents", - "rds:DescribeGlobalClusters", - "rds:DisableHttpEndpoint", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:ModifyDBInstance", - "rds:RemoveFromGlobalCluster", - "rds:RemoveRoleFromDBCluster", - "rds:RemoveTagsFromResource", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - } - }, - "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": { - "default": 0, - "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": { - "default": "default.aurora5.6", - "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": { - "default": 0, - "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": { - "default": "full-copy", - "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)) = 'aurora-postgresql' ? 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", - "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_northeast_2/__init__.py b/src/cfnlint/data/schemas/providers/ap_northeast_2/__init__.py index 79bcf62e04..d0d3ff10d0 100644 --- a/src/cfnlint/data/schemas/providers/ap_northeast_2/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_northeast_2/__init__.py @@ -674,6 +674,7 @@ "AWS::Lambda::Permission", "AWS::Lambda::Url", "AWS::Lambda::Version", + "AWS::LaunchWizard::Deployment", "AWS::Lex::Bot", "AWS::Lex::BotAlias", "AWS::Lex::BotVersion", @@ -1300,7 +1301,6 @@ "aws-codedeploy-deploymentconfig.json", "aws-codedeploy-deploymentgroup.json", "aws-codepipeline-customactiontype.json", - "aws-codepipeline-pipeline.json", "aws-codepipeline-webhook.json", "aws-codestar-githubrepository.json", "aws-codestarconnections-connection.json", @@ -1773,6 +1773,7 @@ "aws-lambda-permission.json", "aws-lambda-url.json", "aws-lambda-version.json", + "aws-launchwizard-deployment.json", "aws-lex-bot.json", "aws-lex-botalias.json", "aws-lex-botversion.json", @@ -1790,6 +1791,9 @@ "aws-lightsail-loadbalancertlscertificate.json", "aws-lightsail-staticip.json", "aws-logs-accountpolicy.json", + "aws-logs-delivery.json", + "aws-logs-deliverydestination.json", + "aws-logs-deliverysource.json", "aws-logs-destination.json", "aws-logs-loganomalydetector.json", "aws-logs-loggroup.json", @@ -1932,6 +1936,7 @@ "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", diff --git a/src/cfnlint/data/schemas/providers/cn_north_1/aws-codepipeline-pipeline.json b/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-codepipeline-pipeline.json similarity index 81% rename from src/cfnlint/data/schemas/providers/cn_north_1/aws-codepipeline-pipeline.json rename to src/cfnlint/data/schemas/providers/ap_northeast_2/aws-codepipeline-pipeline.json index 49ce5909b4..925fbfe118 100644 --- a/src/cfnlint/data/schemas/providers/cn_north_1/aws-codepipeline-pipeline.json +++ b/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-codepipeline-pipeline.json @@ -41,7 +41,6 @@ "type": "string" }, "RoleArn": { - "pattern": "arn:aws(-[\\w]+)*:iam::[0-9]{12}:role/.*", "type": "string" }, "RunOrder": { @@ -171,12 +170,12 @@ "additionalProperties": false, "properties": { "Result": { - "enum": [ - "ROLLBACK" - ], "type": "string" } }, + "required": [ + "Result" + ], "type": "object" }, "GitBranchFilterCriteria": { @@ -330,9 +329,6 @@ "$ref": "#/definitions/GitConfiguration" }, "ProviderType": { - "enum": [ - "CodeStarSourceConnection" - ], "type": "string" } }, @@ -362,8 +358,7 @@ "type": "string" }, "OnFailure": { - "$ref": "#/definitions/FailureConditions", - "type": "object" + "$ref": "#/definitions/FailureConditions" } }, "required": [ @@ -423,55 +418,8 @@ "type": "object" } }, - "handlers": { - "create": { - "permissions": [ - "iam:GetRole", - "iam:PassRole", - "codepipeline:GetPipeline", - "codepipeline:CreatePipeline", - "codepipeline:DisableStageTransition", - "codepipeline:GetPipelineState", - "codepipeline:TagResource", - "codestar-connections:PassConnection" - ] - }, - "delete": { - "permissions": [ - "codepipeline:GetPipeline", - "codepipeline:DeletePipeline" - ] - }, - "list": { - "permissions": [ - "codepipeline:ListPipelines" - ] - }, - "read": { - "permissions": [ - "codepipeline:GetPipeline", - "codepipeline:ListTagsForResource", - "codepipeline:GetPipelineState" - ] - }, - "update": { - "permissions": [ - "iam:GetRole", - "iam:PassRole", - "codepipeline:EnableStageTransition", - "codepipeline:StartPipelineExecution", - "codepipeline:GetPipeline", - "codepipeline:UpdatePipeline", - "codepipeline:GetPipelineState", - "codepipeline:DisableStageTransition", - "codepipeline:TagResource", - "codepipeline:UntagResource", - "codestar-connections:PassConnection" - ] - } - }, "primaryIdentifier": [ - "/properties/Name" + "/properties/Id" ], "properties": { "ArtifactStore": { @@ -492,29 +440,21 @@ "uniqueItems": true }, "ExecutionMode": { - "default": "SUPERSEDED", - "enum": [ - "QUEUED", - "SUPERSEDED", - "PARALLEL" - ], + "type": "string" + }, + "Id": { "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": { @@ -550,6 +490,7 @@ } }, "readOnlyProperties": [ + "/properties/Id", "/properties/Version" ], "required": [ @@ -560,16 +501,5 @@ "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" - ] + "typeName": "AWS::CodePipeline::Pipeline" } diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-logs-delivery.json b/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-logs-delivery.json deleted file mode 100644 index 9d504c7dc9..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-logs-delivery.json +++ /dev/null @@ -1,130 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/DeliverySourceName", - "/properties/DeliveryDestinationArn" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:CreateDelivery", - "logs:GetDelivery", - "logs:DescribeDeliveries", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:GetDeliverySource", - "logs:GetDeliveryDestination" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDelivery", - "logs:ListTagsForResource", - "logs:UntagResource" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliveries", - "logs:ListTagsForResource" - ] - }, - "read": { - "permissions": [ - "logs:GetDelivery", - "logs:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "logs:GetDelivery", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource" - ] - } - }, - "primaryIdentifier": [ - "/properties/DeliveryId" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationArn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationType": { - "maxLength": 12, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DeliveryId": { - "maxLength": 64, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DeliverySourceName": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/DeliveryId", - "/properties/Arn", - "/properties/DeliveryDestinationType" - ], - "required": [ - "DeliverySourceName", - "DeliveryDestinationArn" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::Delivery" -} diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-logs-deliverydestination.json b/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-logs-deliverydestination.json deleted file mode 100644 index 41e9e764ad..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-logs-deliverydestination.json +++ /dev/null @@ -1,152 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name", - "/properties/DestinationResourceArn" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "DestinationPolicy": { - "additionalProperties": false, - "properties": { - "DeliveryDestinationName": { - "maxLength": 60, - "minLength": 1, - "type": "string" - }, - "DeliveryDestinationPolicy": { - "maxLength": 51200, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "DeliveryDestinationName", - "DeliveryDestinationPolicy" - ], - "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" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:PutDeliveryDestination", - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource", - "logs:PutDeliveryDestinationPolicy", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDeliveryDestination", - "logs:DeleteDeliveryDestinationPolicy" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliveryDestinations", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "read": { - "permissions": [ - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "update": { - "permissions": [ - "logs:PutDeliveryDestination", - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource", - "logs:DeleteDeliveryDestinationPolicy", - "logs:PutDeliveryDestinationPolicy", - "logs:GetDeliveryDestinationPolicy" - ] - } - }, - "primaryIdentifier": [ - "/properties/Name" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationPolicy": { - "items": { - "$ref": "#/definitions/DestinationPolicy" - }, - "type": "object" - }, - "DeliveryDestinationType": { - "maxLength": 12, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DestinationResourceArn": { - "$ref": "#/definitions/Arn" - }, - "Name": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/Arn", - "/properties/DeliveryDestinationType" - ], - "required": [ - "Name" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::DeliveryDestination" -} diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-logs-deliverysource.json b/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-logs-deliverysource.json deleted file mode 100644 index 30c5c13d9e..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-logs-deliverysource.json +++ /dev/null @@ -1,138 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:PutDeliverySource", - "logs:GetDeliverySource", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:AllowVendedLogDeliveryForResource", - "codewhisperer:AllowVendedLogDeliveryForResource", - "autoloop:AllowVendedLogDeliveryForResource", - "workmail:AllowVendedLogDeliveryForResource" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDeliverySource" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliverySources" - ] - }, - "read": { - "permissions": [ - "logs:GetDeliverySource", - "logs:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "logs:PutDeliverySource", - "logs:GetDeliverySource", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource" - ] - } - }, - "primaryIdentifier": [ - "/properties/Name" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "LogType": { - "maxLength": 255, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Name": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "ResourceArn": { - "$ref": "#/definitions/Arn" - }, - "ResourceArns": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Arn" - }, - "type": "array", - "uniqueItems": true - }, - "Service": { - "maxLength": 255, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/Service", - "/properties/ResourceArns", - "/properties/Arn" - ], - "required": [ - "Name" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::DeliverySource", - "writeOnlyProperties": [ - "/properties/ResourceArn" - ] -} diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-rds-dbcluster.json b/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-rds-dbcluster.json deleted file mode 100644 index fc3519fd59..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-rds-dbcluster.json +++ /dev/null @@ -1,459 +0,0 @@ -{ - "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" - } - }, - "handlers": { - "create": { - "permissions": [ - "iam:CreateServiceLinkedRole", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:CreateDBCluster", - "rds:CreateDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeDBClusterSnapshots", - "rds:DescribeDBSnapshots", - "rds:DescribeEvents", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:RestoreDBClusterFromSnapshot", - "rds:RestoreDBClusterToPointInTime", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "rds:CreateDBClusterSnapshot", - "rds:DeleteDBCluster", - "rds:DeleteDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeGlobalClusters", - "rds:RemoveFromGlobalCluster" - ] - }, - "list": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "read": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "update": { - "permissions": [ - "ec2:DescribeSecurityGroups", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:DescribeDBClusters", - "rds:DescribeDBSubnetGroups", - "rds:DescribeEvents", - "rds:DescribeGlobalClusters", - "rds:DisableHttpEndpoint", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:ModifyDBInstance", - "rds:RemoveFromGlobalCluster", - "rds:RemoveRoleFromDBCluster", - "rds:RemoveTagsFromResource", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - } - }, - "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": { - "default": 0, - "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": { - "default": "default.aurora5.6", - "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": { - "default": 0, - "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": { - "default": "full-copy", - "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)) = 'aurora-postgresql' ? 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", - "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_northeast_3/__init__.py b/src/cfnlint/data/schemas/providers/ap_northeast_3/__init__.py index 7c2e1e325e..e16b6caaf0 100644 --- a/src/cfnlint/data/schemas/providers/ap_northeast_3/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_northeast_3/__init__.py @@ -453,6 +453,7 @@ "AWS::Lambda::Permission", "AWS::Lambda::Url", "AWS::Lambda::Version", + "AWS::LaunchWizard::Deployment", "AWS::Logs::AccountPolicy", "AWS::Logs::Delivery", "AWS::Logs::DeliveryDestination", @@ -898,6 +899,7 @@ "aws-cloudwatch-alarm.json", "aws-cloudwatch-anomalydetector.json", "aws-cloudwatch-compositealarm.json", + "aws-cloudwatch-dashboard.json", "aws-cloudwatch-insightrule.json", "aws-cloudwatch-metricstream.json", "aws-codebuild-project.json", @@ -1188,6 +1190,7 @@ "aws-lambda-permission.json", "aws-lambda-url.json", "aws-lambda-version.json", + "aws-launchwizard-deployment.json", "aws-logs-accountpolicy.json", "aws-logs-delivery.json", "aws-logs-deliverydestination.json", @@ -1283,6 +1286,7 @@ "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", diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-cloudwatch-dashboard.json b/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-cloudwatch-dashboard.json deleted file mode 100644 index 258074cf80..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-cloudwatch-dashboard.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/DashboardName" - ], - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "DashboardBody": { - "type": "string" - }, - "DashboardName": { - "type": "string" - }, - "Id": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "DashboardBody" - ], - "typeName": "AWS::CloudWatch::Dashboard" -} diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-rds-dbcluster.json b/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-rds-dbcluster.json deleted file mode 100644 index fc3519fd59..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-rds-dbcluster.json +++ /dev/null @@ -1,459 +0,0 @@ -{ - "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" - } - }, - "handlers": { - "create": { - "permissions": [ - "iam:CreateServiceLinkedRole", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:CreateDBCluster", - "rds:CreateDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeDBClusterSnapshots", - "rds:DescribeDBSnapshots", - "rds:DescribeEvents", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:RestoreDBClusterFromSnapshot", - "rds:RestoreDBClusterToPointInTime", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "rds:CreateDBClusterSnapshot", - "rds:DeleteDBCluster", - "rds:DeleteDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeGlobalClusters", - "rds:RemoveFromGlobalCluster" - ] - }, - "list": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "read": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "update": { - "permissions": [ - "ec2:DescribeSecurityGroups", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:DescribeDBClusters", - "rds:DescribeDBSubnetGroups", - "rds:DescribeEvents", - "rds:DescribeGlobalClusters", - "rds:DisableHttpEndpoint", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:ModifyDBInstance", - "rds:RemoveFromGlobalCluster", - "rds:RemoveRoleFromDBCluster", - "rds:RemoveTagsFromResource", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - } - }, - "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": { - "default": 0, - "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": { - "default": "default.aurora5.6", - "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": { - "default": 0, - "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": { - "default": "full-copy", - "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)) = 'aurora-postgresql' ? 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", - "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_south_1/__init__.py b/src/cfnlint/data/schemas/providers/ap_south_1/__init__.py index 6b0b5223aa..67447407e2 100644 --- a/src/cfnlint/data/schemas/providers/ap_south_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_south_1/__init__.py @@ -667,6 +667,7 @@ "AWS::Lambda::Permission", "AWS::Lambda::Url", "AWS::Lambda::Version", + "AWS::LaunchWizard::Deployment", "AWS::LicenseManager::Grant", "AWS::LicenseManager::License", "AWS::Lightsail::Alarm", @@ -1768,6 +1769,7 @@ "aws-lambda-permission.json", "aws-lambda-url.json", "aws-lambda-version.json", + "aws-launchwizard-deployment.json", "aws-licensemanager-grant.json", "aws-licensemanager-license.json", "aws-lightsail-alarm.json", @@ -1977,6 +1979,7 @@ "aws-resourceexplorer2-defaultviewassociation.json", "aws-resourceexplorer2-index.json", "aws-resourceexplorer2-view.json", + "aws-resourcegroups-group.json", "aws-rolesanywhere-crl.json", "aws-rolesanywhere-profile.json", "aws-rolesanywhere-trustanchor.json", diff --git a/src/cfnlint/data/schemas/providers/ap_south_1/aws-resourcegroups-group.json b/src/cfnlint/data/schemas/providers/ap_south_1/aws-resourcegroups-group.json deleted file mode 100644 index bbbc372e7a..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_south_1/aws-resourcegroups-group.json +++ /dev/null @@ -1,209 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name" - ], - "definitions": { - "Configuration": { - "items": { - "$ref": "#/definitions/ConfigurationItem" - }, - "type": "array" - }, - "ConfigurationItem": { - "additionalProperties": false, - "properties": { - "Parameters": { - "items": { - "$ref": "#/definitions/ConfigurationParameter" - }, - "type": "array" - }, - "Type": { - "type": "string" - } - }, - "type": "object" - }, - "ConfigurationParameter": { - "additionalProperties": false, - "properties": { - "Name": { - "type": "string" - }, - "Values": { - "items": { - "type": "string" - }, - "type": "array" - } - }, - "type": "object" - }, - "Query": { - "additionalProperties": false, - "properties": { - "ResourceTypeFilters": { - "items": { - "type": "string" - }, - "type": "array" - }, - "StackIdentifier": { - "type": "string" - }, - "TagFilters": { - "items": { - "$ref": "#/definitions/TagFilter" - }, - "type": "array" - } - }, - "type": "object" - }, - "ResourceQuery": { - "additionalProperties": false, - "properties": { - "Query": { - "$ref": "#/definitions/Query" - }, - "Type": { - "enum": [ - "TAG_FILTERS_1_0", - "CLOUDFORMATION_STACK_1_0" - ], - "type": "string" - } - }, - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "pattern": "^(?!aws:).+", - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "type": "object" - }, - "TagFilter": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Values": { - "items": { - "type": "string" - }, - "type": "array" - } - }, - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "resource-groups:CreateGroup", - "resource-groups:Tag", - "cloudformation:DescribeStacks", - "cloudformation:ListStackResources", - "resource-groups:ListGroupResources", - "resource-groups:GroupResources" - ] - }, - "delete": { - "permissions": [ - "resource-groups:DeleteGroup", - "resource-groups:UnGroupResources" - ] - }, - "list": { - "permissions": [ - "resource-groups:ListGroups" - ] - }, - "read": { - "permissions": [ - "resource-groups:GetGroup", - "resource-groups:GetGroupQuery", - "resource-groups:GetTags", - "resource-groups:GetGroupConfiguration", - "resource-groups:ListGroupResources" - ] - }, - "update": { - "permissions": [ - "resource-groups:UpdateGroup", - "resource-groups:GetTags", - "resource-groups:GetGroupQuery", - "resource-groups:UpdateGroupQuery", - "resource-groups:Tag", - "resource-groups:Untag", - "resource-groups:PutGroupConfiguration", - "resource-groups:GetGroupConfiguration", - "resource-groups:ListGroupResources", - "resource-groups:GroupResources", - "resource-groups:UnGroupResources" - ] - } - }, - "primaryIdentifier": [ - "/properties/Name" - ], - "properties": { - "Arn": { - "type": "string" - }, - "Configuration": { - "$ref": "#/definitions/Configuration" - }, - "Description": { - "maxLength": 512, - "type": "string" - }, - "Name": { - "maxLength": 128, - "type": "string" - }, - "ResourceQuery": { - "$ref": "#/definitions/ResourceQuery" - }, - "Resources": { - "items": { - "type": "string" - }, - "type": "array" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array" - } - }, - "readOnlyProperties": [ - "/properties/Arn" - ], - "required": [ - "Name" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", - "tagging": { - "cloudFormationSystemTags": true, - "permissions": [ - "resource-groups:Tag", - "resource-groups:Untag" - ], - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::ResourceGroups::Group" -} 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 4fb153bf07..d3ce3e2f77 100644 --- a/src/cfnlint/data/schemas/providers/ap_south_2/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_south_2/__init__.py @@ -402,6 +402,7 @@ "AWS::Lambda::LayerVersionPermission", "AWS::Lambda::Permission", "AWS::Lambda::Version", + "AWS::LaunchWizard::Deployment", "AWS::Logs::AccountPolicy", "AWS::Logs::Delivery", "AWS::Logs::DeliveryDestination", @@ -720,7 +721,6 @@ "aws-codedeploy-application.json", "aws-codedeploy-deploymentconfig.json", "aws-codedeploy-deploymentgroup.json", - "aws-codepipeline-pipeline.json", "aws-cognito-identitypool.json", "aws-cognito-identitypoolprincipaltag.json", "aws-cognito-identitypoolroleattachment.json", @@ -959,6 +959,7 @@ "aws-lambda-layerversionpermission.json", "aws-lambda-permission.json", "aws-lambda-version.json", + "aws-launchwizard-deployment.json", "aws-logs-accountpolicy.json", "aws-logs-delivery.json", "aws-logs-deliverydestination.json", @@ -1013,6 +1014,7 @@ "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", diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/aws-codepipeline-pipeline.json b/src/cfnlint/data/schemas/providers/ap_south_2/aws-codepipeline-pipeline.json similarity index 81% rename from src/cfnlint/data/schemas/providers/eu_central_1/aws-codepipeline-pipeline.json rename to src/cfnlint/data/schemas/providers/ap_south_2/aws-codepipeline-pipeline.json index 49ce5909b4..925fbfe118 100644 --- a/src/cfnlint/data/schemas/providers/eu_central_1/aws-codepipeline-pipeline.json +++ b/src/cfnlint/data/schemas/providers/ap_south_2/aws-codepipeline-pipeline.json @@ -41,7 +41,6 @@ "type": "string" }, "RoleArn": { - "pattern": "arn:aws(-[\\w]+)*:iam::[0-9]{12}:role/.*", "type": "string" }, "RunOrder": { @@ -171,12 +170,12 @@ "additionalProperties": false, "properties": { "Result": { - "enum": [ - "ROLLBACK" - ], "type": "string" } }, + "required": [ + "Result" + ], "type": "object" }, "GitBranchFilterCriteria": { @@ -330,9 +329,6 @@ "$ref": "#/definitions/GitConfiguration" }, "ProviderType": { - "enum": [ - "CodeStarSourceConnection" - ], "type": "string" } }, @@ -362,8 +358,7 @@ "type": "string" }, "OnFailure": { - "$ref": "#/definitions/FailureConditions", - "type": "object" + "$ref": "#/definitions/FailureConditions" } }, "required": [ @@ -423,55 +418,8 @@ "type": "object" } }, - "handlers": { - "create": { - "permissions": [ - "iam:GetRole", - "iam:PassRole", - "codepipeline:GetPipeline", - "codepipeline:CreatePipeline", - "codepipeline:DisableStageTransition", - "codepipeline:GetPipelineState", - "codepipeline:TagResource", - "codestar-connections:PassConnection" - ] - }, - "delete": { - "permissions": [ - "codepipeline:GetPipeline", - "codepipeline:DeletePipeline" - ] - }, - "list": { - "permissions": [ - "codepipeline:ListPipelines" - ] - }, - "read": { - "permissions": [ - "codepipeline:GetPipeline", - "codepipeline:ListTagsForResource", - "codepipeline:GetPipelineState" - ] - }, - "update": { - "permissions": [ - "iam:GetRole", - "iam:PassRole", - "codepipeline:EnableStageTransition", - "codepipeline:StartPipelineExecution", - "codepipeline:GetPipeline", - "codepipeline:UpdatePipeline", - "codepipeline:GetPipelineState", - "codepipeline:DisableStageTransition", - "codepipeline:TagResource", - "codepipeline:UntagResource", - "codestar-connections:PassConnection" - ] - } - }, "primaryIdentifier": [ - "/properties/Name" + "/properties/Id" ], "properties": { "ArtifactStore": { @@ -492,29 +440,21 @@ "uniqueItems": true }, "ExecutionMode": { - "default": "SUPERSEDED", - "enum": [ - "QUEUED", - "SUPERSEDED", - "PARALLEL" - ], + "type": "string" + }, + "Id": { "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": { @@ -550,6 +490,7 @@ } }, "readOnlyProperties": [ + "/properties/Id", "/properties/Version" ], "required": [ @@ -560,16 +501,5 @@ "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" - ] + "typeName": "AWS::CodePipeline::Pipeline" } diff --git a/src/cfnlint/data/schemas/providers/ap_south_2/aws-rds-dbcluster.json b/src/cfnlint/data/schemas/providers/ap_south_2/aws-rds-dbcluster.json deleted file mode 100644 index fc3519fd59..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_south_2/aws-rds-dbcluster.json +++ /dev/null @@ -1,459 +0,0 @@ -{ - "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" - } - }, - "handlers": { - "create": { - "permissions": [ - "iam:CreateServiceLinkedRole", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:CreateDBCluster", - "rds:CreateDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeDBClusterSnapshots", - "rds:DescribeDBSnapshots", - "rds:DescribeEvents", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:RestoreDBClusterFromSnapshot", - "rds:RestoreDBClusterToPointInTime", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "rds:CreateDBClusterSnapshot", - "rds:DeleteDBCluster", - "rds:DeleteDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeGlobalClusters", - "rds:RemoveFromGlobalCluster" - ] - }, - "list": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "read": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "update": { - "permissions": [ - "ec2:DescribeSecurityGroups", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:DescribeDBClusters", - "rds:DescribeDBSubnetGroups", - "rds:DescribeEvents", - "rds:DescribeGlobalClusters", - "rds:DisableHttpEndpoint", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:ModifyDBInstance", - "rds:RemoveFromGlobalCluster", - "rds:RemoveRoleFromDBCluster", - "rds:RemoveTagsFromResource", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - } - }, - "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": { - "default": 0, - "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": { - "default": "default.aurora5.6", - "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": { - "default": 0, - "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": { - "default": "full-copy", - "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)) = 'aurora-postgresql' ? 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", - "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_1/__init__.py b/src/cfnlint/data/schemas/providers/ap_southeast_1/__init__.py index ae110e44aa..d3527bcecf 100644 --- a/src/cfnlint/data/schemas/providers/ap_southeast_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_southeast_1/__init__.py @@ -705,6 +705,7 @@ "AWS::Lambda::Permission", "AWS::Lambda::Url", "AWS::Lambda::Version", + "AWS::LaunchWizard::Deployment", "AWS::Lex::Bot", "AWS::Lex::BotAlias", "AWS::Lex::BotVersion", @@ -1882,6 +1883,7 @@ "aws-lambda-permission.json", "aws-lambda-url.json", "aws-lambda-version.json", + "aws-launchwizard-deployment.json", "aws-lex-bot.json", "aws-lex-botalias.json", "aws-lex-botversion.json", @@ -1972,6 +1974,7 @@ "aws-msk-serverlesscluster.json", "aws-msk-vpcconnection.json", "aws-mwaa-environment.json", + "aws-neptune-dbcluster.json", "aws-neptune-dbsubnetgroup.json", "aws-neptune-eventsubscription.json", "aws-neptunegraph-graph.json", @@ -2069,6 +2072,7 @@ "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", diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_1/aws-neptune-dbcluster.json b/src/cfnlint/data/schemas/providers/ap_southeast_1/aws-neptune-dbcluster.json deleted file mode 100644 index d682d355d7..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_southeast_1/aws-neptune-dbcluster.json +++ /dev/null @@ -1,292 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/AvailabilityZones", - "/properties/DBClusterIdentifier", - "/properties/DBSubnetGroupName", - "/properties/KmsKeyId", - "/properties/RestoreToTime", - "/properties/RestoreType", - "/properties/SnapshotIdentifier", - "/properties/SourceDBClusterIdentifier", - "/properties/StorageEncrypted", - "/properties/UseLatestRestorableTime" - ], - "definitions": { - "DBClusterRole": { - "additionalProperties": false, - "properties": { - "FeatureName": { - "type": "string" - }, - "RoleArn": { - "type": "string" - } - }, - "required": [ - "RoleArn" - ], - "type": "object" - }, - "ServerlessScalingConfiguration": { - "additionalProperties": false, - "properties": { - "MaxCapacity": { - "maximum": 128, - "minimum": 2.5, - "type": "number" - }, - "MinCapacity": { - "maximum": 128, - "minimum": 1, - "type": "number" - } - }, - "required": [ - "MinCapacity", - "MaxCapacity" - ], - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:CreateDBCluster", - "rds:CreateDBInstance", - "rds:DescribeDBClusters", - "rds:ListTagsForResource", - "rds:ModifyDBCluster", - "rds:RestoreDBClusterFromSnapshot", - "rds:RestoreDBClusterToPointInTime", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "rds:DeleteDBCluster", - "rds:DeleteDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeGlobalClusters", - "rds:ListTagsForResource", - "rds:RemoveFromGlobalCluster", - "rds:CreateDBClusterSnapshot", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "list": { - "permissions": [ - "rds:DescribeDBClusters", - "rds:ListTagsForResource", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "read": { - "permissions": [ - "rds:DescribeDBClusters", - "rds:ListTagsForResource", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "update": { - "permissions": [ - "ec2:DescribeSecurityGroups", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:DescribeDBClusters", - "rds:DescribeDBInstances", - "rds:DescribeDBSubnetGroups", - "rds:DescribeGlobalClusters", - "rds:ListTagsForResource", - "rds:ModifyDBCluster", - "rds:ModifyDBInstance", - "rds:RemoveFromGlobalCluster", - "rds:RemoveRoleFromDBCluster", - "rds:RemoveTagsFromResource", - "kms:*" - ], - "timeoutInMinutes": 2160 - } - }, - "primaryIdentifier": [ - "/properties/DBClusterIdentifier" - ], - "properties": { - "AssociatedRoles": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/DBClusterRole" - }, - "type": "array", - "uniqueItems": true - }, - "AvailabilityZones": { - "insertionOrder": true, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "BackupRetentionPeriod": { - "default": 1, - "minimum": 1, - "type": "integer" - }, - "ClusterResourceId": { - "type": "string" - }, - "CopyTagsToSnapshot": { - "type": "boolean" - }, - "DBClusterIdentifier": { - "maxLength": 63, - "minLength": 1, - "pattern": "^[a-zA-Z]{1}(?:-?[a-zA-Z0-9]){0,62}$", - "type": "string" - }, - "DBClusterParameterGroupName": { - "type": "string" - }, - "DBInstanceParameterGroupName": { - "type": "string" - }, - "DBPort": { - "type": "integer" - }, - "DBSubnetGroupName": { - "type": "string" - }, - "DeletionProtection": { - "type": "boolean" - }, - "EnableCloudwatchLogsExports": { - "insertionOrder": true, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "Endpoint": { - "type": "string" - }, - "EngineVersion": { - "type": "string" - }, - "IamAuthEnabled": { - "type": "boolean" - }, - "KmsKeyId": { - "type": "string" - }, - "Port": { - "type": "string" - }, - "PreferredBackupWindow": { - "type": "string" - }, - "PreferredMaintenanceWindow": { - "type": "string" - }, - "ReadEndpoint": { - "type": "string" - }, - "RestoreToTime": { - "type": "string" - }, - "RestoreType": { - "default": "full-copy", - "type": "string" - }, - "ServerlessScalingConfiguration": { - "$ref": "#/definitions/ServerlessScalingConfiguration" - }, - "SnapshotIdentifier": { - "type": "string" - }, - "SourceDBClusterIdentifier": { - "type": "string" - }, - "StorageEncrypted": { - "type": "boolean" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 50, - "type": "array", - "uniqueItems": true - }, - "UseLatestRestorableTime": { - "type": "boolean" - }, - "VpcSecurityGroupIds": { - "insertionOrder": true, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - } - }, - "propertyTransform": { - "/properties/DBClusterIdentifier": "$lowercase(DBClusterIdentifier)", - "/properties/DBClusterParameterGroupName": "$lowercase(DBClusterParameterGroupName)", - "/properties/DBSubnetGroupName": "$lowercase(DBSubnetGroupName)", - "/properties/SnapshotIdentifier": "$lowercase(SnapshotIdentifier)", - "/properties/SourceDBClusterIdentifier": "$lowercase(SourceDBClusterIdentifier)" - }, - "readOnlyProperties": [ - "/properties/Endpoint", - "/properties/ClusterResourceId", - "/properties/Port", - "/properties/ReadEndpoint" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-neptune", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Neptune::DBCluster", - "writeOnlyProperties": [ - "/properties/DBInstanceParameterGroupName", - "/properties/RestoreToTime", - "/properties/RestoreType", - "/properties/SnapshotIdentifier", - "/properties/SourceDBClusterIdentifier", - "/properties/UseLatestRestorableTime" - ] -} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_1/aws-rds-dbcluster.json b/src/cfnlint/data/schemas/providers/ap_southeast_1/aws-rds-dbcluster.json deleted file mode 100644 index fc3519fd59..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_southeast_1/aws-rds-dbcluster.json +++ /dev/null @@ -1,459 +0,0 @@ -{ - "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" - } - }, - "handlers": { - "create": { - "permissions": [ - "iam:CreateServiceLinkedRole", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:CreateDBCluster", - "rds:CreateDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeDBClusterSnapshots", - "rds:DescribeDBSnapshots", - "rds:DescribeEvents", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:RestoreDBClusterFromSnapshot", - "rds:RestoreDBClusterToPointInTime", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "rds:CreateDBClusterSnapshot", - "rds:DeleteDBCluster", - "rds:DeleteDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeGlobalClusters", - "rds:RemoveFromGlobalCluster" - ] - }, - "list": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "read": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "update": { - "permissions": [ - "ec2:DescribeSecurityGroups", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:DescribeDBClusters", - "rds:DescribeDBSubnetGroups", - "rds:DescribeEvents", - "rds:DescribeGlobalClusters", - "rds:DisableHttpEndpoint", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:ModifyDBInstance", - "rds:RemoveFromGlobalCluster", - "rds:RemoveRoleFromDBCluster", - "rds:RemoveTagsFromResource", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - } - }, - "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": { - "default": 0, - "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": { - "default": "default.aurora5.6", - "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": { - "default": 0, - "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": { - "default": "full-copy", - "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)) = 'aurora-postgresql' ? 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", - "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_2/__init__.py b/src/cfnlint/data/schemas/providers/ap_southeast_2/__init__.py index a4b1017154..51630e9419 100644 --- a/src/cfnlint/data/schemas/providers/ap_southeast_2/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_southeast_2/__init__.py @@ -726,6 +726,7 @@ "AWS::Lambda::Permission", "AWS::Lambda::Url", "AWS::Lambda::Version", + "AWS::LaunchWizard::Deployment", "AWS::Lex::Bot", "AWS::Lex::BotAlias", "AWS::Lex::BotVersion", @@ -1011,6 +1012,13 @@ "AWS::SES::ContactList", "AWS::SES::DedicatedIpPool", "AWS::SES::EmailIdentity", + "AWS::SES::MailManagerAddonInstance", + "AWS::SES::MailManagerAddonSubscription", + "AWS::SES::MailManagerArchive", + "AWS::SES::MailManagerIngressPoint", + "AWS::SES::MailManagerRelay", + "AWS::SES::MailManagerRuleSet", + "AWS::SES::MailManagerTrafficPolicy", "AWS::SES::ReceiptFilter", "AWS::SES::ReceiptRule", "AWS::SES::ReceiptRuleSet", @@ -1920,6 +1928,7 @@ "aws-lambda-permission.json", "aws-lambda-url.json", "aws-lambda-version.json", + "aws-launchwizard-deployment.json", "aws-lex-bot.json", "aws-lex-botalias.json", "aws-lex-botversion.json", @@ -1944,6 +1953,9 @@ "aws-location-tracker.json", "aws-location-trackerconsumer.json", "aws-logs-accountpolicy.json", + "aws-logs-delivery.json", + "aws-logs-deliverydestination.json", + "aws-logs-deliverysource.json", "aws-logs-destination.json", "aws-logs-loganomalydetector.json", "aws-logs-loggroup.json", @@ -2007,6 +2019,7 @@ "aws-msk-serverlesscluster.json", "aws-msk-vpcconnection.json", "aws-mwaa-environment.json", + "aws-neptune-dbcluster.json", "aws-neptune-dbsubnetgroup.json", "aws-neptune-eventsubscription.json", "aws-networkfirewall-firewall.json", @@ -2107,6 +2120,7 @@ "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", @@ -2263,6 +2277,13 @@ "aws-ses-contactlist.json", "aws-ses-dedicatedippool.json", "aws-ses-emailidentity.json", + "aws-ses-mailmanageraddoninstance.json", + "aws-ses-mailmanageraddonsubscription.json", + "aws-ses-mailmanagerarchive.json", + "aws-ses-mailmanageringresspoint.json", + "aws-ses-mailmanagerrelay.json", + "aws-ses-mailmanagerruleset.json", + "aws-ses-mailmanagertrafficpolicy.json", "aws-ses-receiptfilter.json", "aws-ses-receiptruleset.json", "aws-ses-template.json", @@ -2299,7 +2320,6 @@ "aws-sso-application.json", "aws-sso-applicationassignment.json", "aws-sso-assignment.json", - "aws-sso-instance.json", "aws-sso-instanceaccesscontrolattributeconfiguration.json", "aws-sso-permissionset.json", "aws-stepfunctions-activity.json", diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-logs-delivery.json b/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-logs-delivery.json deleted file mode 100644 index 9d504c7dc9..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-logs-delivery.json +++ /dev/null @@ -1,130 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/DeliverySourceName", - "/properties/DeliveryDestinationArn" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:CreateDelivery", - "logs:GetDelivery", - "logs:DescribeDeliveries", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:GetDeliverySource", - "logs:GetDeliveryDestination" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDelivery", - "logs:ListTagsForResource", - "logs:UntagResource" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliveries", - "logs:ListTagsForResource" - ] - }, - "read": { - "permissions": [ - "logs:GetDelivery", - "logs:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "logs:GetDelivery", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource" - ] - } - }, - "primaryIdentifier": [ - "/properties/DeliveryId" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationArn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationType": { - "maxLength": 12, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DeliveryId": { - "maxLength": 64, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DeliverySourceName": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/DeliveryId", - "/properties/Arn", - "/properties/DeliveryDestinationType" - ], - "required": [ - "DeliverySourceName", - "DeliveryDestinationArn" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::Delivery" -} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-logs-deliverydestination.json b/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-logs-deliverydestination.json deleted file mode 100644 index 41e9e764ad..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-logs-deliverydestination.json +++ /dev/null @@ -1,152 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name", - "/properties/DestinationResourceArn" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "DestinationPolicy": { - "additionalProperties": false, - "properties": { - "DeliveryDestinationName": { - "maxLength": 60, - "minLength": 1, - "type": "string" - }, - "DeliveryDestinationPolicy": { - "maxLength": 51200, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "DeliveryDestinationName", - "DeliveryDestinationPolicy" - ], - "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" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:PutDeliveryDestination", - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource", - "logs:PutDeliveryDestinationPolicy", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDeliveryDestination", - "logs:DeleteDeliveryDestinationPolicy" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliveryDestinations", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "read": { - "permissions": [ - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "update": { - "permissions": [ - "logs:PutDeliveryDestination", - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource", - "logs:DeleteDeliveryDestinationPolicy", - "logs:PutDeliveryDestinationPolicy", - "logs:GetDeliveryDestinationPolicy" - ] - } - }, - "primaryIdentifier": [ - "/properties/Name" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationPolicy": { - "items": { - "$ref": "#/definitions/DestinationPolicy" - }, - "type": "object" - }, - "DeliveryDestinationType": { - "maxLength": 12, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DestinationResourceArn": { - "$ref": "#/definitions/Arn" - }, - "Name": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/Arn", - "/properties/DeliveryDestinationType" - ], - "required": [ - "Name" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::DeliveryDestination" -} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-logs-deliverysource.json b/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-logs-deliverysource.json deleted file mode 100644 index 30c5c13d9e..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-logs-deliverysource.json +++ /dev/null @@ -1,138 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:PutDeliverySource", - "logs:GetDeliverySource", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:AllowVendedLogDeliveryForResource", - "codewhisperer:AllowVendedLogDeliveryForResource", - "autoloop:AllowVendedLogDeliveryForResource", - "workmail:AllowVendedLogDeliveryForResource" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDeliverySource" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliverySources" - ] - }, - "read": { - "permissions": [ - "logs:GetDeliverySource", - "logs:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "logs:PutDeliverySource", - "logs:GetDeliverySource", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource" - ] - } - }, - "primaryIdentifier": [ - "/properties/Name" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "LogType": { - "maxLength": 255, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Name": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "ResourceArn": { - "$ref": "#/definitions/Arn" - }, - "ResourceArns": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Arn" - }, - "type": "array", - "uniqueItems": true - }, - "Service": { - "maxLength": 255, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/Service", - "/properties/ResourceArns", - "/properties/Arn" - ], - "required": [ - "Name" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::DeliverySource", - "writeOnlyProperties": [ - "/properties/ResourceArn" - ] -} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-neptune-dbcluster.json b/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-neptune-dbcluster.json deleted file mode 100644 index d682d355d7..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-neptune-dbcluster.json +++ /dev/null @@ -1,292 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/AvailabilityZones", - "/properties/DBClusterIdentifier", - "/properties/DBSubnetGroupName", - "/properties/KmsKeyId", - "/properties/RestoreToTime", - "/properties/RestoreType", - "/properties/SnapshotIdentifier", - "/properties/SourceDBClusterIdentifier", - "/properties/StorageEncrypted", - "/properties/UseLatestRestorableTime" - ], - "definitions": { - "DBClusterRole": { - "additionalProperties": false, - "properties": { - "FeatureName": { - "type": "string" - }, - "RoleArn": { - "type": "string" - } - }, - "required": [ - "RoleArn" - ], - "type": "object" - }, - "ServerlessScalingConfiguration": { - "additionalProperties": false, - "properties": { - "MaxCapacity": { - "maximum": 128, - "minimum": 2.5, - "type": "number" - }, - "MinCapacity": { - "maximum": 128, - "minimum": 1, - "type": "number" - } - }, - "required": [ - "MinCapacity", - "MaxCapacity" - ], - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:CreateDBCluster", - "rds:CreateDBInstance", - "rds:DescribeDBClusters", - "rds:ListTagsForResource", - "rds:ModifyDBCluster", - "rds:RestoreDBClusterFromSnapshot", - "rds:RestoreDBClusterToPointInTime", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "rds:DeleteDBCluster", - "rds:DeleteDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeGlobalClusters", - "rds:ListTagsForResource", - "rds:RemoveFromGlobalCluster", - "rds:CreateDBClusterSnapshot", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "list": { - "permissions": [ - "rds:DescribeDBClusters", - "rds:ListTagsForResource", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "read": { - "permissions": [ - "rds:DescribeDBClusters", - "rds:ListTagsForResource", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "update": { - "permissions": [ - "ec2:DescribeSecurityGroups", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:DescribeDBClusters", - "rds:DescribeDBInstances", - "rds:DescribeDBSubnetGroups", - "rds:DescribeGlobalClusters", - "rds:ListTagsForResource", - "rds:ModifyDBCluster", - "rds:ModifyDBInstance", - "rds:RemoveFromGlobalCluster", - "rds:RemoveRoleFromDBCluster", - "rds:RemoveTagsFromResource", - "kms:*" - ], - "timeoutInMinutes": 2160 - } - }, - "primaryIdentifier": [ - "/properties/DBClusterIdentifier" - ], - "properties": { - "AssociatedRoles": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/DBClusterRole" - }, - "type": "array", - "uniqueItems": true - }, - "AvailabilityZones": { - "insertionOrder": true, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "BackupRetentionPeriod": { - "default": 1, - "minimum": 1, - "type": "integer" - }, - "ClusterResourceId": { - "type": "string" - }, - "CopyTagsToSnapshot": { - "type": "boolean" - }, - "DBClusterIdentifier": { - "maxLength": 63, - "minLength": 1, - "pattern": "^[a-zA-Z]{1}(?:-?[a-zA-Z0-9]){0,62}$", - "type": "string" - }, - "DBClusterParameterGroupName": { - "type": "string" - }, - "DBInstanceParameterGroupName": { - "type": "string" - }, - "DBPort": { - "type": "integer" - }, - "DBSubnetGroupName": { - "type": "string" - }, - "DeletionProtection": { - "type": "boolean" - }, - "EnableCloudwatchLogsExports": { - "insertionOrder": true, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "Endpoint": { - "type": "string" - }, - "EngineVersion": { - "type": "string" - }, - "IamAuthEnabled": { - "type": "boolean" - }, - "KmsKeyId": { - "type": "string" - }, - "Port": { - "type": "string" - }, - "PreferredBackupWindow": { - "type": "string" - }, - "PreferredMaintenanceWindow": { - "type": "string" - }, - "ReadEndpoint": { - "type": "string" - }, - "RestoreToTime": { - "type": "string" - }, - "RestoreType": { - "default": "full-copy", - "type": "string" - }, - "ServerlessScalingConfiguration": { - "$ref": "#/definitions/ServerlessScalingConfiguration" - }, - "SnapshotIdentifier": { - "type": "string" - }, - "SourceDBClusterIdentifier": { - "type": "string" - }, - "StorageEncrypted": { - "type": "boolean" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 50, - "type": "array", - "uniqueItems": true - }, - "UseLatestRestorableTime": { - "type": "boolean" - }, - "VpcSecurityGroupIds": { - "insertionOrder": true, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - } - }, - "propertyTransform": { - "/properties/DBClusterIdentifier": "$lowercase(DBClusterIdentifier)", - "/properties/DBClusterParameterGroupName": "$lowercase(DBClusterParameterGroupName)", - "/properties/DBSubnetGroupName": "$lowercase(DBSubnetGroupName)", - "/properties/SnapshotIdentifier": "$lowercase(SnapshotIdentifier)", - "/properties/SourceDBClusterIdentifier": "$lowercase(SourceDBClusterIdentifier)" - }, - "readOnlyProperties": [ - "/properties/Endpoint", - "/properties/ClusterResourceId", - "/properties/Port", - "/properties/ReadEndpoint" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-neptune", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Neptune::DBCluster", - "writeOnlyProperties": [ - "/properties/DBInstanceParameterGroupName", - "/properties/RestoreToTime", - "/properties/RestoreType", - "/properties/SnapshotIdentifier", - "/properties/SourceDBClusterIdentifier", - "/properties/UseLatestRestorableTime" - ] -} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-rds-dbcluster.json b/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-rds-dbcluster.json deleted file mode 100644 index fc3519fd59..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-rds-dbcluster.json +++ /dev/null @@ -1,459 +0,0 @@ -{ - "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" - } - }, - "handlers": { - "create": { - "permissions": [ - "iam:CreateServiceLinkedRole", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:CreateDBCluster", - "rds:CreateDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeDBClusterSnapshots", - "rds:DescribeDBSnapshots", - "rds:DescribeEvents", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:RestoreDBClusterFromSnapshot", - "rds:RestoreDBClusterToPointInTime", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "rds:CreateDBClusterSnapshot", - "rds:DeleteDBCluster", - "rds:DeleteDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeGlobalClusters", - "rds:RemoveFromGlobalCluster" - ] - }, - "list": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "read": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "update": { - "permissions": [ - "ec2:DescribeSecurityGroups", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:DescribeDBClusters", - "rds:DescribeDBSubnetGroups", - "rds:DescribeEvents", - "rds:DescribeGlobalClusters", - "rds:DisableHttpEndpoint", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:ModifyDBInstance", - "rds:RemoveFromGlobalCluster", - "rds:RemoveRoleFromDBCluster", - "rds:RemoveTagsFromResource", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - } - }, - "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": { - "default": 0, - "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": { - "default": "default.aurora5.6", - "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": { - "default": 0, - "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": { - "default": "full-copy", - "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)) = 'aurora-postgresql' ? 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", - "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_2/aws-sso-instance.json b/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-sso-instance.json new file mode 100644 index 0000000000..bd637397ab --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-sso-instance.json @@ -0,0 +1,126 @@ +{ + "additionalProperties": false, + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "[\\w+=,.@-]+", + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "pattern": "[\\w+=,.@-]+", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "sso:CreateInstance", + "sso:DescribeInstance", + "sso:TagResource", + "iam:CreateServiceLinkedRole", + "sso:TagInstance", + "sso:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "sso:DeleteInstance" + ] + }, + "list": { + "permissions": [ + "sso:ListInstances" + ] + }, + "read": { + "permissions": [ + "sso:DescribeInstance", + "sso:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "sso:UpdateInstance", + "sso:TagResource", + "sso:UntagResource", + "sso:ListTagsForResource", + "sso:TagInstance", + "sso:DescribeInstance" + ] + } + }, + "primaryIdentifier": [ + "/properties/InstanceArn" + ], + "properties": { + "IdentityStoreId": { + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-]*$", + "type": "string" + }, + "InstanceArn": { + "maxLength": 1224, + "minLength": 10, + "pattern": "^arn:(aws|aws-us-gov|aws-cn|aws-iso|aws-iso-b):sso:::instance/(sso)?ins-[a-zA-Z0-9-.]{16}$", + "type": "string" + }, + "Name": { + "maxLength": 32, + "minLength": 1, + "pattern": "^[\\w+=,.@-]+$", + "type": "string" + }, + "OwnerAccountId": { + "maxLength": 12, + "minLength": 12, + "pattern": "^\\d{12}?$", + "type": "string" + }, + "Status": { + "enum": [ + "CREATE_IN_PROGRESS", + "DELETE_IN_PROGRESS", + "ACTIVE" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 75, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/InstanceArn", + "/properties/OwnerAccountId", + "/properties/IdentityStoreId", + "/properties/Status" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sso/aws-sso-instance", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::SSO::Instance" +} 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 6b0197fc83..8b0509f98e 100644 --- a/src/cfnlint/data/schemas/providers/ap_southeast_3/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_southeast_3/__init__.py @@ -401,6 +401,7 @@ "AWS::Lambda::Permission", "AWS::Lambda::Url", "AWS::Lambda::Version", + "AWS::LaunchWizard::Deployment", "AWS::Logs::AccountPolicy", "AWS::Logs::Delivery", "AWS::Logs::DeliveryDestination", @@ -749,7 +750,6 @@ "aws-codedeploy-application.json", "aws-codedeploy-deploymentconfig.json", "aws-codedeploy-deploymentgroup.json", - "aws-codepipeline-pipeline.json", "aws-cognito-identitypool.json", "aws-cognito-identitypoolprincipaltag.json", "aws-cognito-identitypoolroleattachment.json", @@ -992,7 +992,11 @@ "aws-lambda-permission.json", "aws-lambda-url.json", "aws-lambda-version.json", + "aws-launchwizard-deployment.json", "aws-logs-accountpolicy.json", + "aws-logs-delivery.json", + "aws-logs-deliverydestination.json", + "aws-logs-deliverysource.json", "aws-logs-destination.json", "aws-logs-loganomalydetector.json", "aws-logs-loggroup.json", @@ -1053,6 +1057,7 @@ "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", diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-codepipeline-pipeline.json b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-codepipeline-pipeline.json new file mode 100644 index 0000000000..925fbfe118 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-codepipeline-pipeline.json @@ -0,0 +1,505 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "ActionDeclaration": { + "additionalProperties": false, + "properties": { + "ActionTypeId": { + "$ref": "#/definitions/ActionTypeId" + }, + "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 + }, + "Region": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "RunOrder": { + "type": "integer" + }, + "TimeoutInMinutes": { + "type": "integer" + } + }, + "required": [ + "ActionTypeId", + "Name" + ], + "type": "object" + }, + "ActionTypeId": { + "additionalProperties": false, + "properties": { + "Category": { + "enum": [ + "Approval", + "Build", + "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" + }, + "BlockerDeclaration": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "Type": { + "enum": [ + "Schedule" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Name" + ], + "type": "object" + }, + "EncryptionKey": { + "additionalProperties": false, + "properties": { + "Id": { + "type": "string" + }, + "Type": { + "type": "string" + } + }, + "required": [ + "Type", + "Id" + ], + "type": "object" + }, + "FailureConditions": { + "additionalProperties": false, + "properties": { + "Result": { + "type": "string" + } + }, + "required": [ + "Result" + ], + "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": { + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "PipelineTriggerDeclaration": { + "additionalProperties": false, + "properties": { + "GitConfiguration": { + "$ref": "#/definitions/GitConfiguration" + }, + "ProviderType": { + "type": "string" + } + }, + "required": [ + "ProviderType" + ], + "type": "object" + }, + "StageDeclaration": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/ActionDeclaration" + }, + "type": "array", + "uniqueItems": true + }, + "Blockers": { + "items": { + "$ref": "#/definitions/BlockerDeclaration" + }, + "type": "array", + "uniqueItems": true + }, + "Name": { + "type": "string" + }, + "OnFailure": { + "$ref": "#/definitions/FailureConditions" + } + }, + "required": [ + "Actions", + "Name" + ], + "type": "object" + }, + "StageTransition": { + "additionalProperties": false, + "properties": { + "Reason": { + "type": "string" + }, + "StageName": { + "type": "string" + } + }, + "required": [ + "StageName", + "Reason" + ], + "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/Id" + ], + "properties": { + "ArtifactStore": { + "$ref": "#/definitions/ArtifactStore" + }, + "ArtifactStores": { + "items": { + "$ref": "#/definitions/ArtifactStoreMap" + }, + "type": "array", + "uniqueItems": true + }, + "DisableInboundStageTransitions": { + "items": { + "$ref": "#/definitions/StageTransition" + }, + "type": "array", + "uniqueItems": true + }, + "ExecutionMode": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "PipelineType": { + "type": "string" + }, + "RestartExecutionOnUpdate": { + "type": "boolean" + }, + "RoleArn": { + "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/Id", + "/properties/Version" + ], + "required": [ + "Stages", + "RoleArn" + ], + "requiredXor": [ + "ArtifactStore", + "ArtifactStores" + ], + "typeName": "AWS::CodePipeline::Pipeline" +} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-logs-delivery.json b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-logs-delivery.json deleted file mode 100644 index 9d504c7dc9..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-logs-delivery.json +++ /dev/null @@ -1,130 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/DeliverySourceName", - "/properties/DeliveryDestinationArn" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:CreateDelivery", - "logs:GetDelivery", - "logs:DescribeDeliveries", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:GetDeliverySource", - "logs:GetDeliveryDestination" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDelivery", - "logs:ListTagsForResource", - "logs:UntagResource" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliveries", - "logs:ListTagsForResource" - ] - }, - "read": { - "permissions": [ - "logs:GetDelivery", - "logs:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "logs:GetDelivery", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource" - ] - } - }, - "primaryIdentifier": [ - "/properties/DeliveryId" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationArn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationType": { - "maxLength": 12, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DeliveryId": { - "maxLength": 64, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DeliverySourceName": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/DeliveryId", - "/properties/Arn", - "/properties/DeliveryDestinationType" - ], - "required": [ - "DeliverySourceName", - "DeliveryDestinationArn" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::Delivery" -} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-logs-deliverydestination.json b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-logs-deliverydestination.json deleted file mode 100644 index 41e9e764ad..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-logs-deliverydestination.json +++ /dev/null @@ -1,152 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name", - "/properties/DestinationResourceArn" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "DestinationPolicy": { - "additionalProperties": false, - "properties": { - "DeliveryDestinationName": { - "maxLength": 60, - "minLength": 1, - "type": "string" - }, - "DeliveryDestinationPolicy": { - "maxLength": 51200, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "DeliveryDestinationName", - "DeliveryDestinationPolicy" - ], - "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" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:PutDeliveryDestination", - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource", - "logs:PutDeliveryDestinationPolicy", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDeliveryDestination", - "logs:DeleteDeliveryDestinationPolicy" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliveryDestinations", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "read": { - "permissions": [ - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "update": { - "permissions": [ - "logs:PutDeliveryDestination", - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource", - "logs:DeleteDeliveryDestinationPolicy", - "logs:PutDeliveryDestinationPolicy", - "logs:GetDeliveryDestinationPolicy" - ] - } - }, - "primaryIdentifier": [ - "/properties/Name" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationPolicy": { - "items": { - "$ref": "#/definitions/DestinationPolicy" - }, - "type": "object" - }, - "DeliveryDestinationType": { - "maxLength": 12, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DestinationResourceArn": { - "$ref": "#/definitions/Arn" - }, - "Name": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/Arn", - "/properties/DeliveryDestinationType" - ], - "required": [ - "Name" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::DeliveryDestination" -} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-logs-deliverysource.json b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-logs-deliverysource.json deleted file mode 100644 index 30c5c13d9e..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-logs-deliverysource.json +++ /dev/null @@ -1,138 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:PutDeliverySource", - "logs:GetDeliverySource", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:AllowVendedLogDeliveryForResource", - "codewhisperer:AllowVendedLogDeliveryForResource", - "autoloop:AllowVendedLogDeliveryForResource", - "workmail:AllowVendedLogDeliveryForResource" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDeliverySource" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliverySources" - ] - }, - "read": { - "permissions": [ - "logs:GetDeliverySource", - "logs:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "logs:PutDeliverySource", - "logs:GetDeliverySource", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource" - ] - } - }, - "primaryIdentifier": [ - "/properties/Name" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "LogType": { - "maxLength": 255, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Name": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "ResourceArn": { - "$ref": "#/definitions/Arn" - }, - "ResourceArns": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Arn" - }, - "type": "array", - "uniqueItems": true - }, - "Service": { - "maxLength": 255, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/Service", - "/properties/ResourceArns", - "/properties/Arn" - ], - "required": [ - "Name" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::DeliverySource", - "writeOnlyProperties": [ - "/properties/ResourceArn" - ] -} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-rds-dbcluster.json b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-rds-dbcluster.json deleted file mode 100644 index fc3519fd59..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-rds-dbcluster.json +++ /dev/null @@ -1,459 +0,0 @@ -{ - "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" - } - }, - "handlers": { - "create": { - "permissions": [ - "iam:CreateServiceLinkedRole", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:CreateDBCluster", - "rds:CreateDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeDBClusterSnapshots", - "rds:DescribeDBSnapshots", - "rds:DescribeEvents", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:RestoreDBClusterFromSnapshot", - "rds:RestoreDBClusterToPointInTime", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "rds:CreateDBClusterSnapshot", - "rds:DeleteDBCluster", - "rds:DeleteDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeGlobalClusters", - "rds:RemoveFromGlobalCluster" - ] - }, - "list": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "read": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "update": { - "permissions": [ - "ec2:DescribeSecurityGroups", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:DescribeDBClusters", - "rds:DescribeDBSubnetGroups", - "rds:DescribeEvents", - "rds:DescribeGlobalClusters", - "rds:DisableHttpEndpoint", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:ModifyDBInstance", - "rds:RemoveFromGlobalCluster", - "rds:RemoveRoleFromDBCluster", - "rds:RemoveTagsFromResource", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - } - }, - "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": { - "default": 0, - "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": { - "default": "default.aurora5.6", - "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": { - "default": 0, - "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": { - "default": "full-copy", - "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)) = 'aurora-postgresql' ? 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", - "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_4/__init__.py b/src/cfnlint/data/schemas/providers/ap_southeast_4/__init__.py index fab1ccb901..b54ee681d7 100644 --- a/src/cfnlint/data/schemas/providers/ap_southeast_4/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_southeast_4/__init__.py @@ -373,6 +373,7 @@ "AWS::Lambda::LayerVersionPermission", "AWS::Lambda::Permission", "AWS::Lambda::Version", + "AWS::LaunchWizard::Deployment", "AWS::Logs::AccountPolicy", "AWS::Logs::Delivery", "AWS::Logs::DeliveryDestination", @@ -682,7 +683,6 @@ "aws-codedeploy-application.json", "aws-codedeploy-deploymentconfig.json", "aws-codedeploy-deploymentgroup.json", - "aws-codepipeline-pipeline.json", "aws-cognito-identitypool.json", "aws-cognito-identitypoolprincipaltag.json", "aws-cognito-identitypoolroleattachment.json", @@ -903,7 +903,11 @@ "aws-lambda-layerversionpermission.json", "aws-lambda-permission.json", "aws-lambda-version.json", + "aws-launchwizard-deployment.json", "aws-logs-accountpolicy.json", + "aws-logs-delivery.json", + "aws-logs-deliverydestination.json", + "aws-logs-deliverysource.json", "aws-logs-destination.json", "aws-logs-loganomalydetector.json", "aws-logs-loggroup.json", @@ -963,6 +967,7 @@ "aws-pcaconnectorad-template.json", "aws-pcaconnectorad-templategroupaccesscontrolentry.json", "aws-ram-permission.json", + "aws-rds-dbcluster.json", "aws-rds-dbclusterparametergroup.json", "aws-rds-dbinstance.json", "aws-rds-dbparametergroup.json", diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-codepipeline-pipeline.json b/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-codepipeline-pipeline.json new file mode 100644 index 0000000000..925fbfe118 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-codepipeline-pipeline.json @@ -0,0 +1,505 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "ActionDeclaration": { + "additionalProperties": false, + "properties": { + "ActionTypeId": { + "$ref": "#/definitions/ActionTypeId" + }, + "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 + }, + "Region": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "RunOrder": { + "type": "integer" + }, + "TimeoutInMinutes": { + "type": "integer" + } + }, + "required": [ + "ActionTypeId", + "Name" + ], + "type": "object" + }, + "ActionTypeId": { + "additionalProperties": false, + "properties": { + "Category": { + "enum": [ + "Approval", + "Build", + "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" + }, + "BlockerDeclaration": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "Type": { + "enum": [ + "Schedule" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Name" + ], + "type": "object" + }, + "EncryptionKey": { + "additionalProperties": false, + "properties": { + "Id": { + "type": "string" + }, + "Type": { + "type": "string" + } + }, + "required": [ + "Type", + "Id" + ], + "type": "object" + }, + "FailureConditions": { + "additionalProperties": false, + "properties": { + "Result": { + "type": "string" + } + }, + "required": [ + "Result" + ], + "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": { + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "PipelineTriggerDeclaration": { + "additionalProperties": false, + "properties": { + "GitConfiguration": { + "$ref": "#/definitions/GitConfiguration" + }, + "ProviderType": { + "type": "string" + } + }, + "required": [ + "ProviderType" + ], + "type": "object" + }, + "StageDeclaration": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/ActionDeclaration" + }, + "type": "array", + "uniqueItems": true + }, + "Blockers": { + "items": { + "$ref": "#/definitions/BlockerDeclaration" + }, + "type": "array", + "uniqueItems": true + }, + "Name": { + "type": "string" + }, + "OnFailure": { + "$ref": "#/definitions/FailureConditions" + } + }, + "required": [ + "Actions", + "Name" + ], + "type": "object" + }, + "StageTransition": { + "additionalProperties": false, + "properties": { + "Reason": { + "type": "string" + }, + "StageName": { + "type": "string" + } + }, + "required": [ + "StageName", + "Reason" + ], + "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/Id" + ], + "properties": { + "ArtifactStore": { + "$ref": "#/definitions/ArtifactStore" + }, + "ArtifactStores": { + "items": { + "$ref": "#/definitions/ArtifactStoreMap" + }, + "type": "array", + "uniqueItems": true + }, + "DisableInboundStageTransitions": { + "items": { + "$ref": "#/definitions/StageTransition" + }, + "type": "array", + "uniqueItems": true + }, + "ExecutionMode": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "PipelineType": { + "type": "string" + }, + "RestartExecutionOnUpdate": { + "type": "boolean" + }, + "RoleArn": { + "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/Id", + "/properties/Version" + ], + "required": [ + "Stages", + "RoleArn" + ], + "requiredXor": [ + "ArtifactStore", + "ArtifactStores" + ], + "typeName": "AWS::CodePipeline::Pipeline" +} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-logs-delivery.json b/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-logs-delivery.json deleted file mode 100644 index 9d504c7dc9..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-logs-delivery.json +++ /dev/null @@ -1,130 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/DeliverySourceName", - "/properties/DeliveryDestinationArn" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:CreateDelivery", - "logs:GetDelivery", - "logs:DescribeDeliveries", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:GetDeliverySource", - "logs:GetDeliveryDestination" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDelivery", - "logs:ListTagsForResource", - "logs:UntagResource" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliveries", - "logs:ListTagsForResource" - ] - }, - "read": { - "permissions": [ - "logs:GetDelivery", - "logs:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "logs:GetDelivery", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource" - ] - } - }, - "primaryIdentifier": [ - "/properties/DeliveryId" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationArn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationType": { - "maxLength": 12, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DeliveryId": { - "maxLength": 64, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DeliverySourceName": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/DeliveryId", - "/properties/Arn", - "/properties/DeliveryDestinationType" - ], - "required": [ - "DeliverySourceName", - "DeliveryDestinationArn" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::Delivery" -} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-logs-deliverydestination.json b/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-logs-deliverydestination.json deleted file mode 100644 index 41e9e764ad..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-logs-deliverydestination.json +++ /dev/null @@ -1,152 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name", - "/properties/DestinationResourceArn" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "DestinationPolicy": { - "additionalProperties": false, - "properties": { - "DeliveryDestinationName": { - "maxLength": 60, - "minLength": 1, - "type": "string" - }, - "DeliveryDestinationPolicy": { - "maxLength": 51200, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "DeliveryDestinationName", - "DeliveryDestinationPolicy" - ], - "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" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:PutDeliveryDestination", - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource", - "logs:PutDeliveryDestinationPolicy", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDeliveryDestination", - "logs:DeleteDeliveryDestinationPolicy" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliveryDestinations", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "read": { - "permissions": [ - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "update": { - "permissions": [ - "logs:PutDeliveryDestination", - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource", - "logs:DeleteDeliveryDestinationPolicy", - "logs:PutDeliveryDestinationPolicy", - "logs:GetDeliveryDestinationPolicy" - ] - } - }, - "primaryIdentifier": [ - "/properties/Name" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationPolicy": { - "items": { - "$ref": "#/definitions/DestinationPolicy" - }, - "type": "object" - }, - "DeliveryDestinationType": { - "maxLength": 12, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DestinationResourceArn": { - "$ref": "#/definitions/Arn" - }, - "Name": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/Arn", - "/properties/DeliveryDestinationType" - ], - "required": [ - "Name" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::DeliveryDestination" -} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-logs-deliverysource.json b/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-logs-deliverysource.json deleted file mode 100644 index 30c5c13d9e..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-logs-deliverysource.json +++ /dev/null @@ -1,138 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:PutDeliverySource", - "logs:GetDeliverySource", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:AllowVendedLogDeliveryForResource", - "codewhisperer:AllowVendedLogDeliveryForResource", - "autoloop:AllowVendedLogDeliveryForResource", - "workmail:AllowVendedLogDeliveryForResource" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDeliverySource" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliverySources" - ] - }, - "read": { - "permissions": [ - "logs:GetDeliverySource", - "logs:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "logs:PutDeliverySource", - "logs:GetDeliverySource", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource" - ] - } - }, - "primaryIdentifier": [ - "/properties/Name" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "LogType": { - "maxLength": 255, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Name": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "ResourceArn": { - "$ref": "#/definitions/Arn" - }, - "ResourceArns": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Arn" - }, - "type": "array", - "uniqueItems": true - }, - "Service": { - "maxLength": 255, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/Service", - "/properties/ResourceArns", - "/properties/Arn" - ], - "required": [ - "Name" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::DeliverySource", - "writeOnlyProperties": [ - "/properties/ResourceArn" - ] -} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-rds-dbcluster.json b/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-rds-dbcluster.json deleted file mode 100644 index fc3519fd59..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-rds-dbcluster.json +++ /dev/null @@ -1,459 +0,0 @@ -{ - "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" - } - }, - "handlers": { - "create": { - "permissions": [ - "iam:CreateServiceLinkedRole", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:CreateDBCluster", - "rds:CreateDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeDBClusterSnapshots", - "rds:DescribeDBSnapshots", - "rds:DescribeEvents", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:RestoreDBClusterFromSnapshot", - "rds:RestoreDBClusterToPointInTime", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "rds:CreateDBClusterSnapshot", - "rds:DeleteDBCluster", - "rds:DeleteDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeGlobalClusters", - "rds:RemoveFromGlobalCluster" - ] - }, - "list": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "read": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "update": { - "permissions": [ - "ec2:DescribeSecurityGroups", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:DescribeDBClusters", - "rds:DescribeDBSubnetGroups", - "rds:DescribeEvents", - "rds:DescribeGlobalClusters", - "rds:DisableHttpEndpoint", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:ModifyDBInstance", - "rds:RemoveFromGlobalCluster", - "rds:RemoveRoleFromDBCluster", - "rds:RemoveTagsFromResource", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - } - }, - "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": { - "default": 0, - "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": { - "default": "default.aurora5.6", - "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": { - "default": 0, - "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": { - "default": "full-copy", - "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)) = 'aurora-postgresql' ? 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", - "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/ca_central_1/__init__.py b/src/cfnlint/data/schemas/providers/ca_central_1/__init__.py index 7502f2b727..d72be8acc2 100644 --- a/src/cfnlint/data/schemas/providers/ca_central_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/ca_central_1/__init__.py @@ -304,6 +304,7 @@ "AWS::DocDB::DBInstance", "AWS::DocDB::DBSubnetGroup", "AWS::DocDB::EventSubscription", + "AWS::DocDBElastic::Cluster", "AWS::DynamoDB::GlobalTable", "AWS::DynamoDB::Table", "AWS::EC2::CapacityReservation", @@ -624,6 +625,7 @@ "AWS::Lambda::Permission", "AWS::Lambda::Url", "AWS::Lambda::Version", + "AWS::LaunchWizard::Deployment", "AWS::Lex::Bot", "AWS::Lex::BotAlias", "AWS::Lex::BotVersion", @@ -1250,6 +1252,7 @@ "aws-cloudwatch-alarm.json", "aws-cloudwatch-anomalydetector.json", "aws-cloudwatch-compositealarm.json", + "aws-cloudwatch-dashboard.json", "aws-cloudwatch-insightrule.json", "aws-cloudwatch-metricstream.json", "aws-codebuild-project.json", @@ -1377,6 +1380,7 @@ "aws-docdb-dbinstance.json", "aws-docdb-dbsubnetgroup.json", "aws-docdb-eventsubscription.json", + "aws-docdbelastic-cluster.json", "aws-dynamodb-globaltable.json", "aws-dynamodb-table.json", "aws-ec2-capacityreservation.json", @@ -1688,6 +1692,7 @@ "aws-lambda-permission.json", "aws-lambda-url.json", "aws-lambda-version.json", + "aws-launchwizard-deployment.json", "aws-lex-bot.json", "aws-lex-botalias.json", "aws-lex-botversion.json", @@ -1709,6 +1714,7 @@ "aws-location-map.json", "aws-location-placeindex.json", "aws-location-routecalculator.json", + "aws-location-tracker.json", "aws-location-trackerconsumer.json", "aws-logs-accountpolicy.json", "aws-logs-delivery.json", @@ -1771,6 +1777,7 @@ "aws-msk-serverlesscluster.json", "aws-msk-vpcconnection.json", "aws-mwaa-environment.json", + "aws-neptune-dbcluster.json", "aws-neptune-dbclusterparametergroup.json", "aws-neptune-dbinstance.json", "aws-neptune-dbparametergroup.json", @@ -1864,6 +1871,7 @@ "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", diff --git a/src/cfnlint/data/schemas/providers/ca_central_1/aws-cloudwatch-dashboard.json b/src/cfnlint/data/schemas/providers/ca_central_1/aws-cloudwatch-dashboard.json deleted file mode 100644 index 258074cf80..0000000000 --- a/src/cfnlint/data/schemas/providers/ca_central_1/aws-cloudwatch-dashboard.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/DashboardName" - ], - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "DashboardBody": { - "type": "string" - }, - "DashboardName": { - "type": "string" - }, - "Id": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "DashboardBody" - ], - "typeName": "AWS::CloudWatch::Dashboard" -} diff --git a/src/cfnlint/data/schemas/providers/ca_central_1/aws-location-tracker.json b/src/cfnlint/data/schemas/providers/ca_central_1/aws-location-tracker.json deleted file mode 100644 index 49d479d160..0000000000 --- a/src/cfnlint/data/schemas/providers/ca_central_1/aws-location-tracker.json +++ /dev/null @@ -1,185 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/KmsKeyId", - "/properties/TrackerName" - ], - "definitions": { - "PositionFiltering": { - "enum": [ - "TimeBased", - "DistanceBased", - "AccuracyBased" - ], - "type": "string" - }, - "PricingPlan": { - "enum": [ - "RequestBasedUsage" - ], - "type": "string" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "pattern": "^[a-zA-Z+-=._:/]+$", - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "pattern": "^[A-Za-z0-9 _=@:.+-/]*$", - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - }, - "TagMap": { - "additionalProperties": false, - "maxProperties": 50, - "patternProperties": { - "^[a-zA-Z+-=._:/]+$": { - "maxLength": 256, - "minLength": 0, - "pattern": "^[A-Za-z0-9 _=@:.+-/]*$", - "type": "string" - } - }, - "type": "object" - }, - "iso8601UTC": { - "pattern": "^([0-2]\\d{3})-(0[0-9]|1[0-2])-([0-2]\\d|3[01])T([01]\\d|2[0-4]):([0-5]\\d):([0-6]\\d)((\\.\\d{3})?)Z$", - "type": "string" - } - }, - "deprecatedProperties": [ - "/properties/PricingPlan", - "/properties/PricingPlanDataSource" - ], - "handlers": { - "create": { - "permissions": [ - "geo:CreateTracker", - "geo:DescribeTracker", - "geo:TagResource", - "geo:UntagResource", - "kms:DescribeKey", - "kms:CreateGrant" - ] - }, - "delete": { - "permissions": [ - "geo:DeleteTracker", - "geo:DescribeTracker" - ] - }, - "list": { - "permissions": [ - "geo:ListTrackers" - ] - }, - "read": { - "permissions": [ - "geo:DescribeTracker", - "kms:DescribeKey" - ] - }, - "update": { - "permissions": [ - "geo:CreateTracker", - "geo:DescribeTracker", - "geo:TagResource", - "geo:UntagResource", - "kms:DescribeKey", - "kms:CreateGrant", - "geo:UpdateTracker" - ] - } - }, - "primaryIdentifier": [ - "/properties/TrackerName" - ], - "properties": { - "Arn": { - "maxLength": 1600, - "pattern": "^arn(:[a-z0-9]+([.-][a-z0-9]+)*){2}(:([a-z0-9]+([.-][a-z0-9]+)*)?){2}:([^/].*)?$", - "type": "string" - }, - "CreateTime": { - "$ref": "#/definitions/iso8601UTC" - }, - "Description": { - "maxLength": 1000, - "minLength": 0, - "type": "string" - }, - "EventBridgeEnabled": { - "type": "boolean" - }, - "KmsKeyEnableGeospatialQueries": { - "type": "boolean" - }, - "KmsKeyId": { - "maxLength": 2048, - "minLength": 1, - "type": "string" - }, - "PositionFiltering": { - "$ref": "#/definitions/PositionFiltering" - }, - "PricingPlan": { - "$ref": "#/definitions/PricingPlan" - }, - "PricingPlanDataSource": { - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 200, - "minItems": 0, - "type": "array", - "uniqueItems": true - }, - "TrackerArn": { - "maxLength": 1600, - "pattern": "^arn(:[a-z0-9]+([.-][a-z0-9]+)*){2}(:([a-z0-9]+([.-][a-z0-9]+)*)?){2}:([^/].*)?$", - "type": "string" - }, - "TrackerName": { - "maxLength": 100, - "minLength": 1, - "pattern": "^[-._\\w]+$", - "type": "string" - }, - "UpdateTime": { - "$ref": "#/definitions/iso8601UTC" - } - }, - "readOnlyProperties": [ - "/properties/CreateTime", - "/properties/Arn", - "/properties/TrackerArn", - "/properties/UpdateTime" - ], - "required": [ - "TrackerName" - ], - "tagging": { - "cloudFormationSystemTags": false, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Location::Tracker" -} diff --git a/src/cfnlint/data/schemas/providers/ca_central_1/aws-neptune-dbcluster.json b/src/cfnlint/data/schemas/providers/ca_central_1/aws-neptune-dbcluster.json deleted file mode 100644 index d682d355d7..0000000000 --- a/src/cfnlint/data/schemas/providers/ca_central_1/aws-neptune-dbcluster.json +++ /dev/null @@ -1,292 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/AvailabilityZones", - "/properties/DBClusterIdentifier", - "/properties/DBSubnetGroupName", - "/properties/KmsKeyId", - "/properties/RestoreToTime", - "/properties/RestoreType", - "/properties/SnapshotIdentifier", - "/properties/SourceDBClusterIdentifier", - "/properties/StorageEncrypted", - "/properties/UseLatestRestorableTime" - ], - "definitions": { - "DBClusterRole": { - "additionalProperties": false, - "properties": { - "FeatureName": { - "type": "string" - }, - "RoleArn": { - "type": "string" - } - }, - "required": [ - "RoleArn" - ], - "type": "object" - }, - "ServerlessScalingConfiguration": { - "additionalProperties": false, - "properties": { - "MaxCapacity": { - "maximum": 128, - "minimum": 2.5, - "type": "number" - }, - "MinCapacity": { - "maximum": 128, - "minimum": 1, - "type": "number" - } - }, - "required": [ - "MinCapacity", - "MaxCapacity" - ], - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:CreateDBCluster", - "rds:CreateDBInstance", - "rds:DescribeDBClusters", - "rds:ListTagsForResource", - "rds:ModifyDBCluster", - "rds:RestoreDBClusterFromSnapshot", - "rds:RestoreDBClusterToPointInTime", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "rds:DeleteDBCluster", - "rds:DeleteDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeGlobalClusters", - "rds:ListTagsForResource", - "rds:RemoveFromGlobalCluster", - "rds:CreateDBClusterSnapshot", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "list": { - "permissions": [ - "rds:DescribeDBClusters", - "rds:ListTagsForResource", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "read": { - "permissions": [ - "rds:DescribeDBClusters", - "rds:ListTagsForResource", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "update": { - "permissions": [ - "ec2:DescribeSecurityGroups", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:DescribeDBClusters", - "rds:DescribeDBInstances", - "rds:DescribeDBSubnetGroups", - "rds:DescribeGlobalClusters", - "rds:ListTagsForResource", - "rds:ModifyDBCluster", - "rds:ModifyDBInstance", - "rds:RemoveFromGlobalCluster", - "rds:RemoveRoleFromDBCluster", - "rds:RemoveTagsFromResource", - "kms:*" - ], - "timeoutInMinutes": 2160 - } - }, - "primaryIdentifier": [ - "/properties/DBClusterIdentifier" - ], - "properties": { - "AssociatedRoles": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/DBClusterRole" - }, - "type": "array", - "uniqueItems": true - }, - "AvailabilityZones": { - "insertionOrder": true, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "BackupRetentionPeriod": { - "default": 1, - "minimum": 1, - "type": "integer" - }, - "ClusterResourceId": { - "type": "string" - }, - "CopyTagsToSnapshot": { - "type": "boolean" - }, - "DBClusterIdentifier": { - "maxLength": 63, - "minLength": 1, - "pattern": "^[a-zA-Z]{1}(?:-?[a-zA-Z0-9]){0,62}$", - "type": "string" - }, - "DBClusterParameterGroupName": { - "type": "string" - }, - "DBInstanceParameterGroupName": { - "type": "string" - }, - "DBPort": { - "type": "integer" - }, - "DBSubnetGroupName": { - "type": "string" - }, - "DeletionProtection": { - "type": "boolean" - }, - "EnableCloudwatchLogsExports": { - "insertionOrder": true, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "Endpoint": { - "type": "string" - }, - "EngineVersion": { - "type": "string" - }, - "IamAuthEnabled": { - "type": "boolean" - }, - "KmsKeyId": { - "type": "string" - }, - "Port": { - "type": "string" - }, - "PreferredBackupWindow": { - "type": "string" - }, - "PreferredMaintenanceWindow": { - "type": "string" - }, - "ReadEndpoint": { - "type": "string" - }, - "RestoreToTime": { - "type": "string" - }, - "RestoreType": { - "default": "full-copy", - "type": "string" - }, - "ServerlessScalingConfiguration": { - "$ref": "#/definitions/ServerlessScalingConfiguration" - }, - "SnapshotIdentifier": { - "type": "string" - }, - "SourceDBClusterIdentifier": { - "type": "string" - }, - "StorageEncrypted": { - "type": "boolean" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 50, - "type": "array", - "uniqueItems": true - }, - "UseLatestRestorableTime": { - "type": "boolean" - }, - "VpcSecurityGroupIds": { - "insertionOrder": true, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - } - }, - "propertyTransform": { - "/properties/DBClusterIdentifier": "$lowercase(DBClusterIdentifier)", - "/properties/DBClusterParameterGroupName": "$lowercase(DBClusterParameterGroupName)", - "/properties/DBSubnetGroupName": "$lowercase(DBSubnetGroupName)", - "/properties/SnapshotIdentifier": "$lowercase(SnapshotIdentifier)", - "/properties/SourceDBClusterIdentifier": "$lowercase(SourceDBClusterIdentifier)" - }, - "readOnlyProperties": [ - "/properties/Endpoint", - "/properties/ClusterResourceId", - "/properties/Port", - "/properties/ReadEndpoint" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-neptune", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Neptune::DBCluster", - "writeOnlyProperties": [ - "/properties/DBInstanceParameterGroupName", - "/properties/RestoreToTime", - "/properties/RestoreType", - "/properties/SnapshotIdentifier", - "/properties/SourceDBClusterIdentifier", - "/properties/UseLatestRestorableTime" - ] -} diff --git a/src/cfnlint/data/schemas/providers/ca_central_1/aws-rds-dbcluster.json b/src/cfnlint/data/schemas/providers/ca_central_1/aws-rds-dbcluster.json deleted file mode 100644 index fc3519fd59..0000000000 --- a/src/cfnlint/data/schemas/providers/ca_central_1/aws-rds-dbcluster.json +++ /dev/null @@ -1,459 +0,0 @@ -{ - "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" - } - }, - "handlers": { - "create": { - "permissions": [ - "iam:CreateServiceLinkedRole", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:CreateDBCluster", - "rds:CreateDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeDBClusterSnapshots", - "rds:DescribeDBSnapshots", - "rds:DescribeEvents", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:RestoreDBClusterFromSnapshot", - "rds:RestoreDBClusterToPointInTime", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "rds:CreateDBClusterSnapshot", - "rds:DeleteDBCluster", - "rds:DeleteDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeGlobalClusters", - "rds:RemoveFromGlobalCluster" - ] - }, - "list": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "read": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "update": { - "permissions": [ - "ec2:DescribeSecurityGroups", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:DescribeDBClusters", - "rds:DescribeDBSubnetGroups", - "rds:DescribeEvents", - "rds:DescribeGlobalClusters", - "rds:DisableHttpEndpoint", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:ModifyDBInstance", - "rds:RemoveFromGlobalCluster", - "rds:RemoveRoleFromDBCluster", - "rds:RemoveTagsFromResource", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - } - }, - "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": { - "default": 0, - "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": { - "default": "default.aurora5.6", - "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": { - "default": 0, - "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": { - "default": "full-copy", - "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)) = 'aurora-postgresql' ? 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", - "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/ca_west_1/__init__.py b/src/cfnlint/data/schemas/providers/ca_west_1/__init__.py index 60c59a4d62..c8530f5946 100644 --- a/src/cfnlint/data/schemas/providers/ca_west_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/ca_west_1/__init__.py @@ -109,6 +109,13 @@ "AWS::CodeDeploy::DeploymentGroup", "AWS::CodePipeline::CustomActionType", "AWS::CodePipeline::Pipeline", + "AWS::Cognito::LogDeliveryConfiguration", + "AWS::Cognito::UserPool", + "AWS::Cognito::UserPoolClient", + "AWS::Cognito::UserPoolGroup", + "AWS::Cognito::UserPoolRiskConfigurationAttachment", + "AWS::Cognito::UserPoolUser", + "AWS::Cognito::UserPoolUserToGroupAttachment", "AWS::Config::AggregationAuthorization", "AWS::Config::ConfigRule", "AWS::Config::ConfigurationAggregator", @@ -594,7 +601,13 @@ "aws-codedeploy-application.json", "aws-codedeploy-deploymentconfig.json", "aws-codedeploy-deploymentgroup.json", - "aws-codepipeline-pipeline.json", + "aws-cognito-logdeliveryconfiguration.json", + "aws-cognito-userpool.json", + "aws-cognito-userpoolclient.json", + "aws-cognito-userpoolgroup.json", + "aws-cognito-userpoolriskconfigurationattachment.json", + "aws-cognito-userpooluser.json", + "aws-cognito-userpoolusertogroupattachment.json", "aws-config-aggregationauthorization.json", "aws-config-configurationaggregator.json", "aws-config-configurationrecorder.json", @@ -791,6 +804,9 @@ "aws-lambda-permission.json", "aws-lambda-version.json", "aws-logs-accountpolicy.json", + "aws-logs-delivery.json", + "aws-logs-deliverydestination.json", + "aws-logs-deliverysource.json", "aws-logs-destination.json", "aws-logs-loggroup.json", "aws-logs-logstream.json", @@ -822,6 +838,7 @@ "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", @@ -874,6 +891,7 @@ "aws-sdb-domain.json", "aws-secretsmanager-resourcepolicy.json", "aws-secretsmanager-rotationschedule.json", + "aws-secretsmanager-secret.json", "aws-securityhub-automationrule.json", "aws-securityhub-delegatedadmin.json", "aws-securityhub-hub.json", diff --git a/src/cfnlint/data/schemas/providers/ca_west_1/aws-codepipeline-pipeline.json b/src/cfnlint/data/schemas/providers/ca_west_1/aws-codepipeline-pipeline.json new file mode 100644 index 0000000000..925fbfe118 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ca_west_1/aws-codepipeline-pipeline.json @@ -0,0 +1,505 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "ActionDeclaration": { + "additionalProperties": false, + "properties": { + "ActionTypeId": { + "$ref": "#/definitions/ActionTypeId" + }, + "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 + }, + "Region": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "RunOrder": { + "type": "integer" + }, + "TimeoutInMinutes": { + "type": "integer" + } + }, + "required": [ + "ActionTypeId", + "Name" + ], + "type": "object" + }, + "ActionTypeId": { + "additionalProperties": false, + "properties": { + "Category": { + "enum": [ + "Approval", + "Build", + "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" + }, + "BlockerDeclaration": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "Type": { + "enum": [ + "Schedule" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Name" + ], + "type": "object" + }, + "EncryptionKey": { + "additionalProperties": false, + "properties": { + "Id": { + "type": "string" + }, + "Type": { + "type": "string" + } + }, + "required": [ + "Type", + "Id" + ], + "type": "object" + }, + "FailureConditions": { + "additionalProperties": false, + "properties": { + "Result": { + "type": "string" + } + }, + "required": [ + "Result" + ], + "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": { + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "PipelineTriggerDeclaration": { + "additionalProperties": false, + "properties": { + "GitConfiguration": { + "$ref": "#/definitions/GitConfiguration" + }, + "ProviderType": { + "type": "string" + } + }, + "required": [ + "ProviderType" + ], + "type": "object" + }, + "StageDeclaration": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/ActionDeclaration" + }, + "type": "array", + "uniqueItems": true + }, + "Blockers": { + "items": { + "$ref": "#/definitions/BlockerDeclaration" + }, + "type": "array", + "uniqueItems": true + }, + "Name": { + "type": "string" + }, + "OnFailure": { + "$ref": "#/definitions/FailureConditions" + } + }, + "required": [ + "Actions", + "Name" + ], + "type": "object" + }, + "StageTransition": { + "additionalProperties": false, + "properties": { + "Reason": { + "type": "string" + }, + "StageName": { + "type": "string" + } + }, + "required": [ + "StageName", + "Reason" + ], + "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/Id" + ], + "properties": { + "ArtifactStore": { + "$ref": "#/definitions/ArtifactStore" + }, + "ArtifactStores": { + "items": { + "$ref": "#/definitions/ArtifactStoreMap" + }, + "type": "array", + "uniqueItems": true + }, + "DisableInboundStageTransitions": { + "items": { + "$ref": "#/definitions/StageTransition" + }, + "type": "array", + "uniqueItems": true + }, + "ExecutionMode": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "PipelineType": { + "type": "string" + }, + "RestartExecutionOnUpdate": { + "type": "boolean" + }, + "RoleArn": { + "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/Id", + "/properties/Version" + ], + "required": [ + "Stages", + "RoleArn" + ], + "requiredXor": [ + "ArtifactStore", + "ArtifactStores" + ], + "typeName": "AWS::CodePipeline::Pipeline" +} diff --git a/src/cfnlint/data/schemas/providers/ca_west_1/aws-logs-delivery.json b/src/cfnlint/data/schemas/providers/ca_west_1/aws-logs-delivery.json deleted file mode 100644 index 9d504c7dc9..0000000000 --- a/src/cfnlint/data/schemas/providers/ca_west_1/aws-logs-delivery.json +++ /dev/null @@ -1,130 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/DeliverySourceName", - "/properties/DeliveryDestinationArn" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:CreateDelivery", - "logs:GetDelivery", - "logs:DescribeDeliveries", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:GetDeliverySource", - "logs:GetDeliveryDestination" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDelivery", - "logs:ListTagsForResource", - "logs:UntagResource" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliveries", - "logs:ListTagsForResource" - ] - }, - "read": { - "permissions": [ - "logs:GetDelivery", - "logs:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "logs:GetDelivery", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource" - ] - } - }, - "primaryIdentifier": [ - "/properties/DeliveryId" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationArn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationType": { - "maxLength": 12, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DeliveryId": { - "maxLength": 64, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DeliverySourceName": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/DeliveryId", - "/properties/Arn", - "/properties/DeliveryDestinationType" - ], - "required": [ - "DeliverySourceName", - "DeliveryDestinationArn" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::Delivery" -} diff --git a/src/cfnlint/data/schemas/providers/ca_west_1/aws-logs-deliverydestination.json b/src/cfnlint/data/schemas/providers/ca_west_1/aws-logs-deliverydestination.json deleted file mode 100644 index 41e9e764ad..0000000000 --- a/src/cfnlint/data/schemas/providers/ca_west_1/aws-logs-deliverydestination.json +++ /dev/null @@ -1,152 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name", - "/properties/DestinationResourceArn" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "DestinationPolicy": { - "additionalProperties": false, - "properties": { - "DeliveryDestinationName": { - "maxLength": 60, - "minLength": 1, - "type": "string" - }, - "DeliveryDestinationPolicy": { - "maxLength": 51200, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "DeliveryDestinationName", - "DeliveryDestinationPolicy" - ], - "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" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:PutDeliveryDestination", - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource", - "logs:PutDeliveryDestinationPolicy", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDeliveryDestination", - "logs:DeleteDeliveryDestinationPolicy" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliveryDestinations", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "read": { - "permissions": [ - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "update": { - "permissions": [ - "logs:PutDeliveryDestination", - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource", - "logs:DeleteDeliveryDestinationPolicy", - "logs:PutDeliveryDestinationPolicy", - "logs:GetDeliveryDestinationPolicy" - ] - } - }, - "primaryIdentifier": [ - "/properties/Name" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationPolicy": { - "items": { - "$ref": "#/definitions/DestinationPolicy" - }, - "type": "object" - }, - "DeliveryDestinationType": { - "maxLength": 12, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DestinationResourceArn": { - "$ref": "#/definitions/Arn" - }, - "Name": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/Arn", - "/properties/DeliveryDestinationType" - ], - "required": [ - "Name" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::DeliveryDestination" -} diff --git a/src/cfnlint/data/schemas/providers/ca_west_1/aws-logs-deliverysource.json b/src/cfnlint/data/schemas/providers/ca_west_1/aws-logs-deliverysource.json deleted file mode 100644 index 30c5c13d9e..0000000000 --- a/src/cfnlint/data/schemas/providers/ca_west_1/aws-logs-deliverysource.json +++ /dev/null @@ -1,138 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:PutDeliverySource", - "logs:GetDeliverySource", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:AllowVendedLogDeliveryForResource", - "codewhisperer:AllowVendedLogDeliveryForResource", - "autoloop:AllowVendedLogDeliveryForResource", - "workmail:AllowVendedLogDeliveryForResource" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDeliverySource" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliverySources" - ] - }, - "read": { - "permissions": [ - "logs:GetDeliverySource", - "logs:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "logs:PutDeliverySource", - "logs:GetDeliverySource", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource" - ] - } - }, - "primaryIdentifier": [ - "/properties/Name" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "LogType": { - "maxLength": 255, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Name": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "ResourceArn": { - "$ref": "#/definitions/Arn" - }, - "ResourceArns": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Arn" - }, - "type": "array", - "uniqueItems": true - }, - "Service": { - "maxLength": 255, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/Service", - "/properties/ResourceArns", - "/properties/Arn" - ], - "required": [ - "Name" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::DeliverySource", - "writeOnlyProperties": [ - "/properties/ResourceArn" - ] -} diff --git a/src/cfnlint/data/schemas/providers/ca_west_1/aws-rds-dbcluster.json b/src/cfnlint/data/schemas/providers/ca_west_1/aws-rds-dbcluster.json deleted file mode 100644 index fc3519fd59..0000000000 --- a/src/cfnlint/data/schemas/providers/ca_west_1/aws-rds-dbcluster.json +++ /dev/null @@ -1,459 +0,0 @@ -{ - "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" - } - }, - "handlers": { - "create": { - "permissions": [ - "iam:CreateServiceLinkedRole", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:CreateDBCluster", - "rds:CreateDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeDBClusterSnapshots", - "rds:DescribeDBSnapshots", - "rds:DescribeEvents", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:RestoreDBClusterFromSnapshot", - "rds:RestoreDBClusterToPointInTime", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "rds:CreateDBClusterSnapshot", - "rds:DeleteDBCluster", - "rds:DeleteDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeGlobalClusters", - "rds:RemoveFromGlobalCluster" - ] - }, - "list": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "read": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "update": { - "permissions": [ - "ec2:DescribeSecurityGroups", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:DescribeDBClusters", - "rds:DescribeDBSubnetGroups", - "rds:DescribeEvents", - "rds:DescribeGlobalClusters", - "rds:DisableHttpEndpoint", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:ModifyDBInstance", - "rds:RemoveFromGlobalCluster", - "rds:RemoveRoleFromDBCluster", - "rds:RemoveTagsFromResource", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - } - }, - "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": { - "default": 0, - "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": { - "default": "default.aurora5.6", - "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": { - "default": 0, - "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": { - "default": "full-copy", - "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)) = 'aurora-postgresql' ? 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", - "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/ca_west_1/aws-secretsmanager-secret.json b/src/cfnlint/data/schemas/providers/ca_west_1/aws-secretsmanager-secret.json deleted file mode 100644 index 8cf3aab10e..0000000000 --- a/src/cfnlint/data/schemas/providers/ca_west_1/aws-secretsmanager-secret.json +++ /dev/null @@ -1,170 +0,0 @@ -{ - "$schema": "https://schema.cloudformation.us-east-1.amazonaws.com/provider.definition.schema.v1.json", - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name" - ], - "definitions": { - "GenerateSecretString": { - "additionalProperties": false, - "properties": { - "ExcludeCharacters": { - "type": "string" - }, - "ExcludeLowercase": { - "type": "boolean" - }, - "ExcludeNumbers": { - "type": "boolean" - }, - "ExcludePunctuation": { - "type": "boolean" - }, - "ExcludeUppercase": { - "type": "boolean" - }, - "GenerateStringKey": { - "type": "string" - }, - "IncludeSpace": { - "type": "boolean" - }, - "PasswordLength": { - "type": "integer" - }, - "RequireEachIncludedType": { - "type": "boolean" - }, - "SecretStringTemplate": { - "type": "string" - } - }, - "type": "object" - }, - "ReplicaRegion": { - "additionalProperties": false, - "properties": { - "KmsKeyId": { - "type": "string" - }, - "Region": { - "type": "string" - } - }, - "required": [ - "Region" - ], - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "secretsmanager:DescribeSecret", - "secretsmanager:GetRandomPassword", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ] - }, - "delete": { - "permissions": [ - "secretsmanager:DeleteSecret", - "secretsmanager:DescribeSecret", - "secretsmanager:RemoveRegionsFromReplication" - ] - }, - "list": { - "permissions": [ - "secretsmanager:ListSecrets" - ] - }, - "read": { - "permissions": [ - "secretsmanager:DescribeSecret", - "secretsmanager:GetSecretValue" - ] - }, - "update": { - "permissions": [ - "secretsmanager:UpdateSecret", - "secretsmanager:TagResource", - "secretsmanager:UntagResource", - "secretsmanager:GetRandomPassword", - "secretsmanager:GetSecretValue", - "secretsmanager:ReplicateSecretToRegions", - "secretsmanager:RemoveRegionsFromReplication" - ] - } - }, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "Description": { - "type": "string" - }, - "GenerateSecretString": { - "$ref": "#/definitions/GenerateSecretString" - }, - "Id": { - "type": "string" - }, - "KmsKeyId": { - "type": "string" - }, - "Name": { - "type": "string" - }, - "ReplicaRegions": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/ReplicaRegion" - }, - "type": "array", - "uniqueItems": false - }, - "SecretString": { - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": false - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-secretsmanager.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::SecretsManager::Secret", - "writeOnlyProperties": [ - "/properties/SecretString", - "/properties/GenerateSecretString" - ] -} 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 8ce8efaba4..2fb4c7ee00 100644 --- a/src/cfnlint/data/schemas/providers/cn_north_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/cn_north_1/__init__.py @@ -192,7 +192,10 @@ "AWS::EC2::GatewayRouteTableAssociation", "AWS::EC2::Host", "AWS::EC2::IPAM", + "AWS::EC2::IPAMAllocation", + "AWS::EC2::IPAMPoolCidr", "AWS::EC2::IPAMResourceDiscoveryAssociation", + "AWS::EC2::IPAMScope", "AWS::EC2::Instance", "AWS::EC2::InstanceConnectEndpoint", "AWS::EC2::InternetGateway", @@ -467,6 +470,7 @@ "AWS::Lambda::Permission", "AWS::Lambda::Url", "AWS::Lambda::Version", + "AWS::LaunchWizard::Deployment", "AWS::Logs::AccountPolicy", "AWS::Logs::Delivery", "AWS::Logs::DeliveryDestination", @@ -798,6 +802,7 @@ "aws-cloudformation-resourcedefaultversion.json", "aws-cloudformation-resourceversion.json", "aws-cloudformation-stack.json", + "aws-cloudformation-stackset.json", "aws-cloudformation-waitcondition.json", "aws-cloudformation-waitconditionhandle.json", "aws-cloudfront-cloudfrontoriginaccessidentity.json", @@ -820,6 +825,7 @@ "aws-codedeploy-deploymentconfig.json", "aws-codedeploy-deploymentgroup.json", "aws-codepipeline-customactiontype.json", + "aws-codepipeline-pipeline.json", "aws-cognito-identitypool.json", "aws-cognito-identitypoolprincipaltag.json", "aws-cognito-identitypoolroleattachment.json", @@ -876,7 +882,10 @@ "aws-ec2-instanceconnectendpoint.json", "aws-ec2-internetgateway.json", "aws-ec2-ipam.json", + "aws-ec2-ipamallocation.json", + "aws-ec2-ipampoolcidr.json", "aws-ec2-ipamresourcediscoveryassociation.json", + "aws-ec2-ipamscope.json", "aws-ec2-keypair.json", "aws-ec2-launchtemplate.json", "aws-ec2-natgateway.json", @@ -1128,6 +1137,7 @@ "aws-lambda-layerversionpermission.json", "aws-lambda-permission.json", "aws-lambda-version.json", + "aws-launchwizard-deployment.json", "aws-logs-accountpolicy.json", "aws-logs-delivery.json", "aws-logs-deliverydestination.json", diff --git a/src/cfnlint/data/schemas/providers/cn_north_1/aws-cloudformation-stackset.json b/src/cfnlint/data/schemas/providers/cn_north_1/aws-cloudformation-stackset.json deleted file mode 100644 index 792fccc85b..0000000000 --- a/src/cfnlint/data/schemas/providers/cn_north_1/aws-cloudformation-stackset.json +++ /dev/null @@ -1,394 +0,0 @@ -{ - "additionalIdentifiers": [ - [ - "/properties/StackSetName" - ] - ], - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/PermissionModel", - "/properties/StackSetName" - ], - "definitions": { - "Account": { - "pattern": "^[0-9]{12}$", - "type": "string" - }, - "Active": { - "type": "boolean" - }, - "AutoDeployment": { - "additionalProperties": false, - "properties": { - "Enabled": { - "type": "boolean" - }, - "RetainStacksOnAccountRemoval": { - "type": "boolean" - } - }, - "type": "object" - }, - "Capability": { - "enum": [ - "CAPABILITY_IAM", - "CAPABILITY_NAMED_IAM", - "CAPABILITY_AUTO_EXPAND" - ], - "type": "string" - }, - "ConcurrencyMode": { - "enum": [ - "STRICT_FAILURE_TOLERANCE", - "SOFT_FAILURE_TOLERANCE" - ], - "type": "string" - }, - "DeploymentTargets": { - "additionalProperties": false, - "properties": { - "AccountFilterType": { - "enum": [ - "NONE", - "UNION", - "INTERSECTION", - "DIFFERENCE" - ], - "type": "string" - }, - "Accounts": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Account" - }, - "minItems": 1, - "type": "array", - "uniqueItems": true - }, - "AccountsUrl": { - "maxLength": 5120, - "minLength": 1, - "pattern": "(s3://|http(s?)://).+", - "type": "string" - }, - "OrganizationalUnitIds": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/OrganizationalUnitId" - }, - "minItems": 1, - "type": "array", - "uniqueItems": true - } - }, - "type": "object" - }, - "OperationPreferences": { - "additionalProperties": false, - "properties": { - "ConcurrencyMode": { - "$ref": "#/definitions/ConcurrencyMode" - }, - "FailureToleranceCount": { - "minimum": 0, - "type": "integer" - }, - "FailureTolerancePercentage": { - "maximum": 100, - "minimum": 0, - "type": "integer" - }, - "MaxConcurrentCount": { - "minimum": 1, - "type": "integer" - }, - "MaxConcurrentPercentage": { - "maximum": 100, - "minimum": 0, - "type": "integer" - }, - "RegionConcurrencyType": { - "$ref": "#/definitions/RegionConcurrencyType" - }, - "RegionOrder": { - "items": { - "$ref": "#/definitions/Region" - }, - "type": "array" - } - }, - "type": "object" - }, - "OrganizationalUnitId": { - "pattern": "^(ou-[a-z0-9]{4,32}-[a-z0-9]{8,32}|r-[a-z0-9]{4,32})$", - "type": "string" - }, - "Parameter": { - "additionalProperties": false, - "properties": { - "ParameterKey": { - "type": "string" - }, - "ParameterValue": { - "type": "string" - } - }, - "required": [ - "ParameterKey", - "ParameterValue" - ], - "type": "object" - }, - "Region": { - "pattern": "^[a-zA-Z0-9-]{1,128}$", - "type": "string" - }, - "RegionConcurrencyType": { - "enum": [ - "SEQUENTIAL", - "PARALLEL" - ], - "type": "string" - }, - "StackInstances": { - "additionalProperties": false, - "properties": { - "DeploymentTargets": { - "$ref": "#/definitions/DeploymentTargets" - }, - "ParameterOverrides": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Parameter" - }, - "type": "array", - "uniqueItems": true - }, - "Regions": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Region" - }, - "minItems": 1, - "type": "array", - "uniqueItems": true - } - }, - "required": [ - "DeploymentTargets", - "Regions" - ], - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "pattern": "^(?!aws:.*)[a-zA-Z0-9\\s\\:\\_\\.\\/\\=\\+\\-]+$", - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "cloudformation:GetTemplateSummary", - "cloudformation:CreateStackSet", - "cloudformation:CreateStackInstances", - "cloudformation:DescribeStackSetOperation", - "cloudformation:ListStackSetOperationResults", - "cloudformation:TagResource", - "iam:PassRole" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "cloudformation:DeleteStackSet", - "cloudformation:DeleteStackInstances", - "cloudformation:DescribeStackSet", - "cloudformation:DescribeStackSetOperation", - "cloudformation:ListStackSetOperationResults", - "cloudformation:UntagResource" - ], - "timeoutInMinutes": 2160 - }, - "list": { - "permissions": [ - "cloudformation:ListStackSets", - "cloudformation:DescribeStackSet", - "cloudformation:ListStackInstances", - "cloudformation:DescribeStackInstance" - ] - }, - "read": { - "permissions": [ - "cloudformation:DescribeStackSet", - "cloudformation:ListStackInstances", - "cloudformation:DescribeStackInstance" - ] - }, - "update": { - "permissions": [ - "cloudformation:GetTemplateSummary", - "cloudformation:UpdateStackSet", - "cloudformation:CreateStackInstances", - "cloudformation:DeleteStackInstances", - "cloudformation:UpdateStackInstances", - "cloudformation:DescribeStackSet", - "cloudformation:DescribeStackSetOperation", - "cloudformation:ListStackSetOperationResults", - "cloudformation:TagResource", - "cloudformation:UntagResource", - "iam:PassRole" - ], - "timeoutInMinutes": 2160 - } - }, - "oneOf": [ - { - "required": [ - "TemplateURL" - ] - }, - { - "required": [ - "TemplateBody" - ] - } - ], - "primaryIdentifier": [ - "/properties/StackSetId" - ], - "properties": { - "AdministrationRoleARN": { - "maxLength": 2048, - "minLength": 20, - "type": "string" - }, - "AutoDeployment": { - "$ref": "#/definitions/AutoDeployment" - }, - "CallAs": { - "enum": [ - "SELF", - "DELEGATED_ADMIN" - ], - "type": "string" - }, - "Capabilities": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Capability" - }, - "type": "array", - "uniqueItems": true - }, - "Description": { - "maxLength": 1024, - "minLength": 1, - "type": "string" - }, - "ExecutionRoleName": { - "maxLength": 64, - "minLength": 1, - "type": "string" - }, - "ManagedExecution": { - "additionalProperties": false, - "properties": { - "Active": { - "$ref": "#/definitions/Active" - } - }, - "type": "object" - }, - "OperationPreferences": { - "$ref": "#/definitions/OperationPreferences" - }, - "Parameters": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Parameter" - }, - "type": "array", - "uniqueItems": true - }, - "PermissionModel": { - "enum": [ - "SELF_MANAGED", - "SERVICE_MANAGED" - ], - "type": "string" - }, - "StackInstancesGroup": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/StackInstances" - }, - "type": "array", - "uniqueItems": true - }, - "StackSetId": { - "type": "string" - }, - "StackSetName": { - "maxLength": 128, - "pattern": "^[a-zA-Z][a-zA-Z0-9\\-]{0,127}$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 50, - "type": "array", - "uniqueItems": true - }, - "TemplateBody": { - "maxLength": 51200, - "minLength": 1, - "type": "string" - }, - "TemplateURL": { - "maxLength": 5120, - "minLength": 1, - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/StackSetId" - ], - "required": [ - "StackSetName", - "PermissionModel" - ], - "resourceLink": { - "mappings": { - "StackSetId": "/StackSetId" - }, - "templateUri": "/cloudformation/home?region=${awsRegion}#/stacksets/${StackSetId}" - }, - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-cloudformation.git", - "typeName": "AWS::CloudFormation::StackSet", - "writeOnlyProperties": [ - "/properties/TemplateURL", - "/properties/OperationPreferences", - "/properties/StackInstancesGroup", - "/properties/CallAs" - ] -} 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 9a0ea9a4a4..84bdbd53d5 100644 --- a/src/cfnlint/data/schemas/providers/cn_northwest_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/cn_northwest_1/__init__.py @@ -433,6 +433,7 @@ "AWS::Lambda::LayerVersionPermission", "AWS::Lambda::Permission", "AWS::Lambda::Version", + "AWS::LaunchWizard::Deployment", "AWS::Logs::AccountPolicy", "AWS::Logs::Delivery", "AWS::Logs::DeliveryDestination", @@ -775,7 +776,6 @@ "aws-codedeploy-deploymentconfig.json", "aws-codedeploy-deploymentgroup.json", "aws-codepipeline-customactiontype.json", - "aws-codepipeline-pipeline.json", "aws-config-aggregationauthorization.json", "aws-config-configrule.json", "aws-config-configurationaggregator.json", @@ -894,6 +894,7 @@ "aws-eks-nodegroup.json", "aws-eks-podidentityassociation.json", "aws-elasticache-cachecluster.json", + "aws-elasticache-parametergroup.json", "aws-elasticache-replicationgroup.json", "aws-elasticache-securitygroup.json", "aws-elasticache-securitygroupingress.json", @@ -1042,7 +1043,11 @@ "aws-lambda-layerversionpermission.json", "aws-lambda-permission.json", "aws-lambda-version.json", + "aws-launchwizard-deployment.json", "aws-logs-accountpolicy.json", + "aws-logs-delivery.json", + "aws-logs-deliverydestination.json", + "aws-logs-deliverysource.json", "aws-logs-destination.json", "aws-logs-loggroup.json", "aws-logs-logstream.json", @@ -1079,6 +1084,7 @@ "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", @@ -1151,6 +1157,7 @@ "aws-sdb-domain.json", "aws-secretsmanager-resourcepolicy.json", "aws-secretsmanager-rotationschedule.json", + "aws-secretsmanager-secret.json", "aws-securityhub-automationrule.json", "aws-securityhub-configurationpolicy.json", "aws-securityhub-delegatedadmin.json", diff --git a/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-codepipeline-pipeline.json b/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-codepipeline-pipeline.json new file mode 100644 index 0000000000..925fbfe118 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-codepipeline-pipeline.json @@ -0,0 +1,505 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "ActionDeclaration": { + "additionalProperties": false, + "properties": { + "ActionTypeId": { + "$ref": "#/definitions/ActionTypeId" + }, + "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 + }, + "Region": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "RunOrder": { + "type": "integer" + }, + "TimeoutInMinutes": { + "type": "integer" + } + }, + "required": [ + "ActionTypeId", + "Name" + ], + "type": "object" + }, + "ActionTypeId": { + "additionalProperties": false, + "properties": { + "Category": { + "enum": [ + "Approval", + "Build", + "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" + }, + "BlockerDeclaration": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "Type": { + "enum": [ + "Schedule" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Name" + ], + "type": "object" + }, + "EncryptionKey": { + "additionalProperties": false, + "properties": { + "Id": { + "type": "string" + }, + "Type": { + "type": "string" + } + }, + "required": [ + "Type", + "Id" + ], + "type": "object" + }, + "FailureConditions": { + "additionalProperties": false, + "properties": { + "Result": { + "type": "string" + } + }, + "required": [ + "Result" + ], + "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": { + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "PipelineTriggerDeclaration": { + "additionalProperties": false, + "properties": { + "GitConfiguration": { + "$ref": "#/definitions/GitConfiguration" + }, + "ProviderType": { + "type": "string" + } + }, + "required": [ + "ProviderType" + ], + "type": "object" + }, + "StageDeclaration": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/ActionDeclaration" + }, + "type": "array", + "uniqueItems": true + }, + "Blockers": { + "items": { + "$ref": "#/definitions/BlockerDeclaration" + }, + "type": "array", + "uniqueItems": true + }, + "Name": { + "type": "string" + }, + "OnFailure": { + "$ref": "#/definitions/FailureConditions" + } + }, + "required": [ + "Actions", + "Name" + ], + "type": "object" + }, + "StageTransition": { + "additionalProperties": false, + "properties": { + "Reason": { + "type": "string" + }, + "StageName": { + "type": "string" + } + }, + "required": [ + "StageName", + "Reason" + ], + "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/Id" + ], + "properties": { + "ArtifactStore": { + "$ref": "#/definitions/ArtifactStore" + }, + "ArtifactStores": { + "items": { + "$ref": "#/definitions/ArtifactStoreMap" + }, + "type": "array", + "uniqueItems": true + }, + "DisableInboundStageTransitions": { + "items": { + "$ref": "#/definitions/StageTransition" + }, + "type": "array", + "uniqueItems": true + }, + "ExecutionMode": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "PipelineType": { + "type": "string" + }, + "RestartExecutionOnUpdate": { + "type": "boolean" + }, + "RoleArn": { + "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/Id", + "/properties/Version" + ], + "required": [ + "Stages", + "RoleArn" + ], + "requiredXor": [ + "ArtifactStore", + "ArtifactStores" + ], + "typeName": "AWS::CodePipeline::Pipeline" +} diff --git a/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-elasticache-parametergroup.json b/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-elasticache-parametergroup.json deleted file mode 100644 index c524f26845..0000000000 --- a/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-elasticache-parametergroup.json +++ /dev/null @@ -1,61 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/CacheParameterGroupFamily" - ], - "definitions": { - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "CacheParameterGroupFamily": { - "type": "string" - }, - "Description": { - "type": "string" - }, - "Id": { - "type": "string" - }, - "Properties": { - "patternProperties": { - "[a-zA-Z0-9]+": { - "type": "string" - } - }, - "type": "object" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": false - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "Description", - "CacheParameterGroupFamily" - ], - "typeName": "AWS::ElastiCache::ParameterGroup" -} diff --git a/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-logs-delivery.json b/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-logs-delivery.json deleted file mode 100644 index 9d504c7dc9..0000000000 --- a/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-logs-delivery.json +++ /dev/null @@ -1,130 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/DeliverySourceName", - "/properties/DeliveryDestinationArn" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:CreateDelivery", - "logs:GetDelivery", - "logs:DescribeDeliveries", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:GetDeliverySource", - "logs:GetDeliveryDestination" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDelivery", - "logs:ListTagsForResource", - "logs:UntagResource" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliveries", - "logs:ListTagsForResource" - ] - }, - "read": { - "permissions": [ - "logs:GetDelivery", - "logs:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "logs:GetDelivery", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource" - ] - } - }, - "primaryIdentifier": [ - "/properties/DeliveryId" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationArn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationType": { - "maxLength": 12, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DeliveryId": { - "maxLength": 64, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DeliverySourceName": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/DeliveryId", - "/properties/Arn", - "/properties/DeliveryDestinationType" - ], - "required": [ - "DeliverySourceName", - "DeliveryDestinationArn" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::Delivery" -} diff --git a/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-logs-deliverydestination.json b/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-logs-deliverydestination.json deleted file mode 100644 index 41e9e764ad..0000000000 --- a/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-logs-deliverydestination.json +++ /dev/null @@ -1,152 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name", - "/properties/DestinationResourceArn" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "DestinationPolicy": { - "additionalProperties": false, - "properties": { - "DeliveryDestinationName": { - "maxLength": 60, - "minLength": 1, - "type": "string" - }, - "DeliveryDestinationPolicy": { - "maxLength": 51200, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "DeliveryDestinationName", - "DeliveryDestinationPolicy" - ], - "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" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:PutDeliveryDestination", - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource", - "logs:PutDeliveryDestinationPolicy", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDeliveryDestination", - "logs:DeleteDeliveryDestinationPolicy" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliveryDestinations", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "read": { - "permissions": [ - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "update": { - "permissions": [ - "logs:PutDeliveryDestination", - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource", - "logs:DeleteDeliveryDestinationPolicy", - "logs:PutDeliveryDestinationPolicy", - "logs:GetDeliveryDestinationPolicy" - ] - } - }, - "primaryIdentifier": [ - "/properties/Name" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationPolicy": { - "items": { - "$ref": "#/definitions/DestinationPolicy" - }, - "type": "object" - }, - "DeliveryDestinationType": { - "maxLength": 12, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DestinationResourceArn": { - "$ref": "#/definitions/Arn" - }, - "Name": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/Arn", - "/properties/DeliveryDestinationType" - ], - "required": [ - "Name" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::DeliveryDestination" -} diff --git a/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-logs-deliverysource.json b/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-logs-deliverysource.json deleted file mode 100644 index 30c5c13d9e..0000000000 --- a/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-logs-deliverysource.json +++ /dev/null @@ -1,138 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:PutDeliverySource", - "logs:GetDeliverySource", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:AllowVendedLogDeliveryForResource", - "codewhisperer:AllowVendedLogDeliveryForResource", - "autoloop:AllowVendedLogDeliveryForResource", - "workmail:AllowVendedLogDeliveryForResource" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDeliverySource" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliverySources" - ] - }, - "read": { - "permissions": [ - "logs:GetDeliverySource", - "logs:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "logs:PutDeliverySource", - "logs:GetDeliverySource", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource" - ] - } - }, - "primaryIdentifier": [ - "/properties/Name" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "LogType": { - "maxLength": 255, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Name": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "ResourceArn": { - "$ref": "#/definitions/Arn" - }, - "ResourceArns": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Arn" - }, - "type": "array", - "uniqueItems": true - }, - "Service": { - "maxLength": 255, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/Service", - "/properties/ResourceArns", - "/properties/Arn" - ], - "required": [ - "Name" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::DeliverySource", - "writeOnlyProperties": [ - "/properties/ResourceArn" - ] -} diff --git a/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-rds-dbcluster.json b/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-rds-dbcluster.json deleted file mode 100644 index fc3519fd59..0000000000 --- a/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-rds-dbcluster.json +++ /dev/null @@ -1,459 +0,0 @@ -{ - "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" - } - }, - "handlers": { - "create": { - "permissions": [ - "iam:CreateServiceLinkedRole", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:CreateDBCluster", - "rds:CreateDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeDBClusterSnapshots", - "rds:DescribeDBSnapshots", - "rds:DescribeEvents", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:RestoreDBClusterFromSnapshot", - "rds:RestoreDBClusterToPointInTime", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "rds:CreateDBClusterSnapshot", - "rds:DeleteDBCluster", - "rds:DeleteDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeGlobalClusters", - "rds:RemoveFromGlobalCluster" - ] - }, - "list": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "read": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "update": { - "permissions": [ - "ec2:DescribeSecurityGroups", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:DescribeDBClusters", - "rds:DescribeDBSubnetGroups", - "rds:DescribeEvents", - "rds:DescribeGlobalClusters", - "rds:DisableHttpEndpoint", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:ModifyDBInstance", - "rds:RemoveFromGlobalCluster", - "rds:RemoveRoleFromDBCluster", - "rds:RemoveTagsFromResource", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - } - }, - "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": { - "default": 0, - "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": { - "default": "default.aurora5.6", - "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": { - "default": 0, - "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": { - "default": "full-copy", - "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)) = 'aurora-postgresql' ? 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", - "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/cn_northwest_1/aws-secretsmanager-secret.json b/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-secretsmanager-secret.json deleted file mode 100644 index 8cf3aab10e..0000000000 --- a/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-secretsmanager-secret.json +++ /dev/null @@ -1,170 +0,0 @@ -{ - "$schema": "https://schema.cloudformation.us-east-1.amazonaws.com/provider.definition.schema.v1.json", - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name" - ], - "definitions": { - "GenerateSecretString": { - "additionalProperties": false, - "properties": { - "ExcludeCharacters": { - "type": "string" - }, - "ExcludeLowercase": { - "type": "boolean" - }, - "ExcludeNumbers": { - "type": "boolean" - }, - "ExcludePunctuation": { - "type": "boolean" - }, - "ExcludeUppercase": { - "type": "boolean" - }, - "GenerateStringKey": { - "type": "string" - }, - "IncludeSpace": { - "type": "boolean" - }, - "PasswordLength": { - "type": "integer" - }, - "RequireEachIncludedType": { - "type": "boolean" - }, - "SecretStringTemplate": { - "type": "string" - } - }, - "type": "object" - }, - "ReplicaRegion": { - "additionalProperties": false, - "properties": { - "KmsKeyId": { - "type": "string" - }, - "Region": { - "type": "string" - } - }, - "required": [ - "Region" - ], - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "secretsmanager:DescribeSecret", - "secretsmanager:GetRandomPassword", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ] - }, - "delete": { - "permissions": [ - "secretsmanager:DeleteSecret", - "secretsmanager:DescribeSecret", - "secretsmanager:RemoveRegionsFromReplication" - ] - }, - "list": { - "permissions": [ - "secretsmanager:ListSecrets" - ] - }, - "read": { - "permissions": [ - "secretsmanager:DescribeSecret", - "secretsmanager:GetSecretValue" - ] - }, - "update": { - "permissions": [ - "secretsmanager:UpdateSecret", - "secretsmanager:TagResource", - "secretsmanager:UntagResource", - "secretsmanager:GetRandomPassword", - "secretsmanager:GetSecretValue", - "secretsmanager:ReplicateSecretToRegions", - "secretsmanager:RemoveRegionsFromReplication" - ] - } - }, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "Description": { - "type": "string" - }, - "GenerateSecretString": { - "$ref": "#/definitions/GenerateSecretString" - }, - "Id": { - "type": "string" - }, - "KmsKeyId": { - "type": "string" - }, - "Name": { - "type": "string" - }, - "ReplicaRegions": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/ReplicaRegion" - }, - "type": "array", - "uniqueItems": false - }, - "SecretString": { - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": false - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-secretsmanager.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::SecretsManager::Secret", - "writeOnlyProperties": [ - "/properties/SecretString", - "/properties/GenerateSecretString" - ] -} 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 a4614bc5e8..00041bac6c 100644 --- a/src/cfnlint/data/schemas/providers/eu_central_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/eu_central_1/__init__.py @@ -733,6 +733,7 @@ "AWS::Lambda::Permission", "AWS::Lambda::Url", "AWS::Lambda::Version", + "AWS::LaunchWizard::Deployment", "AWS::Lex::Bot", "AWS::Lex::BotAlias", "AWS::Lex::BotVersion", @@ -1024,6 +1025,13 @@ "AWS::SES::ContactList", "AWS::SES::DedicatedIpPool", "AWS::SES::EmailIdentity", + "AWS::SES::MailManagerAddonInstance", + "AWS::SES::MailManagerAddonSubscription", + "AWS::SES::MailManagerArchive", + "AWS::SES::MailManagerIngressPoint", + "AWS::SES::MailManagerRelay", + "AWS::SES::MailManagerRuleSet", + "AWS::SES::MailManagerTrafficPolicy", "AWS::SES::ReceiptFilter", "AWS::SES::ReceiptRule", "AWS::SES::ReceiptRuleSet", @@ -1389,6 +1397,7 @@ "aws-cloudformation-resourcedefaultversion.json", "aws-cloudformation-resourceversion.json", "aws-cloudformation-stack.json", + "aws-cloudformation-stackset.json", "aws-cloudformation-typeactivation.json", "aws-cloudformation-waitcondition.json", "aws-cloudformation-waitconditionhandle.json", @@ -1431,6 +1440,7 @@ "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", @@ -1448,7 +1458,6 @@ "aws-cognito-userpoolidentityprovider.json", "aws-cognito-userpoolresourceserver.json", "aws-cognito-userpoolriskconfigurationattachment.json", - "aws-cognito-userpooluicustomizationattachment.json", "aws-cognito-userpooluser.json", "aws-cognito-userpoolusertogroupattachment.json", "aws-comprehend-documentclassifier.json", @@ -1531,6 +1540,7 @@ "aws-deadline-farm.json", "aws-deadline-fleet.json", "aws-deadline-licenseendpoint.json", + "aws-deadline-meteredproduct.json", "aws-deadline-monitor.json", "aws-deadline-queue.json", "aws-deadline-queueenvironment.json", @@ -1626,7 +1636,6 @@ "aws-ec2-transitgatewayconnect.json", "aws-ec2-transitgatewaymulticastdomain.json", "aws-ec2-transitgatewaymulticastdomainassociation.json", - "aws-ec2-transitgatewaymulticastgroupmember.json", "aws-ec2-transitgatewaymulticastgroupsource.json", "aws-ec2-transitgatewaypeeringattachment.json", "aws-ec2-transitgatewayroute.json", @@ -1942,6 +1951,7 @@ "aws-lambda-permission.json", "aws-lambda-url.json", "aws-lambda-version.json", + "aws-launchwizard-deployment.json", "aws-lex-bot.json", "aws-lex-botalias.json", "aws-lex-botversion.json", @@ -2304,6 +2314,13 @@ "aws-ses-contactlist.json", "aws-ses-dedicatedippool.json", "aws-ses-emailidentity.json", + "aws-ses-mailmanageraddoninstance.json", + "aws-ses-mailmanageraddonsubscription.json", + "aws-ses-mailmanagerarchive.json", + "aws-ses-mailmanageringresspoint.json", + "aws-ses-mailmanagerrelay.json", + "aws-ses-mailmanagerruleset.json", + "aws-ses-mailmanagertrafficpolicy.json", "aws-ses-receiptfilter.json", "aws-ses-receiptruleset.json", "aws-ses-template.json", diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/aws-cloudformation-stackset.json b/src/cfnlint/data/schemas/providers/eu_central_1/aws-cloudformation-stackset.json deleted file mode 100644 index 792fccc85b..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_central_1/aws-cloudformation-stackset.json +++ /dev/null @@ -1,394 +0,0 @@ -{ - "additionalIdentifiers": [ - [ - "/properties/StackSetName" - ] - ], - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/PermissionModel", - "/properties/StackSetName" - ], - "definitions": { - "Account": { - "pattern": "^[0-9]{12}$", - "type": "string" - }, - "Active": { - "type": "boolean" - }, - "AutoDeployment": { - "additionalProperties": false, - "properties": { - "Enabled": { - "type": "boolean" - }, - "RetainStacksOnAccountRemoval": { - "type": "boolean" - } - }, - "type": "object" - }, - "Capability": { - "enum": [ - "CAPABILITY_IAM", - "CAPABILITY_NAMED_IAM", - "CAPABILITY_AUTO_EXPAND" - ], - "type": "string" - }, - "ConcurrencyMode": { - "enum": [ - "STRICT_FAILURE_TOLERANCE", - "SOFT_FAILURE_TOLERANCE" - ], - "type": "string" - }, - "DeploymentTargets": { - "additionalProperties": false, - "properties": { - "AccountFilterType": { - "enum": [ - "NONE", - "UNION", - "INTERSECTION", - "DIFFERENCE" - ], - "type": "string" - }, - "Accounts": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Account" - }, - "minItems": 1, - "type": "array", - "uniqueItems": true - }, - "AccountsUrl": { - "maxLength": 5120, - "minLength": 1, - "pattern": "(s3://|http(s?)://).+", - "type": "string" - }, - "OrganizationalUnitIds": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/OrganizationalUnitId" - }, - "minItems": 1, - "type": "array", - "uniqueItems": true - } - }, - "type": "object" - }, - "OperationPreferences": { - "additionalProperties": false, - "properties": { - "ConcurrencyMode": { - "$ref": "#/definitions/ConcurrencyMode" - }, - "FailureToleranceCount": { - "minimum": 0, - "type": "integer" - }, - "FailureTolerancePercentage": { - "maximum": 100, - "minimum": 0, - "type": "integer" - }, - "MaxConcurrentCount": { - "minimum": 1, - "type": "integer" - }, - "MaxConcurrentPercentage": { - "maximum": 100, - "minimum": 0, - "type": "integer" - }, - "RegionConcurrencyType": { - "$ref": "#/definitions/RegionConcurrencyType" - }, - "RegionOrder": { - "items": { - "$ref": "#/definitions/Region" - }, - "type": "array" - } - }, - "type": "object" - }, - "OrganizationalUnitId": { - "pattern": "^(ou-[a-z0-9]{4,32}-[a-z0-9]{8,32}|r-[a-z0-9]{4,32})$", - "type": "string" - }, - "Parameter": { - "additionalProperties": false, - "properties": { - "ParameterKey": { - "type": "string" - }, - "ParameterValue": { - "type": "string" - } - }, - "required": [ - "ParameterKey", - "ParameterValue" - ], - "type": "object" - }, - "Region": { - "pattern": "^[a-zA-Z0-9-]{1,128}$", - "type": "string" - }, - "RegionConcurrencyType": { - "enum": [ - "SEQUENTIAL", - "PARALLEL" - ], - "type": "string" - }, - "StackInstances": { - "additionalProperties": false, - "properties": { - "DeploymentTargets": { - "$ref": "#/definitions/DeploymentTargets" - }, - "ParameterOverrides": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Parameter" - }, - "type": "array", - "uniqueItems": true - }, - "Regions": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Region" - }, - "minItems": 1, - "type": "array", - "uniqueItems": true - } - }, - "required": [ - "DeploymentTargets", - "Regions" - ], - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "pattern": "^(?!aws:.*)[a-zA-Z0-9\\s\\:\\_\\.\\/\\=\\+\\-]+$", - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "cloudformation:GetTemplateSummary", - "cloudformation:CreateStackSet", - "cloudformation:CreateStackInstances", - "cloudformation:DescribeStackSetOperation", - "cloudformation:ListStackSetOperationResults", - "cloudformation:TagResource", - "iam:PassRole" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "cloudformation:DeleteStackSet", - "cloudformation:DeleteStackInstances", - "cloudformation:DescribeStackSet", - "cloudformation:DescribeStackSetOperation", - "cloudformation:ListStackSetOperationResults", - "cloudformation:UntagResource" - ], - "timeoutInMinutes": 2160 - }, - "list": { - "permissions": [ - "cloudformation:ListStackSets", - "cloudformation:DescribeStackSet", - "cloudformation:ListStackInstances", - "cloudformation:DescribeStackInstance" - ] - }, - "read": { - "permissions": [ - "cloudformation:DescribeStackSet", - "cloudformation:ListStackInstances", - "cloudformation:DescribeStackInstance" - ] - }, - "update": { - "permissions": [ - "cloudformation:GetTemplateSummary", - "cloudformation:UpdateStackSet", - "cloudformation:CreateStackInstances", - "cloudformation:DeleteStackInstances", - "cloudformation:UpdateStackInstances", - "cloudformation:DescribeStackSet", - "cloudformation:DescribeStackSetOperation", - "cloudformation:ListStackSetOperationResults", - "cloudformation:TagResource", - "cloudformation:UntagResource", - "iam:PassRole" - ], - "timeoutInMinutes": 2160 - } - }, - "oneOf": [ - { - "required": [ - "TemplateURL" - ] - }, - { - "required": [ - "TemplateBody" - ] - } - ], - "primaryIdentifier": [ - "/properties/StackSetId" - ], - "properties": { - "AdministrationRoleARN": { - "maxLength": 2048, - "minLength": 20, - "type": "string" - }, - "AutoDeployment": { - "$ref": "#/definitions/AutoDeployment" - }, - "CallAs": { - "enum": [ - "SELF", - "DELEGATED_ADMIN" - ], - "type": "string" - }, - "Capabilities": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Capability" - }, - "type": "array", - "uniqueItems": true - }, - "Description": { - "maxLength": 1024, - "minLength": 1, - "type": "string" - }, - "ExecutionRoleName": { - "maxLength": 64, - "minLength": 1, - "type": "string" - }, - "ManagedExecution": { - "additionalProperties": false, - "properties": { - "Active": { - "$ref": "#/definitions/Active" - } - }, - "type": "object" - }, - "OperationPreferences": { - "$ref": "#/definitions/OperationPreferences" - }, - "Parameters": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Parameter" - }, - "type": "array", - "uniqueItems": true - }, - "PermissionModel": { - "enum": [ - "SELF_MANAGED", - "SERVICE_MANAGED" - ], - "type": "string" - }, - "StackInstancesGroup": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/StackInstances" - }, - "type": "array", - "uniqueItems": true - }, - "StackSetId": { - "type": "string" - }, - "StackSetName": { - "maxLength": 128, - "pattern": "^[a-zA-Z][a-zA-Z0-9\\-]{0,127}$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 50, - "type": "array", - "uniqueItems": true - }, - "TemplateBody": { - "maxLength": 51200, - "minLength": 1, - "type": "string" - }, - "TemplateURL": { - "maxLength": 5120, - "minLength": 1, - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/StackSetId" - ], - "required": [ - "StackSetName", - "PermissionModel" - ], - "resourceLink": { - "mappings": { - "StackSetId": "/StackSetId" - }, - "templateUri": "/cloudformation/home?region=${awsRegion}#/stacksets/${StackSetId}" - }, - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-cloudformation.git", - "typeName": "AWS::CloudFormation::StackSet", - "writeOnlyProperties": [ - "/properties/TemplateURL", - "/properties/OperationPreferences", - "/properties/StackInstancesGroup", - "/properties/CallAs" - ] -} diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/aws-cognito-userpooluicustomizationattachment.json b/src/cfnlint/data/schemas/providers/eu_central_1/aws-cognito-userpooluicustomizationattachment.json new file mode 100644 index 0000000000..ff8cea02ef --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_1/aws-cognito-userpooluicustomizationattachment.json @@ -0,0 +1,61 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/UserPoolId", + "/properties/ClientId" + ], + "handlers": { + "create": { + "permissions": [ + "cognito-idp:SetUICustomization", + "cognito-idp:GetUICustomization" + ], + "timeoutInMinutes": 2 + }, + "delete": { + "permissions": [ + "cognito-idp:SetUICustomization", + "cognito-idp:GetUICustomization" + ], + "timeoutInMinutes": 2 + }, + "read": { + "permissions": [ + "cognito-idp:GetUICustomization" + ] + }, + "update": { + "permissions": [ + "cognito-idp:SetUICustomization" + ], + "timeoutInMinutes": 2 + } + }, + "primaryIdentifier": [ + "/properties/UserPoolId", + "/properties/ClientId" + ], + "properties": { + "CSS": { + "type": "string" + }, + "ClientId": { + "type": "string" + }, + "UserPoolId": { + "type": "string" + } + }, + "required": [ + "UserPoolId", + "ClientId" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": false, + "tagUpdatable": false, + "taggable": false + }, + "typeName": "AWS::Cognito::UserPoolUICustomizationAttachment" +} diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/aws-deadline-meteredproduct.json b/src/cfnlint/data/schemas/providers/eu_central_1/aws-deadline-meteredproduct.json deleted file mode 100644 index 3388650a11..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_central_1/aws-deadline-meteredproduct.json +++ /dev/null @@ -1,88 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/LicenseEndpointId", - "/properties/ProductId" - ], - "handlers": { - "create": { - "permissions": [ - "deadline:PutMeteredProduct", - "deadline:ListMeteredProducts" - ] - }, - "delete": { - "permissions": [ - "deadline:DeleteMeteredProduct", - "deadline:ListMeteredProducts" - ] - }, - "list": { - "handlerSchema": { - "properties": { - "LicenseEndpointId": { - "$ref": "resource-schema.json#/properties/LicenseEndpointId" - } - }, - "required": [ - "LicenseEndpointId" - ] - }, - "permissions": [ - "deadline:ListMeteredProducts" - ] - }, - "read": { - "permissions": [ - "deadline:GetMeteredProduct", - "deadline:ListMeteredProducts" - ] - } - }, - "primaryIdentifier": [ - "/properties/Arn" - ], - "properties": { - "Arn": { - "pattern": "^arn:(aws[a-zA-Z-]*):deadline:[a-z0-9-]+:[0-9]{12}:license-endpoint/le-[0-9a-z]{32}/metered-product/[0-9a-z]{1,32}-[.0-9a-z]{1,32}", - "type": "string" - }, - "Family": { - "maxLength": 64, - "minLength": 1, - "type": "string" - }, - "LicenseEndpointId": { - "pattern": "^le-[0-9a-f]{32}$", - "type": "string" - }, - "Port": { - "maximum": 65535, - "minimum": 1024, - "type": "integer" - }, - "ProductId": { - "pattern": "^[0-9a-z]{1,32}-[.0-9a-z]{1,32}$", - "type": "string" - }, - "Vendor": { - "maxLength": 64, - "minLength": 1, - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Arn", - "/properties/Port", - "/properties/Family", - "/properties/Vendor" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-deadline", - "tagging": { - "cloudFormationSystemTags": false, - "tagOnCreate": false, - "tagUpdatable": false, - "taggable": false - }, - "typeName": "AWS::Deadline::MeteredProduct" -} diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/aws-ec2-transitgatewaymulticastgroupmember.json b/src/cfnlint/data/schemas/providers/eu_central_1/aws-ec2-transitgatewaymulticastgroupmember.json new file mode 100644 index 0000000000..a55b891d63 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_1/aws-ec2-transitgatewaymulticastgroupmember.json @@ -0,0 +1,101 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/TransitGatewayMulticastDomainId", + "/properties/GroupIpAddress", + "/properties/NetworkInterfaceId" + ], + "handlers": { + "create": { + "permissions": [ + "ec2:RegisterTransitGatewayMulticastGroupMembers", + "ec2:SearchTransitGatewayMulticastGroups" + ] + }, + "delete": { + "permissions": [ + "ec2:DeregisterTransitGatewayMulticastGroupMembers", + "ec2:SearchTransitGatewayMulticastGroups" + ] + }, + "list": { + "handlerSchema": { + "properties": { + "TransitGatewayMulticastDomainId": { + "$ref": "resource-schema.json#/properties/TransitGatewayMulticastDomainId" + } + }, + "required": [ + "TransitGatewayMulticastDomainId" + ] + }, + "permissions": [ + "ec2:SearchTransitGatewayMulticastGroups" + ] + }, + "read": { + "permissions": [ + "ec2:SearchTransitGatewayMulticastGroups" + ] + } + }, + "primaryIdentifier": [ + "/properties/TransitGatewayMulticastDomainId", + "/properties/GroupIpAddress", + "/properties/NetworkInterfaceId" + ], + "properties": { + "GroupIpAddress": { + "type": "string" + }, + "GroupMember": { + "type": "boolean" + }, + "GroupSource": { + "type": "boolean" + }, + "MemberType": { + "type": "string" + }, + "NetworkInterfaceId": { + "type": "string" + }, + "ResourceId": { + "type": "string" + }, + "ResourceType": { + "type": "string" + }, + "SubnetId": { + "type": "string" + }, + "TransitGatewayAttachmentId": { + "type": "string" + }, + "TransitGatewayMulticastDomainId": { + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/SubnetId", + "/properties/ResourceId", + "/properties/ResourceType", + "/properties/GroupSource", + "/properties/GroupMember", + "/properties/MemberType", + "/properties/TransitGatewayAttachmentId" + ], + "required": [ + "GroupIpAddress", + "NetworkInterfaceId", + "TransitGatewayMulticastDomainId" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-transitgatewaymulticastdomain/aws-ec2-transitgatewaymulticastgroupsource", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": false, + "tagUpdatable": false, + "taggable": false + }, + "typeName": "AWS::EC2::TransitGatewayMulticastGroupMember" +} 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 6e17599dc6..bf3072a4e8 100644 --- a/src/cfnlint/data/schemas/providers/eu_central_2/__init__.py +++ b/src/cfnlint/data/schemas/providers/eu_central_2/__init__.py @@ -383,6 +383,7 @@ "AWS::Lambda::LayerVersionPermission", "AWS::Lambda::Permission", "AWS::Lambda::Version", + "AWS::LaunchWizard::Deployment", "AWS::Logs::AccountPolicy", "AWS::Logs::Delivery", "AWS::Logs::DeliveryDestination", @@ -915,7 +916,11 @@ "aws-lambda-layerversionpermission.json", "aws-lambda-permission.json", "aws-lambda-version.json", + "aws-launchwizard-deployment.json", "aws-logs-accountpolicy.json", + "aws-logs-delivery.json", + "aws-logs-deliverydestination.json", + "aws-logs-deliverysource.json", "aws-logs-destination.json", "aws-logs-loganomalydetector.json", "aws-logs-loggroup.json", @@ -929,7 +934,9 @@ "aws-msk-clusterpolicy.json", "aws-msk-configuration.json", "aws-msk-vpcconnection.json", + "aws-networkfirewall-firewall.json", "aws-networkfirewall-firewallpolicy.json", + "aws-networkfirewall-loggingconfiguration.json", "aws-networkfirewall-rulegroup.json", "aws-networkfirewall-tlsinspectionconfiguration.json", "aws-oam-link.json", @@ -959,6 +966,7 @@ "aws-quicksight-theme.json", "aws-quicksight-vpcconnection.json", "aws-ram-permission.json", + "aws-rds-dbcluster.json", "aws-rds-dbclusterparametergroup.json", "aws-rds-dbinstance.json", "aws-rds-dbparametergroup.json", @@ -1020,6 +1028,7 @@ "aws-sdb-domain.json", "aws-secretsmanager-resourcepolicy.json", "aws-secretsmanager-rotationschedule.json", + "aws-secretsmanager-secret.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-logs-delivery.json b/src/cfnlint/data/schemas/providers/eu_central_2/aws-logs-delivery.json deleted file mode 100644 index 9d504c7dc9..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_central_2/aws-logs-delivery.json +++ /dev/null @@ -1,130 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/DeliverySourceName", - "/properties/DeliveryDestinationArn" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:CreateDelivery", - "logs:GetDelivery", - "logs:DescribeDeliveries", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:GetDeliverySource", - "logs:GetDeliveryDestination" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDelivery", - "logs:ListTagsForResource", - "logs:UntagResource" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliveries", - "logs:ListTagsForResource" - ] - }, - "read": { - "permissions": [ - "logs:GetDelivery", - "logs:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "logs:GetDelivery", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource" - ] - } - }, - "primaryIdentifier": [ - "/properties/DeliveryId" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationArn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationType": { - "maxLength": 12, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DeliveryId": { - "maxLength": 64, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DeliverySourceName": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/DeliveryId", - "/properties/Arn", - "/properties/DeliveryDestinationType" - ], - "required": [ - "DeliverySourceName", - "DeliveryDestinationArn" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::Delivery" -} diff --git a/src/cfnlint/data/schemas/providers/eu_central_2/aws-logs-deliverydestination.json b/src/cfnlint/data/schemas/providers/eu_central_2/aws-logs-deliverydestination.json deleted file mode 100644 index 41e9e764ad..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_central_2/aws-logs-deliverydestination.json +++ /dev/null @@ -1,152 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name", - "/properties/DestinationResourceArn" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "DestinationPolicy": { - "additionalProperties": false, - "properties": { - "DeliveryDestinationName": { - "maxLength": 60, - "minLength": 1, - "type": "string" - }, - "DeliveryDestinationPolicy": { - "maxLength": 51200, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "DeliveryDestinationName", - "DeliveryDestinationPolicy" - ], - "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" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:PutDeliveryDestination", - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource", - "logs:PutDeliveryDestinationPolicy", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDeliveryDestination", - "logs:DeleteDeliveryDestinationPolicy" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliveryDestinations", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "read": { - "permissions": [ - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "update": { - "permissions": [ - "logs:PutDeliveryDestination", - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource", - "logs:DeleteDeliveryDestinationPolicy", - "logs:PutDeliveryDestinationPolicy", - "logs:GetDeliveryDestinationPolicy" - ] - } - }, - "primaryIdentifier": [ - "/properties/Name" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationPolicy": { - "items": { - "$ref": "#/definitions/DestinationPolicy" - }, - "type": "object" - }, - "DeliveryDestinationType": { - "maxLength": 12, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DestinationResourceArn": { - "$ref": "#/definitions/Arn" - }, - "Name": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/Arn", - "/properties/DeliveryDestinationType" - ], - "required": [ - "Name" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::DeliveryDestination" -} diff --git a/src/cfnlint/data/schemas/providers/eu_central_2/aws-logs-deliverysource.json b/src/cfnlint/data/schemas/providers/eu_central_2/aws-logs-deliverysource.json deleted file mode 100644 index 30c5c13d9e..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_central_2/aws-logs-deliverysource.json +++ /dev/null @@ -1,138 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:PutDeliverySource", - "logs:GetDeliverySource", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:AllowVendedLogDeliveryForResource", - "codewhisperer:AllowVendedLogDeliveryForResource", - "autoloop:AllowVendedLogDeliveryForResource", - "workmail:AllowVendedLogDeliveryForResource" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDeliverySource" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliverySources" - ] - }, - "read": { - "permissions": [ - "logs:GetDeliverySource", - "logs:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "logs:PutDeliverySource", - "logs:GetDeliverySource", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource" - ] - } - }, - "primaryIdentifier": [ - "/properties/Name" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "LogType": { - "maxLength": 255, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Name": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "ResourceArn": { - "$ref": "#/definitions/Arn" - }, - "ResourceArns": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Arn" - }, - "type": "array", - "uniqueItems": true - }, - "Service": { - "maxLength": 255, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/Service", - "/properties/ResourceArns", - "/properties/Arn" - ], - "required": [ - "Name" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::DeliverySource", - "writeOnlyProperties": [ - "/properties/ResourceArn" - ] -} diff --git a/src/cfnlint/data/schemas/providers/eu_central_2/aws-networkfirewall-firewall.json b/src/cfnlint/data/schemas/providers/eu_central_2/aws-networkfirewall-firewall.json deleted file mode 100644 index 233e3f6a0d..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_central_2/aws-networkfirewall-firewall.json +++ /dev/null @@ -1,193 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/VpcId", - "/properties/FirewallName" - ], - "definitions": { - "EndpointId": { - "type": "string" - }, - "ResourceArn": { - "maxLength": 256, - "minLength": 1, - "pattern": "^arn:aws.*$", - "type": "string" - }, - "SubnetMapping": { - "additionalProperties": false, - "properties": { - "IPAddressType": { - "type": "string" - }, - "SubnetId": { - "type": "string" - } - }, - "required": [ - "SubnetId" - ], - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 255, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "ec2:CreateVpcEndpoint", - "ec2:DescribeVpcEndpoints", - "ec2:DescribeSubnets", - "ec2:DescribeVpcs", - "iam:CreateServiceLinkedRole", - "network-firewall:CreateFirewall", - "network-firewall:DescribeFirewallPolicy", - "network-firewall:DescribeRuleGroup", - "network-firewall:TagResource", - "network-firewall:AssociateSubnets", - "network-firewall:AssociateFirewallPolicy", - "network-firewall:DescribeFirewall" - ] - }, - "delete": { - "permissions": [ - "ec2:DeleteVpcEndpoints", - "ec2:DescribeRouteTables", - "logs:DescribeLogGroups", - "logs:DescribeResourcePolicies", - "logs:GetLogDelivery", - "logs:ListLogDeliveries", - "network-firewall:DeleteFirewall", - "network-firewall:UntagResource", - "network-firewall:DescribeFirewall" - ] - }, - "list": { - "permissions": [ - "network-firewall:ListFirewalls" - ] - }, - "read": { - "permissions": [ - "network-firewall:DescribeFirewall", - "network-firewall:ListTagsForResources" - ] - }, - "update": { - "permissions": [ - "network-firewall:AssociateSubnets", - "network-firewall:DisassociateSubnets", - "network-firewall:UpdateFirewallDescription", - "network-firewall:UpdateFirewallDeleteProtection", - "network-firewall:UpdateSubnetChangeProtection", - "network-firewall:UpdateFirewallPolicyChangeProtection", - "network-firewall:AssociateFirewallPolicy", - "network-firewall:TagResource", - "network-firewall:UntagResource", - "network-firewall:DescribeFirewall" - ] - } - }, - "primaryIdentifier": [ - "/properties/FirewallArn" - ], - "properties": { - "DeleteProtection": { - "type": "boolean" - }, - "Description": { - "maxLength": 512, - "pattern": "^.*$", - "type": "string" - }, - "EndpointIds": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/EndpointId" - }, - "type": "array" - }, - "FirewallArn": { - "$ref": "#/definitions/ResourceArn" - }, - "FirewallId": { - "maxLength": 36, - "minLength": 36, - "pattern": "^([0-9a-f]{8})-([0-9a-f]{4}-){3}([0-9a-f]{12})$", - "type": "string" - }, - "FirewallName": { - "maxLength": 128, - "minLength": 1, - "pattern": "^[a-zA-Z0-9-]+$", - "type": "string" - }, - "FirewallPolicyArn": { - "$ref": "#/definitions/ResourceArn" - }, - "FirewallPolicyChangeProtection": { - "type": "boolean" - }, - "SubnetChangeProtection": { - "type": "boolean" - }, - "SubnetMappings": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/SubnetMapping" - }, - "minItems": 1, - "type": "array", - "uniqueItems": true - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - }, - "VpcId": { - "format": "AWS::EC2::VPC.Id", - "maxLength": 128, - "minLength": 1, - "pattern": "^vpc-[0-9a-f]+$", - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/FirewallArn", - "/properties/FirewallId", - "/properties/EndpointIds" - ], - "required": [ - "FirewallName", - "FirewallPolicyArn", - "VpcId", - "SubnetMappings" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-networkfirewall.git", - "tagging": { - "taggable": true - }, - "typeName": "AWS::NetworkFirewall::Firewall" -} diff --git a/src/cfnlint/data/schemas/providers/eu_central_2/aws-networkfirewall-loggingconfiguration.json b/src/cfnlint/data/schemas/providers/eu_central_2/aws-networkfirewall-loggingconfiguration.json deleted file mode 100644 index 53af2a3017..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_central_2/aws-networkfirewall-loggingconfiguration.json +++ /dev/null @@ -1,155 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/FirewallName", - "/properties/FirewallArn" - ], - "definitions": { - "LogDestinationConfig": { - "additionalProperties": false, - "properties": { - "LogDestination": { - "additionalProperties": false, - "minProperties": 1, - "patternProperties": { - "^[0-9A-Za-z.\\-_@\\/]+$": { - "maxLength": 1024, - "minLength": 1, - "type": "string" - } - }, - "type": "object" - }, - "LogDestinationType": { - "enum": [ - "S3", - "CloudWatchLogs", - "KinesisDataFirehose" - ], - "type": "string" - }, - "LogType": { - "enum": [ - "ALERT", - "FLOW" - ], - "type": "string" - } - }, - "required": [ - "LogType", - "LogDestinationType", - "LogDestination" - ], - "type": "object" - }, - "LoggingConfiguration": { - "additionalProperties": false, - "properties": { - "LogDestinationConfigs": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/LogDestinationConfig" - }, - "minItems": 1, - "type": "array" - } - }, - "required": [ - "LogDestinationConfigs" - ], - "type": "object" - }, - "ResourceArn": { - "maxLength": 256, - "minLength": 1, - "pattern": "^arn:aws.*$", - "type": "string" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:CreateLogDelivery", - "logs:GetLogDelivery", - "logs:ListLogDeliveries", - "s3:PutBucketPolicy", - "s3:GetBucketPolicy", - "logs:PutResourcePolicy", - "logs:DescribeResourcePolicies", - "logs:DescribeLogGroups", - "iam:CreateServiceLinkedRole", - "firehose:TagDeliveryStream", - "network-firewall:UpdateLoggingConfiguration", - "network-firewall:DescribeLoggingConfiguration" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteLogDelivery", - "logs:ListLogDeliveries", - "logs:GetLogDelivery", - "network-firewall:UpdateLoggingConfiguration", - "network-firewall:DescribeLoggingConfiguration" - ] - }, - "list": { - "permissions": [ - "logs:GetLogDelivery", - "logs:ListLogDeliveries", - "network-firewall:DescribeLoggingConfiguration" - ] - }, - "read": { - "permissions": [ - "logs:GetLogDelivery", - "logs:ListLogDeliveries", - "network-firewall:DescribeLoggingConfiguration" - ] - }, - "update": { - "permissions": [ - "logs:CreateLogDelivery", - "logs:DeleteLogDelivery", - "logs:GetLogDelivery", - "logs:UpdateLogDelivery", - "logs:ListLogDeliveries", - "s3:PutBucketPolicy", - "s3:GetBucketPolicy", - "logs:PutResourcePolicy", - "logs:DescribeResourcePolicies", - "logs:DescribeLogGroups", - "iam:CreateServiceLinkedRole", - "firehose:TagDeliveryStream", - "network-firewall:UpdateLoggingConfiguration", - "network-firewall:DescribeLoggingConfiguration" - ] - } - }, - "primaryIdentifier": [ - "/properties/FirewallArn" - ], - "properties": { - "FirewallArn": { - "$ref": "#/definitions/ResourceArn" - }, - "FirewallName": { - "maxLength": 128, - "minLength": 1, - "pattern": "^[a-zA-Z0-9-]+$", - "type": "string" - }, - "LoggingConfiguration": { - "$ref": "#/definitions/LoggingConfiguration" - } - }, - "required": [ - "FirewallArn", - "LoggingConfiguration" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-networkfirewall.git", - "tagging": { - "taggable": false - }, - "typeName": "AWS::NetworkFirewall::LoggingConfiguration" -} diff --git a/src/cfnlint/data/schemas/providers/eu_central_2/aws-rds-dbcluster.json b/src/cfnlint/data/schemas/providers/eu_central_2/aws-rds-dbcluster.json deleted file mode 100644 index fc3519fd59..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_central_2/aws-rds-dbcluster.json +++ /dev/null @@ -1,459 +0,0 @@ -{ - "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" - } - }, - "handlers": { - "create": { - "permissions": [ - "iam:CreateServiceLinkedRole", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:CreateDBCluster", - "rds:CreateDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeDBClusterSnapshots", - "rds:DescribeDBSnapshots", - "rds:DescribeEvents", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:RestoreDBClusterFromSnapshot", - "rds:RestoreDBClusterToPointInTime", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "rds:CreateDBClusterSnapshot", - "rds:DeleteDBCluster", - "rds:DeleteDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeGlobalClusters", - "rds:RemoveFromGlobalCluster" - ] - }, - "list": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "read": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "update": { - "permissions": [ - "ec2:DescribeSecurityGroups", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:DescribeDBClusters", - "rds:DescribeDBSubnetGroups", - "rds:DescribeEvents", - "rds:DescribeGlobalClusters", - "rds:DisableHttpEndpoint", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:ModifyDBInstance", - "rds:RemoveFromGlobalCluster", - "rds:RemoveRoleFromDBCluster", - "rds:RemoveTagsFromResource", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - } - }, - "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": { - "default": 0, - "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": { - "default": "default.aurora5.6", - "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": { - "default": 0, - "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": { - "default": "full-copy", - "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)) = 'aurora-postgresql' ? 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", - "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_central_2/aws-secretsmanager-secret.json b/src/cfnlint/data/schemas/providers/eu_central_2/aws-secretsmanager-secret.json deleted file mode 100644 index 8cf3aab10e..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_central_2/aws-secretsmanager-secret.json +++ /dev/null @@ -1,170 +0,0 @@ -{ - "$schema": "https://schema.cloudformation.us-east-1.amazonaws.com/provider.definition.schema.v1.json", - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name" - ], - "definitions": { - "GenerateSecretString": { - "additionalProperties": false, - "properties": { - "ExcludeCharacters": { - "type": "string" - }, - "ExcludeLowercase": { - "type": "boolean" - }, - "ExcludeNumbers": { - "type": "boolean" - }, - "ExcludePunctuation": { - "type": "boolean" - }, - "ExcludeUppercase": { - "type": "boolean" - }, - "GenerateStringKey": { - "type": "string" - }, - "IncludeSpace": { - "type": "boolean" - }, - "PasswordLength": { - "type": "integer" - }, - "RequireEachIncludedType": { - "type": "boolean" - }, - "SecretStringTemplate": { - "type": "string" - } - }, - "type": "object" - }, - "ReplicaRegion": { - "additionalProperties": false, - "properties": { - "KmsKeyId": { - "type": "string" - }, - "Region": { - "type": "string" - } - }, - "required": [ - "Region" - ], - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "secretsmanager:DescribeSecret", - "secretsmanager:GetRandomPassword", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ] - }, - "delete": { - "permissions": [ - "secretsmanager:DeleteSecret", - "secretsmanager:DescribeSecret", - "secretsmanager:RemoveRegionsFromReplication" - ] - }, - "list": { - "permissions": [ - "secretsmanager:ListSecrets" - ] - }, - "read": { - "permissions": [ - "secretsmanager:DescribeSecret", - "secretsmanager:GetSecretValue" - ] - }, - "update": { - "permissions": [ - "secretsmanager:UpdateSecret", - "secretsmanager:TagResource", - "secretsmanager:UntagResource", - "secretsmanager:GetRandomPassword", - "secretsmanager:GetSecretValue", - "secretsmanager:ReplicateSecretToRegions", - "secretsmanager:RemoveRegionsFromReplication" - ] - } - }, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "Description": { - "type": "string" - }, - "GenerateSecretString": { - "$ref": "#/definitions/GenerateSecretString" - }, - "Id": { - "type": "string" - }, - "KmsKeyId": { - "type": "string" - }, - "Name": { - "type": "string" - }, - "ReplicaRegions": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/ReplicaRegion" - }, - "type": "array", - "uniqueItems": false - }, - "SecretString": { - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": false - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-secretsmanager.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::SecretsManager::Secret", - "writeOnlyProperties": [ - "/properties/SecretString", - "/properties/GenerateSecretString" - ] -} 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 e1ea7e9a5a..38c96bfd1d 100644 --- a/src/cfnlint/data/schemas/providers/eu_north_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/eu_north_1/__init__.py @@ -566,6 +566,7 @@ "AWS::Lambda::Permission", "AWS::Lambda::Url", "AWS::Lambda::Version", + "AWS::LaunchWizard::Deployment", "AWS::LicenseManager::Grant", "AWS::LicenseManager::License", "AWS::Lightsail::Alarm", @@ -1136,7 +1137,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", @@ -1510,6 +1510,7 @@ "aws-lambda-permission.json", "aws-lambda-url.json", "aws-lambda-version.json", + "aws-launchwizard-deployment.json", "aws-licensemanager-grant.json", "aws-licensemanager-license.json", "aws-lightsail-alarm.json", @@ -1530,6 +1531,9 @@ "aws-location-tracker.json", "aws-location-trackerconsumer.json", "aws-logs-accountpolicy.json", + "aws-logs-delivery.json", + "aws-logs-deliverydestination.json", + "aws-logs-deliverysource.json", "aws-logs-destination.json", "aws-logs-loganomalydetector.json", "aws-logs-loggroup.json", @@ -1645,6 +1649,7 @@ "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", diff --git a/src/cfnlint/data/schemas/providers/eu_north_1/aws-codepipeline-pipeline.json b/src/cfnlint/data/schemas/providers/eu_north_1/aws-codepipeline-pipeline.json new file mode 100644 index 0000000000..925fbfe118 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_north_1/aws-codepipeline-pipeline.json @@ -0,0 +1,505 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "ActionDeclaration": { + "additionalProperties": false, + "properties": { + "ActionTypeId": { + "$ref": "#/definitions/ActionTypeId" + }, + "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 + }, + "Region": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "RunOrder": { + "type": "integer" + }, + "TimeoutInMinutes": { + "type": "integer" + } + }, + "required": [ + "ActionTypeId", + "Name" + ], + "type": "object" + }, + "ActionTypeId": { + "additionalProperties": false, + "properties": { + "Category": { + "enum": [ + "Approval", + "Build", + "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" + }, + "BlockerDeclaration": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "Type": { + "enum": [ + "Schedule" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Name" + ], + "type": "object" + }, + "EncryptionKey": { + "additionalProperties": false, + "properties": { + "Id": { + "type": "string" + }, + "Type": { + "type": "string" + } + }, + "required": [ + "Type", + "Id" + ], + "type": "object" + }, + "FailureConditions": { + "additionalProperties": false, + "properties": { + "Result": { + "type": "string" + } + }, + "required": [ + "Result" + ], + "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": { + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "PipelineTriggerDeclaration": { + "additionalProperties": false, + "properties": { + "GitConfiguration": { + "$ref": "#/definitions/GitConfiguration" + }, + "ProviderType": { + "type": "string" + } + }, + "required": [ + "ProviderType" + ], + "type": "object" + }, + "StageDeclaration": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/ActionDeclaration" + }, + "type": "array", + "uniqueItems": true + }, + "Blockers": { + "items": { + "$ref": "#/definitions/BlockerDeclaration" + }, + "type": "array", + "uniqueItems": true + }, + "Name": { + "type": "string" + }, + "OnFailure": { + "$ref": "#/definitions/FailureConditions" + } + }, + "required": [ + "Actions", + "Name" + ], + "type": "object" + }, + "StageTransition": { + "additionalProperties": false, + "properties": { + "Reason": { + "type": "string" + }, + "StageName": { + "type": "string" + } + }, + "required": [ + "StageName", + "Reason" + ], + "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/Id" + ], + "properties": { + "ArtifactStore": { + "$ref": "#/definitions/ArtifactStore" + }, + "ArtifactStores": { + "items": { + "$ref": "#/definitions/ArtifactStoreMap" + }, + "type": "array", + "uniqueItems": true + }, + "DisableInboundStageTransitions": { + "items": { + "$ref": "#/definitions/StageTransition" + }, + "type": "array", + "uniqueItems": true + }, + "ExecutionMode": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "PipelineType": { + "type": "string" + }, + "RestartExecutionOnUpdate": { + "type": "boolean" + }, + "RoleArn": { + "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/Id", + "/properties/Version" + ], + "required": [ + "Stages", + "RoleArn" + ], + "requiredXor": [ + "ArtifactStore", + "ArtifactStores" + ], + "typeName": "AWS::CodePipeline::Pipeline" +} diff --git a/src/cfnlint/data/schemas/providers/eu_north_1/aws-logs-delivery.json b/src/cfnlint/data/schemas/providers/eu_north_1/aws-logs-delivery.json deleted file mode 100644 index 9d504c7dc9..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_north_1/aws-logs-delivery.json +++ /dev/null @@ -1,130 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/DeliverySourceName", - "/properties/DeliveryDestinationArn" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:CreateDelivery", - "logs:GetDelivery", - "logs:DescribeDeliveries", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:GetDeliverySource", - "logs:GetDeliveryDestination" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDelivery", - "logs:ListTagsForResource", - "logs:UntagResource" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliveries", - "logs:ListTagsForResource" - ] - }, - "read": { - "permissions": [ - "logs:GetDelivery", - "logs:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "logs:GetDelivery", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource" - ] - } - }, - "primaryIdentifier": [ - "/properties/DeliveryId" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationArn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationType": { - "maxLength": 12, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DeliveryId": { - "maxLength": 64, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DeliverySourceName": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/DeliveryId", - "/properties/Arn", - "/properties/DeliveryDestinationType" - ], - "required": [ - "DeliverySourceName", - "DeliveryDestinationArn" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::Delivery" -} diff --git a/src/cfnlint/data/schemas/providers/eu_north_1/aws-logs-deliverydestination.json b/src/cfnlint/data/schemas/providers/eu_north_1/aws-logs-deliverydestination.json deleted file mode 100644 index 41e9e764ad..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_north_1/aws-logs-deliverydestination.json +++ /dev/null @@ -1,152 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name", - "/properties/DestinationResourceArn" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "DestinationPolicy": { - "additionalProperties": false, - "properties": { - "DeliveryDestinationName": { - "maxLength": 60, - "minLength": 1, - "type": "string" - }, - "DeliveryDestinationPolicy": { - "maxLength": 51200, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "DeliveryDestinationName", - "DeliveryDestinationPolicy" - ], - "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" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:PutDeliveryDestination", - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource", - "logs:PutDeliveryDestinationPolicy", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDeliveryDestination", - "logs:DeleteDeliveryDestinationPolicy" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliveryDestinations", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "read": { - "permissions": [ - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "update": { - "permissions": [ - "logs:PutDeliveryDestination", - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource", - "logs:DeleteDeliveryDestinationPolicy", - "logs:PutDeliveryDestinationPolicy", - "logs:GetDeliveryDestinationPolicy" - ] - } - }, - "primaryIdentifier": [ - "/properties/Name" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationPolicy": { - "items": { - "$ref": "#/definitions/DestinationPolicy" - }, - "type": "object" - }, - "DeliveryDestinationType": { - "maxLength": 12, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DestinationResourceArn": { - "$ref": "#/definitions/Arn" - }, - "Name": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/Arn", - "/properties/DeliveryDestinationType" - ], - "required": [ - "Name" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::DeliveryDestination" -} diff --git a/src/cfnlint/data/schemas/providers/eu_north_1/aws-logs-deliverysource.json b/src/cfnlint/data/schemas/providers/eu_north_1/aws-logs-deliverysource.json deleted file mode 100644 index 30c5c13d9e..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_north_1/aws-logs-deliverysource.json +++ /dev/null @@ -1,138 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:PutDeliverySource", - "logs:GetDeliverySource", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:AllowVendedLogDeliveryForResource", - "codewhisperer:AllowVendedLogDeliveryForResource", - "autoloop:AllowVendedLogDeliveryForResource", - "workmail:AllowVendedLogDeliveryForResource" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDeliverySource" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliverySources" - ] - }, - "read": { - "permissions": [ - "logs:GetDeliverySource", - "logs:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "logs:PutDeliverySource", - "logs:GetDeliverySource", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource" - ] - } - }, - "primaryIdentifier": [ - "/properties/Name" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "LogType": { - "maxLength": 255, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Name": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "ResourceArn": { - "$ref": "#/definitions/Arn" - }, - "ResourceArns": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Arn" - }, - "type": "array", - "uniqueItems": true - }, - "Service": { - "maxLength": 255, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/Service", - "/properties/ResourceArns", - "/properties/Arn" - ], - "required": [ - "Name" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::DeliverySource", - "writeOnlyProperties": [ - "/properties/ResourceArn" - ] -} diff --git a/src/cfnlint/data/schemas/providers/eu_north_1/aws-rds-dbcluster.json b/src/cfnlint/data/schemas/providers/eu_north_1/aws-rds-dbcluster.json deleted file mode 100644 index fc3519fd59..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_north_1/aws-rds-dbcluster.json +++ /dev/null @@ -1,459 +0,0 @@ -{ - "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" - } - }, - "handlers": { - "create": { - "permissions": [ - "iam:CreateServiceLinkedRole", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:CreateDBCluster", - "rds:CreateDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeDBClusterSnapshots", - "rds:DescribeDBSnapshots", - "rds:DescribeEvents", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:RestoreDBClusterFromSnapshot", - "rds:RestoreDBClusterToPointInTime", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "rds:CreateDBClusterSnapshot", - "rds:DeleteDBCluster", - "rds:DeleteDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeGlobalClusters", - "rds:RemoveFromGlobalCluster" - ] - }, - "list": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "read": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "update": { - "permissions": [ - "ec2:DescribeSecurityGroups", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:DescribeDBClusters", - "rds:DescribeDBSubnetGroups", - "rds:DescribeEvents", - "rds:DescribeGlobalClusters", - "rds:DisableHttpEndpoint", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:ModifyDBInstance", - "rds:RemoveFromGlobalCluster", - "rds:RemoveRoleFromDBCluster", - "rds:RemoveTagsFromResource", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - } - }, - "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": { - "default": 0, - "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": { - "default": "default.aurora5.6", - "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": { - "default": 0, - "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": { - "default": "full-copy", - "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)) = 'aurora-postgresql' ? 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", - "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_south_1/__init__.py b/src/cfnlint/data/schemas/providers/eu_south_1/__init__.py index 2934e23872..853942e327 100644 --- a/src/cfnlint/data/schemas/providers/eu_south_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/eu_south_1/__init__.py @@ -228,6 +228,7 @@ "AWS::DocDB::DBInstance", "AWS::DocDB::DBSubnetGroup", "AWS::DocDB::EventSubscription", + "AWS::DocDBElastic::Cluster", "AWS::DynamoDB::GlobalTable", "AWS::DynamoDB::Table", "AWS::EC2::CapacityReservation", @@ -493,6 +494,7 @@ "AWS::Lambda::Permission", "AWS::Lambda::Url", "AWS::Lambda::Version", + "AWS::LaunchWizard::Deployment", "AWS::Logs::AccountPolicy", "AWS::Logs::Delivery", "AWS::Logs::DeliveryDestination", @@ -926,7 +928,6 @@ "aws-codedeploy-deploymentconfig.json", "aws-codedeploy-deploymentgroup.json", "aws-codepipeline-customactiontype.json", - "aws-codepipeline-pipeline.json", "aws-codepipeline-webhook.json", "aws-codestarconnections-connection.json", "aws-codestarconnections-repositorylink.json", @@ -989,6 +990,7 @@ "aws-docdb-dbinstance.json", "aws-docdb-dbsubnetgroup.json", "aws-docdb-eventsubscription.json", + "aws-docdbelastic-cluster.json", "aws-dynamodb-globaltable.json", "aws-dynamodb-table.json", "aws-ec2-capacityreservation.json", @@ -1229,7 +1231,11 @@ "aws-lambda-permission.json", "aws-lambda-url.json", "aws-lambda-version.json", + "aws-launchwizard-deployment.json", "aws-logs-accountpolicy.json", + "aws-logs-delivery.json", + "aws-logs-deliverydestination.json", + "aws-logs-deliverysource.json", "aws-logs-destination.json", "aws-logs-loganomalydetector.json", "aws-logs-loggroup.json", @@ -1295,6 +1301,7 @@ "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", diff --git a/src/cfnlint/data/schemas/providers/eu_south_1/aws-codepipeline-pipeline.json b/src/cfnlint/data/schemas/providers/eu_south_1/aws-codepipeline-pipeline.json new file mode 100644 index 0000000000..925fbfe118 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_south_1/aws-codepipeline-pipeline.json @@ -0,0 +1,505 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "ActionDeclaration": { + "additionalProperties": false, + "properties": { + "ActionTypeId": { + "$ref": "#/definitions/ActionTypeId" + }, + "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 + }, + "Region": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "RunOrder": { + "type": "integer" + }, + "TimeoutInMinutes": { + "type": "integer" + } + }, + "required": [ + "ActionTypeId", + "Name" + ], + "type": "object" + }, + "ActionTypeId": { + "additionalProperties": false, + "properties": { + "Category": { + "enum": [ + "Approval", + "Build", + "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" + }, + "BlockerDeclaration": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "Type": { + "enum": [ + "Schedule" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Name" + ], + "type": "object" + }, + "EncryptionKey": { + "additionalProperties": false, + "properties": { + "Id": { + "type": "string" + }, + "Type": { + "type": "string" + } + }, + "required": [ + "Type", + "Id" + ], + "type": "object" + }, + "FailureConditions": { + "additionalProperties": false, + "properties": { + "Result": { + "type": "string" + } + }, + "required": [ + "Result" + ], + "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": { + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "PipelineTriggerDeclaration": { + "additionalProperties": false, + "properties": { + "GitConfiguration": { + "$ref": "#/definitions/GitConfiguration" + }, + "ProviderType": { + "type": "string" + } + }, + "required": [ + "ProviderType" + ], + "type": "object" + }, + "StageDeclaration": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/ActionDeclaration" + }, + "type": "array", + "uniqueItems": true + }, + "Blockers": { + "items": { + "$ref": "#/definitions/BlockerDeclaration" + }, + "type": "array", + "uniqueItems": true + }, + "Name": { + "type": "string" + }, + "OnFailure": { + "$ref": "#/definitions/FailureConditions" + } + }, + "required": [ + "Actions", + "Name" + ], + "type": "object" + }, + "StageTransition": { + "additionalProperties": false, + "properties": { + "Reason": { + "type": "string" + }, + "StageName": { + "type": "string" + } + }, + "required": [ + "StageName", + "Reason" + ], + "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/Id" + ], + "properties": { + "ArtifactStore": { + "$ref": "#/definitions/ArtifactStore" + }, + "ArtifactStores": { + "items": { + "$ref": "#/definitions/ArtifactStoreMap" + }, + "type": "array", + "uniqueItems": true + }, + "DisableInboundStageTransitions": { + "items": { + "$ref": "#/definitions/StageTransition" + }, + "type": "array", + "uniqueItems": true + }, + "ExecutionMode": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "PipelineType": { + "type": "string" + }, + "RestartExecutionOnUpdate": { + "type": "boolean" + }, + "RoleArn": { + "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/Id", + "/properties/Version" + ], + "required": [ + "Stages", + "RoleArn" + ], + "requiredXor": [ + "ArtifactStore", + "ArtifactStores" + ], + "typeName": "AWS::CodePipeline::Pipeline" +} diff --git a/src/cfnlint/data/schemas/providers/eu_south_1/aws-logs-delivery.json b/src/cfnlint/data/schemas/providers/eu_south_1/aws-logs-delivery.json deleted file mode 100644 index 9d504c7dc9..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_south_1/aws-logs-delivery.json +++ /dev/null @@ -1,130 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/DeliverySourceName", - "/properties/DeliveryDestinationArn" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:CreateDelivery", - "logs:GetDelivery", - "logs:DescribeDeliveries", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:GetDeliverySource", - "logs:GetDeliveryDestination" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDelivery", - "logs:ListTagsForResource", - "logs:UntagResource" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliveries", - "logs:ListTagsForResource" - ] - }, - "read": { - "permissions": [ - "logs:GetDelivery", - "logs:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "logs:GetDelivery", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource" - ] - } - }, - "primaryIdentifier": [ - "/properties/DeliveryId" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationArn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationType": { - "maxLength": 12, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DeliveryId": { - "maxLength": 64, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DeliverySourceName": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/DeliveryId", - "/properties/Arn", - "/properties/DeliveryDestinationType" - ], - "required": [ - "DeliverySourceName", - "DeliveryDestinationArn" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::Delivery" -} diff --git a/src/cfnlint/data/schemas/providers/eu_south_1/aws-logs-deliverydestination.json b/src/cfnlint/data/schemas/providers/eu_south_1/aws-logs-deliverydestination.json deleted file mode 100644 index 41e9e764ad..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_south_1/aws-logs-deliverydestination.json +++ /dev/null @@ -1,152 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name", - "/properties/DestinationResourceArn" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "DestinationPolicy": { - "additionalProperties": false, - "properties": { - "DeliveryDestinationName": { - "maxLength": 60, - "minLength": 1, - "type": "string" - }, - "DeliveryDestinationPolicy": { - "maxLength": 51200, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "DeliveryDestinationName", - "DeliveryDestinationPolicy" - ], - "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" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:PutDeliveryDestination", - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource", - "logs:PutDeliveryDestinationPolicy", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDeliveryDestination", - "logs:DeleteDeliveryDestinationPolicy" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliveryDestinations", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "read": { - "permissions": [ - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "update": { - "permissions": [ - "logs:PutDeliveryDestination", - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource", - "logs:DeleteDeliveryDestinationPolicy", - "logs:PutDeliveryDestinationPolicy", - "logs:GetDeliveryDestinationPolicy" - ] - } - }, - "primaryIdentifier": [ - "/properties/Name" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationPolicy": { - "items": { - "$ref": "#/definitions/DestinationPolicy" - }, - "type": "object" - }, - "DeliveryDestinationType": { - "maxLength": 12, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DestinationResourceArn": { - "$ref": "#/definitions/Arn" - }, - "Name": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/Arn", - "/properties/DeliveryDestinationType" - ], - "required": [ - "Name" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::DeliveryDestination" -} diff --git a/src/cfnlint/data/schemas/providers/eu_south_1/aws-logs-deliverysource.json b/src/cfnlint/data/schemas/providers/eu_south_1/aws-logs-deliverysource.json deleted file mode 100644 index 30c5c13d9e..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_south_1/aws-logs-deliverysource.json +++ /dev/null @@ -1,138 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:PutDeliverySource", - "logs:GetDeliverySource", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:AllowVendedLogDeliveryForResource", - "codewhisperer:AllowVendedLogDeliveryForResource", - "autoloop:AllowVendedLogDeliveryForResource", - "workmail:AllowVendedLogDeliveryForResource" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDeliverySource" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliverySources" - ] - }, - "read": { - "permissions": [ - "logs:GetDeliverySource", - "logs:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "logs:PutDeliverySource", - "logs:GetDeliverySource", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource" - ] - } - }, - "primaryIdentifier": [ - "/properties/Name" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "LogType": { - "maxLength": 255, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Name": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "ResourceArn": { - "$ref": "#/definitions/Arn" - }, - "ResourceArns": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Arn" - }, - "type": "array", - "uniqueItems": true - }, - "Service": { - "maxLength": 255, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/Service", - "/properties/ResourceArns", - "/properties/Arn" - ], - "required": [ - "Name" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::DeliverySource", - "writeOnlyProperties": [ - "/properties/ResourceArn" - ] -} diff --git a/src/cfnlint/data/schemas/providers/eu_south_1/aws-rds-dbcluster.json b/src/cfnlint/data/schemas/providers/eu_south_1/aws-rds-dbcluster.json deleted file mode 100644 index fc3519fd59..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_south_1/aws-rds-dbcluster.json +++ /dev/null @@ -1,459 +0,0 @@ -{ - "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" - } - }, - "handlers": { - "create": { - "permissions": [ - "iam:CreateServiceLinkedRole", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:CreateDBCluster", - "rds:CreateDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeDBClusterSnapshots", - "rds:DescribeDBSnapshots", - "rds:DescribeEvents", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:RestoreDBClusterFromSnapshot", - "rds:RestoreDBClusterToPointInTime", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "rds:CreateDBClusterSnapshot", - "rds:DeleteDBCluster", - "rds:DeleteDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeGlobalClusters", - "rds:RemoveFromGlobalCluster" - ] - }, - "list": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "read": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "update": { - "permissions": [ - "ec2:DescribeSecurityGroups", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:DescribeDBClusters", - "rds:DescribeDBSubnetGroups", - "rds:DescribeEvents", - "rds:DescribeGlobalClusters", - "rds:DisableHttpEndpoint", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:ModifyDBInstance", - "rds:RemoveFromGlobalCluster", - "rds:RemoveRoleFromDBCluster", - "rds:RemoveTagsFromResource", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - } - }, - "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": { - "default": 0, - "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": { - "default": "default.aurora5.6", - "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": { - "default": 0, - "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": { - "default": "full-copy", - "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)) = 'aurora-postgresql' ? 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", - "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_south_2/__init__.py b/src/cfnlint/data/schemas/providers/eu_south_2/__init__.py index 4cffcc819a..30fd027480 100644 --- a/src/cfnlint/data/schemas/providers/eu_south_2/__init__.py +++ b/src/cfnlint/data/schemas/providers/eu_south_2/__init__.py @@ -383,6 +383,7 @@ "AWS::Lambda::LayerVersionPermission", "AWS::Lambda::Permission", "AWS::Lambda::Version", + "AWS::LaunchWizard::Deployment", "AWS::Logs::AccountPolicy", "AWS::Logs::Delivery", "AWS::Logs::DeliveryDestination", @@ -689,7 +690,6 @@ "aws-codedeploy-application.json", "aws-codedeploy-deploymentconfig.json", "aws-codedeploy-deploymentgroup.json", - "aws-codepipeline-pipeline.json", "aws-cognito-identitypool.json", "aws-cognito-identitypoolprincipaltag.json", "aws-cognito-identitypoolroleattachment.json", @@ -921,7 +921,11 @@ "aws-lambda-layerversionpermission.json", "aws-lambda-permission.json", "aws-lambda-version.json", + "aws-launchwizard-deployment.json", "aws-logs-accountpolicy.json", + "aws-logs-delivery.json", + "aws-logs-deliverydestination.json", + "aws-logs-deliverysource.json", "aws-logs-destination.json", "aws-logs-loganomalydetector.json", "aws-logs-loggroup.json", @@ -961,6 +965,7 @@ "aws-pcaconnectorad-templategroupaccesscontrolentry.json", "aws-pipes-pipe.json", "aws-ram-permission.json", + "aws-rds-dbcluster.json", "aws-rds-dbclusterparametergroup.json", "aws-rds-dbinstance.json", "aws-rds-dbparametergroup.json", diff --git a/src/cfnlint/data/schemas/providers/eu_south_2/aws-codepipeline-pipeline.json b/src/cfnlint/data/schemas/providers/eu_south_2/aws-codepipeline-pipeline.json new file mode 100644 index 0000000000..925fbfe118 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_south_2/aws-codepipeline-pipeline.json @@ -0,0 +1,505 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "ActionDeclaration": { + "additionalProperties": false, + "properties": { + "ActionTypeId": { + "$ref": "#/definitions/ActionTypeId" + }, + "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 + }, + "Region": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "RunOrder": { + "type": "integer" + }, + "TimeoutInMinutes": { + "type": "integer" + } + }, + "required": [ + "ActionTypeId", + "Name" + ], + "type": "object" + }, + "ActionTypeId": { + "additionalProperties": false, + "properties": { + "Category": { + "enum": [ + "Approval", + "Build", + "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" + }, + "BlockerDeclaration": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "Type": { + "enum": [ + "Schedule" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Name" + ], + "type": "object" + }, + "EncryptionKey": { + "additionalProperties": false, + "properties": { + "Id": { + "type": "string" + }, + "Type": { + "type": "string" + } + }, + "required": [ + "Type", + "Id" + ], + "type": "object" + }, + "FailureConditions": { + "additionalProperties": false, + "properties": { + "Result": { + "type": "string" + } + }, + "required": [ + "Result" + ], + "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": { + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "PipelineTriggerDeclaration": { + "additionalProperties": false, + "properties": { + "GitConfiguration": { + "$ref": "#/definitions/GitConfiguration" + }, + "ProviderType": { + "type": "string" + } + }, + "required": [ + "ProviderType" + ], + "type": "object" + }, + "StageDeclaration": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/ActionDeclaration" + }, + "type": "array", + "uniqueItems": true + }, + "Blockers": { + "items": { + "$ref": "#/definitions/BlockerDeclaration" + }, + "type": "array", + "uniqueItems": true + }, + "Name": { + "type": "string" + }, + "OnFailure": { + "$ref": "#/definitions/FailureConditions" + } + }, + "required": [ + "Actions", + "Name" + ], + "type": "object" + }, + "StageTransition": { + "additionalProperties": false, + "properties": { + "Reason": { + "type": "string" + }, + "StageName": { + "type": "string" + } + }, + "required": [ + "StageName", + "Reason" + ], + "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/Id" + ], + "properties": { + "ArtifactStore": { + "$ref": "#/definitions/ArtifactStore" + }, + "ArtifactStores": { + "items": { + "$ref": "#/definitions/ArtifactStoreMap" + }, + "type": "array", + "uniqueItems": true + }, + "DisableInboundStageTransitions": { + "items": { + "$ref": "#/definitions/StageTransition" + }, + "type": "array", + "uniqueItems": true + }, + "ExecutionMode": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "PipelineType": { + "type": "string" + }, + "RestartExecutionOnUpdate": { + "type": "boolean" + }, + "RoleArn": { + "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/Id", + "/properties/Version" + ], + "required": [ + "Stages", + "RoleArn" + ], + "requiredXor": [ + "ArtifactStore", + "ArtifactStores" + ], + "typeName": "AWS::CodePipeline::Pipeline" +} diff --git a/src/cfnlint/data/schemas/providers/eu_south_2/aws-logs-delivery.json b/src/cfnlint/data/schemas/providers/eu_south_2/aws-logs-delivery.json deleted file mode 100644 index 9d504c7dc9..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_south_2/aws-logs-delivery.json +++ /dev/null @@ -1,130 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/DeliverySourceName", - "/properties/DeliveryDestinationArn" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:CreateDelivery", - "logs:GetDelivery", - "logs:DescribeDeliveries", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:GetDeliverySource", - "logs:GetDeliveryDestination" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDelivery", - "logs:ListTagsForResource", - "logs:UntagResource" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliveries", - "logs:ListTagsForResource" - ] - }, - "read": { - "permissions": [ - "logs:GetDelivery", - "logs:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "logs:GetDelivery", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource" - ] - } - }, - "primaryIdentifier": [ - "/properties/DeliveryId" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationArn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationType": { - "maxLength": 12, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DeliveryId": { - "maxLength": 64, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DeliverySourceName": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/DeliveryId", - "/properties/Arn", - "/properties/DeliveryDestinationType" - ], - "required": [ - "DeliverySourceName", - "DeliveryDestinationArn" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::Delivery" -} diff --git a/src/cfnlint/data/schemas/providers/eu_south_2/aws-logs-deliverydestination.json b/src/cfnlint/data/schemas/providers/eu_south_2/aws-logs-deliverydestination.json deleted file mode 100644 index 41e9e764ad..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_south_2/aws-logs-deliverydestination.json +++ /dev/null @@ -1,152 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name", - "/properties/DestinationResourceArn" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "DestinationPolicy": { - "additionalProperties": false, - "properties": { - "DeliveryDestinationName": { - "maxLength": 60, - "minLength": 1, - "type": "string" - }, - "DeliveryDestinationPolicy": { - "maxLength": 51200, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "DeliveryDestinationName", - "DeliveryDestinationPolicy" - ], - "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" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:PutDeliveryDestination", - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource", - "logs:PutDeliveryDestinationPolicy", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDeliveryDestination", - "logs:DeleteDeliveryDestinationPolicy" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliveryDestinations", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "read": { - "permissions": [ - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "update": { - "permissions": [ - "logs:PutDeliveryDestination", - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource", - "logs:DeleteDeliveryDestinationPolicy", - "logs:PutDeliveryDestinationPolicy", - "logs:GetDeliveryDestinationPolicy" - ] - } - }, - "primaryIdentifier": [ - "/properties/Name" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationPolicy": { - "items": { - "$ref": "#/definitions/DestinationPolicy" - }, - "type": "object" - }, - "DeliveryDestinationType": { - "maxLength": 12, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DestinationResourceArn": { - "$ref": "#/definitions/Arn" - }, - "Name": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/Arn", - "/properties/DeliveryDestinationType" - ], - "required": [ - "Name" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::DeliveryDestination" -} diff --git a/src/cfnlint/data/schemas/providers/eu_south_2/aws-logs-deliverysource.json b/src/cfnlint/data/schemas/providers/eu_south_2/aws-logs-deliverysource.json deleted file mode 100644 index 30c5c13d9e..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_south_2/aws-logs-deliverysource.json +++ /dev/null @@ -1,138 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:PutDeliverySource", - "logs:GetDeliverySource", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:AllowVendedLogDeliveryForResource", - "codewhisperer:AllowVendedLogDeliveryForResource", - "autoloop:AllowVendedLogDeliveryForResource", - "workmail:AllowVendedLogDeliveryForResource" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDeliverySource" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliverySources" - ] - }, - "read": { - "permissions": [ - "logs:GetDeliverySource", - "logs:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "logs:PutDeliverySource", - "logs:GetDeliverySource", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource" - ] - } - }, - "primaryIdentifier": [ - "/properties/Name" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "LogType": { - "maxLength": 255, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Name": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "ResourceArn": { - "$ref": "#/definitions/Arn" - }, - "ResourceArns": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Arn" - }, - "type": "array", - "uniqueItems": true - }, - "Service": { - "maxLength": 255, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/Service", - "/properties/ResourceArns", - "/properties/Arn" - ], - "required": [ - "Name" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::DeliverySource", - "writeOnlyProperties": [ - "/properties/ResourceArn" - ] -} diff --git a/src/cfnlint/data/schemas/providers/eu_south_2/aws-rds-dbcluster.json b/src/cfnlint/data/schemas/providers/eu_south_2/aws-rds-dbcluster.json deleted file mode 100644 index fc3519fd59..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_south_2/aws-rds-dbcluster.json +++ /dev/null @@ -1,459 +0,0 @@ -{ - "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" - } - }, - "handlers": { - "create": { - "permissions": [ - "iam:CreateServiceLinkedRole", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:CreateDBCluster", - "rds:CreateDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeDBClusterSnapshots", - "rds:DescribeDBSnapshots", - "rds:DescribeEvents", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:RestoreDBClusterFromSnapshot", - "rds:RestoreDBClusterToPointInTime", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "rds:CreateDBClusterSnapshot", - "rds:DeleteDBCluster", - "rds:DeleteDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeGlobalClusters", - "rds:RemoveFromGlobalCluster" - ] - }, - "list": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "read": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "update": { - "permissions": [ - "ec2:DescribeSecurityGroups", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:DescribeDBClusters", - "rds:DescribeDBSubnetGroups", - "rds:DescribeEvents", - "rds:DescribeGlobalClusters", - "rds:DisableHttpEndpoint", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:ModifyDBInstance", - "rds:RemoveFromGlobalCluster", - "rds:RemoveRoleFromDBCluster", - "rds:RemoveTagsFromResource", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - } - }, - "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": { - "default": 0, - "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": { - "default": "default.aurora5.6", - "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": { - "default": 0, - "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": { - "default": "full-copy", - "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)) = 'aurora-postgresql' ? 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", - "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_1/__init__.py b/src/cfnlint/data/schemas/providers/eu_west_1/__init__.py index a1b9557755..837e87de9f 100644 --- a/src/cfnlint/data/schemas/providers/eu_west_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/eu_west_1/__init__.py @@ -710,6 +710,7 @@ "AWS::Lambda::Permission", "AWS::Lambda::Url", "AWS::Lambda::Version", + "AWS::LaunchWizard::Deployment", "AWS::Lex::Bot", "AWS::Lex::BotAlias", "AWS::Lex::BotVersion", @@ -1006,6 +1007,13 @@ "AWS::SES::ContactList", "AWS::SES::DedicatedIpPool", "AWS::SES::EmailIdentity", + "AWS::SES::MailManagerAddonInstance", + "AWS::SES::MailManagerAddonSubscription", + "AWS::SES::MailManagerArchive", + "AWS::SES::MailManagerIngressPoint", + "AWS::SES::MailManagerRelay", + "AWS::SES::MailManagerRuleSet", + "AWS::SES::MailManagerTrafficPolicy", "AWS::SES::ReceiptFilter", "AWS::SES::ReceiptRule", "AWS::SES::ReceiptRuleSet", @@ -1904,6 +1912,7 @@ "aws-lambda-permission.json", "aws-lambda-url.json", "aws-lambda-version.json", + "aws-launchwizard-deployment.json", "aws-lex-bot.json", "aws-lex-botalias.json", "aws-lex-botversion.json", @@ -1928,6 +1937,9 @@ "aws-location-tracker.json", "aws-location-trackerconsumer.json", "aws-logs-accountpolicy.json", + "aws-logs-delivery.json", + "aws-logs-deliverydestination.json", + "aws-logs-deliverysource.json", "aws-logs-destination.json", "aws-logs-loganomalydetector.json", "aws-logs-loggroup.json", @@ -1995,6 +2007,7 @@ "aws-msk-serverlesscluster.json", "aws-msk-vpcconnection.json", "aws-mwaa-environment.json", + "aws-neptune-dbcluster.json", "aws-neptune-dbclusterparametergroup.json", "aws-neptune-dbinstance.json", "aws-neptune-dbparametergroup.json", @@ -2103,6 +2116,7 @@ "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", @@ -2268,6 +2282,13 @@ "aws-ses-contactlist.json", "aws-ses-dedicatedippool.json", "aws-ses-emailidentity.json", + "aws-ses-mailmanageraddoninstance.json", + "aws-ses-mailmanageraddonsubscription.json", + "aws-ses-mailmanagerarchive.json", + "aws-ses-mailmanageringresspoint.json", + "aws-ses-mailmanagerrelay.json", + "aws-ses-mailmanagerruleset.json", + "aws-ses-mailmanagertrafficpolicy.json", "aws-ses-receiptfilter.json", "aws-ses-receiptrule.json", "aws-ses-receiptruleset.json", @@ -2370,6 +2391,7 @@ "aws-workspaces-connectionalias.json", "aws-workspaces-workspace.json", "aws-workspaces-workspacespool.json", + "aws-workspacesthinclient-environment.json", "aws-workspacesweb-browsersettings.json", "aws-workspacesweb-identityprovider.json", "aws-workspacesweb-ipaccesssettings.json", diff --git a/src/cfnlint/data/schemas/providers/eu_west_1/aws-logs-delivery.json b/src/cfnlint/data/schemas/providers/eu_west_1/aws-logs-delivery.json deleted file mode 100644 index 9d504c7dc9..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_west_1/aws-logs-delivery.json +++ /dev/null @@ -1,130 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/DeliverySourceName", - "/properties/DeliveryDestinationArn" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:CreateDelivery", - "logs:GetDelivery", - "logs:DescribeDeliveries", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:GetDeliverySource", - "logs:GetDeliveryDestination" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDelivery", - "logs:ListTagsForResource", - "logs:UntagResource" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliveries", - "logs:ListTagsForResource" - ] - }, - "read": { - "permissions": [ - "logs:GetDelivery", - "logs:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "logs:GetDelivery", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource" - ] - } - }, - "primaryIdentifier": [ - "/properties/DeliveryId" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationArn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationType": { - "maxLength": 12, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DeliveryId": { - "maxLength": 64, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DeliverySourceName": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/DeliveryId", - "/properties/Arn", - "/properties/DeliveryDestinationType" - ], - "required": [ - "DeliverySourceName", - "DeliveryDestinationArn" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::Delivery" -} diff --git a/src/cfnlint/data/schemas/providers/eu_west_1/aws-logs-deliverydestination.json b/src/cfnlint/data/schemas/providers/eu_west_1/aws-logs-deliverydestination.json deleted file mode 100644 index 41e9e764ad..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_west_1/aws-logs-deliverydestination.json +++ /dev/null @@ -1,152 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name", - "/properties/DestinationResourceArn" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "DestinationPolicy": { - "additionalProperties": false, - "properties": { - "DeliveryDestinationName": { - "maxLength": 60, - "minLength": 1, - "type": "string" - }, - "DeliveryDestinationPolicy": { - "maxLength": 51200, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "DeliveryDestinationName", - "DeliveryDestinationPolicy" - ], - "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" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:PutDeliveryDestination", - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource", - "logs:PutDeliveryDestinationPolicy", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDeliveryDestination", - "logs:DeleteDeliveryDestinationPolicy" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliveryDestinations", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "read": { - "permissions": [ - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "update": { - "permissions": [ - "logs:PutDeliveryDestination", - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource", - "logs:DeleteDeliveryDestinationPolicy", - "logs:PutDeliveryDestinationPolicy", - "logs:GetDeliveryDestinationPolicy" - ] - } - }, - "primaryIdentifier": [ - "/properties/Name" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationPolicy": { - "items": { - "$ref": "#/definitions/DestinationPolicy" - }, - "type": "object" - }, - "DeliveryDestinationType": { - "maxLength": 12, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DestinationResourceArn": { - "$ref": "#/definitions/Arn" - }, - "Name": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/Arn", - "/properties/DeliveryDestinationType" - ], - "required": [ - "Name" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::DeliveryDestination" -} diff --git a/src/cfnlint/data/schemas/providers/eu_west_1/aws-logs-deliverysource.json b/src/cfnlint/data/schemas/providers/eu_west_1/aws-logs-deliverysource.json deleted file mode 100644 index 30c5c13d9e..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_west_1/aws-logs-deliverysource.json +++ /dev/null @@ -1,138 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:PutDeliverySource", - "logs:GetDeliverySource", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:AllowVendedLogDeliveryForResource", - "codewhisperer:AllowVendedLogDeliveryForResource", - "autoloop:AllowVendedLogDeliveryForResource", - "workmail:AllowVendedLogDeliveryForResource" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDeliverySource" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliverySources" - ] - }, - "read": { - "permissions": [ - "logs:GetDeliverySource", - "logs:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "logs:PutDeliverySource", - "logs:GetDeliverySource", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource" - ] - } - }, - "primaryIdentifier": [ - "/properties/Name" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "LogType": { - "maxLength": 255, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Name": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "ResourceArn": { - "$ref": "#/definitions/Arn" - }, - "ResourceArns": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Arn" - }, - "type": "array", - "uniqueItems": true - }, - "Service": { - "maxLength": 255, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/Service", - "/properties/ResourceArns", - "/properties/Arn" - ], - "required": [ - "Name" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::DeliverySource", - "writeOnlyProperties": [ - "/properties/ResourceArn" - ] -} diff --git a/src/cfnlint/data/schemas/providers/eu_west_1/aws-neptune-dbcluster.json b/src/cfnlint/data/schemas/providers/eu_west_1/aws-neptune-dbcluster.json deleted file mode 100644 index d682d355d7..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_west_1/aws-neptune-dbcluster.json +++ /dev/null @@ -1,292 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/AvailabilityZones", - "/properties/DBClusterIdentifier", - "/properties/DBSubnetGroupName", - "/properties/KmsKeyId", - "/properties/RestoreToTime", - "/properties/RestoreType", - "/properties/SnapshotIdentifier", - "/properties/SourceDBClusterIdentifier", - "/properties/StorageEncrypted", - "/properties/UseLatestRestorableTime" - ], - "definitions": { - "DBClusterRole": { - "additionalProperties": false, - "properties": { - "FeatureName": { - "type": "string" - }, - "RoleArn": { - "type": "string" - } - }, - "required": [ - "RoleArn" - ], - "type": "object" - }, - "ServerlessScalingConfiguration": { - "additionalProperties": false, - "properties": { - "MaxCapacity": { - "maximum": 128, - "minimum": 2.5, - "type": "number" - }, - "MinCapacity": { - "maximum": 128, - "minimum": 1, - "type": "number" - } - }, - "required": [ - "MinCapacity", - "MaxCapacity" - ], - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:CreateDBCluster", - "rds:CreateDBInstance", - "rds:DescribeDBClusters", - "rds:ListTagsForResource", - "rds:ModifyDBCluster", - "rds:RestoreDBClusterFromSnapshot", - "rds:RestoreDBClusterToPointInTime", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "rds:DeleteDBCluster", - "rds:DeleteDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeGlobalClusters", - "rds:ListTagsForResource", - "rds:RemoveFromGlobalCluster", - "rds:CreateDBClusterSnapshot", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "list": { - "permissions": [ - "rds:DescribeDBClusters", - "rds:ListTagsForResource", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "read": { - "permissions": [ - "rds:DescribeDBClusters", - "rds:ListTagsForResource", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "update": { - "permissions": [ - "ec2:DescribeSecurityGroups", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:DescribeDBClusters", - "rds:DescribeDBInstances", - "rds:DescribeDBSubnetGroups", - "rds:DescribeGlobalClusters", - "rds:ListTagsForResource", - "rds:ModifyDBCluster", - "rds:ModifyDBInstance", - "rds:RemoveFromGlobalCluster", - "rds:RemoveRoleFromDBCluster", - "rds:RemoveTagsFromResource", - "kms:*" - ], - "timeoutInMinutes": 2160 - } - }, - "primaryIdentifier": [ - "/properties/DBClusterIdentifier" - ], - "properties": { - "AssociatedRoles": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/DBClusterRole" - }, - "type": "array", - "uniqueItems": true - }, - "AvailabilityZones": { - "insertionOrder": true, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "BackupRetentionPeriod": { - "default": 1, - "minimum": 1, - "type": "integer" - }, - "ClusterResourceId": { - "type": "string" - }, - "CopyTagsToSnapshot": { - "type": "boolean" - }, - "DBClusterIdentifier": { - "maxLength": 63, - "minLength": 1, - "pattern": "^[a-zA-Z]{1}(?:-?[a-zA-Z0-9]){0,62}$", - "type": "string" - }, - "DBClusterParameterGroupName": { - "type": "string" - }, - "DBInstanceParameterGroupName": { - "type": "string" - }, - "DBPort": { - "type": "integer" - }, - "DBSubnetGroupName": { - "type": "string" - }, - "DeletionProtection": { - "type": "boolean" - }, - "EnableCloudwatchLogsExports": { - "insertionOrder": true, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "Endpoint": { - "type": "string" - }, - "EngineVersion": { - "type": "string" - }, - "IamAuthEnabled": { - "type": "boolean" - }, - "KmsKeyId": { - "type": "string" - }, - "Port": { - "type": "string" - }, - "PreferredBackupWindow": { - "type": "string" - }, - "PreferredMaintenanceWindow": { - "type": "string" - }, - "ReadEndpoint": { - "type": "string" - }, - "RestoreToTime": { - "type": "string" - }, - "RestoreType": { - "default": "full-copy", - "type": "string" - }, - "ServerlessScalingConfiguration": { - "$ref": "#/definitions/ServerlessScalingConfiguration" - }, - "SnapshotIdentifier": { - "type": "string" - }, - "SourceDBClusterIdentifier": { - "type": "string" - }, - "StorageEncrypted": { - "type": "boolean" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 50, - "type": "array", - "uniqueItems": true - }, - "UseLatestRestorableTime": { - "type": "boolean" - }, - "VpcSecurityGroupIds": { - "insertionOrder": true, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - } - }, - "propertyTransform": { - "/properties/DBClusterIdentifier": "$lowercase(DBClusterIdentifier)", - "/properties/DBClusterParameterGroupName": "$lowercase(DBClusterParameterGroupName)", - "/properties/DBSubnetGroupName": "$lowercase(DBSubnetGroupName)", - "/properties/SnapshotIdentifier": "$lowercase(SnapshotIdentifier)", - "/properties/SourceDBClusterIdentifier": "$lowercase(SourceDBClusterIdentifier)" - }, - "readOnlyProperties": [ - "/properties/Endpoint", - "/properties/ClusterResourceId", - "/properties/Port", - "/properties/ReadEndpoint" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-neptune", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Neptune::DBCluster", - "writeOnlyProperties": [ - "/properties/DBInstanceParameterGroupName", - "/properties/RestoreToTime", - "/properties/RestoreType", - "/properties/SnapshotIdentifier", - "/properties/SourceDBClusterIdentifier", - "/properties/UseLatestRestorableTime" - ] -} diff --git a/src/cfnlint/data/schemas/providers/eu_west_1/aws-rds-dbcluster.json b/src/cfnlint/data/schemas/providers/eu_west_1/aws-rds-dbcluster.json deleted file mode 100644 index fc3519fd59..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_west_1/aws-rds-dbcluster.json +++ /dev/null @@ -1,459 +0,0 @@ -{ - "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" - } - }, - "handlers": { - "create": { - "permissions": [ - "iam:CreateServiceLinkedRole", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:CreateDBCluster", - "rds:CreateDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeDBClusterSnapshots", - "rds:DescribeDBSnapshots", - "rds:DescribeEvents", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:RestoreDBClusterFromSnapshot", - "rds:RestoreDBClusterToPointInTime", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "rds:CreateDBClusterSnapshot", - "rds:DeleteDBCluster", - "rds:DeleteDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeGlobalClusters", - "rds:RemoveFromGlobalCluster" - ] - }, - "list": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "read": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "update": { - "permissions": [ - "ec2:DescribeSecurityGroups", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:DescribeDBClusters", - "rds:DescribeDBSubnetGroups", - "rds:DescribeEvents", - "rds:DescribeGlobalClusters", - "rds:DisableHttpEndpoint", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:ModifyDBInstance", - "rds:RemoveFromGlobalCluster", - "rds:RemoveRoleFromDBCluster", - "rds:RemoveTagsFromResource", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - } - }, - "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": { - "default": 0, - "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": { - "default": "default.aurora5.6", - "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": { - "default": 0, - "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": { - "default": "full-copy", - "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)) = 'aurora-postgresql' ? 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", - "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_1/aws-workspacesthinclient-environment.json b/src/cfnlint/data/schemas/providers/eu_west_1/aws-workspacesthinclient-environment.json deleted file mode 100644 index 927a89baf4..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_west_1/aws-workspacesthinclient-environment.json +++ /dev/null @@ -1,279 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/KmsKeyArn", - "/properties/DesktopArn" - ], - "definitions": { - "DayOfWeek": { - "enum": [ - "MONDAY", - "TUESDAY", - "WEDNESDAY", - "THURSDAY", - "FRIDAY", - "SATURDAY", - "SUNDAY" - ], - "type": "string" - }, - "Hour": { - "maximum": 23, - "minimum": 0, - "type": "integer" - }, - "MaintenanceWindow": { - "additionalProperties": false, - "properties": { - "ApplyTimeOf": { - "enum": [ - "UTC", - "DEVICE" - ], - "type": "string" - }, - "DaysOfTheWeek": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/DayOfWeek" - }, - "maxItems": 7, - "minItems": 1, - "type": "array", - "uniqueItems": true - }, - "EndTimeHour": { - "$ref": "#/definitions/Hour" - }, - "EndTimeMinute": { - "$ref": "#/definitions/Minute" - }, - "StartTimeHour": { - "$ref": "#/definitions/Hour" - }, - "StartTimeMinute": { - "$ref": "#/definitions/Minute" - }, - "Type": { - "enum": [ - "SYSTEM", - "CUSTOM" - ], - "type": "string" - } - }, - "required": [ - "Type" - ], - "type": "object" - }, - "Minute": { - "maximum": 59, - "minimum": 0, - "type": "integer" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "pattern": "^(?!aws:)[a-zA-Z+-=._:/]+$", - "type": "string" - }, - "Value": { - "maxLength": 256, - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "thinclient:CreateEnvironment", - "thinclient:TagResource", - "thinclient:ListTagsForResource", - "appstream:DescribeStacks", - "workspaces:DescribeWorkspaceDirectories", - "workspaces-web:GetPortal", - "workspaces-web:GetUserSettings", - "kms:DescribeKey", - "kms:CreateGrant", - "kms:GenerateDataKey", - "kms:Decrypt" - ] - }, - "delete": { - "permissions": [ - "thinclient:DeleteEnvironment", - "thinclient:UntagResource", - "kms:Decrypt", - "kms:RetireGrant" - ] - }, - "list": { - "permissions": [ - "thinclient:ListEnvironment", - "thinclient:ListTagsForResource", - "kms:Decrypt" - ] - }, - "read": { - "permissions": [ - "thinclient:GetEnvironment", - "thinclient:ListTagsForResource", - "kms:Decrypt" - ] - }, - "update": { - "permissions": [ - "appstream:DescribeStacks", - "workspaces:DescribeWorkspaceDirectories", - "workspaces-web:GetPortal", - "workspaces-web:GetUserSettings", - "thinclient:UpdateEnvironment", - "thinclient:ListTagsForResource", - "thinclient:TagResource", - "thinclient:UntagResource", - "kms:Decrypt", - "kms:GenerateDataKey" - ] - } - }, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "ActivationCode": { - "pattern": "^[a-z]{2}[a-z0-9]{6}$", - "type": "string" - }, - "Arn": { - "maxLength": 2048, - "minLength": 20, - "pattern": "^arn:[\\w+=\\/,.@-]+:[a-zA-Z0-9\\-]+:[a-zA-Z0-9\\-]*:[0-9]{0,12}:[a-zA-Z0-9\\-\\/\\._]+$", - "type": "string" - }, - "CreatedAt": { - "type": "string" - }, - "DesiredSoftwareSetId": { - "pattern": "^[0-9]{1,9}$", - "type": "string" - }, - "DesktopArn": { - "maxLength": 2048, - "minLength": 20, - "pattern": "^arn:[\\w+=\\/,.@-]+:[a-zA-Z0-9\\-]+:[a-zA-Z0-9\\-]*:[0-9]{0,12}:[a-zA-Z0-9\\-\\/\\._]+$", - "type": "string" - }, - "DesktopEndpoint": { - "maxLength": 1024, - "minLength": 1, - "pattern": "^(https:\\/\\/)[a-z0-9]+([\\-\\.]{1}[a-z0-9]+)*\\.[a-z]{2,32}(:[0-9]{1,5})?(\\/.*)?$", - "type": "string" - }, - "DesktopType": { - "enum": [ - "workspaces", - "appstream", - "workspaces-web" - ], - "type": "string" - }, - "Id": { - "pattern": "^[a-z0-9]{9}$", - "type": "string" - }, - "KmsKeyArn": { - "maxLength": 2048, - "minLength": 20, - "pattern": "^arn:[\\w+=\\/,.@-]+:kms:[a-zA-Z0-9\\-]*:[0-9]{0,12}:key\\/[a-zA-Z0-9-]+$", - "type": "string" - }, - "MaintenanceWindow": { - "$ref": "#/definitions/MaintenanceWindow" - }, - "Name": { - "maxLength": 64, - "minLength": 1, - "pattern": "^.+$", - "type": "string" - }, - "PendingSoftwareSetId": { - "pattern": "^[0-9]{1,9}$", - "type": "string" - }, - "PendingSoftwareSetVersion": { - "type": "string" - }, - "RegisteredDevicesCount": { - "minimum": 0, - "type": "integer" - }, - "SoftwareSetComplianceStatus": { - "enum": [ - "COMPLIANT", - "NOT_COMPLIANT", - "NO_REGISTERED_DEVICES" - ], - "type": "string" - }, - "SoftwareSetUpdateMode": { - "enum": [ - "USE_LATEST", - "USE_DESIRED" - ], - "type": "string" - }, - "SoftwareSetUpdateSchedule": { - "enum": [ - "USE_MAINTENANCE_WINDOW", - "APPLY_IMMEDIATELY" - ], - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 50, - "type": "array", - "uniqueItems": true - }, - "UpdatedAt": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id", - "/properties/ActivationCode", - "/properties/Arn", - "/properties/CreatedAt", - "/properties/DesktopType", - "/properties/RegisteredDevicesCount", - "/properties/UpdatedAt", - "/properties/PendingSoftwareSetId", - "/properties/PendingSoftwareSetVersion", - "/properties/SoftwareSetComplianceStatus" - ], - "required": [ - "DesktopArn" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::WorkSpacesThinClient::Environment" -} 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 dbf3972f1b..270cce398f 100644 --- a/src/cfnlint/data/schemas/providers/eu_west_2/__init__.py +++ b/src/cfnlint/data/schemas/providers/eu_west_2/__init__.py @@ -667,6 +667,7 @@ "AWS::Lambda::Permission", "AWS::Lambda::Url", "AWS::Lambda::Version", + "AWS::LaunchWizard::Deployment", "AWS::Lex::Bot", "AWS::Lex::BotAlias", "AWS::Lex::BotVersion", @@ -1308,6 +1309,7 @@ "aws-cloudwatch-alarm.json", "aws-cloudwatch-anomalydetector.json", "aws-cloudwatch-compositealarm.json", + "aws-cloudwatch-dashboard.json", "aws-cloudwatch-insightrule.json", "aws-cloudwatch-metricstream.json", "aws-codeartifact-domain.json", @@ -1779,6 +1781,7 @@ "aws-lambda-permission.json", "aws-lambda-url.json", "aws-lambda-version.json", + "aws-launchwizard-deployment.json", "aws-lex-bot.json", "aws-lex-botalias.json", "aws-lex-botversion.json", @@ -1800,8 +1803,12 @@ "aws-location-map.json", "aws-location-placeindex.json", "aws-location-routecalculator.json", + "aws-location-tracker.json", "aws-location-trackerconsumer.json", "aws-logs-accountpolicy.json", + "aws-logs-delivery.json", + "aws-logs-deliverydestination.json", + "aws-logs-deliverysource.json", "aws-logs-destination.json", "aws-logs-loganomalydetector.json", "aws-logs-loggroup.json", @@ -1857,6 +1864,7 @@ "aws-msk-serverlesscluster.json", "aws-msk-vpcconnection.json", "aws-mwaa-environment.json", + "aws-neptune-dbcluster.json", "aws-neptune-dbclusterparametergroup.json", "aws-neptune-dbinstance.json", "aws-neptune-dbparametergroup.json", @@ -1952,6 +1960,7 @@ "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", @@ -2206,6 +2215,7 @@ "aws-workspaces-connectionalias.json", "aws-workspaces-workspace.json", "aws-workspaces-workspacespool.json", + "aws-workspacesthinclient-environment.json", "aws-workspacesweb-browsersettings.json", "aws-workspacesweb-identityprovider.json", "aws-workspacesweb-ipaccesssettings.json", diff --git a/src/cfnlint/data/schemas/providers/eu_west_2/aws-cloudwatch-dashboard.json b/src/cfnlint/data/schemas/providers/eu_west_2/aws-cloudwatch-dashboard.json deleted file mode 100644 index 258074cf80..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_west_2/aws-cloudwatch-dashboard.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/DashboardName" - ], - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "DashboardBody": { - "type": "string" - }, - "DashboardName": { - "type": "string" - }, - "Id": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "DashboardBody" - ], - "typeName": "AWS::CloudWatch::Dashboard" -} diff --git a/src/cfnlint/data/schemas/providers/eu_west_2/aws-location-tracker.json b/src/cfnlint/data/schemas/providers/eu_west_2/aws-location-tracker.json deleted file mode 100644 index 49d479d160..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_west_2/aws-location-tracker.json +++ /dev/null @@ -1,185 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/KmsKeyId", - "/properties/TrackerName" - ], - "definitions": { - "PositionFiltering": { - "enum": [ - "TimeBased", - "DistanceBased", - "AccuracyBased" - ], - "type": "string" - }, - "PricingPlan": { - "enum": [ - "RequestBasedUsage" - ], - "type": "string" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "pattern": "^[a-zA-Z+-=._:/]+$", - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "pattern": "^[A-Za-z0-9 _=@:.+-/]*$", - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - }, - "TagMap": { - "additionalProperties": false, - "maxProperties": 50, - "patternProperties": { - "^[a-zA-Z+-=._:/]+$": { - "maxLength": 256, - "minLength": 0, - "pattern": "^[A-Za-z0-9 _=@:.+-/]*$", - "type": "string" - } - }, - "type": "object" - }, - "iso8601UTC": { - "pattern": "^([0-2]\\d{3})-(0[0-9]|1[0-2])-([0-2]\\d|3[01])T([01]\\d|2[0-4]):([0-5]\\d):([0-6]\\d)((\\.\\d{3})?)Z$", - "type": "string" - } - }, - "deprecatedProperties": [ - "/properties/PricingPlan", - "/properties/PricingPlanDataSource" - ], - "handlers": { - "create": { - "permissions": [ - "geo:CreateTracker", - "geo:DescribeTracker", - "geo:TagResource", - "geo:UntagResource", - "kms:DescribeKey", - "kms:CreateGrant" - ] - }, - "delete": { - "permissions": [ - "geo:DeleteTracker", - "geo:DescribeTracker" - ] - }, - "list": { - "permissions": [ - "geo:ListTrackers" - ] - }, - "read": { - "permissions": [ - "geo:DescribeTracker", - "kms:DescribeKey" - ] - }, - "update": { - "permissions": [ - "geo:CreateTracker", - "geo:DescribeTracker", - "geo:TagResource", - "geo:UntagResource", - "kms:DescribeKey", - "kms:CreateGrant", - "geo:UpdateTracker" - ] - } - }, - "primaryIdentifier": [ - "/properties/TrackerName" - ], - "properties": { - "Arn": { - "maxLength": 1600, - "pattern": "^arn(:[a-z0-9]+([.-][a-z0-9]+)*){2}(:([a-z0-9]+([.-][a-z0-9]+)*)?){2}:([^/].*)?$", - "type": "string" - }, - "CreateTime": { - "$ref": "#/definitions/iso8601UTC" - }, - "Description": { - "maxLength": 1000, - "minLength": 0, - "type": "string" - }, - "EventBridgeEnabled": { - "type": "boolean" - }, - "KmsKeyEnableGeospatialQueries": { - "type": "boolean" - }, - "KmsKeyId": { - "maxLength": 2048, - "minLength": 1, - "type": "string" - }, - "PositionFiltering": { - "$ref": "#/definitions/PositionFiltering" - }, - "PricingPlan": { - "$ref": "#/definitions/PricingPlan" - }, - "PricingPlanDataSource": { - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 200, - "minItems": 0, - "type": "array", - "uniqueItems": true - }, - "TrackerArn": { - "maxLength": 1600, - "pattern": "^arn(:[a-z0-9]+([.-][a-z0-9]+)*){2}(:([a-z0-9]+([.-][a-z0-9]+)*)?){2}:([^/].*)?$", - "type": "string" - }, - "TrackerName": { - "maxLength": 100, - "minLength": 1, - "pattern": "^[-._\\w]+$", - "type": "string" - }, - "UpdateTime": { - "$ref": "#/definitions/iso8601UTC" - } - }, - "readOnlyProperties": [ - "/properties/CreateTime", - "/properties/Arn", - "/properties/TrackerArn", - "/properties/UpdateTime" - ], - "required": [ - "TrackerName" - ], - "tagging": { - "cloudFormationSystemTags": false, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Location::Tracker" -} diff --git a/src/cfnlint/data/schemas/providers/eu_west_2/aws-logs-delivery.json b/src/cfnlint/data/schemas/providers/eu_west_2/aws-logs-delivery.json deleted file mode 100644 index 9d504c7dc9..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_west_2/aws-logs-delivery.json +++ /dev/null @@ -1,130 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/DeliverySourceName", - "/properties/DeliveryDestinationArn" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:CreateDelivery", - "logs:GetDelivery", - "logs:DescribeDeliveries", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:GetDeliverySource", - "logs:GetDeliveryDestination" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDelivery", - "logs:ListTagsForResource", - "logs:UntagResource" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliveries", - "logs:ListTagsForResource" - ] - }, - "read": { - "permissions": [ - "logs:GetDelivery", - "logs:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "logs:GetDelivery", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource" - ] - } - }, - "primaryIdentifier": [ - "/properties/DeliveryId" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationArn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationType": { - "maxLength": 12, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DeliveryId": { - "maxLength": 64, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DeliverySourceName": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/DeliveryId", - "/properties/Arn", - "/properties/DeliveryDestinationType" - ], - "required": [ - "DeliverySourceName", - "DeliveryDestinationArn" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::Delivery" -} diff --git a/src/cfnlint/data/schemas/providers/eu_west_2/aws-logs-deliverydestination.json b/src/cfnlint/data/schemas/providers/eu_west_2/aws-logs-deliverydestination.json deleted file mode 100644 index 41e9e764ad..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_west_2/aws-logs-deliverydestination.json +++ /dev/null @@ -1,152 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name", - "/properties/DestinationResourceArn" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "DestinationPolicy": { - "additionalProperties": false, - "properties": { - "DeliveryDestinationName": { - "maxLength": 60, - "minLength": 1, - "type": "string" - }, - "DeliveryDestinationPolicy": { - "maxLength": 51200, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "DeliveryDestinationName", - "DeliveryDestinationPolicy" - ], - "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" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:PutDeliveryDestination", - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource", - "logs:PutDeliveryDestinationPolicy", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDeliveryDestination", - "logs:DeleteDeliveryDestinationPolicy" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliveryDestinations", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "read": { - "permissions": [ - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "update": { - "permissions": [ - "logs:PutDeliveryDestination", - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource", - "logs:DeleteDeliveryDestinationPolicy", - "logs:PutDeliveryDestinationPolicy", - "logs:GetDeliveryDestinationPolicy" - ] - } - }, - "primaryIdentifier": [ - "/properties/Name" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationPolicy": { - "items": { - "$ref": "#/definitions/DestinationPolicy" - }, - "type": "object" - }, - "DeliveryDestinationType": { - "maxLength": 12, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DestinationResourceArn": { - "$ref": "#/definitions/Arn" - }, - "Name": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/Arn", - "/properties/DeliveryDestinationType" - ], - "required": [ - "Name" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::DeliveryDestination" -} diff --git a/src/cfnlint/data/schemas/providers/eu_west_2/aws-logs-deliverysource.json b/src/cfnlint/data/schemas/providers/eu_west_2/aws-logs-deliverysource.json deleted file mode 100644 index 30c5c13d9e..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_west_2/aws-logs-deliverysource.json +++ /dev/null @@ -1,138 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:PutDeliverySource", - "logs:GetDeliverySource", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:AllowVendedLogDeliveryForResource", - "codewhisperer:AllowVendedLogDeliveryForResource", - "autoloop:AllowVendedLogDeliveryForResource", - "workmail:AllowVendedLogDeliveryForResource" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDeliverySource" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliverySources" - ] - }, - "read": { - "permissions": [ - "logs:GetDeliverySource", - "logs:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "logs:PutDeliverySource", - "logs:GetDeliverySource", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource" - ] - } - }, - "primaryIdentifier": [ - "/properties/Name" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "LogType": { - "maxLength": 255, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Name": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "ResourceArn": { - "$ref": "#/definitions/Arn" - }, - "ResourceArns": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Arn" - }, - "type": "array", - "uniqueItems": true - }, - "Service": { - "maxLength": 255, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/Service", - "/properties/ResourceArns", - "/properties/Arn" - ], - "required": [ - "Name" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::DeliverySource", - "writeOnlyProperties": [ - "/properties/ResourceArn" - ] -} diff --git a/src/cfnlint/data/schemas/providers/eu_west_2/aws-neptune-dbcluster.json b/src/cfnlint/data/schemas/providers/eu_west_2/aws-neptune-dbcluster.json deleted file mode 100644 index d682d355d7..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_west_2/aws-neptune-dbcluster.json +++ /dev/null @@ -1,292 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/AvailabilityZones", - "/properties/DBClusterIdentifier", - "/properties/DBSubnetGroupName", - "/properties/KmsKeyId", - "/properties/RestoreToTime", - "/properties/RestoreType", - "/properties/SnapshotIdentifier", - "/properties/SourceDBClusterIdentifier", - "/properties/StorageEncrypted", - "/properties/UseLatestRestorableTime" - ], - "definitions": { - "DBClusterRole": { - "additionalProperties": false, - "properties": { - "FeatureName": { - "type": "string" - }, - "RoleArn": { - "type": "string" - } - }, - "required": [ - "RoleArn" - ], - "type": "object" - }, - "ServerlessScalingConfiguration": { - "additionalProperties": false, - "properties": { - "MaxCapacity": { - "maximum": 128, - "minimum": 2.5, - "type": "number" - }, - "MinCapacity": { - "maximum": 128, - "minimum": 1, - "type": "number" - } - }, - "required": [ - "MinCapacity", - "MaxCapacity" - ], - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:CreateDBCluster", - "rds:CreateDBInstance", - "rds:DescribeDBClusters", - "rds:ListTagsForResource", - "rds:ModifyDBCluster", - "rds:RestoreDBClusterFromSnapshot", - "rds:RestoreDBClusterToPointInTime", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "rds:DeleteDBCluster", - "rds:DeleteDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeGlobalClusters", - "rds:ListTagsForResource", - "rds:RemoveFromGlobalCluster", - "rds:CreateDBClusterSnapshot", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "list": { - "permissions": [ - "rds:DescribeDBClusters", - "rds:ListTagsForResource", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "read": { - "permissions": [ - "rds:DescribeDBClusters", - "rds:ListTagsForResource", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "update": { - "permissions": [ - "ec2:DescribeSecurityGroups", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:DescribeDBClusters", - "rds:DescribeDBInstances", - "rds:DescribeDBSubnetGroups", - "rds:DescribeGlobalClusters", - "rds:ListTagsForResource", - "rds:ModifyDBCluster", - "rds:ModifyDBInstance", - "rds:RemoveFromGlobalCluster", - "rds:RemoveRoleFromDBCluster", - "rds:RemoveTagsFromResource", - "kms:*" - ], - "timeoutInMinutes": 2160 - } - }, - "primaryIdentifier": [ - "/properties/DBClusterIdentifier" - ], - "properties": { - "AssociatedRoles": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/DBClusterRole" - }, - "type": "array", - "uniqueItems": true - }, - "AvailabilityZones": { - "insertionOrder": true, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "BackupRetentionPeriod": { - "default": 1, - "minimum": 1, - "type": "integer" - }, - "ClusterResourceId": { - "type": "string" - }, - "CopyTagsToSnapshot": { - "type": "boolean" - }, - "DBClusterIdentifier": { - "maxLength": 63, - "minLength": 1, - "pattern": "^[a-zA-Z]{1}(?:-?[a-zA-Z0-9]){0,62}$", - "type": "string" - }, - "DBClusterParameterGroupName": { - "type": "string" - }, - "DBInstanceParameterGroupName": { - "type": "string" - }, - "DBPort": { - "type": "integer" - }, - "DBSubnetGroupName": { - "type": "string" - }, - "DeletionProtection": { - "type": "boolean" - }, - "EnableCloudwatchLogsExports": { - "insertionOrder": true, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "Endpoint": { - "type": "string" - }, - "EngineVersion": { - "type": "string" - }, - "IamAuthEnabled": { - "type": "boolean" - }, - "KmsKeyId": { - "type": "string" - }, - "Port": { - "type": "string" - }, - "PreferredBackupWindow": { - "type": "string" - }, - "PreferredMaintenanceWindow": { - "type": "string" - }, - "ReadEndpoint": { - "type": "string" - }, - "RestoreToTime": { - "type": "string" - }, - "RestoreType": { - "default": "full-copy", - "type": "string" - }, - "ServerlessScalingConfiguration": { - "$ref": "#/definitions/ServerlessScalingConfiguration" - }, - "SnapshotIdentifier": { - "type": "string" - }, - "SourceDBClusterIdentifier": { - "type": "string" - }, - "StorageEncrypted": { - "type": "boolean" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 50, - "type": "array", - "uniqueItems": true - }, - "UseLatestRestorableTime": { - "type": "boolean" - }, - "VpcSecurityGroupIds": { - "insertionOrder": true, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - } - }, - "propertyTransform": { - "/properties/DBClusterIdentifier": "$lowercase(DBClusterIdentifier)", - "/properties/DBClusterParameterGroupName": "$lowercase(DBClusterParameterGroupName)", - "/properties/DBSubnetGroupName": "$lowercase(DBSubnetGroupName)", - "/properties/SnapshotIdentifier": "$lowercase(SnapshotIdentifier)", - "/properties/SourceDBClusterIdentifier": "$lowercase(SourceDBClusterIdentifier)" - }, - "readOnlyProperties": [ - "/properties/Endpoint", - "/properties/ClusterResourceId", - "/properties/Port", - "/properties/ReadEndpoint" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-neptune", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Neptune::DBCluster", - "writeOnlyProperties": [ - "/properties/DBInstanceParameterGroupName", - "/properties/RestoreToTime", - "/properties/RestoreType", - "/properties/SnapshotIdentifier", - "/properties/SourceDBClusterIdentifier", - "/properties/UseLatestRestorableTime" - ] -} 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 deleted file mode 100644 index fc3519fd59..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_west_2/aws-rds-dbcluster.json +++ /dev/null @@ -1,459 +0,0 @@ -{ - "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" - } - }, - "handlers": { - "create": { - "permissions": [ - "iam:CreateServiceLinkedRole", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:CreateDBCluster", - "rds:CreateDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeDBClusterSnapshots", - "rds:DescribeDBSnapshots", - "rds:DescribeEvents", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:RestoreDBClusterFromSnapshot", - "rds:RestoreDBClusterToPointInTime", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "rds:CreateDBClusterSnapshot", - "rds:DeleteDBCluster", - "rds:DeleteDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeGlobalClusters", - "rds:RemoveFromGlobalCluster" - ] - }, - "list": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "read": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "update": { - "permissions": [ - "ec2:DescribeSecurityGroups", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:DescribeDBClusters", - "rds:DescribeDBSubnetGroups", - "rds:DescribeEvents", - "rds:DescribeGlobalClusters", - "rds:DisableHttpEndpoint", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:ModifyDBInstance", - "rds:RemoveFromGlobalCluster", - "rds:RemoveRoleFromDBCluster", - "rds:RemoveTagsFromResource", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - } - }, - "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": { - "default": 0, - "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": { - "default": "default.aurora5.6", - "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": { - "default": 0, - "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": { - "default": "full-copy", - "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)) = 'aurora-postgresql' ? 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", - "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-workspacesthinclient-environment.json b/src/cfnlint/data/schemas/providers/eu_west_2/aws-workspacesthinclient-environment.json deleted file mode 100644 index 927a89baf4..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_west_2/aws-workspacesthinclient-environment.json +++ /dev/null @@ -1,279 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/KmsKeyArn", - "/properties/DesktopArn" - ], - "definitions": { - "DayOfWeek": { - "enum": [ - "MONDAY", - "TUESDAY", - "WEDNESDAY", - "THURSDAY", - "FRIDAY", - "SATURDAY", - "SUNDAY" - ], - "type": "string" - }, - "Hour": { - "maximum": 23, - "minimum": 0, - "type": "integer" - }, - "MaintenanceWindow": { - "additionalProperties": false, - "properties": { - "ApplyTimeOf": { - "enum": [ - "UTC", - "DEVICE" - ], - "type": "string" - }, - "DaysOfTheWeek": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/DayOfWeek" - }, - "maxItems": 7, - "minItems": 1, - "type": "array", - "uniqueItems": true - }, - "EndTimeHour": { - "$ref": "#/definitions/Hour" - }, - "EndTimeMinute": { - "$ref": "#/definitions/Minute" - }, - "StartTimeHour": { - "$ref": "#/definitions/Hour" - }, - "StartTimeMinute": { - "$ref": "#/definitions/Minute" - }, - "Type": { - "enum": [ - "SYSTEM", - "CUSTOM" - ], - "type": "string" - } - }, - "required": [ - "Type" - ], - "type": "object" - }, - "Minute": { - "maximum": 59, - "minimum": 0, - "type": "integer" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "pattern": "^(?!aws:)[a-zA-Z+-=._:/]+$", - "type": "string" - }, - "Value": { - "maxLength": 256, - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "thinclient:CreateEnvironment", - "thinclient:TagResource", - "thinclient:ListTagsForResource", - "appstream:DescribeStacks", - "workspaces:DescribeWorkspaceDirectories", - "workspaces-web:GetPortal", - "workspaces-web:GetUserSettings", - "kms:DescribeKey", - "kms:CreateGrant", - "kms:GenerateDataKey", - "kms:Decrypt" - ] - }, - "delete": { - "permissions": [ - "thinclient:DeleteEnvironment", - "thinclient:UntagResource", - "kms:Decrypt", - "kms:RetireGrant" - ] - }, - "list": { - "permissions": [ - "thinclient:ListEnvironment", - "thinclient:ListTagsForResource", - "kms:Decrypt" - ] - }, - "read": { - "permissions": [ - "thinclient:GetEnvironment", - "thinclient:ListTagsForResource", - "kms:Decrypt" - ] - }, - "update": { - "permissions": [ - "appstream:DescribeStacks", - "workspaces:DescribeWorkspaceDirectories", - "workspaces-web:GetPortal", - "workspaces-web:GetUserSettings", - "thinclient:UpdateEnvironment", - "thinclient:ListTagsForResource", - "thinclient:TagResource", - "thinclient:UntagResource", - "kms:Decrypt", - "kms:GenerateDataKey" - ] - } - }, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "ActivationCode": { - "pattern": "^[a-z]{2}[a-z0-9]{6}$", - "type": "string" - }, - "Arn": { - "maxLength": 2048, - "minLength": 20, - "pattern": "^arn:[\\w+=\\/,.@-]+:[a-zA-Z0-9\\-]+:[a-zA-Z0-9\\-]*:[0-9]{0,12}:[a-zA-Z0-9\\-\\/\\._]+$", - "type": "string" - }, - "CreatedAt": { - "type": "string" - }, - "DesiredSoftwareSetId": { - "pattern": "^[0-9]{1,9}$", - "type": "string" - }, - "DesktopArn": { - "maxLength": 2048, - "minLength": 20, - "pattern": "^arn:[\\w+=\\/,.@-]+:[a-zA-Z0-9\\-]+:[a-zA-Z0-9\\-]*:[0-9]{0,12}:[a-zA-Z0-9\\-\\/\\._]+$", - "type": "string" - }, - "DesktopEndpoint": { - "maxLength": 1024, - "minLength": 1, - "pattern": "^(https:\\/\\/)[a-z0-9]+([\\-\\.]{1}[a-z0-9]+)*\\.[a-z]{2,32}(:[0-9]{1,5})?(\\/.*)?$", - "type": "string" - }, - "DesktopType": { - "enum": [ - "workspaces", - "appstream", - "workspaces-web" - ], - "type": "string" - }, - "Id": { - "pattern": "^[a-z0-9]{9}$", - "type": "string" - }, - "KmsKeyArn": { - "maxLength": 2048, - "minLength": 20, - "pattern": "^arn:[\\w+=\\/,.@-]+:kms:[a-zA-Z0-9\\-]*:[0-9]{0,12}:key\\/[a-zA-Z0-9-]+$", - "type": "string" - }, - "MaintenanceWindow": { - "$ref": "#/definitions/MaintenanceWindow" - }, - "Name": { - "maxLength": 64, - "minLength": 1, - "pattern": "^.+$", - "type": "string" - }, - "PendingSoftwareSetId": { - "pattern": "^[0-9]{1,9}$", - "type": "string" - }, - "PendingSoftwareSetVersion": { - "type": "string" - }, - "RegisteredDevicesCount": { - "minimum": 0, - "type": "integer" - }, - "SoftwareSetComplianceStatus": { - "enum": [ - "COMPLIANT", - "NOT_COMPLIANT", - "NO_REGISTERED_DEVICES" - ], - "type": "string" - }, - "SoftwareSetUpdateMode": { - "enum": [ - "USE_LATEST", - "USE_DESIRED" - ], - "type": "string" - }, - "SoftwareSetUpdateSchedule": { - "enum": [ - "USE_MAINTENANCE_WINDOW", - "APPLY_IMMEDIATELY" - ], - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 50, - "type": "array", - "uniqueItems": true - }, - "UpdatedAt": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id", - "/properties/ActivationCode", - "/properties/Arn", - "/properties/CreatedAt", - "/properties/DesktopType", - "/properties/RegisteredDevicesCount", - "/properties/UpdatedAt", - "/properties/PendingSoftwareSetId", - "/properties/PendingSoftwareSetVersion", - "/properties/SoftwareSetComplianceStatus" - ], - "required": [ - "DesktopArn" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::WorkSpacesThinClient::Environment" -} 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 edc58b3707..bc5554f6df 100644 --- a/src/cfnlint/data/schemas/providers/eu_west_3/__init__.py +++ b/src/cfnlint/data/schemas/providers/eu_west_3/__init__.py @@ -264,6 +264,7 @@ "AWS::DocDB::DBInstance", "AWS::DocDB::DBSubnetGroup", "AWS::DocDB::EventSubscription", + "AWS::DocDBElastic::Cluster", "AWS::DynamoDB::GlobalTable", "AWS::DynamoDB::Table", "AWS::EC2::CapacityReservation", @@ -555,6 +556,7 @@ "AWS::Lambda::Permission", "AWS::Lambda::Url", "AWS::Lambda::Version", + "AWS::LaunchWizard::Deployment", "AWS::LicenseManager::Grant", "AWS::LicenseManager::License", "AWS::Lightsail::Alarm", @@ -1116,7 +1118,6 @@ "aws-codedeploy-deploymentconfig.json", "aws-codedeploy-deploymentgroup.json", "aws-codepipeline-customactiontype.json", - "aws-codepipeline-pipeline.json", "aws-codepipeline-webhook.json", "aws-codestar-githubrepository.json", "aws-codestarconnections-connection.json", @@ -1193,6 +1194,7 @@ "aws-docdb-dbinstance.json", "aws-docdb-dbsubnetgroup.json", "aws-docdb-eventsubscription.json", + "aws-docdbelastic-cluster.json", "aws-dynamodb-globaltable.json", "aws-dynamodb-table.json", "aws-ec2-capacityreservation.json", @@ -1470,6 +1472,7 @@ "aws-lambda-permission.json", "aws-lambda-url.json", "aws-lambda-version.json", + "aws-launchwizard-deployment.json", "aws-licensemanager-grant.json", "aws-licensemanager-license.json", "aws-lightsail-alarm.json", @@ -1539,6 +1542,7 @@ "aws-msk-serverlesscluster.json", "aws-msk-vpcconnection.json", "aws-mwaa-environment.json", + "aws-neptune-dbcluster.json", "aws-neptune-dbsubnetgroup.json", "aws-neptune-eventsubscription.json", "aws-networkfirewall-firewall.json", @@ -1597,6 +1601,7 @@ "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", diff --git a/src/cfnlint/data/schemas/providers/eu_west_3/aws-codepipeline-pipeline.json b/src/cfnlint/data/schemas/providers/eu_west_3/aws-codepipeline-pipeline.json new file mode 100644 index 0000000000..925fbfe118 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_west_3/aws-codepipeline-pipeline.json @@ -0,0 +1,505 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "ActionDeclaration": { + "additionalProperties": false, + "properties": { + "ActionTypeId": { + "$ref": "#/definitions/ActionTypeId" + }, + "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 + }, + "Region": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "RunOrder": { + "type": "integer" + }, + "TimeoutInMinutes": { + "type": "integer" + } + }, + "required": [ + "ActionTypeId", + "Name" + ], + "type": "object" + }, + "ActionTypeId": { + "additionalProperties": false, + "properties": { + "Category": { + "enum": [ + "Approval", + "Build", + "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" + }, + "BlockerDeclaration": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "Type": { + "enum": [ + "Schedule" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Name" + ], + "type": "object" + }, + "EncryptionKey": { + "additionalProperties": false, + "properties": { + "Id": { + "type": "string" + }, + "Type": { + "type": "string" + } + }, + "required": [ + "Type", + "Id" + ], + "type": "object" + }, + "FailureConditions": { + "additionalProperties": false, + "properties": { + "Result": { + "type": "string" + } + }, + "required": [ + "Result" + ], + "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": { + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "PipelineTriggerDeclaration": { + "additionalProperties": false, + "properties": { + "GitConfiguration": { + "$ref": "#/definitions/GitConfiguration" + }, + "ProviderType": { + "type": "string" + } + }, + "required": [ + "ProviderType" + ], + "type": "object" + }, + "StageDeclaration": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/ActionDeclaration" + }, + "type": "array", + "uniqueItems": true + }, + "Blockers": { + "items": { + "$ref": "#/definitions/BlockerDeclaration" + }, + "type": "array", + "uniqueItems": true + }, + "Name": { + "type": "string" + }, + "OnFailure": { + "$ref": "#/definitions/FailureConditions" + } + }, + "required": [ + "Actions", + "Name" + ], + "type": "object" + }, + "StageTransition": { + "additionalProperties": false, + "properties": { + "Reason": { + "type": "string" + }, + "StageName": { + "type": "string" + } + }, + "required": [ + "StageName", + "Reason" + ], + "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/Id" + ], + "properties": { + "ArtifactStore": { + "$ref": "#/definitions/ArtifactStore" + }, + "ArtifactStores": { + "items": { + "$ref": "#/definitions/ArtifactStoreMap" + }, + "type": "array", + "uniqueItems": true + }, + "DisableInboundStageTransitions": { + "items": { + "$ref": "#/definitions/StageTransition" + }, + "type": "array", + "uniqueItems": true + }, + "ExecutionMode": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "PipelineType": { + "type": "string" + }, + "RestartExecutionOnUpdate": { + "type": "boolean" + }, + "RoleArn": { + "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/Id", + "/properties/Version" + ], + "required": [ + "Stages", + "RoleArn" + ], + "requiredXor": [ + "ArtifactStore", + "ArtifactStores" + ], + "typeName": "AWS::CodePipeline::Pipeline" +} diff --git a/src/cfnlint/data/schemas/providers/eu_west_3/aws-neptune-dbcluster.json b/src/cfnlint/data/schemas/providers/eu_west_3/aws-neptune-dbcluster.json deleted file mode 100644 index d682d355d7..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_west_3/aws-neptune-dbcluster.json +++ /dev/null @@ -1,292 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/AvailabilityZones", - "/properties/DBClusterIdentifier", - "/properties/DBSubnetGroupName", - "/properties/KmsKeyId", - "/properties/RestoreToTime", - "/properties/RestoreType", - "/properties/SnapshotIdentifier", - "/properties/SourceDBClusterIdentifier", - "/properties/StorageEncrypted", - "/properties/UseLatestRestorableTime" - ], - "definitions": { - "DBClusterRole": { - "additionalProperties": false, - "properties": { - "FeatureName": { - "type": "string" - }, - "RoleArn": { - "type": "string" - } - }, - "required": [ - "RoleArn" - ], - "type": "object" - }, - "ServerlessScalingConfiguration": { - "additionalProperties": false, - "properties": { - "MaxCapacity": { - "maximum": 128, - "minimum": 2.5, - "type": "number" - }, - "MinCapacity": { - "maximum": 128, - "minimum": 1, - "type": "number" - } - }, - "required": [ - "MinCapacity", - "MaxCapacity" - ], - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:CreateDBCluster", - "rds:CreateDBInstance", - "rds:DescribeDBClusters", - "rds:ListTagsForResource", - "rds:ModifyDBCluster", - "rds:RestoreDBClusterFromSnapshot", - "rds:RestoreDBClusterToPointInTime", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "rds:DeleteDBCluster", - "rds:DeleteDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeGlobalClusters", - "rds:ListTagsForResource", - "rds:RemoveFromGlobalCluster", - "rds:CreateDBClusterSnapshot", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "list": { - "permissions": [ - "rds:DescribeDBClusters", - "rds:ListTagsForResource", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "read": { - "permissions": [ - "rds:DescribeDBClusters", - "rds:ListTagsForResource", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "update": { - "permissions": [ - "ec2:DescribeSecurityGroups", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:DescribeDBClusters", - "rds:DescribeDBInstances", - "rds:DescribeDBSubnetGroups", - "rds:DescribeGlobalClusters", - "rds:ListTagsForResource", - "rds:ModifyDBCluster", - "rds:ModifyDBInstance", - "rds:RemoveFromGlobalCluster", - "rds:RemoveRoleFromDBCluster", - "rds:RemoveTagsFromResource", - "kms:*" - ], - "timeoutInMinutes": 2160 - } - }, - "primaryIdentifier": [ - "/properties/DBClusterIdentifier" - ], - "properties": { - "AssociatedRoles": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/DBClusterRole" - }, - "type": "array", - "uniqueItems": true - }, - "AvailabilityZones": { - "insertionOrder": true, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "BackupRetentionPeriod": { - "default": 1, - "minimum": 1, - "type": "integer" - }, - "ClusterResourceId": { - "type": "string" - }, - "CopyTagsToSnapshot": { - "type": "boolean" - }, - "DBClusterIdentifier": { - "maxLength": 63, - "minLength": 1, - "pattern": "^[a-zA-Z]{1}(?:-?[a-zA-Z0-9]){0,62}$", - "type": "string" - }, - "DBClusterParameterGroupName": { - "type": "string" - }, - "DBInstanceParameterGroupName": { - "type": "string" - }, - "DBPort": { - "type": "integer" - }, - "DBSubnetGroupName": { - "type": "string" - }, - "DeletionProtection": { - "type": "boolean" - }, - "EnableCloudwatchLogsExports": { - "insertionOrder": true, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "Endpoint": { - "type": "string" - }, - "EngineVersion": { - "type": "string" - }, - "IamAuthEnabled": { - "type": "boolean" - }, - "KmsKeyId": { - "type": "string" - }, - "Port": { - "type": "string" - }, - "PreferredBackupWindow": { - "type": "string" - }, - "PreferredMaintenanceWindow": { - "type": "string" - }, - "ReadEndpoint": { - "type": "string" - }, - "RestoreToTime": { - "type": "string" - }, - "RestoreType": { - "default": "full-copy", - "type": "string" - }, - "ServerlessScalingConfiguration": { - "$ref": "#/definitions/ServerlessScalingConfiguration" - }, - "SnapshotIdentifier": { - "type": "string" - }, - "SourceDBClusterIdentifier": { - "type": "string" - }, - "StorageEncrypted": { - "type": "boolean" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 50, - "type": "array", - "uniqueItems": true - }, - "UseLatestRestorableTime": { - "type": "boolean" - }, - "VpcSecurityGroupIds": { - "insertionOrder": true, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - } - }, - "propertyTransform": { - "/properties/DBClusterIdentifier": "$lowercase(DBClusterIdentifier)", - "/properties/DBClusterParameterGroupName": "$lowercase(DBClusterParameterGroupName)", - "/properties/DBSubnetGroupName": "$lowercase(DBSubnetGroupName)", - "/properties/SnapshotIdentifier": "$lowercase(SnapshotIdentifier)", - "/properties/SourceDBClusterIdentifier": "$lowercase(SourceDBClusterIdentifier)" - }, - "readOnlyProperties": [ - "/properties/Endpoint", - "/properties/ClusterResourceId", - "/properties/Port", - "/properties/ReadEndpoint" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-neptune", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Neptune::DBCluster", - "writeOnlyProperties": [ - "/properties/DBInstanceParameterGroupName", - "/properties/RestoreToTime", - "/properties/RestoreType", - "/properties/SnapshotIdentifier", - "/properties/SourceDBClusterIdentifier", - "/properties/UseLatestRestorableTime" - ] -} diff --git a/src/cfnlint/data/schemas/providers/eu_west_3/aws-rds-dbcluster.json b/src/cfnlint/data/schemas/providers/eu_west_3/aws-rds-dbcluster.json deleted file mode 100644 index fc3519fd59..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_west_3/aws-rds-dbcluster.json +++ /dev/null @@ -1,459 +0,0 @@ -{ - "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" - } - }, - "handlers": { - "create": { - "permissions": [ - "iam:CreateServiceLinkedRole", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:CreateDBCluster", - "rds:CreateDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeDBClusterSnapshots", - "rds:DescribeDBSnapshots", - "rds:DescribeEvents", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:RestoreDBClusterFromSnapshot", - "rds:RestoreDBClusterToPointInTime", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "rds:CreateDBClusterSnapshot", - "rds:DeleteDBCluster", - "rds:DeleteDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeGlobalClusters", - "rds:RemoveFromGlobalCluster" - ] - }, - "list": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "read": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "update": { - "permissions": [ - "ec2:DescribeSecurityGroups", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:DescribeDBClusters", - "rds:DescribeDBSubnetGroups", - "rds:DescribeEvents", - "rds:DescribeGlobalClusters", - "rds:DisableHttpEndpoint", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:ModifyDBInstance", - "rds:RemoveFromGlobalCluster", - "rds:RemoveRoleFromDBCluster", - "rds:RemoveTagsFromResource", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - } - }, - "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": { - "default": 0, - "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": { - "default": "default.aurora5.6", - "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": { - "default": 0, - "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": { - "default": "full-copy", - "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)) = 'aurora-postgresql' ? 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", - "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/__init__.py b/src/cfnlint/data/schemas/providers/il_central_1/__init__.py index c5712789d2..a58343d9da 100644 --- a/src/cfnlint/data/schemas/providers/il_central_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/il_central_1/__init__.py @@ -756,7 +756,6 @@ "aws-codedeploy-application.json", "aws-codedeploy-deploymentconfig.json", "aws-codedeploy-deploymentgroup.json", - "aws-codepipeline-pipeline.json", "aws-cognito-identitypool.json", "aws-cognito-identitypoolprincipaltag.json", "aws-cognito-identitypoolroleattachment.json", @@ -898,6 +897,7 @@ "aws-eks-nodegroup.json", "aws-eks-podidentityassociation.json", "aws-elasticache-cachecluster.json", + "aws-elasticache-parametergroup.json", "aws-elasticache-replicationgroup.json", "aws-elasticache-securitygroup.json", "aws-elasticache-securitygroupingress.json", @@ -992,6 +992,9 @@ "aws-lambda-permission.json", "aws-lambda-version.json", "aws-logs-accountpolicy.json", + "aws-logs-delivery.json", + "aws-logs-deliverydestination.json", + "aws-logs-deliverysource.json", "aws-logs-destination.json", "aws-logs-loggroup.json", "aws-logs-logstream.json", @@ -1044,6 +1047,7 @@ "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", @@ -1117,6 +1121,7 @@ "aws-sdb-domain.json", "aws-secretsmanager-resourcepolicy.json", "aws-secretsmanager-rotationschedule.json", + "aws-secretsmanager-secret.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-codepipeline-pipeline.json b/src/cfnlint/data/schemas/providers/il_central_1/aws-codepipeline-pipeline.json new file mode 100644 index 0000000000..925fbfe118 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/il_central_1/aws-codepipeline-pipeline.json @@ -0,0 +1,505 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "ActionDeclaration": { + "additionalProperties": false, + "properties": { + "ActionTypeId": { + "$ref": "#/definitions/ActionTypeId" + }, + "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 + }, + "Region": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "RunOrder": { + "type": "integer" + }, + "TimeoutInMinutes": { + "type": "integer" + } + }, + "required": [ + "ActionTypeId", + "Name" + ], + "type": "object" + }, + "ActionTypeId": { + "additionalProperties": false, + "properties": { + "Category": { + "enum": [ + "Approval", + "Build", + "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" + }, + "BlockerDeclaration": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "Type": { + "enum": [ + "Schedule" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Name" + ], + "type": "object" + }, + "EncryptionKey": { + "additionalProperties": false, + "properties": { + "Id": { + "type": "string" + }, + "Type": { + "type": "string" + } + }, + "required": [ + "Type", + "Id" + ], + "type": "object" + }, + "FailureConditions": { + "additionalProperties": false, + "properties": { + "Result": { + "type": "string" + } + }, + "required": [ + "Result" + ], + "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": { + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "PipelineTriggerDeclaration": { + "additionalProperties": false, + "properties": { + "GitConfiguration": { + "$ref": "#/definitions/GitConfiguration" + }, + "ProviderType": { + "type": "string" + } + }, + "required": [ + "ProviderType" + ], + "type": "object" + }, + "StageDeclaration": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/ActionDeclaration" + }, + "type": "array", + "uniqueItems": true + }, + "Blockers": { + "items": { + "$ref": "#/definitions/BlockerDeclaration" + }, + "type": "array", + "uniqueItems": true + }, + "Name": { + "type": "string" + }, + "OnFailure": { + "$ref": "#/definitions/FailureConditions" + } + }, + "required": [ + "Actions", + "Name" + ], + "type": "object" + }, + "StageTransition": { + "additionalProperties": false, + "properties": { + "Reason": { + "type": "string" + }, + "StageName": { + "type": "string" + } + }, + "required": [ + "StageName", + "Reason" + ], + "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/Id" + ], + "properties": { + "ArtifactStore": { + "$ref": "#/definitions/ArtifactStore" + }, + "ArtifactStores": { + "items": { + "$ref": "#/definitions/ArtifactStoreMap" + }, + "type": "array", + "uniqueItems": true + }, + "DisableInboundStageTransitions": { + "items": { + "$ref": "#/definitions/StageTransition" + }, + "type": "array", + "uniqueItems": true + }, + "ExecutionMode": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "PipelineType": { + "type": "string" + }, + "RestartExecutionOnUpdate": { + "type": "boolean" + }, + "RoleArn": { + "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/Id", + "/properties/Version" + ], + "required": [ + "Stages", + "RoleArn" + ], + "requiredXor": [ + "ArtifactStore", + "ArtifactStores" + ], + "typeName": "AWS::CodePipeline::Pipeline" +} diff --git a/src/cfnlint/data/schemas/providers/il_central_1/aws-elasticache-parametergroup.json b/src/cfnlint/data/schemas/providers/il_central_1/aws-elasticache-parametergroup.json deleted file mode 100644 index c524f26845..0000000000 --- a/src/cfnlint/data/schemas/providers/il_central_1/aws-elasticache-parametergroup.json +++ /dev/null @@ -1,61 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/CacheParameterGroupFamily" - ], - "definitions": { - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "CacheParameterGroupFamily": { - "type": "string" - }, - "Description": { - "type": "string" - }, - "Id": { - "type": "string" - }, - "Properties": { - "patternProperties": { - "[a-zA-Z0-9]+": { - "type": "string" - } - }, - "type": "object" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": false - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "Description", - "CacheParameterGroupFamily" - ], - "typeName": "AWS::ElastiCache::ParameterGroup" -} diff --git a/src/cfnlint/data/schemas/providers/il_central_1/aws-logs-delivery.json b/src/cfnlint/data/schemas/providers/il_central_1/aws-logs-delivery.json deleted file mode 100644 index 9d504c7dc9..0000000000 --- a/src/cfnlint/data/schemas/providers/il_central_1/aws-logs-delivery.json +++ /dev/null @@ -1,130 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/DeliverySourceName", - "/properties/DeliveryDestinationArn" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:CreateDelivery", - "logs:GetDelivery", - "logs:DescribeDeliveries", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:GetDeliverySource", - "logs:GetDeliveryDestination" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDelivery", - "logs:ListTagsForResource", - "logs:UntagResource" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliveries", - "logs:ListTagsForResource" - ] - }, - "read": { - "permissions": [ - "logs:GetDelivery", - "logs:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "logs:GetDelivery", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource" - ] - } - }, - "primaryIdentifier": [ - "/properties/DeliveryId" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationArn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationType": { - "maxLength": 12, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DeliveryId": { - "maxLength": 64, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DeliverySourceName": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/DeliveryId", - "/properties/Arn", - "/properties/DeliveryDestinationType" - ], - "required": [ - "DeliverySourceName", - "DeliveryDestinationArn" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::Delivery" -} diff --git a/src/cfnlint/data/schemas/providers/il_central_1/aws-logs-deliverydestination.json b/src/cfnlint/data/schemas/providers/il_central_1/aws-logs-deliverydestination.json deleted file mode 100644 index 41e9e764ad..0000000000 --- a/src/cfnlint/data/schemas/providers/il_central_1/aws-logs-deliverydestination.json +++ /dev/null @@ -1,152 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name", - "/properties/DestinationResourceArn" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "DestinationPolicy": { - "additionalProperties": false, - "properties": { - "DeliveryDestinationName": { - "maxLength": 60, - "minLength": 1, - "type": "string" - }, - "DeliveryDestinationPolicy": { - "maxLength": 51200, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "DeliveryDestinationName", - "DeliveryDestinationPolicy" - ], - "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" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:PutDeliveryDestination", - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource", - "logs:PutDeliveryDestinationPolicy", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDeliveryDestination", - "logs:DeleteDeliveryDestinationPolicy" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliveryDestinations", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "read": { - "permissions": [ - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "update": { - "permissions": [ - "logs:PutDeliveryDestination", - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource", - "logs:DeleteDeliveryDestinationPolicy", - "logs:PutDeliveryDestinationPolicy", - "logs:GetDeliveryDestinationPolicy" - ] - } - }, - "primaryIdentifier": [ - "/properties/Name" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationPolicy": { - "items": { - "$ref": "#/definitions/DestinationPolicy" - }, - "type": "object" - }, - "DeliveryDestinationType": { - "maxLength": 12, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DestinationResourceArn": { - "$ref": "#/definitions/Arn" - }, - "Name": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/Arn", - "/properties/DeliveryDestinationType" - ], - "required": [ - "Name" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::DeliveryDestination" -} diff --git a/src/cfnlint/data/schemas/providers/il_central_1/aws-logs-deliverysource.json b/src/cfnlint/data/schemas/providers/il_central_1/aws-logs-deliverysource.json deleted file mode 100644 index 30c5c13d9e..0000000000 --- a/src/cfnlint/data/schemas/providers/il_central_1/aws-logs-deliverysource.json +++ /dev/null @@ -1,138 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:PutDeliverySource", - "logs:GetDeliverySource", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:AllowVendedLogDeliveryForResource", - "codewhisperer:AllowVendedLogDeliveryForResource", - "autoloop:AllowVendedLogDeliveryForResource", - "workmail:AllowVendedLogDeliveryForResource" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDeliverySource" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliverySources" - ] - }, - "read": { - "permissions": [ - "logs:GetDeliverySource", - "logs:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "logs:PutDeliverySource", - "logs:GetDeliverySource", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource" - ] - } - }, - "primaryIdentifier": [ - "/properties/Name" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "LogType": { - "maxLength": 255, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Name": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "ResourceArn": { - "$ref": "#/definitions/Arn" - }, - "ResourceArns": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Arn" - }, - "type": "array", - "uniqueItems": true - }, - "Service": { - "maxLength": 255, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/Service", - "/properties/ResourceArns", - "/properties/Arn" - ], - "required": [ - "Name" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::DeliverySource", - "writeOnlyProperties": [ - "/properties/ResourceArn" - ] -} 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 deleted file mode 100644 index fc3519fd59..0000000000 --- a/src/cfnlint/data/schemas/providers/il_central_1/aws-rds-dbcluster.json +++ /dev/null @@ -1,459 +0,0 @@ -{ - "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" - } - }, - "handlers": { - "create": { - "permissions": [ - "iam:CreateServiceLinkedRole", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:CreateDBCluster", - "rds:CreateDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeDBClusterSnapshots", - "rds:DescribeDBSnapshots", - "rds:DescribeEvents", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:RestoreDBClusterFromSnapshot", - "rds:RestoreDBClusterToPointInTime", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "rds:CreateDBClusterSnapshot", - "rds:DeleteDBCluster", - "rds:DeleteDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeGlobalClusters", - "rds:RemoveFromGlobalCluster" - ] - }, - "list": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "read": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "update": { - "permissions": [ - "ec2:DescribeSecurityGroups", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:DescribeDBClusters", - "rds:DescribeDBSubnetGroups", - "rds:DescribeEvents", - "rds:DescribeGlobalClusters", - "rds:DisableHttpEndpoint", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:ModifyDBInstance", - "rds:RemoveFromGlobalCluster", - "rds:RemoveRoleFromDBCluster", - "rds:RemoveTagsFromResource", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - } - }, - "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": { - "default": 0, - "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": { - "default": "default.aurora5.6", - "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": { - "default": 0, - "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": { - "default": "full-copy", - "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)) = 'aurora-postgresql' ? 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", - "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-secretsmanager-secret.json b/src/cfnlint/data/schemas/providers/il_central_1/aws-secretsmanager-secret.json deleted file mode 100644 index 8cf3aab10e..0000000000 --- a/src/cfnlint/data/schemas/providers/il_central_1/aws-secretsmanager-secret.json +++ /dev/null @@ -1,170 +0,0 @@ -{ - "$schema": "https://schema.cloudformation.us-east-1.amazonaws.com/provider.definition.schema.v1.json", - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name" - ], - "definitions": { - "GenerateSecretString": { - "additionalProperties": false, - "properties": { - "ExcludeCharacters": { - "type": "string" - }, - "ExcludeLowercase": { - "type": "boolean" - }, - "ExcludeNumbers": { - "type": "boolean" - }, - "ExcludePunctuation": { - "type": "boolean" - }, - "ExcludeUppercase": { - "type": "boolean" - }, - "GenerateStringKey": { - "type": "string" - }, - "IncludeSpace": { - "type": "boolean" - }, - "PasswordLength": { - "type": "integer" - }, - "RequireEachIncludedType": { - "type": "boolean" - }, - "SecretStringTemplate": { - "type": "string" - } - }, - "type": "object" - }, - "ReplicaRegion": { - "additionalProperties": false, - "properties": { - "KmsKeyId": { - "type": "string" - }, - "Region": { - "type": "string" - } - }, - "required": [ - "Region" - ], - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "secretsmanager:DescribeSecret", - "secretsmanager:GetRandomPassword", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ] - }, - "delete": { - "permissions": [ - "secretsmanager:DeleteSecret", - "secretsmanager:DescribeSecret", - "secretsmanager:RemoveRegionsFromReplication" - ] - }, - "list": { - "permissions": [ - "secretsmanager:ListSecrets" - ] - }, - "read": { - "permissions": [ - "secretsmanager:DescribeSecret", - "secretsmanager:GetSecretValue" - ] - }, - "update": { - "permissions": [ - "secretsmanager:UpdateSecret", - "secretsmanager:TagResource", - "secretsmanager:UntagResource", - "secretsmanager:GetRandomPassword", - "secretsmanager:GetSecretValue", - "secretsmanager:ReplicateSecretToRegions", - "secretsmanager:RemoveRegionsFromReplication" - ] - } - }, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "Description": { - "type": "string" - }, - "GenerateSecretString": { - "$ref": "#/definitions/GenerateSecretString" - }, - "Id": { - "type": "string" - }, - "KmsKeyId": { - "type": "string" - }, - "Name": { - "type": "string" - }, - "ReplicaRegions": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/ReplicaRegion" - }, - "type": "array", - "uniqueItems": false - }, - "SecretString": { - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": false - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-secretsmanager.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::SecretsManager::Secret", - "writeOnlyProperties": [ - "/properties/SecretString", - "/properties/GenerateSecretString" - ] -} 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 06bd89f314..a5b0b953c5 100644 --- a/src/cfnlint/data/schemas/providers/me_central_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/me_central_1/__init__.py @@ -426,6 +426,7 @@ "AWS::Lambda::LayerVersionPermission", "AWS::Lambda::Permission", "AWS::Lambda::Version", + "AWS::LaunchWizard::Deployment", "AWS::Logs::AccountPolicy", "AWS::Logs::Delivery", "AWS::Logs::DeliveryDestination", @@ -758,7 +759,6 @@ "aws-codedeploy-application.json", "aws-codedeploy-deploymentconfig.json", "aws-codedeploy-deploymentgroup.json", - "aws-codepipeline-pipeline.json", "aws-cognito-identitypool.json", "aws-cognito-identitypoolprincipaltag.json", "aws-cognito-identitypoolroleattachment.json", @@ -1040,7 +1040,11 @@ "aws-lambda-layerversionpermission.json", "aws-lambda-permission.json", "aws-lambda-version.json", + "aws-launchwizard-deployment.json", "aws-logs-accountpolicy.json", + "aws-logs-delivery.json", + "aws-logs-deliverydestination.json", + "aws-logs-deliverysource.json", "aws-logs-destination.json", "aws-logs-loganomalydetector.json", "aws-logs-loggroup.json", @@ -1067,6 +1071,7 @@ "aws-msk-clusterpolicy.json", "aws-msk-configuration.json", "aws-msk-vpcconnection.json", + "aws-neptune-dbcluster.json", "aws-neptune-dbsubnetgroup.json", "aws-neptune-eventsubscription.json", "aws-networkfirewall-firewall.json", @@ -1094,6 +1099,7 @@ "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", diff --git a/src/cfnlint/data/schemas/providers/me_central_1/aws-codepipeline-pipeline.json b/src/cfnlint/data/schemas/providers/me_central_1/aws-codepipeline-pipeline.json new file mode 100644 index 0000000000..925fbfe118 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/me_central_1/aws-codepipeline-pipeline.json @@ -0,0 +1,505 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "ActionDeclaration": { + "additionalProperties": false, + "properties": { + "ActionTypeId": { + "$ref": "#/definitions/ActionTypeId" + }, + "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 + }, + "Region": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "RunOrder": { + "type": "integer" + }, + "TimeoutInMinutes": { + "type": "integer" + } + }, + "required": [ + "ActionTypeId", + "Name" + ], + "type": "object" + }, + "ActionTypeId": { + "additionalProperties": false, + "properties": { + "Category": { + "enum": [ + "Approval", + "Build", + "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" + }, + "BlockerDeclaration": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "Type": { + "enum": [ + "Schedule" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Name" + ], + "type": "object" + }, + "EncryptionKey": { + "additionalProperties": false, + "properties": { + "Id": { + "type": "string" + }, + "Type": { + "type": "string" + } + }, + "required": [ + "Type", + "Id" + ], + "type": "object" + }, + "FailureConditions": { + "additionalProperties": false, + "properties": { + "Result": { + "type": "string" + } + }, + "required": [ + "Result" + ], + "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": { + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "PipelineTriggerDeclaration": { + "additionalProperties": false, + "properties": { + "GitConfiguration": { + "$ref": "#/definitions/GitConfiguration" + }, + "ProviderType": { + "type": "string" + } + }, + "required": [ + "ProviderType" + ], + "type": "object" + }, + "StageDeclaration": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/ActionDeclaration" + }, + "type": "array", + "uniqueItems": true + }, + "Blockers": { + "items": { + "$ref": "#/definitions/BlockerDeclaration" + }, + "type": "array", + "uniqueItems": true + }, + "Name": { + "type": "string" + }, + "OnFailure": { + "$ref": "#/definitions/FailureConditions" + } + }, + "required": [ + "Actions", + "Name" + ], + "type": "object" + }, + "StageTransition": { + "additionalProperties": false, + "properties": { + "Reason": { + "type": "string" + }, + "StageName": { + "type": "string" + } + }, + "required": [ + "StageName", + "Reason" + ], + "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/Id" + ], + "properties": { + "ArtifactStore": { + "$ref": "#/definitions/ArtifactStore" + }, + "ArtifactStores": { + "items": { + "$ref": "#/definitions/ArtifactStoreMap" + }, + "type": "array", + "uniqueItems": true + }, + "DisableInboundStageTransitions": { + "items": { + "$ref": "#/definitions/StageTransition" + }, + "type": "array", + "uniqueItems": true + }, + "ExecutionMode": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "PipelineType": { + "type": "string" + }, + "RestartExecutionOnUpdate": { + "type": "boolean" + }, + "RoleArn": { + "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/Id", + "/properties/Version" + ], + "required": [ + "Stages", + "RoleArn" + ], + "requiredXor": [ + "ArtifactStore", + "ArtifactStores" + ], + "typeName": "AWS::CodePipeline::Pipeline" +} diff --git a/src/cfnlint/data/schemas/providers/me_central_1/aws-logs-delivery.json b/src/cfnlint/data/schemas/providers/me_central_1/aws-logs-delivery.json deleted file mode 100644 index 9d504c7dc9..0000000000 --- a/src/cfnlint/data/schemas/providers/me_central_1/aws-logs-delivery.json +++ /dev/null @@ -1,130 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/DeliverySourceName", - "/properties/DeliveryDestinationArn" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:CreateDelivery", - "logs:GetDelivery", - "logs:DescribeDeliveries", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:GetDeliverySource", - "logs:GetDeliveryDestination" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDelivery", - "logs:ListTagsForResource", - "logs:UntagResource" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliveries", - "logs:ListTagsForResource" - ] - }, - "read": { - "permissions": [ - "logs:GetDelivery", - "logs:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "logs:GetDelivery", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource" - ] - } - }, - "primaryIdentifier": [ - "/properties/DeliveryId" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationArn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationType": { - "maxLength": 12, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DeliveryId": { - "maxLength": 64, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DeliverySourceName": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/DeliveryId", - "/properties/Arn", - "/properties/DeliveryDestinationType" - ], - "required": [ - "DeliverySourceName", - "DeliveryDestinationArn" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::Delivery" -} diff --git a/src/cfnlint/data/schemas/providers/me_central_1/aws-logs-deliverydestination.json b/src/cfnlint/data/schemas/providers/me_central_1/aws-logs-deliverydestination.json deleted file mode 100644 index 41e9e764ad..0000000000 --- a/src/cfnlint/data/schemas/providers/me_central_1/aws-logs-deliverydestination.json +++ /dev/null @@ -1,152 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name", - "/properties/DestinationResourceArn" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "DestinationPolicy": { - "additionalProperties": false, - "properties": { - "DeliveryDestinationName": { - "maxLength": 60, - "minLength": 1, - "type": "string" - }, - "DeliveryDestinationPolicy": { - "maxLength": 51200, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "DeliveryDestinationName", - "DeliveryDestinationPolicy" - ], - "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" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:PutDeliveryDestination", - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource", - "logs:PutDeliveryDestinationPolicy", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDeliveryDestination", - "logs:DeleteDeliveryDestinationPolicy" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliveryDestinations", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "read": { - "permissions": [ - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "update": { - "permissions": [ - "logs:PutDeliveryDestination", - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource", - "logs:DeleteDeliveryDestinationPolicy", - "logs:PutDeliveryDestinationPolicy", - "logs:GetDeliveryDestinationPolicy" - ] - } - }, - "primaryIdentifier": [ - "/properties/Name" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationPolicy": { - "items": { - "$ref": "#/definitions/DestinationPolicy" - }, - "type": "object" - }, - "DeliveryDestinationType": { - "maxLength": 12, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DestinationResourceArn": { - "$ref": "#/definitions/Arn" - }, - "Name": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/Arn", - "/properties/DeliveryDestinationType" - ], - "required": [ - "Name" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::DeliveryDestination" -} diff --git a/src/cfnlint/data/schemas/providers/me_central_1/aws-logs-deliverysource.json b/src/cfnlint/data/schemas/providers/me_central_1/aws-logs-deliverysource.json deleted file mode 100644 index 30c5c13d9e..0000000000 --- a/src/cfnlint/data/schemas/providers/me_central_1/aws-logs-deliverysource.json +++ /dev/null @@ -1,138 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:PutDeliverySource", - "logs:GetDeliverySource", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:AllowVendedLogDeliveryForResource", - "codewhisperer:AllowVendedLogDeliveryForResource", - "autoloop:AllowVendedLogDeliveryForResource", - "workmail:AllowVendedLogDeliveryForResource" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDeliverySource" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliverySources" - ] - }, - "read": { - "permissions": [ - "logs:GetDeliverySource", - "logs:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "logs:PutDeliverySource", - "logs:GetDeliverySource", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource" - ] - } - }, - "primaryIdentifier": [ - "/properties/Name" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "LogType": { - "maxLength": 255, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Name": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "ResourceArn": { - "$ref": "#/definitions/Arn" - }, - "ResourceArns": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Arn" - }, - "type": "array", - "uniqueItems": true - }, - "Service": { - "maxLength": 255, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/Service", - "/properties/ResourceArns", - "/properties/Arn" - ], - "required": [ - "Name" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::DeliverySource", - "writeOnlyProperties": [ - "/properties/ResourceArn" - ] -} diff --git a/src/cfnlint/data/schemas/providers/me_central_1/aws-neptune-dbcluster.json b/src/cfnlint/data/schemas/providers/me_central_1/aws-neptune-dbcluster.json deleted file mode 100644 index d682d355d7..0000000000 --- a/src/cfnlint/data/schemas/providers/me_central_1/aws-neptune-dbcluster.json +++ /dev/null @@ -1,292 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/AvailabilityZones", - "/properties/DBClusterIdentifier", - "/properties/DBSubnetGroupName", - "/properties/KmsKeyId", - "/properties/RestoreToTime", - "/properties/RestoreType", - "/properties/SnapshotIdentifier", - "/properties/SourceDBClusterIdentifier", - "/properties/StorageEncrypted", - "/properties/UseLatestRestorableTime" - ], - "definitions": { - "DBClusterRole": { - "additionalProperties": false, - "properties": { - "FeatureName": { - "type": "string" - }, - "RoleArn": { - "type": "string" - } - }, - "required": [ - "RoleArn" - ], - "type": "object" - }, - "ServerlessScalingConfiguration": { - "additionalProperties": false, - "properties": { - "MaxCapacity": { - "maximum": 128, - "minimum": 2.5, - "type": "number" - }, - "MinCapacity": { - "maximum": 128, - "minimum": 1, - "type": "number" - } - }, - "required": [ - "MinCapacity", - "MaxCapacity" - ], - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:CreateDBCluster", - "rds:CreateDBInstance", - "rds:DescribeDBClusters", - "rds:ListTagsForResource", - "rds:ModifyDBCluster", - "rds:RestoreDBClusterFromSnapshot", - "rds:RestoreDBClusterToPointInTime", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "rds:DeleteDBCluster", - "rds:DeleteDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeGlobalClusters", - "rds:ListTagsForResource", - "rds:RemoveFromGlobalCluster", - "rds:CreateDBClusterSnapshot", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "list": { - "permissions": [ - "rds:DescribeDBClusters", - "rds:ListTagsForResource", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "read": { - "permissions": [ - "rds:DescribeDBClusters", - "rds:ListTagsForResource", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "update": { - "permissions": [ - "ec2:DescribeSecurityGroups", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:DescribeDBClusters", - "rds:DescribeDBInstances", - "rds:DescribeDBSubnetGroups", - "rds:DescribeGlobalClusters", - "rds:ListTagsForResource", - "rds:ModifyDBCluster", - "rds:ModifyDBInstance", - "rds:RemoveFromGlobalCluster", - "rds:RemoveRoleFromDBCluster", - "rds:RemoveTagsFromResource", - "kms:*" - ], - "timeoutInMinutes": 2160 - } - }, - "primaryIdentifier": [ - "/properties/DBClusterIdentifier" - ], - "properties": { - "AssociatedRoles": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/DBClusterRole" - }, - "type": "array", - "uniqueItems": true - }, - "AvailabilityZones": { - "insertionOrder": true, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "BackupRetentionPeriod": { - "default": 1, - "minimum": 1, - "type": "integer" - }, - "ClusterResourceId": { - "type": "string" - }, - "CopyTagsToSnapshot": { - "type": "boolean" - }, - "DBClusterIdentifier": { - "maxLength": 63, - "minLength": 1, - "pattern": "^[a-zA-Z]{1}(?:-?[a-zA-Z0-9]){0,62}$", - "type": "string" - }, - "DBClusterParameterGroupName": { - "type": "string" - }, - "DBInstanceParameterGroupName": { - "type": "string" - }, - "DBPort": { - "type": "integer" - }, - "DBSubnetGroupName": { - "type": "string" - }, - "DeletionProtection": { - "type": "boolean" - }, - "EnableCloudwatchLogsExports": { - "insertionOrder": true, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "Endpoint": { - "type": "string" - }, - "EngineVersion": { - "type": "string" - }, - "IamAuthEnabled": { - "type": "boolean" - }, - "KmsKeyId": { - "type": "string" - }, - "Port": { - "type": "string" - }, - "PreferredBackupWindow": { - "type": "string" - }, - "PreferredMaintenanceWindow": { - "type": "string" - }, - "ReadEndpoint": { - "type": "string" - }, - "RestoreToTime": { - "type": "string" - }, - "RestoreType": { - "default": "full-copy", - "type": "string" - }, - "ServerlessScalingConfiguration": { - "$ref": "#/definitions/ServerlessScalingConfiguration" - }, - "SnapshotIdentifier": { - "type": "string" - }, - "SourceDBClusterIdentifier": { - "type": "string" - }, - "StorageEncrypted": { - "type": "boolean" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 50, - "type": "array", - "uniqueItems": true - }, - "UseLatestRestorableTime": { - "type": "boolean" - }, - "VpcSecurityGroupIds": { - "insertionOrder": true, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - } - }, - "propertyTransform": { - "/properties/DBClusterIdentifier": "$lowercase(DBClusterIdentifier)", - "/properties/DBClusterParameterGroupName": "$lowercase(DBClusterParameterGroupName)", - "/properties/DBSubnetGroupName": "$lowercase(DBSubnetGroupName)", - "/properties/SnapshotIdentifier": "$lowercase(SnapshotIdentifier)", - "/properties/SourceDBClusterIdentifier": "$lowercase(SourceDBClusterIdentifier)" - }, - "readOnlyProperties": [ - "/properties/Endpoint", - "/properties/ClusterResourceId", - "/properties/Port", - "/properties/ReadEndpoint" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-neptune", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Neptune::DBCluster", - "writeOnlyProperties": [ - "/properties/DBInstanceParameterGroupName", - "/properties/RestoreToTime", - "/properties/RestoreType", - "/properties/SnapshotIdentifier", - "/properties/SourceDBClusterIdentifier", - "/properties/UseLatestRestorableTime" - ] -} diff --git a/src/cfnlint/data/schemas/providers/me_central_1/aws-rds-dbcluster.json b/src/cfnlint/data/schemas/providers/me_central_1/aws-rds-dbcluster.json deleted file mode 100644 index fc3519fd59..0000000000 --- a/src/cfnlint/data/schemas/providers/me_central_1/aws-rds-dbcluster.json +++ /dev/null @@ -1,459 +0,0 @@ -{ - "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" - } - }, - "handlers": { - "create": { - "permissions": [ - "iam:CreateServiceLinkedRole", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:CreateDBCluster", - "rds:CreateDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeDBClusterSnapshots", - "rds:DescribeDBSnapshots", - "rds:DescribeEvents", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:RestoreDBClusterFromSnapshot", - "rds:RestoreDBClusterToPointInTime", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "rds:CreateDBClusterSnapshot", - "rds:DeleteDBCluster", - "rds:DeleteDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeGlobalClusters", - "rds:RemoveFromGlobalCluster" - ] - }, - "list": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "read": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "update": { - "permissions": [ - "ec2:DescribeSecurityGroups", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:DescribeDBClusters", - "rds:DescribeDBSubnetGroups", - "rds:DescribeEvents", - "rds:DescribeGlobalClusters", - "rds:DisableHttpEndpoint", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:ModifyDBInstance", - "rds:RemoveFromGlobalCluster", - "rds:RemoveRoleFromDBCluster", - "rds:RemoveTagsFromResource", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - } - }, - "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": { - "default": 0, - "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": { - "default": "default.aurora5.6", - "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": { - "default": 0, - "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": { - "default": "full-copy", - "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)) = 'aurora-postgresql' ? 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", - "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/__init__.py b/src/cfnlint/data/schemas/providers/me_south_1/__init__.py index 0bf4dccb7d..822f573d71 100644 --- a/src/cfnlint/data/schemas/providers/me_south_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/me_south_1/__init__.py @@ -504,6 +504,7 @@ "AWS::Lambda::Permission", "AWS::Lambda::Url", "AWS::Lambda::Version", + "AWS::LaunchWizard::Deployment", "AWS::Logs::AccountPolicy", "AWS::Logs::Delivery", "AWS::Logs::DeliveryDestination", @@ -938,7 +939,6 @@ "aws-codedeploy-application.json", "aws-codedeploy-deploymentconfig.json", "aws-codedeploy-deploymentgroup.json", - "aws-codepipeline-pipeline.json", "aws-codestarnotifications-notificationrule.json", "aws-cognito-identitypool.json", "aws-cognito-identitypoolprincipaltag.json", @@ -1264,7 +1264,11 @@ "aws-lambda-permission.json", "aws-lambda-url.json", "aws-lambda-version.json", + "aws-launchwizard-deployment.json", "aws-logs-accountpolicy.json", + "aws-logs-delivery.json", + "aws-logs-deliverydestination.json", + "aws-logs-deliverysource.json", "aws-logs-destination.json", "aws-logs-loganomalydetector.json", "aws-logs-loggroup.json", @@ -1281,6 +1285,7 @@ "aws-msk-configuration.json", "aws-msk-vpcconnection.json", "aws-mwaa-environment.json", + "aws-neptune-dbcluster.json", "aws-neptune-dbclusterparametergroup.json", "aws-neptune-dbinstance.json", "aws-neptune-dbparametergroup.json", @@ -1328,6 +1333,7 @@ "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", diff --git a/src/cfnlint/data/schemas/providers/me_south_1/aws-codepipeline-pipeline.json b/src/cfnlint/data/schemas/providers/me_south_1/aws-codepipeline-pipeline.json new file mode 100644 index 0000000000..925fbfe118 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/me_south_1/aws-codepipeline-pipeline.json @@ -0,0 +1,505 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "ActionDeclaration": { + "additionalProperties": false, + "properties": { + "ActionTypeId": { + "$ref": "#/definitions/ActionTypeId" + }, + "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 + }, + "Region": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "RunOrder": { + "type": "integer" + }, + "TimeoutInMinutes": { + "type": "integer" + } + }, + "required": [ + "ActionTypeId", + "Name" + ], + "type": "object" + }, + "ActionTypeId": { + "additionalProperties": false, + "properties": { + "Category": { + "enum": [ + "Approval", + "Build", + "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" + }, + "BlockerDeclaration": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "Type": { + "enum": [ + "Schedule" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Name" + ], + "type": "object" + }, + "EncryptionKey": { + "additionalProperties": false, + "properties": { + "Id": { + "type": "string" + }, + "Type": { + "type": "string" + } + }, + "required": [ + "Type", + "Id" + ], + "type": "object" + }, + "FailureConditions": { + "additionalProperties": false, + "properties": { + "Result": { + "type": "string" + } + }, + "required": [ + "Result" + ], + "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": { + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "PipelineTriggerDeclaration": { + "additionalProperties": false, + "properties": { + "GitConfiguration": { + "$ref": "#/definitions/GitConfiguration" + }, + "ProviderType": { + "type": "string" + } + }, + "required": [ + "ProviderType" + ], + "type": "object" + }, + "StageDeclaration": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/ActionDeclaration" + }, + "type": "array", + "uniqueItems": true + }, + "Blockers": { + "items": { + "$ref": "#/definitions/BlockerDeclaration" + }, + "type": "array", + "uniqueItems": true + }, + "Name": { + "type": "string" + }, + "OnFailure": { + "$ref": "#/definitions/FailureConditions" + } + }, + "required": [ + "Actions", + "Name" + ], + "type": "object" + }, + "StageTransition": { + "additionalProperties": false, + "properties": { + "Reason": { + "type": "string" + }, + "StageName": { + "type": "string" + } + }, + "required": [ + "StageName", + "Reason" + ], + "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/Id" + ], + "properties": { + "ArtifactStore": { + "$ref": "#/definitions/ArtifactStore" + }, + "ArtifactStores": { + "items": { + "$ref": "#/definitions/ArtifactStoreMap" + }, + "type": "array", + "uniqueItems": true + }, + "DisableInboundStageTransitions": { + "items": { + "$ref": "#/definitions/StageTransition" + }, + "type": "array", + "uniqueItems": true + }, + "ExecutionMode": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "PipelineType": { + "type": "string" + }, + "RestartExecutionOnUpdate": { + "type": "boolean" + }, + "RoleArn": { + "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/Id", + "/properties/Version" + ], + "required": [ + "Stages", + "RoleArn" + ], + "requiredXor": [ + "ArtifactStore", + "ArtifactStores" + ], + "typeName": "AWS::CodePipeline::Pipeline" +} diff --git a/src/cfnlint/data/schemas/providers/me_south_1/aws-logs-delivery.json b/src/cfnlint/data/schemas/providers/me_south_1/aws-logs-delivery.json deleted file mode 100644 index 9d504c7dc9..0000000000 --- a/src/cfnlint/data/schemas/providers/me_south_1/aws-logs-delivery.json +++ /dev/null @@ -1,130 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/DeliverySourceName", - "/properties/DeliveryDestinationArn" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:CreateDelivery", - "logs:GetDelivery", - "logs:DescribeDeliveries", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:GetDeliverySource", - "logs:GetDeliveryDestination" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDelivery", - "logs:ListTagsForResource", - "logs:UntagResource" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliveries", - "logs:ListTagsForResource" - ] - }, - "read": { - "permissions": [ - "logs:GetDelivery", - "logs:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "logs:GetDelivery", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource" - ] - } - }, - "primaryIdentifier": [ - "/properties/DeliveryId" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationArn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationType": { - "maxLength": 12, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DeliveryId": { - "maxLength": 64, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DeliverySourceName": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/DeliveryId", - "/properties/Arn", - "/properties/DeliveryDestinationType" - ], - "required": [ - "DeliverySourceName", - "DeliveryDestinationArn" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::Delivery" -} diff --git a/src/cfnlint/data/schemas/providers/me_south_1/aws-logs-deliverydestination.json b/src/cfnlint/data/schemas/providers/me_south_1/aws-logs-deliverydestination.json deleted file mode 100644 index 41e9e764ad..0000000000 --- a/src/cfnlint/data/schemas/providers/me_south_1/aws-logs-deliverydestination.json +++ /dev/null @@ -1,152 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name", - "/properties/DestinationResourceArn" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "DestinationPolicy": { - "additionalProperties": false, - "properties": { - "DeliveryDestinationName": { - "maxLength": 60, - "minLength": 1, - "type": "string" - }, - "DeliveryDestinationPolicy": { - "maxLength": 51200, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "DeliveryDestinationName", - "DeliveryDestinationPolicy" - ], - "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" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:PutDeliveryDestination", - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource", - "logs:PutDeliveryDestinationPolicy", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDeliveryDestination", - "logs:DeleteDeliveryDestinationPolicy" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliveryDestinations", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "read": { - "permissions": [ - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "update": { - "permissions": [ - "logs:PutDeliveryDestination", - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource", - "logs:DeleteDeliveryDestinationPolicy", - "logs:PutDeliveryDestinationPolicy", - "logs:GetDeliveryDestinationPolicy" - ] - } - }, - "primaryIdentifier": [ - "/properties/Name" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationPolicy": { - "items": { - "$ref": "#/definitions/DestinationPolicy" - }, - "type": "object" - }, - "DeliveryDestinationType": { - "maxLength": 12, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DestinationResourceArn": { - "$ref": "#/definitions/Arn" - }, - "Name": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/Arn", - "/properties/DeliveryDestinationType" - ], - "required": [ - "Name" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::DeliveryDestination" -} diff --git a/src/cfnlint/data/schemas/providers/me_south_1/aws-logs-deliverysource.json b/src/cfnlint/data/schemas/providers/me_south_1/aws-logs-deliverysource.json deleted file mode 100644 index 30c5c13d9e..0000000000 --- a/src/cfnlint/data/schemas/providers/me_south_1/aws-logs-deliverysource.json +++ /dev/null @@ -1,138 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:PutDeliverySource", - "logs:GetDeliverySource", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:AllowVendedLogDeliveryForResource", - "codewhisperer:AllowVendedLogDeliveryForResource", - "autoloop:AllowVendedLogDeliveryForResource", - "workmail:AllowVendedLogDeliveryForResource" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDeliverySource" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliverySources" - ] - }, - "read": { - "permissions": [ - "logs:GetDeliverySource", - "logs:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "logs:PutDeliverySource", - "logs:GetDeliverySource", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource" - ] - } - }, - "primaryIdentifier": [ - "/properties/Name" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "LogType": { - "maxLength": 255, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Name": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "ResourceArn": { - "$ref": "#/definitions/Arn" - }, - "ResourceArns": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Arn" - }, - "type": "array", - "uniqueItems": true - }, - "Service": { - "maxLength": 255, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/Service", - "/properties/ResourceArns", - "/properties/Arn" - ], - "required": [ - "Name" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::DeliverySource", - "writeOnlyProperties": [ - "/properties/ResourceArn" - ] -} diff --git a/src/cfnlint/data/schemas/providers/me_south_1/aws-neptune-dbcluster.json b/src/cfnlint/data/schemas/providers/me_south_1/aws-neptune-dbcluster.json deleted file mode 100644 index d682d355d7..0000000000 --- a/src/cfnlint/data/schemas/providers/me_south_1/aws-neptune-dbcluster.json +++ /dev/null @@ -1,292 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/AvailabilityZones", - "/properties/DBClusterIdentifier", - "/properties/DBSubnetGroupName", - "/properties/KmsKeyId", - "/properties/RestoreToTime", - "/properties/RestoreType", - "/properties/SnapshotIdentifier", - "/properties/SourceDBClusterIdentifier", - "/properties/StorageEncrypted", - "/properties/UseLatestRestorableTime" - ], - "definitions": { - "DBClusterRole": { - "additionalProperties": false, - "properties": { - "FeatureName": { - "type": "string" - }, - "RoleArn": { - "type": "string" - } - }, - "required": [ - "RoleArn" - ], - "type": "object" - }, - "ServerlessScalingConfiguration": { - "additionalProperties": false, - "properties": { - "MaxCapacity": { - "maximum": 128, - "minimum": 2.5, - "type": "number" - }, - "MinCapacity": { - "maximum": 128, - "minimum": 1, - "type": "number" - } - }, - "required": [ - "MinCapacity", - "MaxCapacity" - ], - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:CreateDBCluster", - "rds:CreateDBInstance", - "rds:DescribeDBClusters", - "rds:ListTagsForResource", - "rds:ModifyDBCluster", - "rds:RestoreDBClusterFromSnapshot", - "rds:RestoreDBClusterToPointInTime", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "rds:DeleteDBCluster", - "rds:DeleteDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeGlobalClusters", - "rds:ListTagsForResource", - "rds:RemoveFromGlobalCluster", - "rds:CreateDBClusterSnapshot", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "list": { - "permissions": [ - "rds:DescribeDBClusters", - "rds:ListTagsForResource", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "read": { - "permissions": [ - "rds:DescribeDBClusters", - "rds:ListTagsForResource", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "update": { - "permissions": [ - "ec2:DescribeSecurityGroups", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:DescribeDBClusters", - "rds:DescribeDBInstances", - "rds:DescribeDBSubnetGroups", - "rds:DescribeGlobalClusters", - "rds:ListTagsForResource", - "rds:ModifyDBCluster", - "rds:ModifyDBInstance", - "rds:RemoveFromGlobalCluster", - "rds:RemoveRoleFromDBCluster", - "rds:RemoveTagsFromResource", - "kms:*" - ], - "timeoutInMinutes": 2160 - } - }, - "primaryIdentifier": [ - "/properties/DBClusterIdentifier" - ], - "properties": { - "AssociatedRoles": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/DBClusterRole" - }, - "type": "array", - "uniqueItems": true - }, - "AvailabilityZones": { - "insertionOrder": true, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "BackupRetentionPeriod": { - "default": 1, - "minimum": 1, - "type": "integer" - }, - "ClusterResourceId": { - "type": "string" - }, - "CopyTagsToSnapshot": { - "type": "boolean" - }, - "DBClusterIdentifier": { - "maxLength": 63, - "minLength": 1, - "pattern": "^[a-zA-Z]{1}(?:-?[a-zA-Z0-9]){0,62}$", - "type": "string" - }, - "DBClusterParameterGroupName": { - "type": "string" - }, - "DBInstanceParameterGroupName": { - "type": "string" - }, - "DBPort": { - "type": "integer" - }, - "DBSubnetGroupName": { - "type": "string" - }, - "DeletionProtection": { - "type": "boolean" - }, - "EnableCloudwatchLogsExports": { - "insertionOrder": true, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "Endpoint": { - "type": "string" - }, - "EngineVersion": { - "type": "string" - }, - "IamAuthEnabled": { - "type": "boolean" - }, - "KmsKeyId": { - "type": "string" - }, - "Port": { - "type": "string" - }, - "PreferredBackupWindow": { - "type": "string" - }, - "PreferredMaintenanceWindow": { - "type": "string" - }, - "ReadEndpoint": { - "type": "string" - }, - "RestoreToTime": { - "type": "string" - }, - "RestoreType": { - "default": "full-copy", - "type": "string" - }, - "ServerlessScalingConfiguration": { - "$ref": "#/definitions/ServerlessScalingConfiguration" - }, - "SnapshotIdentifier": { - "type": "string" - }, - "SourceDBClusterIdentifier": { - "type": "string" - }, - "StorageEncrypted": { - "type": "boolean" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 50, - "type": "array", - "uniqueItems": true - }, - "UseLatestRestorableTime": { - "type": "boolean" - }, - "VpcSecurityGroupIds": { - "insertionOrder": true, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - } - }, - "propertyTransform": { - "/properties/DBClusterIdentifier": "$lowercase(DBClusterIdentifier)", - "/properties/DBClusterParameterGroupName": "$lowercase(DBClusterParameterGroupName)", - "/properties/DBSubnetGroupName": "$lowercase(DBSubnetGroupName)", - "/properties/SnapshotIdentifier": "$lowercase(SnapshotIdentifier)", - "/properties/SourceDBClusterIdentifier": "$lowercase(SourceDBClusterIdentifier)" - }, - "readOnlyProperties": [ - "/properties/Endpoint", - "/properties/ClusterResourceId", - "/properties/Port", - "/properties/ReadEndpoint" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-neptune", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Neptune::DBCluster", - "writeOnlyProperties": [ - "/properties/DBInstanceParameterGroupName", - "/properties/RestoreToTime", - "/properties/RestoreType", - "/properties/SnapshotIdentifier", - "/properties/SourceDBClusterIdentifier", - "/properties/UseLatestRestorableTime" - ] -} 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 deleted file mode 100644 index fc3519fd59..0000000000 --- a/src/cfnlint/data/schemas/providers/me_south_1/aws-rds-dbcluster.json +++ /dev/null @@ -1,459 +0,0 @@ -{ - "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" - } - }, - "handlers": { - "create": { - "permissions": [ - "iam:CreateServiceLinkedRole", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:CreateDBCluster", - "rds:CreateDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeDBClusterSnapshots", - "rds:DescribeDBSnapshots", - "rds:DescribeEvents", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:RestoreDBClusterFromSnapshot", - "rds:RestoreDBClusterToPointInTime", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "rds:CreateDBClusterSnapshot", - "rds:DeleteDBCluster", - "rds:DeleteDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeGlobalClusters", - "rds:RemoveFromGlobalCluster" - ] - }, - "list": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "read": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "update": { - "permissions": [ - "ec2:DescribeSecurityGroups", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:DescribeDBClusters", - "rds:DescribeDBSubnetGroups", - "rds:DescribeEvents", - "rds:DescribeGlobalClusters", - "rds:DisableHttpEndpoint", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:ModifyDBInstance", - "rds:RemoveFromGlobalCluster", - "rds:RemoveRoleFromDBCluster", - "rds:RemoveTagsFromResource", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - } - }, - "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": { - "default": 0, - "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": { - "default": "default.aurora5.6", - "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": { - "default": 0, - "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": { - "default": "full-copy", - "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)) = 'aurora-postgresql' ? 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", - "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/sa_east_1/__init__.py b/src/cfnlint/data/schemas/providers/sa_east_1/__init__.py index 4ed4da8928..af7456b3b8 100644 --- a/src/cfnlint/data/schemas/providers/sa_east_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/sa_east_1/__init__.py @@ -579,6 +579,7 @@ "AWS::Lambda::Permission", "AWS::Lambda::Url", "AWS::Lambda::Version", + "AWS::LaunchWizard::Deployment", "AWS::LicenseManager::Grant", "AWS::LicenseManager::License", "AWS::Location::APIKey", @@ -1531,6 +1532,7 @@ "aws-lambda-permission.json", "aws-lambda-url.json", "aws-lambda-version.json", + "aws-launchwizard-deployment.json", "aws-licensemanager-grant.json", "aws-licensemanager-license.json", "aws-location-apikey.json", @@ -1538,6 +1540,7 @@ "aws-location-map.json", "aws-location-placeindex.json", "aws-location-routecalculator.json", + "aws-location-tracker.json", "aws-location-trackerconsumer.json", "aws-logs-accountpolicy.json", "aws-logs-delivery.json", @@ -1602,6 +1605,7 @@ "aws-msk-replicator.json", "aws-msk-vpcconnection.json", "aws-mwaa-environment.json", + "aws-neptune-dbcluster.json", "aws-neptune-dbsubnetgroup.json", "aws-neptune-eventsubscription.json", "aws-networkfirewall-firewall.json", @@ -1654,6 +1658,7 @@ "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", diff --git a/src/cfnlint/data/schemas/providers/sa_east_1/aws-location-tracker.json b/src/cfnlint/data/schemas/providers/sa_east_1/aws-location-tracker.json deleted file mode 100644 index 49d479d160..0000000000 --- a/src/cfnlint/data/schemas/providers/sa_east_1/aws-location-tracker.json +++ /dev/null @@ -1,185 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/KmsKeyId", - "/properties/TrackerName" - ], - "definitions": { - "PositionFiltering": { - "enum": [ - "TimeBased", - "DistanceBased", - "AccuracyBased" - ], - "type": "string" - }, - "PricingPlan": { - "enum": [ - "RequestBasedUsage" - ], - "type": "string" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "pattern": "^[a-zA-Z+-=._:/]+$", - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "pattern": "^[A-Za-z0-9 _=@:.+-/]*$", - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - }, - "TagMap": { - "additionalProperties": false, - "maxProperties": 50, - "patternProperties": { - "^[a-zA-Z+-=._:/]+$": { - "maxLength": 256, - "minLength": 0, - "pattern": "^[A-Za-z0-9 _=@:.+-/]*$", - "type": "string" - } - }, - "type": "object" - }, - "iso8601UTC": { - "pattern": "^([0-2]\\d{3})-(0[0-9]|1[0-2])-([0-2]\\d|3[01])T([01]\\d|2[0-4]):([0-5]\\d):([0-6]\\d)((\\.\\d{3})?)Z$", - "type": "string" - } - }, - "deprecatedProperties": [ - "/properties/PricingPlan", - "/properties/PricingPlanDataSource" - ], - "handlers": { - "create": { - "permissions": [ - "geo:CreateTracker", - "geo:DescribeTracker", - "geo:TagResource", - "geo:UntagResource", - "kms:DescribeKey", - "kms:CreateGrant" - ] - }, - "delete": { - "permissions": [ - "geo:DeleteTracker", - "geo:DescribeTracker" - ] - }, - "list": { - "permissions": [ - "geo:ListTrackers" - ] - }, - "read": { - "permissions": [ - "geo:DescribeTracker", - "kms:DescribeKey" - ] - }, - "update": { - "permissions": [ - "geo:CreateTracker", - "geo:DescribeTracker", - "geo:TagResource", - "geo:UntagResource", - "kms:DescribeKey", - "kms:CreateGrant", - "geo:UpdateTracker" - ] - } - }, - "primaryIdentifier": [ - "/properties/TrackerName" - ], - "properties": { - "Arn": { - "maxLength": 1600, - "pattern": "^arn(:[a-z0-9]+([.-][a-z0-9]+)*){2}(:([a-z0-9]+([.-][a-z0-9]+)*)?){2}:([^/].*)?$", - "type": "string" - }, - "CreateTime": { - "$ref": "#/definitions/iso8601UTC" - }, - "Description": { - "maxLength": 1000, - "minLength": 0, - "type": "string" - }, - "EventBridgeEnabled": { - "type": "boolean" - }, - "KmsKeyEnableGeospatialQueries": { - "type": "boolean" - }, - "KmsKeyId": { - "maxLength": 2048, - "minLength": 1, - "type": "string" - }, - "PositionFiltering": { - "$ref": "#/definitions/PositionFiltering" - }, - "PricingPlan": { - "$ref": "#/definitions/PricingPlan" - }, - "PricingPlanDataSource": { - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 200, - "minItems": 0, - "type": "array", - "uniqueItems": true - }, - "TrackerArn": { - "maxLength": 1600, - "pattern": "^arn(:[a-z0-9]+([.-][a-z0-9]+)*){2}(:([a-z0-9]+([.-][a-z0-9]+)*)?){2}:([^/].*)?$", - "type": "string" - }, - "TrackerName": { - "maxLength": 100, - "minLength": 1, - "pattern": "^[-._\\w]+$", - "type": "string" - }, - "UpdateTime": { - "$ref": "#/definitions/iso8601UTC" - } - }, - "readOnlyProperties": [ - "/properties/CreateTime", - "/properties/Arn", - "/properties/TrackerArn", - "/properties/UpdateTime" - ], - "required": [ - "TrackerName" - ], - "tagging": { - "cloudFormationSystemTags": false, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Location::Tracker" -} diff --git a/src/cfnlint/data/schemas/providers/sa_east_1/aws-neptune-dbcluster.json b/src/cfnlint/data/schemas/providers/sa_east_1/aws-neptune-dbcluster.json deleted file mode 100644 index d682d355d7..0000000000 --- a/src/cfnlint/data/schemas/providers/sa_east_1/aws-neptune-dbcluster.json +++ /dev/null @@ -1,292 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/AvailabilityZones", - "/properties/DBClusterIdentifier", - "/properties/DBSubnetGroupName", - "/properties/KmsKeyId", - "/properties/RestoreToTime", - "/properties/RestoreType", - "/properties/SnapshotIdentifier", - "/properties/SourceDBClusterIdentifier", - "/properties/StorageEncrypted", - "/properties/UseLatestRestorableTime" - ], - "definitions": { - "DBClusterRole": { - "additionalProperties": false, - "properties": { - "FeatureName": { - "type": "string" - }, - "RoleArn": { - "type": "string" - } - }, - "required": [ - "RoleArn" - ], - "type": "object" - }, - "ServerlessScalingConfiguration": { - "additionalProperties": false, - "properties": { - "MaxCapacity": { - "maximum": 128, - "minimum": 2.5, - "type": "number" - }, - "MinCapacity": { - "maximum": 128, - "minimum": 1, - "type": "number" - } - }, - "required": [ - "MinCapacity", - "MaxCapacity" - ], - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:CreateDBCluster", - "rds:CreateDBInstance", - "rds:DescribeDBClusters", - "rds:ListTagsForResource", - "rds:ModifyDBCluster", - "rds:RestoreDBClusterFromSnapshot", - "rds:RestoreDBClusterToPointInTime", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "rds:DeleteDBCluster", - "rds:DeleteDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeGlobalClusters", - "rds:ListTagsForResource", - "rds:RemoveFromGlobalCluster", - "rds:CreateDBClusterSnapshot", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "list": { - "permissions": [ - "rds:DescribeDBClusters", - "rds:ListTagsForResource", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "read": { - "permissions": [ - "rds:DescribeDBClusters", - "rds:ListTagsForResource", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "update": { - "permissions": [ - "ec2:DescribeSecurityGroups", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:DescribeDBClusters", - "rds:DescribeDBInstances", - "rds:DescribeDBSubnetGroups", - "rds:DescribeGlobalClusters", - "rds:ListTagsForResource", - "rds:ModifyDBCluster", - "rds:ModifyDBInstance", - "rds:RemoveFromGlobalCluster", - "rds:RemoveRoleFromDBCluster", - "rds:RemoveTagsFromResource", - "kms:*" - ], - "timeoutInMinutes": 2160 - } - }, - "primaryIdentifier": [ - "/properties/DBClusterIdentifier" - ], - "properties": { - "AssociatedRoles": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/DBClusterRole" - }, - "type": "array", - "uniqueItems": true - }, - "AvailabilityZones": { - "insertionOrder": true, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "BackupRetentionPeriod": { - "default": 1, - "minimum": 1, - "type": "integer" - }, - "ClusterResourceId": { - "type": "string" - }, - "CopyTagsToSnapshot": { - "type": "boolean" - }, - "DBClusterIdentifier": { - "maxLength": 63, - "minLength": 1, - "pattern": "^[a-zA-Z]{1}(?:-?[a-zA-Z0-9]){0,62}$", - "type": "string" - }, - "DBClusterParameterGroupName": { - "type": "string" - }, - "DBInstanceParameterGroupName": { - "type": "string" - }, - "DBPort": { - "type": "integer" - }, - "DBSubnetGroupName": { - "type": "string" - }, - "DeletionProtection": { - "type": "boolean" - }, - "EnableCloudwatchLogsExports": { - "insertionOrder": true, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "Endpoint": { - "type": "string" - }, - "EngineVersion": { - "type": "string" - }, - "IamAuthEnabled": { - "type": "boolean" - }, - "KmsKeyId": { - "type": "string" - }, - "Port": { - "type": "string" - }, - "PreferredBackupWindow": { - "type": "string" - }, - "PreferredMaintenanceWindow": { - "type": "string" - }, - "ReadEndpoint": { - "type": "string" - }, - "RestoreToTime": { - "type": "string" - }, - "RestoreType": { - "default": "full-copy", - "type": "string" - }, - "ServerlessScalingConfiguration": { - "$ref": "#/definitions/ServerlessScalingConfiguration" - }, - "SnapshotIdentifier": { - "type": "string" - }, - "SourceDBClusterIdentifier": { - "type": "string" - }, - "StorageEncrypted": { - "type": "boolean" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 50, - "type": "array", - "uniqueItems": true - }, - "UseLatestRestorableTime": { - "type": "boolean" - }, - "VpcSecurityGroupIds": { - "insertionOrder": true, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - } - }, - "propertyTransform": { - "/properties/DBClusterIdentifier": "$lowercase(DBClusterIdentifier)", - "/properties/DBClusterParameterGroupName": "$lowercase(DBClusterParameterGroupName)", - "/properties/DBSubnetGroupName": "$lowercase(DBSubnetGroupName)", - "/properties/SnapshotIdentifier": "$lowercase(SnapshotIdentifier)", - "/properties/SourceDBClusterIdentifier": "$lowercase(SourceDBClusterIdentifier)" - }, - "readOnlyProperties": [ - "/properties/Endpoint", - "/properties/ClusterResourceId", - "/properties/Port", - "/properties/ReadEndpoint" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-neptune", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Neptune::DBCluster", - "writeOnlyProperties": [ - "/properties/DBInstanceParameterGroupName", - "/properties/RestoreToTime", - "/properties/RestoreType", - "/properties/SnapshotIdentifier", - "/properties/SourceDBClusterIdentifier", - "/properties/UseLatestRestorableTime" - ] -} diff --git a/src/cfnlint/data/schemas/providers/sa_east_1/aws-rds-dbcluster.json b/src/cfnlint/data/schemas/providers/sa_east_1/aws-rds-dbcluster.json deleted file mode 100644 index fc3519fd59..0000000000 --- a/src/cfnlint/data/schemas/providers/sa_east_1/aws-rds-dbcluster.json +++ /dev/null @@ -1,459 +0,0 @@ -{ - "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" - } - }, - "handlers": { - "create": { - "permissions": [ - "iam:CreateServiceLinkedRole", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:CreateDBCluster", - "rds:CreateDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeDBClusterSnapshots", - "rds:DescribeDBSnapshots", - "rds:DescribeEvents", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:RestoreDBClusterFromSnapshot", - "rds:RestoreDBClusterToPointInTime", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "rds:CreateDBClusterSnapshot", - "rds:DeleteDBCluster", - "rds:DeleteDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeGlobalClusters", - "rds:RemoveFromGlobalCluster" - ] - }, - "list": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "read": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "update": { - "permissions": [ - "ec2:DescribeSecurityGroups", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:DescribeDBClusters", - "rds:DescribeDBSubnetGroups", - "rds:DescribeEvents", - "rds:DescribeGlobalClusters", - "rds:DisableHttpEndpoint", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:ModifyDBInstance", - "rds:RemoveFromGlobalCluster", - "rds:RemoveRoleFromDBCluster", - "rds:RemoveTagsFromResource", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - } - }, - "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": { - "default": 0, - "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": { - "default": "default.aurora5.6", - "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": { - "default": 0, - "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": { - "default": "full-copy", - "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)) = 'aurora-postgresql' ? 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", - "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/us_east_1/__init__.py b/src/cfnlint/data/schemas/providers/us_east_1/__init__.py index af76885c3f..12f60108c6 100644 --- a/src/cfnlint/data/schemas/providers/us_east_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/us_east_1/__init__.py @@ -764,6 +764,7 @@ "AWS::Lambda::Permission", "AWS::Lambda::Url", "AWS::Lambda::Version", + "AWS::LaunchWizard::Deployment", "AWS::Lex::Bot", "AWS::Lex::BotAlias", "AWS::Lex::BotVersion", @@ -1082,6 +1083,13 @@ "AWS::SES::ContactList", "AWS::SES::DedicatedIpPool", "AWS::SES::EmailIdentity", + "AWS::SES::MailManagerAddonInstance", + "AWS::SES::MailManagerAddonSubscription", + "AWS::SES::MailManagerArchive", + "AWS::SES::MailManagerIngressPoint", + "AWS::SES::MailManagerRelay", + "AWS::SES::MailManagerRuleSet", + "AWS::SES::MailManagerTrafficPolicy", "AWS::SES::ReceiptFilter", "AWS::SES::ReceiptRule", "AWS::SES::ReceiptRuleSet", diff --git a/src/cfnlint/data/schemas/providers/us_east_1/aws-cloudformation-stackset.json b/src/cfnlint/data/schemas/providers/us_east_1/aws-cloudformation-stackset.json index 5f3fa6e905..792fccc85b 100644 --- a/src/cfnlint/data/schemas/providers/us_east_1/aws-cloudformation-stackset.json +++ b/src/cfnlint/data/schemas/providers/us_east_1/aws-cloudformation-stackset.json @@ -37,6 +37,13 @@ ], "type": "string" }, + "ConcurrencyMode": { + "enum": [ + "STRICT_FAILURE_TOLERANCE", + "SOFT_FAILURE_TOLERANCE" + ], + "type": "string" + }, "DeploymentTargets": { "additionalProperties": false, "properties": { @@ -79,6 +86,9 @@ "OperationPreferences": { "additionalProperties": false, "properties": { + "ConcurrencyMode": { + "$ref": "#/definitions/ConcurrencyMode" + }, "FailureToleranceCount": { "minimum": 0, "type": "integer" diff --git a/src/cfnlint/data/schemas/providers/us_east_1/aws-codepipeline-pipeline.json b/src/cfnlint/data/schemas/providers/us_east_1/aws-codepipeline-pipeline.json index 925fbfe118..49ce5909b4 100644 --- a/src/cfnlint/data/schemas/providers/us_east_1/aws-codepipeline-pipeline.json +++ b/src/cfnlint/data/schemas/providers/us_east_1/aws-codepipeline-pipeline.json @@ -41,6 +41,7 @@ "type": "string" }, "RoleArn": { + "pattern": "arn:aws(-[\\w]+)*:iam::[0-9]{12}:role/.*", "type": "string" }, "RunOrder": { @@ -170,12 +171,12 @@ "additionalProperties": false, "properties": { "Result": { + "enum": [ + "ROLLBACK" + ], "type": "string" } }, - "required": [ - "Result" - ], "type": "object" }, "GitBranchFilterCriteria": { @@ -329,6 +330,9 @@ "$ref": "#/definitions/GitConfiguration" }, "ProviderType": { + "enum": [ + "CodeStarSourceConnection" + ], "type": "string" } }, @@ -358,7 +362,8 @@ "type": "string" }, "OnFailure": { - "$ref": "#/definitions/FailureConditions" + "$ref": "#/definitions/FailureConditions", + "type": "object" } }, "required": [ @@ -418,8 +423,55 @@ "type": "object" } }, + "handlers": { + "create": { + "permissions": [ + "iam:GetRole", + "iam:PassRole", + "codepipeline:GetPipeline", + "codepipeline:CreatePipeline", + "codepipeline:DisableStageTransition", + "codepipeline:GetPipelineState", + "codepipeline:TagResource", + "codestar-connections:PassConnection" + ] + }, + "delete": { + "permissions": [ + "codepipeline:GetPipeline", + "codepipeline:DeletePipeline" + ] + }, + "list": { + "permissions": [ + "codepipeline:ListPipelines" + ] + }, + "read": { + "permissions": [ + "codepipeline:GetPipeline", + "codepipeline:ListTagsForResource", + "codepipeline:GetPipelineState" + ] + }, + "update": { + "permissions": [ + "iam:GetRole", + "iam:PassRole", + "codepipeline:EnableStageTransition", + "codepipeline:StartPipelineExecution", + "codepipeline:GetPipeline", + "codepipeline:UpdatePipeline", + "codepipeline:GetPipelineState", + "codepipeline:DisableStageTransition", + "codepipeline:TagResource", + "codepipeline:UntagResource", + "codestar-connections:PassConnection" + ] + } + }, "primaryIdentifier": [ - "/properties/Id" + "/properties/Name" ], "properties": { "ArtifactStore": { @@ -440,21 +492,29 @@ "uniqueItems": true }, "ExecutionMode": { - "type": "string" - }, - "Id": { + "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": { @@ -490,7 +550,6 @@ } }, "readOnlyProperties": [ - "/properties/Id", "/properties/Version" ], "required": [ @@ -501,5 +560,16 @@ "ArtifactStore", "ArtifactStores" ], - "typeName": "AWS::CodePipeline::Pipeline" + "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/us_east_1/aws-deadline-meteredproduct.json b/src/cfnlint/data/schemas/providers/us_east_1/aws-deadline-meteredproduct.json index 6a160bacd6..3388650a11 100644 --- a/src/cfnlint/data/schemas/providers/us_east_1/aws-deadline-meteredproduct.json +++ b/src/cfnlint/data/schemas/providers/us_east_1/aws-deadline-meteredproduct.json @@ -72,7 +72,10 @@ } }, "readOnlyProperties": [ - "/properties/Arn" + "/properties/Arn", + "/properties/Port", + "/properties/Family", + "/properties/Vendor" ], "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-deadline", "tagging": { diff --git a/src/cfnlint/data/schemas/providers/us_east_1/aws-entityresolution-idmappingworkflow.json b/src/cfnlint/data/schemas/providers/us_east_1/aws-entityresolution-idmappingworkflow.json index 3388389fe0..e53f4199bb 100644 --- a/src/cfnlint/data/schemas/providers/us_east_1/aws-entityresolution-idmappingworkflow.json +++ b/src/cfnlint/data/schemas/providers/us_east_1/aws-entityresolution-idmappingworkflow.json @@ -24,17 +24,64 @@ "pattern": "^[a-zA-Z_0-9-]*$", "type": "string" }, + "IdMappingRuleBasedProperties": { + "additionalProperties": false, + "properties": { + "AttributeMatchingModel": { + "enum": [ + "ONE_TO_ONE", + "MANY_TO_MANY" + ], + "type": "string" + }, + "RecordMatchingModel": { + "enum": [ + "ONE_SOURCE_TO_ONE_TARGET", + "MANY_SOURCE_TO_ONE_TARGET" + ], + "type": "string" + }, + "RuleDefinitionType": { + "enum": [ + "SOURCE", + "TARGET" + ], + "type": "string" + }, + "Rules": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Rule" + }, + "maxItems": 25, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "AttributeMatchingModel", + "RecordMatchingModel" + ], + "type": "object" + }, "IdMappingTechniques": { "additionalProperties": false, "properties": { "IdMappingType": { "enum": [ - "PROVIDER" + "PROVIDER", + "RULE_BASED" ], "type": "string" }, + "NormalizationVersion": { + "type": "string" + }, "ProviderProperties": { "$ref": "#/definitions/ProviderProperties" + }, + "RuleBasedProperties": { + "$ref": "#/definitions/IdMappingRuleBasedProperties" } }, "type": "object" @@ -47,7 +94,7 @@ "additionalProperties": false, "properties": { "InputSourceARN": { - "pattern": "arn:(aws|aws-us-gov|aws-cn):.*:.*:[0-9]+:.*$", + "pattern": "^arn:(aws|aws-us-gov|aws-cn):entityresolution:[a-z]{2}-[a-z]{1,10}-[0-9]:[0-9]{12}:(idnamespace/[a-zA-Z_0-9-]{1,255})$|^arn:(aws|aws-us-gov|aws-cn):entityresolution:[a-z]{2}-[a-z]{1,10}-[0-9]:[0-9]{12}:(matchingworkflow/[a-zA-Z_0-9-]{1,255})$|^arn:(aws|aws-us-gov|aws-cn):glue:[a-z]{2}-[a-z]{1,10}-[0-9]:[0-9]{12}:(table/[a-zA-Z_0-9-]{1,255}/[a-zA-Z_0-9-]{1,255})$", "type": "string" }, "SchemaArn": { @@ -124,6 +171,31 @@ ], "type": "object" }, + "Rule": { + "additionalProperties": false, + "properties": { + "MatchingKeys": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/AttributeName" + }, + "maxItems": 15, + "minItems": 1, + "type": "array" + }, + "RuleName": { + "maxLength": 255, + "minLength": 0, + "pattern": "^[a-zA-Z_0-9- \\t]*$", + "type": "string" + } + }, + "required": [ + "RuleName", + "MatchingKeys" + ], + "type": "object" + }, "SchemaMappingArn": { "pattern": "^arn:(aws|aws-us-gov|aws-cn):entityresolution:.*:[0-9]+:(schemamapping/.*)$", "type": "string" diff --git a/src/cfnlint/data/schemas/providers/us_east_1/aws-entityresolution-idnamespace.json b/src/cfnlint/data/schemas/providers/us_east_1/aws-entityresolution-idnamespace.json index 8ae32b9527..1065be29ab 100644 --- a/src/cfnlint/data/schemas/providers/us_east_1/aws-entityresolution-idnamespace.json +++ b/src/cfnlint/data/schemas/providers/us_east_1/aws-entityresolution-idnamespace.json @@ -4,6 +4,12 @@ "/properties/IdNamespaceName" ], "definitions": { + "AttributeName": { + "maxLength": 255, + "minLength": 0, + "pattern": "^[a-zA-Z_0-9- \\t]*$", + "type": "string" + }, "EntityName": { "maxLength": 255, "minLength": 1, @@ -15,12 +21,16 @@ "properties": { "IdMappingType": { "enum": [ - "PROVIDER" + "PROVIDER", + "RULE_BASED" ], "type": "string" }, "ProviderProperties": { "$ref": "#/definitions/NamespaceProviderProperties" + }, + "RuleBasedProperties": { + "$ref": "#/definitions/NamespaceRuleBasedProperties" } }, "required": [ @@ -65,12 +75,87 @@ ], "type": "object" }, + "NamespaceRuleBasedProperties": { + "additionalProperties": false, + "properties": { + "AttributeMatchingModel": { + "enum": [ + "ONE_TO_ONE", + "MANY_TO_MANY" + ], + "type": "string" + }, + "RecordMatchingModels": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/RecordMatchingModel" + }, + "type": "array" + }, + "RuleDefinitionTypes": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/RuleDefinitionType" + }, + "type": "array" + }, + "Rules": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Rule" + }, + "maxItems": 25, + "minItems": 1, + "type": "array" + } + }, + "type": "object" + }, "ProviderServiceArn": { "maxLength": 255, "minLength": 20, "pattern": "^arn:(aws|aws-us-gov|aws-cn):(entityresolution):([a-z]{2}-[a-z]{1,10}-[0-9])::providerservice/([a-zA-Z0-9_-]{1,255})/([a-zA-Z0-9_-]{1,255})$", "type": "string" }, + "RecordMatchingModel": { + "enum": [ + "ONE_SOURCE_TO_ONE_TARGET", + "MANY_SOURCE_TO_ONE_TARGET" + ], + "type": "string" + }, + "Rule": { + "additionalProperties": false, + "properties": { + "MatchingKeys": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/AttributeName" + }, + "maxItems": 25, + "minItems": 1, + "type": "array" + }, + "RuleName": { + "maxLength": 255, + "minLength": 0, + "pattern": "^[a-zA-Z_0-9- \\t]*$", + "type": "string" + } + }, + "required": [ + "RuleName", + "MatchingKeys" + ], + "type": "object" + }, + "RuleDefinitionType": { + "enum": [ + "SOURCE", + "TARGET" + ], + "type": "string" + }, "Tag": { "additionalProperties": false, "properties": { diff --git a/src/cfnlint/data/schemas/providers/us_east_1/aws-entityresolution-matchingworkflow.json b/src/cfnlint/data/schemas/providers/us_east_1/aws-entityresolution-matchingworkflow.json index e9ed4d03cc..44e3a080c2 100644 --- a/src/cfnlint/data/schemas/providers/us_east_1/aws-entityresolution-matchingworkflow.json +++ b/src/cfnlint/data/schemas/providers/us_east_1/aws-entityresolution-matchingworkflow.json @@ -140,12 +140,7 @@ "$ref": "#/definitions/ProviderProperties" }, "ResolutionType": { - "enum": [ - "RULE_MATCHING", - "ML_MATCHING", - "PROVIDER" - ], - "type": "string" + "$ref": "#/definitions/ResolutionType" }, "RuleBasedProperties": { "$ref": "#/definitions/RuleBasedProperties" @@ -153,6 +148,14 @@ }, "type": "object" }, + "ResolutionType": { + "enum": [ + "RULE_MATCHING", + "ML_MATCHING", + "PROVIDER" + ], + "type": "string" + }, "Rule": { "additionalProperties": false, "properties": { @@ -188,6 +191,13 @@ ], "type": "string" }, + "MatchPurpose": { + "enum": [ + "IDENTIFIER_GENERATION", + "INDEXING" + ], + "type": "string" + }, "Rules": { "insertionOrder": false, "items": { diff --git a/src/cfnlint/data/schemas/providers/us_east_1/aws-entityresolution-schemamapping.json b/src/cfnlint/data/schemas/providers/us_east_1/aws-entityresolution-schemamapping.json index 86f30d9cd6..98d3a7dc74 100644 --- a/src/cfnlint/data/schemas/providers/us_east_1/aws-entityresolution-schemamapping.json +++ b/src/cfnlint/data/schemas/providers/us_east_1/aws-entityresolution-schemamapping.json @@ -27,6 +27,9 @@ "HasWorkflows": { "type": "boolean" }, + "Hashed": { + "type": "boolean" + }, "MappedInputFields": { "insertionOrder": false, "items": { @@ -70,6 +73,9 @@ "GroupName": { "$ref": "#/definitions/AttributeName" }, + "Hashed": { + "$ref": "#/definitions/Hashed" + }, "MatchKey": { "$ref": "#/definitions/AttributeName" }, diff --git a/src/cfnlint/data/schemas/providers/us_east_1/aws-launchwizard-deployment.json b/src/cfnlint/data/schemas/providers/us_east_1/aws-launchwizard-deployment.json new file mode 100644 index 0000000000..08a769db1b --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_east_1/aws-launchwizard-deployment.json @@ -0,0 +1,235 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/DeploymentPatternName", + "/properties/Name", + "/properties/WorkloadName" + ], + "definitions": { + "DeploymentSpecifications": { + "additionalProperties": false, + "maxProperties": 100, + "minProperties": 1, + "patternProperties": { + "^[a-zA-Z0-9-:]{3,256}$": { + "maxLength": 1500, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "DeploymentStatus": { + "enum": [ + "COMPLETED", + "CREATING", + "DELETE_IN_PROGRESS", + "DELETE_INITIATING", + "DELETE_FAILED", + "DELETED", + "FAILED", + "IN_PROGRESS", + "VALIDATING" + ], + "type": "string" + }, + "Tags": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z+-=._:/]+$", + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "launchwizard:CreateDeployment", + "launchwizard:GetDeployment", + "launchwizard:ListDeploymentEvents", + "launchwizard:ListTagsForResource", + "launchwizard:TagResource", + "ssm:GetParameter", + "ssm:PutParameter", + "ssm:DescribeParameters", + "ssm:AddTagsToResource", + "ssm:DeleteParameter", + "secretsmanager:DescribeSecret", + "secretsmanager:PutSecretValue", + "secretsmanager:CreateSecret", + "secretsmanager:TagResource", + "secretsmanager:UpdateSecret", + "resource-groups:CreateGroup", + "resource-groups:DeleteGroup", + "cloudformation:DeleteStack", + "cloudformation:DescribeStackResources", + "cloudformation:DescribeStackResource", + "cloudformation:DescribeStacks", + "cloudformation:DescribeStackEvents", + "cloudformation:CreateStack", + "cloudformation:TagResource", + "s3:PutObject", + "s3:GetObject", + "s3:CreateBucket", + "sns:ListSubscriptionsByTopic", + "sns:Publish", + "sns:ListSubscriptions", + "sns:ListTopics", + "sns:CreateTopic", + "sns:Subscribe", + "sns:Unsubscribe", + "sqs:TagQueue", + "sqs:GetQueueUrl", + "sqs:AddPermission", + "sqs:ListQueues", + "sqs:GetQueueAttributes", + "sqs:ListQueueTags", + "sqs:CreateQueue", + "sqs:SetQueueAttributes" + ], + "timeoutInMinutes": 370 + }, + "delete": { + "permissions": [ + "launchwizard:GetDeployment", + "launchwizard:DeleteDeployment", + "launchwizard:UntagResource", + "ssm:DeleteParameter", + "secretsmanager:DeleteSecret", + "resource-groups:DeleteGroup", + "cloudformation:DeleteStack", + "cloudformation:DescribeStacks", + "ssm:GetParameter", + "sns:ListSubscriptionsByTopic", + "sns:Publish", + "sns:ListSubscriptions", + "sns:ListTopics", + "sns:CreateTopic", + "sns:DeleteTopic", + "sns:Subscribe", + "sns:Unsubscribe", + "sqs:GetQueueUrl", + "sqs:ListQueues", + "sqs:DeleteQueue", + "sqs:GetQueueAttributes", + "sqs:ListQueueTags" + ] + }, + "list": { + "permissions": [ + "launchwizard:ListDeployments", + "launchwizard:ListTagsForResource" + ] + }, + "read": { + "permissions": [ + "launchwizard:GetDeployment", + "launchwizard:ListDeploymentEvents", + "launchwizard:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "launchwizard:GetDeployment", + "launchwizard:ListTagsForResource", + "launchwizard:TagResource", + "launchwizard:UntagResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "pattern": "^arn:aws(-cn|-us-gov)?:launchwizard:[a-z0-9-]+:[0-9]{12}:deployment/([0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})$", + "type": "string" + }, + "CreatedAt": { + "format": "date-time", + "type": "string" + }, + "DeletedAt": { + "format": "date-time", + "type": "string" + }, + "DeploymentId": { + "maxLength": 128, + "minLength": 2, + "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$", + "type": "string" + }, + "DeploymentPatternName": { + "maxLength": 256, + "minLength": 1, + "pattern": "^[A-Za-z0-9][a-zA-Z0-9-]*$", + "type": "string" + }, + "Name": { + "maxLength": 50, + "minLength": 1, + "pattern": "^[A-Za-z0-9_\\s\\.-]+$", + "type": "string" + }, + "ResourceGroup": { + "type": "string" + }, + "Specifications": { + "$ref": "#/definitions/DeploymentSpecifications" + }, + "Status": { + "$ref": "#/definitions/DeploymentStatus" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tags" + }, + "type": "array" + }, + "WorkloadName": { + "maxLength": 100, + "minLength": 1, + "pattern": "^[A-Za-z][a-zA-Z0-9-_]*$", + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/CreatedAt", + "/properties/DeletedAt", + "/properties/DeploymentId", + "/properties/ResourceGroup", + "/properties/Status" + ], + "required": [ + "DeploymentPatternName", + "Name", + "Specifications", + "WorkloadName" + ], + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::LaunchWizard::Deployment", + "writeOnlyProperties": [ + "/properties/Specifications" + ] +} diff --git a/src/cfnlint/data/schemas/providers/us_east_1/aws-resourcegroups-group.json b/src/cfnlint/data/schemas/providers/us_east_1/aws-resourcegroups-group.json index f9d89c1d27..bbbc372e7a 100644 --- a/src/cfnlint/data/schemas/providers/us_east_1/aws-resourcegroups-group.json +++ b/src/cfnlint/data/schemas/providers/us_east_1/aws-resourcegroups-group.json @@ -196,6 +196,10 @@ "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", "tagging": { "cloudFormationSystemTags": true, + "permissions": [ + "resource-groups:Tag", + "resource-groups:Untag" + ], "tagOnCreate": true, "tagProperty": "/properties/Tags", "tagUpdatable": true, diff --git a/src/cfnlint/data/schemas/providers/us_east_1/aws-ses-mailmanageraddoninstance.json b/src/cfnlint/data/schemas/providers/us_east_1/aws-ses-mailmanageraddoninstance.json new file mode 100644 index 0000000000..256b48cc6d --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_east_1/aws-ses-mailmanageraddoninstance.json @@ -0,0 +1,117 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/AddonSubscriptionId" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9/_\\+=\\.:@\\-]+$", + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "pattern": "^[a-zA-Z0-9/_\\+=\\.:@\\-]*$", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "ses:TagResource", + "ses:ListTagsForResource", + "ses:GetAddonInstance", + "ses:CreateAddonInstance" + ] + }, + "delete": { + "permissions": [ + "ses:GetAddonInstance", + "ses:DeleteAddonInstance" + ] + }, + "list": { + "permissions": [ + "ses:ListAddonInstances" + ] + }, + "read": { + "permissions": [ + "ses:ListTagsForResource", + "ses:GetAddonInstance" + ] + }, + "update": { + "permissions": [ + "ses:TagResource", + "ses:UntagResource", + "ses:ListTagsForResource", + "ses:GetAddonInstance" + ] + } + }, + "primaryIdentifier": [ + "/properties/AddonInstanceId" + ], + "properties": { + "AddonInstanceArn": { + "type": "string" + }, + "AddonInstanceId": { + "maxLength": 67, + "minLength": 4, + "pattern": "^ai-[a-zA-Z0-9]{1,64}$", + "type": "string" + }, + "AddonName": { + "type": "string" + }, + "AddonSubscriptionId": { + "maxLength": 67, + "minLength": 4, + "pattern": "^as-[a-zA-Z0-9]{1,64}$", + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/AddonInstanceArn", + "/properties/AddonInstanceId", + "/properties/AddonName" + ], + "required": [ + "AddonSubscriptionId" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-ses-mailmanager", + "tagging": { + "cloudFormationSystemTags": true, + "permissions": [ + "ses:TagResource", + "ses:UntagResource" + ], + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::SES::MailManagerAddonInstance" +} diff --git a/src/cfnlint/data/schemas/providers/us_east_1/aws-ses-mailmanageraddonsubscription.json b/src/cfnlint/data/schemas/providers/us_east_1/aws-ses-mailmanageraddonsubscription.json new file mode 100644 index 0000000000..6d8f68bd77 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_east_1/aws-ses-mailmanageraddonsubscription.json @@ -0,0 +1,110 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/AddonName" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9/_\\+=\\.:@\\-]+$", + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "pattern": "^[a-zA-Z0-9/_\\+=\\.:@\\-]*$", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "ses:TagResource", + "ses:ListTagsForResource", + "ses:GetAddonSubscription", + "ses:CreateAddonSubscription" + ] + }, + "delete": { + "permissions": [ + "ses:GetAddonSubscription", + "ses:DeleteAddonSubscription" + ] + }, + "list": { + "permissions": [ + "ses:ListAddonSubscriptions" + ] + }, + "read": { + "permissions": [ + "ses:ListTagsForResource", + "ses:GetAddonSubscription" + ] + }, + "update": { + "permissions": [ + "ses:TagResource", + "ses:UntagResource", + "ses:ListTagsForResource", + "ses:GetAddonSubscription" + ] + } + }, + "primaryIdentifier": [ + "/properties/AddonSubscriptionId" + ], + "properties": { + "AddonName": { + "type": "string" + }, + "AddonSubscriptionArn": { + "type": "string" + }, + "AddonSubscriptionId": { + "maxLength": 67, + "minLength": 4, + "pattern": "^as-[a-zA-Z0-9]{1,64}$", + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/AddonSubscriptionArn", + "/properties/AddonSubscriptionId" + ], + "required": [ + "AddonName" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-ses-mailmanager", + "tagging": { + "cloudFormationSystemTags": true, + "permissions": [ + "ses:TagResource", + "ses:UntagResource" + ], + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::SES::MailManagerAddonSubscription" +} diff --git a/src/cfnlint/data/schemas/providers/us_east_1/aws-ses-mailmanagerarchive.json b/src/cfnlint/data/schemas/providers/us_east_1/aws-ses-mailmanagerarchive.json new file mode 100644 index 0000000000..551d679a08 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_east_1/aws-ses-mailmanagerarchive.json @@ -0,0 +1,169 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/KmsKeyArn" + ], + "definitions": { + "ArchiveRetention": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "RetentionPeriod": { + "$ref": "#/definitions/RetentionPeriod" + } + }, + "required": [ + "RetentionPeriod" + ], + "title": "RetentionPeriod", + "type": "object" + } + ] + }, + "ArchiveState": { + "enum": [ + "ACTIVE", + "PENDING_DELETION" + ], + "type": "string" + }, + "RetentionPeriod": { + "enum": [ + "THREE_MONTHS", + "SIX_MONTHS", + "NINE_MONTHS", + "ONE_YEAR", + "EIGHTEEN_MONTHS", + "TWO_YEARS", + "THIRTY_MONTHS", + "THREE_YEARS", + "FOUR_YEARS", + "FIVE_YEARS", + "SIX_YEARS", + "SEVEN_YEARS", + "EIGHT_YEARS", + "NINE_YEARS", + "TEN_YEARS", + "PERMANENT" + ], + "type": "string" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9/_\\+=\\.:@\\-]+$", + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "pattern": "^[a-zA-Z0-9/_\\+=\\.:@\\-]*$", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "ses:TagResource", + "ses:ListTagsForResource", + "ses:GetArchive", + "ses:CreateArchive", + "kms:DescribeKey", + "kms:Decrypt", + "kms:GenerateDataKey" + ] + }, + "delete": { + "permissions": [ + "ses:GetArchive", + "ses:DeleteArchive" + ] + }, + "list": { + "permissions": [ + "ses:ListArchives" + ] + }, + "read": { + "permissions": [ + "ses:ListTagsForResource", + "ses:GetArchive" + ] + }, + "update": { + "permissions": [ + "ses:TagResource", + "ses:UntagResource", + "ses:ListTagsForResource", + "ses:GetArchive", + "ses:UpdateArchive" + ] + } + }, + "primaryIdentifier": [ + "/properties/ArchiveId" + ], + "properties": { + "ArchiveArn": { + "type": "string" + }, + "ArchiveId": { + "maxLength": 66, + "minLength": 1, + "type": "string" + }, + "ArchiveName": { + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_-]*[a-zA-Z0-9]$", + "type": "string" + }, + "ArchiveState": { + "$ref": "#/definitions/ArchiveState" + }, + "KmsKeyArn": { + "pattern": "^arn:aws(|-cn|-us-gov):kms:[a-z0-9-]{1,20}:[0-9]{12}:(key|alias)/.+$", + "type": "string" + }, + "Retention": { + "$ref": "#/definitions/ArchiveRetention" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/ArchiveArn", + "/properties/ArchiveId", + "/properties/ArchiveState" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-ses-mailmanager", + "tagging": { + "cloudFormationSystemTags": true, + "permissions": [ + "ses:TagResource", + "ses:UntagResource" + ], + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::SES::MailManagerArchive" +} diff --git a/src/cfnlint/data/schemas/providers/us_east_1/aws-ses-mailmanageringresspoint.json b/src/cfnlint/data/schemas/providers/us_east_1/aws-ses-mailmanageringresspoint.json new file mode 100644 index 0000000000..0b9483d753 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_east_1/aws-ses-mailmanageringresspoint.json @@ -0,0 +1,205 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Type" + ], + "definitions": { + "IngressPointConfiguration": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "SmtpPassword": { + "maxLength": 64, + "minLength": 8, + "pattern": "^[A-Za-z0-9!@#$%^&*()_+\\-=\\[\\]{}|.,?]+$", + "type": "string" + } + }, + "required": [ + "SmtpPassword" + ], + "title": "SmtpPassword", + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "SecretArn": { + "pattern": "^arn:(aws|aws-cn|aws-us-gov):secretsmanager:[a-z0-9-]+:\\d{12}:secret:[a-zA-Z0-9/_+=,.@-]+$", + "type": "string" + } + }, + "required": [ + "SecretArn" + ], + "title": "SecretArn", + "type": "object" + } + ] + }, + "IngressPointStatus": { + "enum": [ + "PROVISIONING", + "DEPROVISIONING", + "UPDATING", + "ACTIVE", + "CLOSED", + "FAILED" + ], + "type": "string" + }, + "IngressPointStatusToUpdate": { + "enum": [ + "ACTIVE", + "CLOSED" + ], + "type": "string" + }, + "IngressPointType": { + "enum": [ + "OPEN", + "AUTH" + ], + "type": "string" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9/_\\+=\\.:@\\-]+$", + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "pattern": "^[a-zA-Z0-9/_\\+=\\.:@\\-]*$", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "ses:TagResource", + "ses:ListTagsForResource", + "ses:GetIngressPoint", + "ses:CreateIngressPoint", + "iam:CreateServiceLinkedRole" + ] + }, + "delete": { + "permissions": [ + "ses:GetIngressPoint", + "ses:DeleteIngressPoint" + ] + }, + "list": { + "permissions": [ + "ses:ListIngressPoints" + ] + }, + "read": { + "permissions": [ + "ses:ListTagsForResource", + "ses:GetIngressPoint" + ] + }, + "update": { + "permissions": [ + "ses:TagResource", + "ses:UntagResource", + "ses:ListTagsForResource", + "ses:GetIngressPoint", + "ses:UpdateIngressPoint" + ] + } + }, + "primaryIdentifier": [ + "/properties/IngressPointId" + ], + "properties": { + "ARecord": { + "type": "string" + }, + "IngressPointArn": { + "type": "string" + }, + "IngressPointConfiguration": { + "$ref": "#/definitions/IngressPointConfiguration" + }, + "IngressPointId": { + "maxLength": 100, + "minLength": 1, + "type": "string" + }, + "IngressPointName": { + "maxLength": 63, + "minLength": 3, + "pattern": "^[A-Za-z0-9_\\-]+$", + "type": "string" + }, + "RuleSetId": { + "maxLength": 100, + "minLength": 1, + "type": "string" + }, + "Status": { + "$ref": "#/definitions/IngressPointStatus" + }, + "StatusToUpdate": { + "$ref": "#/definitions/IngressPointStatusToUpdate" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "TrafficPolicyId": { + "maxLength": 100, + "minLength": 1, + "type": "string" + }, + "Type": { + "$ref": "#/definitions/IngressPointType" + } + }, + "readOnlyProperties": [ + "/properties/IngressPointId", + "/properties/IngressPointArn", + "/properties/Status", + "/properties/ARecord" + ], + "required": [ + "Type", + "TrafficPolicyId", + "RuleSetId" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-ses-mailmanager", + "tagging": { + "cloudFormationSystemTags": true, + "permissions": [ + "ses:TagResource", + "ses:UntagResource" + ], + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::SES::MailManagerIngressPoint", + "writeOnlyProperties": [ + "/properties/IngressPointConfiguration" + ] +} diff --git a/src/cfnlint/data/schemas/providers/us_east_1/aws-ses-mailmanagerrelay.json b/src/cfnlint/data/schemas/providers/us_east_1/aws-ses-mailmanagerrelay.json new file mode 100644 index 0000000000..cde881dba6 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_east_1/aws-ses-mailmanagerrelay.json @@ -0,0 +1,162 @@ +{ + "additionalProperties": false, + "definitions": { + "NoAuthentication": { + "additionalProperties": false, + "type": "object" + }, + "RelayAuthentication": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "SecretArn": { + "pattern": "^arn:(aws|aws-cn|aws-us-gov):secretsmanager:[a-z0-9-]+:\\d{12}:secret:[a-zA-Z0-9/_+=,.@-]+$", + "type": "string" + } + }, + "required": [ + "SecretArn" + ], + "title": "SecretArn", + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "NoAuthentication": { + "$ref": "#/definitions/NoAuthentication" + } + }, + "required": [ + "NoAuthentication" + ], + "title": "NoAuthentication", + "type": "object" + } + ] + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9/_\\+=\\.:@\\-]+$", + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "pattern": "^[a-zA-Z0-9/_\\+=\\.:@\\-]*$", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "ses:TagResource", + "ses:ListTagsForResource", + "ses:GetRelay", + "ses:CreateRelay" + ] + }, + "delete": { + "permissions": [ + "ses:GetRelay", + "ses:DeleteRelay" + ] + }, + "list": { + "permissions": [ + "ses:ListRelays" + ] + }, + "read": { + "permissions": [ + "ses:ListTagsForResource", + "ses:GetRelay" + ] + }, + "update": { + "permissions": [ + "ses:TagResource", + "ses:UntagResource", + "ses:ListTagsForResource", + "ses:GetRelay", + "ses:UpdateRelay" + ] + } + }, + "primaryIdentifier": [ + "/properties/RelayId" + ], + "properties": { + "Authentication": { + "$ref": "#/definitions/RelayAuthentication" + }, + "RelayArn": { + "type": "string" + }, + "RelayId": { + "maxLength": 100, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-]+$", + "type": "string" + }, + "RelayName": { + "maxLength": 100, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-_]+$", + "type": "string" + }, + "ServerName": { + "maxLength": 100, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-\\.]+$", + "type": "string" + }, + "ServerPort": { + "maximum": 65535, + "minimum": 1, + "type": "number" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/RelayArn", + "/properties/RelayId" + ], + "required": [ + "Authentication", + "ServerName", + "ServerPort" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-ses-mailmanager", + "tagging": { + "cloudFormationSystemTags": true, + "permissions": [ + "ses:TagResource", + "ses:UntagResource" + ], + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::SES::MailManagerRelay" +} diff --git a/src/cfnlint/data/schemas/providers/us_east_1/aws-ses-mailmanagerruleset.json b/src/cfnlint/data/schemas/providers/us_east_1/aws-ses-mailmanagerruleset.json new file mode 100644 index 0000000000..e6afcb8a01 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_east_1/aws-ses-mailmanagerruleset.json @@ -0,0 +1,884 @@ +{ + "additionalProperties": false, + "definitions": { + "ActionFailurePolicy": { + "enum": [ + "CONTINUE", + "DROP" + ], + "type": "string" + }, + "AddHeaderAction": { + "additionalProperties": false, + "properties": { + "HeaderName": { + "maxLength": 64, + "minLength": 1, + "pattern": "^[xX]\\-[a-zA-Z0-9\\-]+$", + "type": "string" + }, + "HeaderValue": { + "maxLength": 128, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "HeaderName", + "HeaderValue" + ], + "type": "object" + }, + "Analysis": { + "additionalProperties": false, + "properties": { + "Analyzer": { + "pattern": "^[a-zA-Z0-9:_/+=,@.#-]+$", + "type": "string" + }, + "ResultField": { + "maxLength": 256, + "minLength": 1, + "pattern": "^[\\sa-zA-Z0-9_]+$", + "type": "string" + } + }, + "required": [ + "Analyzer", + "ResultField" + ], + "type": "object" + }, + "ArchiveAction": { + "additionalProperties": false, + "properties": { + "ActionFailurePolicy": { + "$ref": "#/definitions/ActionFailurePolicy" + }, + "TargetArchive": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^[a-zA-Z0-9:_/+=,@.#-]+$", + "type": "string" + } + }, + "required": [ + "TargetArchive" + ], + "type": "object" + }, + "DeliverToMailboxAction": { + "additionalProperties": false, + "properties": { + "ActionFailurePolicy": { + "$ref": "#/definitions/ActionFailurePolicy" + }, + "MailboxArn": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^[a-zA-Z0-9:_/+=,@.#-]+$", + "type": "string" + }, + "RoleArn": { + "maxLength": 2048, + "minLength": 20, + "pattern": "^[a-zA-Z0-9:_/+=,@.#-]+$", + "type": "string" + } + }, + "required": [ + "MailboxArn", + "RoleArn" + ], + "type": "object" + }, + "DropAction": { + "additionalProperties": false, + "type": "object" + }, + "MailFrom": { + "enum": [ + "REPLACE", + "PRESERVE" + ], + "type": "string" + }, + "RelayAction": { + "additionalProperties": false, + "properties": { + "ActionFailurePolicy": { + "$ref": "#/definitions/ActionFailurePolicy" + }, + "MailFrom": { + "$ref": "#/definitions/MailFrom" + }, + "Relay": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^[a-zA-Z0-9:_/+=,@.#-]+$", + "type": "string" + } + }, + "required": [ + "Relay" + ], + "type": "object" + }, + "ReplaceRecipientAction": { + "additionalProperties": false, + "properties": { + "ReplaceWith": { + "items": { + "maxLength": 254, + "minLength": 0, + "pattern": "^[0-9A-Za-z@+.-]+$", + "type": "string" + }, + "maxItems": 100, + "minItems": 1, + "type": "array", + "uniqueItems": true + } + }, + "type": "object" + }, + "Rule": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/RuleAction" + }, + "maxItems": 10, + "minItems": 1, + "type": "array" + }, + "Conditions": { + "items": { + "$ref": "#/definitions/RuleCondition" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + }, + "Name": { + "maxLength": 32, + "minLength": 1, + "pattern": "^[a-zA-Z0-9_.-]+$", + "type": "string" + }, + "Unless": { + "items": { + "$ref": "#/definitions/RuleCondition" + }, + "maxItems": 10, + "minItems": 0, + "type": "array" + } + }, + "required": [ + "Actions" + ], + "type": "object" + }, + "RuleAction": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "Drop": { + "$ref": "#/definitions/DropAction" + } + }, + "required": [ + "Drop" + ], + "title": "Drop", + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "Relay": { + "$ref": "#/definitions/RelayAction" + } + }, + "required": [ + "Relay" + ], + "title": "Relay", + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "Archive": { + "$ref": "#/definitions/ArchiveAction" + } + }, + "required": [ + "Archive" + ], + "title": "Archive", + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "WriteToS3": { + "$ref": "#/definitions/S3Action" + } + }, + "required": [ + "WriteToS3" + ], + "title": "WriteToS3", + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "Send": { + "$ref": "#/definitions/SendAction" + } + }, + "required": [ + "Send" + ], + "title": "Send", + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "AddHeader": { + "$ref": "#/definitions/AddHeaderAction" + } + }, + "required": [ + "AddHeader" + ], + "title": "AddHeader", + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "ReplaceRecipient": { + "$ref": "#/definitions/ReplaceRecipientAction" + } + }, + "required": [ + "ReplaceRecipient" + ], + "title": "ReplaceRecipient", + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "DeliverToMailbox": { + "$ref": "#/definitions/DeliverToMailboxAction" + } + }, + "required": [ + "DeliverToMailbox" + ], + "title": "DeliverToMailbox", + "type": "object" + } + ] + }, + "RuleBooleanEmailAttribute": { + "enum": [ + "READ_RECEIPT_REQUESTED", + "TLS", + "TLS_WRAPPED" + ], + "type": "string" + }, + "RuleBooleanExpression": { + "additionalProperties": false, + "properties": { + "Evaluate": { + "$ref": "#/definitions/RuleBooleanToEvaluate" + }, + "Operator": { + "$ref": "#/definitions/RuleBooleanOperator" + } + }, + "required": [ + "Evaluate", + "Operator" + ], + "type": "object" + }, + "RuleBooleanOperator": { + "enum": [ + "IS_TRUE", + "IS_FALSE" + ], + "type": "string" + }, + "RuleBooleanToEvaluate": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "Attribute": { + "$ref": "#/definitions/RuleBooleanEmailAttribute" + } + }, + "required": [ + "Attribute" + ], + "title": "Attribute", + "type": "object" + } + ] + }, + "RuleCondition": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "BooleanExpression": { + "$ref": "#/definitions/RuleBooleanExpression" + } + }, + "required": [ + "BooleanExpression" + ], + "title": "BooleanExpression", + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "StringExpression": { + "$ref": "#/definitions/RuleStringExpression" + } + }, + "required": [ + "StringExpression" + ], + "title": "StringExpression", + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "NumberExpression": { + "$ref": "#/definitions/RuleNumberExpression" + } + }, + "required": [ + "NumberExpression" + ], + "title": "NumberExpression", + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "IpExpression": { + "$ref": "#/definitions/RuleIpExpression" + } + }, + "required": [ + "IpExpression" + ], + "title": "IpExpression", + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "VerdictExpression": { + "$ref": "#/definitions/RuleVerdictExpression" + } + }, + "required": [ + "VerdictExpression" + ], + "title": "VerdictExpression", + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "DmarcExpression": { + "$ref": "#/definitions/RuleDmarcExpression" + } + }, + "required": [ + "DmarcExpression" + ], + "title": "DmarcExpression", + "type": "object" + } + ] + }, + "RuleDmarcExpression": { + "additionalProperties": false, + "properties": { + "Operator": { + "$ref": "#/definitions/RuleDmarcOperator" + }, + "Values": { + "items": { + "$ref": "#/definitions/RuleDmarcPolicy" + }, + "maxItems": 10, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "Operator", + "Values" + ], + "type": "object" + }, + "RuleDmarcOperator": { + "enum": [ + "EQUALS", + "NOT_EQUALS" + ], + "type": "string" + }, + "RuleDmarcPolicy": { + "enum": [ + "NONE", + "QUARANTINE", + "REJECT" + ], + "type": "string" + }, + "RuleIpEmailAttribute": { + "enum": [ + "SOURCE_IP" + ], + "type": "string" + }, + "RuleIpExpression": { + "additionalProperties": false, + "properties": { + "Evaluate": { + "$ref": "#/definitions/RuleIpToEvaluate" + }, + "Operator": { + "$ref": "#/definitions/RuleIpOperator" + }, + "Values": { + "items": { + "maxLength": 18, + "minLength": 1, + "pattern": "^(([0-9]|.|/)*)$", + "type": "string" + }, + "maxItems": 10, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "Evaluate", + "Operator", + "Values" + ], + "type": "object" + }, + "RuleIpOperator": { + "enum": [ + "CIDR_MATCHES", + "NOT_CIDR_MATCHES" + ], + "type": "string" + }, + "RuleIpToEvaluate": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "Attribute": { + "$ref": "#/definitions/RuleIpEmailAttribute" + } + }, + "required": [ + "Attribute" + ], + "title": "Attribute", + "type": "object" + } + ] + }, + "RuleNumberEmailAttribute": { + "enum": [ + "MESSAGE_SIZE" + ], + "type": "string" + }, + "RuleNumberExpression": { + "additionalProperties": false, + "properties": { + "Evaluate": { + "$ref": "#/definitions/RuleNumberToEvaluate" + }, + "Operator": { + "$ref": "#/definitions/RuleNumberOperator" + }, + "Value": { + "type": "number" + } + }, + "required": [ + "Evaluate", + "Operator", + "Value" + ], + "type": "object" + }, + "RuleNumberOperator": { + "enum": [ + "EQUALS", + "NOT_EQUALS", + "LESS_THAN", + "GREATER_THAN", + "LESS_THAN_OR_EQUAL", + "GREATER_THAN_OR_EQUAL" + ], + "type": "string" + }, + "RuleNumberToEvaluate": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "Attribute": { + "$ref": "#/definitions/RuleNumberEmailAttribute" + } + }, + "required": [ + "Attribute" + ], + "title": "Attribute", + "type": "object" + } + ] + }, + "RuleStringEmailAttribute": { + "enum": [ + "MAIL_FROM", + "HELO", + "RECIPIENT", + "SENDER", + "FROM", + "SUBJECT", + "TO", + "CC" + ], + "type": "string" + }, + "RuleStringExpression": { + "additionalProperties": false, + "properties": { + "Evaluate": { + "$ref": "#/definitions/RuleStringToEvaluate" + }, + "Operator": { + "$ref": "#/definitions/RuleStringOperator" + }, + "Values": { + "items": { + "maxLength": 4096, + "minLength": 1, + "type": "string" + }, + "maxItems": 10, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "Evaluate", + "Operator", + "Values" + ], + "type": "object" + }, + "RuleStringOperator": { + "enum": [ + "EQUALS", + "NOT_EQUALS", + "STARTS_WITH", + "ENDS_WITH", + "CONTAINS" + ], + "type": "string" + }, + "RuleStringToEvaluate": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "Attribute": { + "$ref": "#/definitions/RuleStringEmailAttribute" + } + }, + "required": [ + "Attribute" + ], + "title": "Attribute", + "type": "object" + } + ] + }, + "RuleVerdict": { + "enum": [ + "PASS", + "FAIL", + "GRAY", + "PROCESSING_FAILED" + ], + "type": "string" + }, + "RuleVerdictAttribute": { + "enum": [ + "SPF", + "DKIM" + ], + "type": "string" + }, + "RuleVerdictExpression": { + "additionalProperties": false, + "properties": { + "Evaluate": { + "$ref": "#/definitions/RuleVerdictToEvaluate" + }, + "Operator": { + "$ref": "#/definitions/RuleVerdictOperator" + }, + "Values": { + "items": { + "$ref": "#/definitions/RuleVerdict" + }, + "maxItems": 10, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "Evaluate", + "Operator", + "Values" + ], + "type": "object" + }, + "RuleVerdictOperator": { + "enum": [ + "EQUALS", + "NOT_EQUALS" + ], + "type": "string" + }, + "RuleVerdictToEvaluate": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "Attribute": { + "$ref": "#/definitions/RuleVerdictAttribute" + } + }, + "required": [ + "Attribute" + ], + "title": "Attribute", + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "Analysis": { + "$ref": "#/definitions/Analysis" + } + }, + "required": [ + "Analysis" + ], + "title": "Analysis", + "type": "object" + } + ] + }, + "S3Action": { + "additionalProperties": false, + "properties": { + "ActionFailurePolicy": { + "$ref": "#/definitions/ActionFailurePolicy" + }, + "RoleArn": { + "maxLength": 2048, + "minLength": 20, + "pattern": "^[a-zA-Z0-9:_/+=,@.#-]+$", + "type": "string" + }, + "S3Bucket": { + "maxLength": 62, + "minLength": 1, + "pattern": "^[a-zA-Z0-9.-]+$", + "type": "string" + }, + "S3Prefix": { + "maxLength": 62, + "minLength": 1, + "pattern": "^[a-zA-Z0-9!_.*'()/-]+$", + "type": "string" + }, + "S3SseKmsKeyId": { + "maxLength": 2048, + "minLength": 20, + "pattern": "^[a-zA-Z0-9-:/]+$", + "type": "string" + } + }, + "required": [ + "RoleArn", + "S3Bucket" + ], + "type": "object" + }, + "SendAction": { + "additionalProperties": false, + "properties": { + "ActionFailurePolicy": { + "$ref": "#/definitions/ActionFailurePolicy" + }, + "RoleArn": { + "maxLength": 2048, + "minLength": 20, + "pattern": "^[a-zA-Z0-9:_/+=,@.#-]+$", + "type": "string" + } + }, + "required": [ + "RoleArn" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9/_\\+=\\.:@\\-]+$", + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "pattern": "^[a-zA-Z0-9/_\\+=\\.:@\\-]*$", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "ses:TagResource", + "ses:ListTagsForResource", + "ses:GetRuleSet", + "ses:CreateRuleSet" + ] + }, + "delete": { + "permissions": [ + "ses:GetRuleSet", + "ses:DeleteRuleSet" + ] + }, + "list": { + "permissions": [ + "ses:ListRuleSets" + ] + }, + "read": { + "permissions": [ + "ses:ListTagsForResource", + "ses:GetRuleSet" + ] + }, + "update": { + "permissions": [ + "ses:TagResource", + "ses:UntagResource", + "ses:ListTagsForResource", + "ses:GetRuleSet", + "ses:UpdateRuleSet" + ] + } + }, + "primaryIdentifier": [ + "/properties/RuleSetId" + ], + "properties": { + "RuleSetArn": { + "type": "string" + }, + "RuleSetId": { + "maxLength": 100, + "minLength": 1, + "type": "string" + }, + "RuleSetName": { + "maxLength": 100, + "minLength": 1, + "pattern": "^[a-zA-Z0-9_.-]+$", + "type": "string" + }, + "Rules": { + "items": { + "$ref": "#/definitions/Rule" + }, + "maxItems": 40, + "minItems": 0, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + } + }, + "readOnlyProperties": [ + "/properties/RuleSetArn", + "/properties/RuleSetId" + ], + "required": [ + "Rules" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-ses-mailmanager", + "tagging": { + "cloudFormationSystemTags": true, + "permissions": [ + "ses:TagResource", + "ses:UntagResource" + ], + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::SES::MailManagerRuleSet" +} diff --git a/src/cfnlint/data/schemas/providers/us_east_1/aws-ses-mailmanagertrafficpolicy.json b/src/cfnlint/data/schemas/providers/us_east_1/aws-ses-mailmanagertrafficpolicy.json new file mode 100644 index 0000000000..eafc8ec637 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_east_1/aws-ses-mailmanagertrafficpolicy.json @@ -0,0 +1,434 @@ +{ + "additionalProperties": false, + "definitions": { + "AcceptAction": { + "enum": [ + "ALLOW", + "DENY" + ], + "type": "string" + }, + "IngressAnalysis": { + "additionalProperties": false, + "properties": { + "Analyzer": { + "pattern": "^[a-zA-Z0-9:_/+=,@.#-]+$", + "type": "string" + }, + "ResultField": { + "maxLength": 256, + "minLength": 1, + "pattern": "^[\\sa-zA-Z0-9_]+$", + "type": "string" + } + }, + "required": [ + "Analyzer", + "ResultField" + ], + "type": "object" + }, + "IngressBooleanExpression": { + "additionalProperties": false, + "properties": { + "Evaluate": { + "$ref": "#/definitions/IngressBooleanToEvaluate" + }, + "Operator": { + "$ref": "#/definitions/IngressBooleanOperator" + } + }, + "required": [ + "Evaluate", + "Operator" + ], + "type": "object" + }, + "IngressBooleanOperator": { + "enum": [ + "IS_TRUE", + "IS_FALSE" + ], + "type": "string" + }, + "IngressBooleanToEvaluate": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "Analysis": { + "$ref": "#/definitions/IngressAnalysis" + } + }, + "required": [ + "Analysis" + ], + "title": "Analysis", + "type": "object" + } + ] + }, + "IngressIpOperator": { + "enum": [ + "CIDR_MATCHES", + "NOT_CIDR_MATCHES" + ], + "type": "string" + }, + "IngressIpToEvaluate": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "Attribute": { + "$ref": "#/definitions/IngressIpv4Attribute" + } + }, + "required": [ + "Attribute" + ], + "title": "Attribute", + "type": "object" + } + ] + }, + "IngressIpv4Attribute": { + "enum": [ + "SENDER_IP" + ], + "type": "string" + }, + "IngressIpv4Expression": { + "additionalProperties": false, + "properties": { + "Evaluate": { + "$ref": "#/definitions/IngressIpToEvaluate" + }, + "Operator": { + "$ref": "#/definitions/IngressIpOperator" + }, + "Values": { + "items": { + "pattern": "^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)/([0-9]|[12][0-9]|3[0-2])$", + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "Evaluate", + "Operator", + "Values" + ], + "type": "object" + }, + "IngressStringEmailAttribute": { + "enum": [ + "RECIPIENT" + ], + "type": "string" + }, + "IngressStringExpression": { + "additionalProperties": false, + "properties": { + "Evaluate": { + "$ref": "#/definitions/IngressStringToEvaluate" + }, + "Operator": { + "$ref": "#/definitions/IngressStringOperator" + }, + "Values": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "Evaluate", + "Operator", + "Values" + ], + "type": "object" + }, + "IngressStringOperator": { + "enum": [ + "EQUALS", + "NOT_EQUALS", + "STARTS_WITH", + "ENDS_WITH", + "CONTAINS" + ], + "type": "string" + }, + "IngressStringToEvaluate": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "Attribute": { + "$ref": "#/definitions/IngressStringEmailAttribute" + } + }, + "required": [ + "Attribute" + ], + "title": "Attribute", + "type": "object" + } + ] + }, + "IngressTlsAttribute": { + "enum": [ + "TLS_PROTOCOL" + ], + "type": "string" + }, + "IngressTlsProtocolAttribute": { + "enum": [ + "TLS1_2", + "TLS1_3" + ], + "type": "string" + }, + "IngressTlsProtocolExpression": { + "additionalProperties": false, + "properties": { + "Evaluate": { + "$ref": "#/definitions/IngressTlsProtocolToEvaluate" + }, + "Operator": { + "$ref": "#/definitions/IngressTlsProtocolOperator" + }, + "Value": { + "$ref": "#/definitions/IngressTlsProtocolAttribute" + } + }, + "required": [ + "Evaluate", + "Operator", + "Value" + ], + "type": "object" + }, + "IngressTlsProtocolOperator": { + "enum": [ + "MINIMUM_TLS_VERSION", + "IS" + ], + "type": "string" + }, + "IngressTlsProtocolToEvaluate": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "Attribute": { + "$ref": "#/definitions/IngressTlsAttribute" + } + }, + "required": [ + "Attribute" + ], + "title": "Attribute", + "type": "object" + } + ] + }, + "PolicyCondition": { + "oneOf": [ + { + "additionalProperties": false, + "properties": { + "StringExpression": { + "$ref": "#/definitions/IngressStringExpression" + } + }, + "required": [ + "StringExpression" + ], + "title": "StringExpression", + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "IpExpression": { + "$ref": "#/definitions/IngressIpv4Expression" + } + }, + "required": [ + "IpExpression" + ], + "title": "IpExpression", + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "TlsExpression": { + "$ref": "#/definitions/IngressTlsProtocolExpression" + } + }, + "required": [ + "TlsExpression" + ], + "title": "TlsExpression", + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "BooleanExpression": { + "$ref": "#/definitions/IngressBooleanExpression" + } + }, + "required": [ + "BooleanExpression" + ], + "title": "BooleanExpression", + "type": "object" + } + ] + }, + "PolicyStatement": { + "additionalProperties": false, + "properties": { + "Action": { + "$ref": "#/definitions/AcceptAction" + }, + "Conditions": { + "items": { + "$ref": "#/definitions/PolicyCondition" + }, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "Action", + "Conditions" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[a-zA-Z0-9/_\\+=\\.:@\\-]+$", + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "pattern": "^[a-zA-Z0-9/_\\+=\\.:@\\-]*$", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "ses:TagResource", + "ses:ListTagsForResource", + "ses:GetTrafficPolicy", + "ses:CreateTrafficPolicy" + ] + }, + "delete": { + "permissions": [ + "ses:GetTrafficPolicy", + "ses:DeleteTrafficPolicy" + ] + }, + "list": { + "permissions": [ + "ses:ListTrafficPolicies" + ] + }, + "read": { + "permissions": [ + "ses:ListTagsForResource", + "ses:GetTrafficPolicy" + ] + }, + "update": { + "permissions": [ + "ses:TagResource", + "ses:UntagResource", + "ses:ListTagsForResource", + "ses:GetTrafficPolicy", + "ses:UpdateTrafficPolicy" + ] + } + }, + "primaryIdentifier": [ + "/properties/TrafficPolicyId" + ], + "properties": { + "DefaultAction": { + "$ref": "#/definitions/AcceptAction" + }, + "MaxMessageSizeBytes": { + "minimum": 1, + "type": "number" + }, + "PolicyStatements": { + "items": { + "$ref": "#/definitions/PolicyStatement" + }, + "type": "array" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 200, + "minItems": 0, + "type": "array" + }, + "TrafficPolicyArn": { + "type": "string" + }, + "TrafficPolicyId": { + "maxLength": 100, + "minLength": 1, + "type": "string" + }, + "TrafficPolicyName": { + "maxLength": 63, + "minLength": 3, + "pattern": "^[A-Za-z0-9_\\-]+$", + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/TrafficPolicyArn", + "/properties/TrafficPolicyId" + ], + "required": [ + "DefaultAction", + "PolicyStatements" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-ses-mailmanager", + "tagging": { + "cloudFormationSystemTags": true, + "permissions": [ + "ses:TagResource", + "ses:UntagResource" + ], + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::SES::MailManagerTrafficPolicy" +} 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 65512bcb35..8cd0025580 100644 --- a/src/cfnlint/data/schemas/providers/us_east_2/__init__.py +++ b/src/cfnlint/data/schemas/providers/us_east_2/__init__.py @@ -682,6 +682,7 @@ "AWS::Lambda::Permission", "AWS::Lambda::Url", "AWS::Lambda::Version", + "AWS::LaunchWizard::Deployment", "AWS::LicenseManager::Grant", "AWS::LicenseManager::License", "AWS::Lightsail::Alarm", @@ -1306,6 +1307,7 @@ "aws-cloudwatch-alarm.json", "aws-cloudwatch-anomalydetector.json", "aws-cloudwatch-compositealarm.json", + "aws-cloudwatch-dashboard.json", "aws-cloudwatch-insightrule.json", "aws-cloudwatch-metricstream.json", "aws-codeartifact-domain.json", @@ -1791,6 +1793,7 @@ "aws-lambda-permission.json", "aws-lambda-url.json", "aws-lambda-version.json", + "aws-launchwizard-deployment.json", "aws-licensemanager-grant.json", "aws-licensemanager-license.json", "aws-lightsail-alarm.json", @@ -1875,6 +1878,7 @@ "aws-msk-serverlesscluster.json", "aws-msk-vpcconnection.json", "aws-mwaa-environment.json", + "aws-neptune-dbcluster.json", "aws-neptune-dbclusterparametergroup.json", "aws-neptune-dbinstance.json", "aws-neptune-dbparametergroup.json", @@ -1954,6 +1958,7 @@ "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", @@ -2044,7 +2049,6 @@ "aws-sagemaker-dataqualityjobdefinition.json", "aws-sagemaker-device.json", "aws-sagemaker-devicefleet.json", - "aws-sagemaker-domain.json", "aws-sagemaker-endpoint.json", "aws-sagemaker-endpointconfig.json", "aws-sagemaker-featuregroup.json", @@ -2065,7 +2069,6 @@ "aws-sagemaker-pipeline.json", "aws-sagemaker-project.json", "aws-sagemaker-space.json", - "aws-sagemaker-userprofile.json", "aws-sagemaker-workteam.json", "aws-scheduler-schedule.json", "aws-scheduler-schedulegroup.json", diff --git a/src/cfnlint/data/schemas/providers/us_east_2/aws-cloudwatch-dashboard.json b/src/cfnlint/data/schemas/providers/us_east_2/aws-cloudwatch-dashboard.json deleted file mode 100644 index 258074cf80..0000000000 --- a/src/cfnlint/data/schemas/providers/us_east_2/aws-cloudwatch-dashboard.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/DashboardName" - ], - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "DashboardBody": { - "type": "string" - }, - "DashboardName": { - "type": "string" - }, - "Id": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "DashboardBody" - ], - "typeName": "AWS::CloudWatch::Dashboard" -} diff --git a/src/cfnlint/data/schemas/providers/us_east_2/aws-neptune-dbcluster.json b/src/cfnlint/data/schemas/providers/us_east_2/aws-neptune-dbcluster.json deleted file mode 100644 index d682d355d7..0000000000 --- a/src/cfnlint/data/schemas/providers/us_east_2/aws-neptune-dbcluster.json +++ /dev/null @@ -1,292 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/AvailabilityZones", - "/properties/DBClusterIdentifier", - "/properties/DBSubnetGroupName", - "/properties/KmsKeyId", - "/properties/RestoreToTime", - "/properties/RestoreType", - "/properties/SnapshotIdentifier", - "/properties/SourceDBClusterIdentifier", - "/properties/StorageEncrypted", - "/properties/UseLatestRestorableTime" - ], - "definitions": { - "DBClusterRole": { - "additionalProperties": false, - "properties": { - "FeatureName": { - "type": "string" - }, - "RoleArn": { - "type": "string" - } - }, - "required": [ - "RoleArn" - ], - "type": "object" - }, - "ServerlessScalingConfiguration": { - "additionalProperties": false, - "properties": { - "MaxCapacity": { - "maximum": 128, - "minimum": 2.5, - "type": "number" - }, - "MinCapacity": { - "maximum": 128, - "minimum": 1, - "type": "number" - } - }, - "required": [ - "MinCapacity", - "MaxCapacity" - ], - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:CreateDBCluster", - "rds:CreateDBInstance", - "rds:DescribeDBClusters", - "rds:ListTagsForResource", - "rds:ModifyDBCluster", - "rds:RestoreDBClusterFromSnapshot", - "rds:RestoreDBClusterToPointInTime", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "rds:DeleteDBCluster", - "rds:DeleteDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeGlobalClusters", - "rds:ListTagsForResource", - "rds:RemoveFromGlobalCluster", - "rds:CreateDBClusterSnapshot", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "list": { - "permissions": [ - "rds:DescribeDBClusters", - "rds:ListTagsForResource", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "read": { - "permissions": [ - "rds:DescribeDBClusters", - "rds:ListTagsForResource", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "update": { - "permissions": [ - "ec2:DescribeSecurityGroups", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:DescribeDBClusters", - "rds:DescribeDBInstances", - "rds:DescribeDBSubnetGroups", - "rds:DescribeGlobalClusters", - "rds:ListTagsForResource", - "rds:ModifyDBCluster", - "rds:ModifyDBInstance", - "rds:RemoveFromGlobalCluster", - "rds:RemoveRoleFromDBCluster", - "rds:RemoveTagsFromResource", - "kms:*" - ], - "timeoutInMinutes": 2160 - } - }, - "primaryIdentifier": [ - "/properties/DBClusterIdentifier" - ], - "properties": { - "AssociatedRoles": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/DBClusterRole" - }, - "type": "array", - "uniqueItems": true - }, - "AvailabilityZones": { - "insertionOrder": true, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "BackupRetentionPeriod": { - "default": 1, - "minimum": 1, - "type": "integer" - }, - "ClusterResourceId": { - "type": "string" - }, - "CopyTagsToSnapshot": { - "type": "boolean" - }, - "DBClusterIdentifier": { - "maxLength": 63, - "minLength": 1, - "pattern": "^[a-zA-Z]{1}(?:-?[a-zA-Z0-9]){0,62}$", - "type": "string" - }, - "DBClusterParameterGroupName": { - "type": "string" - }, - "DBInstanceParameterGroupName": { - "type": "string" - }, - "DBPort": { - "type": "integer" - }, - "DBSubnetGroupName": { - "type": "string" - }, - "DeletionProtection": { - "type": "boolean" - }, - "EnableCloudwatchLogsExports": { - "insertionOrder": true, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "Endpoint": { - "type": "string" - }, - "EngineVersion": { - "type": "string" - }, - "IamAuthEnabled": { - "type": "boolean" - }, - "KmsKeyId": { - "type": "string" - }, - "Port": { - "type": "string" - }, - "PreferredBackupWindow": { - "type": "string" - }, - "PreferredMaintenanceWindow": { - "type": "string" - }, - "ReadEndpoint": { - "type": "string" - }, - "RestoreToTime": { - "type": "string" - }, - "RestoreType": { - "default": "full-copy", - "type": "string" - }, - "ServerlessScalingConfiguration": { - "$ref": "#/definitions/ServerlessScalingConfiguration" - }, - "SnapshotIdentifier": { - "type": "string" - }, - "SourceDBClusterIdentifier": { - "type": "string" - }, - "StorageEncrypted": { - "type": "boolean" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 50, - "type": "array", - "uniqueItems": true - }, - "UseLatestRestorableTime": { - "type": "boolean" - }, - "VpcSecurityGroupIds": { - "insertionOrder": true, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - } - }, - "propertyTransform": { - "/properties/DBClusterIdentifier": "$lowercase(DBClusterIdentifier)", - "/properties/DBClusterParameterGroupName": "$lowercase(DBClusterParameterGroupName)", - "/properties/DBSubnetGroupName": "$lowercase(DBSubnetGroupName)", - "/properties/SnapshotIdentifier": "$lowercase(SnapshotIdentifier)", - "/properties/SourceDBClusterIdentifier": "$lowercase(SourceDBClusterIdentifier)" - }, - "readOnlyProperties": [ - "/properties/Endpoint", - "/properties/ClusterResourceId", - "/properties/Port", - "/properties/ReadEndpoint" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-neptune", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Neptune::DBCluster", - "writeOnlyProperties": [ - "/properties/DBInstanceParameterGroupName", - "/properties/RestoreToTime", - "/properties/RestoreType", - "/properties/SnapshotIdentifier", - "/properties/SourceDBClusterIdentifier", - "/properties/UseLatestRestorableTime" - ] -} diff --git a/src/cfnlint/data/schemas/providers/us_east_2/aws-rds-dbcluster.json b/src/cfnlint/data/schemas/providers/us_east_2/aws-rds-dbcluster.json deleted file mode 100644 index fc3519fd59..0000000000 --- a/src/cfnlint/data/schemas/providers/us_east_2/aws-rds-dbcluster.json +++ /dev/null @@ -1,459 +0,0 @@ -{ - "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" - } - }, - "handlers": { - "create": { - "permissions": [ - "iam:CreateServiceLinkedRole", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:CreateDBCluster", - "rds:CreateDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeDBClusterSnapshots", - "rds:DescribeDBSnapshots", - "rds:DescribeEvents", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:RestoreDBClusterFromSnapshot", - "rds:RestoreDBClusterToPointInTime", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "rds:CreateDBClusterSnapshot", - "rds:DeleteDBCluster", - "rds:DeleteDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeGlobalClusters", - "rds:RemoveFromGlobalCluster" - ] - }, - "list": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "read": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "update": { - "permissions": [ - "ec2:DescribeSecurityGroups", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:DescribeDBClusters", - "rds:DescribeDBSubnetGroups", - "rds:DescribeEvents", - "rds:DescribeGlobalClusters", - "rds:DisableHttpEndpoint", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:ModifyDBInstance", - "rds:RemoveFromGlobalCluster", - "rds:RemoveRoleFromDBCluster", - "rds:RemoveTagsFromResource", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - } - }, - "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": { - "default": 0, - "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": { - "default": "default.aurora5.6", - "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": { - "default": 0, - "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": { - "default": "full-copy", - "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)) = 'aurora-postgresql' ? 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", - "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/us_east_2/aws-sagemaker-domain.json b/src/cfnlint/data/schemas/providers/us_east_2/aws-sagemaker-domain.json new file mode 100644 index 0000000000..5cd4ea45fa --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_east_2/aws-sagemaker-domain.json @@ -0,0 +1,831 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/AuthMode", + "/properties/DomainName", + "/properties/DomainSettings/RStudioServerProDomainSettings/DefaultResourceSpec", + "/properties/KmsKeyId", + "/properties/VpcId", + "/properties/Tags" + ], + "definitions": { + "AppType": { + "enum": [ + "JupyterServer", + "TensorBoard", + "RStudioServerPro", + "JupyterLab", + "CodeEditor", + "DetailedProfiler", + "Canvas" + ], + "type": "string" + }, + "CodeEditorAppSettings": { + "additionalProperties": false, + "properties": { + "CustomImages": { + "items": { + "$ref": "#/definitions/CustomImage" + }, + "maxItems": 200, + "minItems": 0, + "type": "array", + "uniqueItems": false + }, + "DefaultResourceSpec": { + "$ref": "#/definitions/ResourceSpec" + }, + "LifecycleConfigArns": { + "items": { + "$ref": "#/definitions/StudioLifecycleConfigArn" + }, + "maxItems": 30, + "minItems": 0, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "CodeRepository": { + "additionalProperties": false, + "properties": { + "RepositoryUrl": { + "maxLength": 256, + "pattern": "^https://([.\\-_a-zA-Z0-9]+/?){3,1016}$", + "type": "string" + } + }, + "required": [ + "RepositoryUrl" + ], + "type": "object" + }, + "CustomFileSystemConfig": { + "additionalProperties": false, + "properties": { + "EFSFileSystemConfig": { + "$ref": "#/definitions/EFSFileSystemConfig" + } + }, + "type": "object" + }, + "CustomImage": { + "additionalProperties": false, + "properties": { + "AppImageConfigName": { + "maxLength": 63, + "pattern": "^[a-zA-Z0-9](-*[a-zA-Z0-9]){0,62}", + "type": "string" + }, + "ImageName": { + "maxLength": 63, + "pattern": "^[a-zA-Z0-9]([-.]?[a-zA-Z0-9]){0,62}$", + "type": "string" + }, + "ImageVersionNumber": { + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "AppImageConfigName", + "ImageName" + ], + "type": "object" + }, + "CustomPosixUserConfig": { + "additionalProperties": false, + "properties": { + "Gid": { + "maximum": 4000000, + "minimum": 1001, + "type": "integer" + }, + "Uid": { + "maximum": 4000000, + "minimum": 10000, + "type": "integer" + } + }, + "required": [ + "Uid", + "Gid" + ], + "type": "object" + }, + "DefaultEbsStorageSettings": { + "additionalProperties": false, + "properties": { + "DefaultEbsVolumeSizeInGb": { + "$ref": "#/definitions/SpaceEbsVolumeSizeInGb" + }, + "MaximumEbsVolumeSizeInGb": { + "$ref": "#/definitions/SpaceEbsVolumeSizeInGb" + } + }, + "required": [ + "DefaultEbsVolumeSizeInGb", + "MaximumEbsVolumeSizeInGb" + ], + "type": "object" + }, + "DefaultSpaceSettings": { + "additionalProperties": false, + "properties": { + "CustomFileSystemConfigs": { + "items": { + "$ref": "#/definitions/CustomFileSystemConfig" + }, + "maxItems": 2, + "minItems": 0, + "type": "array", + "uniqueItems": true + }, + "CustomPosixUserConfig": { + "$ref": "#/definitions/CustomPosixUserConfig" + }, + "ExecutionRole": { + "maxLength": 2048, + "minLength": 20, + "pattern": "^arn:aws[a-z\\-]*:iam::\\d{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+$", + "type": "string" + }, + "JupyterLabAppSettings": { + "$ref": "#/definitions/JupyterLabAppSettings" + }, + "JupyterServerAppSettings": { + "$ref": "#/definitions/JupyterServerAppSettings" + }, + "KernelGatewayAppSettings": { + "$ref": "#/definitions/KernelGatewayAppSettings" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "insertionOrder": false, + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "maxLength": 32, + "pattern": "[-0-9a-zA-Z]+", + "type": "string" + }, + "maxItems": 5, + "minItems": 0, + "type": "array", + "uniqueItems": false + }, + "SpaceStorageSettings": { + "$ref": "#/definitions/DefaultSpaceStorageSettings" + } + }, + "required": [ + "ExecutionRole" + ], + "type": "object" + }, + "DefaultSpaceStorageSettings": { + "additionalProperties": false, + "properties": { + "DefaultEbsStorageSettings": { + "$ref": "#/definitions/DefaultEbsStorageSettings" + } + }, + "type": "object" + }, + "DockerSettings": { + "additionalProperties": false, + "properties": { + "EnableDockerAccess": { + "enum": [ + "ENABLED", + "DISABLED" + ], + "type": "string" + }, + "VpcOnlyTrustedAccounts": { + "insertionOrder": false, + "items": { + "maxLength": 12, + "minLength": 12, + "pattern": "^\\d+$", + "type": "string" + }, + "maxItems": 20, + "minItems": 0, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "DomainSettings": { + "additionalProperties": false, + "properties": { + "DockerSettings": { + "$ref": "#/definitions/DockerSettings" + }, + "RStudioServerProDomainSettings": { + "$ref": "#/definitions/RStudioServerProDomainSettings" + }, + "SecurityGroupIds": { + "format": "AWS::EC2::SecurityGroup.Ids", + "insertionOrder": false, + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "maxLength": 32, + "pattern": "[-0-9a-zA-Z]+", + "type": "string" + }, + "maxItems": 3, + "minItems": 1, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "EFSFileSystemConfig": { + "additionalProperties": false, + "properties": { + "FileSystemId": { + "maxLength": 21, + "minLength": 11, + "pattern": "^(fs-[0-9a-f]{8,})$", + "type": "string" + }, + "FileSystemPath": { + "maxLength": 256, + "minLength": 1, + "pattern": "^\\/\\S*$", + "type": "string" + } + }, + "required": [ + "FileSystemId" + ], + "type": "object" + }, + "JupyterLabAppSettings": { + "additionalProperties": false, + "properties": { + "CodeRepositories": { + "items": { + "$ref": "#/definitions/CodeRepository" + }, + "maxItems": 30, + "minItems": 0, + "type": "array", + "uniqueItems": false + }, + "CustomImages": { + "items": { + "$ref": "#/definitions/CustomImage" + }, + "maxItems": 200, + "minItems": 0, + "type": "array", + "uniqueItems": false + }, + "DefaultResourceSpec": { + "$ref": "#/definitions/ResourceSpec" + }, + "LifecycleConfigArns": { + "items": { + "$ref": "#/definitions/StudioLifecycleConfigArn" + }, + "maxItems": 30, + "minItems": 0, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "JupyterServerAppSettings": { + "additionalProperties": false, + "properties": { + "DefaultResourceSpec": { + "$ref": "#/definitions/ResourceSpec" + } + }, + "type": "object" + }, + "KernelGatewayAppSettings": { + "additionalProperties": false, + "properties": { + "CustomImages": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/CustomImage" + }, + "maxItems": 200, + "minItems": 0, + "type": "array", + "uniqueItems": false + }, + "DefaultResourceSpec": { + "$ref": "#/definitions/ResourceSpec" + } + }, + "type": "object" + }, + "MlTools": { + "enum": [ + "DataWrangler", + "FeatureStore", + "EmrClusters", + "AutoML", + "Experiments", + "Training", + "ModelEvaluation", + "Pipelines", + "Models", + "JumpStart", + "InferenceRecommender", + "Endpoints", + "Projects" + ], + "type": "string" + }, + "RSessionAppSettings": { + "additionalProperties": false, + "properties": { + "CustomImages": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/CustomImage" + }, + "maxItems": 200, + "minItems": 0, + "type": "array", + "uniqueItems": false + }, + "DefaultResourceSpec": { + "$ref": "#/definitions/ResourceSpec" + } + }, + "type": "object" + }, + "RStudioServerProAppSettings": { + "additionalProperties": false, + "properties": { + "AccessStatus": { + "enum": [ + "ENABLED", + "DISABLED" + ], + "type": "string" + }, + "UserGroup": { + "enum": [ + "R_STUDIO_ADMIN", + "R_STUDIO_USER" + ], + "type": "string" + } + }, + "type": "object" + }, + "RStudioServerProDomainSettings": { + "additionalProperties": false, + "properties": { + "DefaultResourceSpec": { + "$ref": "#/definitions/ResourceSpec" + }, + "DomainExecutionRoleArn": { + "maxLength": 2048, + "minLength": 20, + "pattern": "^arn:aws[a-z\\-]*:iam::\\d{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+$", + "type": "string" + }, + "RStudioConnectUrl": { + "pattern": "^(https:|http:|www\\.)\\S*", + "type": "string" + }, + "RStudioPackageManagerUrl": { + "pattern": "^(https:|http:|www\\.)\\S*", + "type": "string" + } + }, + "required": [ + "DomainExecutionRoleArn" + ], + "type": "object" + }, + "ResourceSpec": { + "additionalProperties": false, + "properties": { + "InstanceType": { + "enum": [ + "system", + "ml.t3.micro", + "ml.t3.small", + "ml.t3.medium", + "ml.t3.large", + "ml.t3.xlarge", + "ml.t3.2xlarge", + "ml.m5.large", + "ml.m5.xlarge", + "ml.m5.2xlarge", + "ml.m5.4xlarge", + "ml.m5.8xlarge", + "ml.m5.12xlarge", + "ml.m5.16xlarge", + "ml.m5.24xlarge", + "ml.c5.large", + "ml.c5.xlarge", + "ml.c5.2xlarge", + "ml.c5.4xlarge", + "ml.c5.9xlarge", + "ml.c5.12xlarge", + "ml.c5.18xlarge", + "ml.c5.24xlarge", + "ml.p3.2xlarge", + "ml.p3.8xlarge", + "ml.p3.16xlarge", + "ml.g4dn.xlarge", + "ml.g4dn.2xlarge", + "ml.g4dn.4xlarge", + "ml.g4dn.8xlarge", + "ml.g4dn.12xlarge", + "ml.g4dn.16xlarge", + "ml.r5.large", + "ml.r5.xlarge", + "ml.r5.2xlarge", + "ml.r5.4xlarge", + "ml.r5.8xlarge", + "ml.r5.12xlarge", + "ml.r5.16xlarge", + "ml.r5.24xlarge", + "ml.p3dn.24xlarge", + "ml.m5d.large", + "ml.m5d.xlarge", + "ml.m5d.2xlarge", + "ml.m5d.4xlarge", + "ml.m5d.8xlarge", + "ml.m5d.12xlarge", + "ml.m5d.16xlarge", + "ml.m5d.24xlarge", + "ml.g5.xlarge", + "ml.g5.2xlarge", + "ml.g5.4xlarge", + "ml.g5.8xlarge", + "ml.g5.12xlarge", + "ml.g5.16xlarge", + "ml.g5.24xlarge", + "ml.g5.48xlarge", + "ml.p4d.24xlarge", + "ml.p4de.24xlarge", + "ml.geospatial.interactive", + "ml.trn1.2xlarge", + "ml.trn1.32xlarge", + "ml.trn1n.32xlarge" + ], + "type": "string" + }, + "LifecycleConfigArn": { + "maxLength": 256, + "pattern": "arn:aws[a-z\\-]*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:studio-lifecycle-config/.*", + "type": "string" + }, + "SageMakerImageArn": { + "maxLength": 256, + "pattern": "^arn:aws(-[\\w]+)*:sagemaker:.+:[0-9]{12}:image/[a-z0-9]([-.]?[a-z0-9])*$", + "type": "string" + }, + "SageMakerImageVersionArn": { + "maxLength": 256, + "pattern": "^arn:aws(-[\\w]+)*:sagemaker:.+:[0-9]{12}:image-version/[a-z0-9]([-.]?[a-z0-9])*/[0-9]+$", + "type": "string" + } + }, + "type": "object" + }, + "SharingSettings": { + "additionalProperties": false, + "properties": { + "NotebookOutputOption": { + "enum": [ + "Allowed", + "Disabled" + ], + "type": "string" + }, + "S3KmsKeyId": { + "maxLength": 2048, + "pattern": ".*", + "type": "string" + }, + "S3OutputPath": { + "maxLength": 1024, + "pattern": "^(https|s3)://([^/]+)/?(.*)$", + "type": "string" + } + }, + "type": "object" + }, + "SpaceEbsVolumeSizeInGb": { + "maximum": 16384, + "minimum": 5, + "type": "integer" + }, + "StudioLifecycleConfigArn": { + "maxLength": 256, + "pattern": "arn:aws[a-z\\-]*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:studio-lifecycle-config/.*", + "type": "string" + }, + "StudioWebPortalSettings": { + "additionalProperties": false, + "properties": { + "HiddenAppTypes": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/AppType" + }, + "minItems": 0, + "type": "array", + "uniqueItems": true + }, + "HiddenMlTools": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/MlTools" + }, + "minItems": 0, + "type": "array", + "uniqueItems": true + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 128, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "UserSettings": { + "additionalProperties": false, + "properties": { + "CodeEditorAppSettings": { + "$ref": "#/definitions/CodeEditorAppSettings" + }, + "CustomFileSystemConfigs": { + "items": { + "$ref": "#/definitions/CustomFileSystemConfig" + }, + "maxItems": 2, + "minItems": 0, + "type": "array", + "uniqueItems": true + }, + "CustomPosixUserConfig": { + "$ref": "#/definitions/CustomPosixUserConfig" + }, + "DefaultLandingUri": { + "maxLength": 1023, + "type": "string" + }, + "ExecutionRole": { + "maxLength": 2048, + "minLength": 20, + "pattern": "^arn:aws[a-z\\-]*:iam::\\d{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+$", + "type": "string" + }, + "JupyterLabAppSettings": { + "$ref": "#/definitions/JupyterLabAppSettings" + }, + "JupyterServerAppSettings": { + "$ref": "#/definitions/JupyterServerAppSettings" + }, + "KernelGatewayAppSettings": { + "$ref": "#/definitions/KernelGatewayAppSettings" + }, + "RSessionAppSettings": { + "$ref": "#/definitions/RSessionAppSettings" + }, + "RStudioServerProAppSettings": { + "$ref": "#/definitions/RStudioServerProAppSettings" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "insertionOrder": false, + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "maxLength": 32, + "pattern": "[-0-9a-zA-Z]+", + "type": "string" + }, + "maxItems": 5, + "minItems": 0, + "type": "array", + "uniqueItems": false + }, + "SharingSettings": { + "$ref": "#/definitions/SharingSettings" + }, + "SpaceStorageSettings": { + "$ref": "#/definitions/DefaultSpaceStorageSettings" + }, + "StudioWebPortal": { + "enum": [ + "ENABLED", + "DISABLED" + ], + "type": "string" + }, + "StudioWebPortalSettings": { + "$ref": "#/definitions/StudioWebPortalSettings" + } + }, + "required": [ + "ExecutionRole" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "sagemaker:CreateApp", + "sagemaker:CreateDomain", + "sagemaker:DescribeDomain", + "sagemaker:DescribeImage", + "sagemaker:DescribeImageVersion", + "iam:CreateServiceLinkedRole", + "iam:PassRole", + "efs:CreateFileSystem", + "kms:CreateGrant", + "kms:Decrypt", + "kms:DescribeKey", + "kms:GenerateDataKeyWithoutPlainText" + ] + }, + "delete": { + "permissions": [ + "sagemaker:DeleteApp", + "sagemaker:DeleteDomain", + "sagemaker:DescribeDomain" + ] + }, + "list": { + "permissions": [ + "sagemaker:ListDomains" + ] + }, + "read": { + "permissions": [ + "sagemaker:DescribeDomain" + ] + }, + "update": { + "permissions": [ + "sagemaker:CreateApp", + "sagemaker:UpdateDomain", + "sagemaker:DescribeDomain", + "sagemaker:DescribeImage", + "sagemaker:DescribeImageVersion", + "iam:PassRole" + ] + } + }, + "primaryIdentifier": [ + "/properties/DomainId" + ], + "properties": { + "AppNetworkAccessType": { + "enum": [ + "PublicInternetOnly", + "VpcOnly" + ], + "type": "string" + }, + "AppSecurityGroupManagement": { + "enum": [ + "Service", + "Customer" + ], + "type": "string" + }, + "AuthMode": { + "enum": [ + "SSO", + "IAM" + ], + "type": "string" + }, + "DefaultSpaceSettings": { + "$ref": "#/definitions/DefaultSpaceSettings" + }, + "DefaultUserSettings": { + "$ref": "#/definitions/UserSettings" + }, + "DomainArn": { + "maxLength": 256, + "pattern": "arn:aws[a-z\\-]*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:domain/.*", + "type": "string" + }, + "DomainId": { + "maxLength": 63, + "pattern": "^d-(-*[a-z0-9])+", + "type": "string" + }, + "DomainName": { + "maxLength": 63, + "pattern": "^[a-zA-Z0-9](-*[a-zA-Z0-9]){0,62}", + "type": "string" + }, + "DomainSettings": { + "$ref": "#/definitions/DomainSettings" + }, + "HomeEfsFileSystemId": { + "maxLength": 32, + "type": "string" + }, + "KmsKeyId": { + "maxLength": 2048, + "pattern": ".*", + "type": "string" + }, + "SecurityGroupIdForDomainBoundary": { + "maxLength": 32, + "pattern": "[-0-9a-zA-Z]+", + "type": "string" + }, + "SingleSignOnApplicationArn": { + "pattern": "^arn:(aws|aws-us-gov|aws-cn|aws-iso|aws-iso-b):sso::[0-9]+:application/[a-zA-Z0-9-_.]+/apl-[a-zA-Z0-9]+$", + "type": "string" + }, + "SingleSignOnManagedApplicationInstanceId": { + "maxLength": 256, + "type": "string" + }, + "SubnetIds": { + "insertionOrder": false, + "items": { + "maxLength": 32, + "pattern": "[-0-9a-zA-Z]+", + "type": "string" + }, + "maxItems": 16, + "minItems": 1, + "type": "array", + "uniqueItems": false + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 50, + "minItems": 0, + "type": "array", + "uniqueItems": false + }, + "Url": { + "maxLength": 1024, + "type": "string" + }, + "VpcId": { + "format": "AWS::EC2::VPC.Id", + "maxLength": 32, + "pattern": "[-0-9a-zA-Z]+", + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/DomainArn", + "/properties/Url", + "/properties/DomainId", + "/properties/HomeEfsFileSystemId", + "/properties/SecurityGroupIdForDomainBoundary", + "/properties/SingleSignOnManagedApplicationInstanceId", + "/properties/SingleSignOnApplicationArn" + ], + "required": [ + "AuthMode", + "DefaultUserSettings", + "DomainName", + "SubnetIds", + "VpcId" + ], + "typeName": "AWS::SageMaker::Domain", + "writeOnlyProperties": [ + "/properties/Tags" + ] +} diff --git a/src/cfnlint/data/schemas/providers/us_east_2/aws-sagemaker-userprofile.json b/src/cfnlint/data/schemas/providers/us_east_2/aws-sagemaker-userprofile.json new file mode 100644 index 0000000000..c2c0daf9fe --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_east_2/aws-sagemaker-userprofile.json @@ -0,0 +1,592 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/DomainId", + "/properties/UserProfileName", + "/properties/SingleSignOnUserIdentifier", + "/properties/SingleSignOnUserValue", + "/properties/UserSettings/RStudioServerProAppSettings/AccessStatus", + "/properties/UserSettings/RStudioServerProAppSettings/UserGroup", + "/properties/Tags" + ], + "definitions": { + "AppType": { + "enum": [ + "JupyterServer", + "TensorBoard", + "RStudioServerPro", + "JupyterLab", + "CodeEditor", + "DetailedProfiler", + "Canvas" + ], + "type": "string" + }, + "CodeEditorAppSettings": { + "additionalProperties": false, + "properties": { + "CustomImages": { + "items": { + "$ref": "#/definitions/CustomImage" + }, + "maxItems": 30, + "minItems": 0, + "type": "array", + "uniqueItems": false + }, + "DefaultResourceSpec": { + "$ref": "#/definitions/ResourceSpec" + }, + "LifecycleConfigArns": { + "items": { + "$ref": "#/definitions/StudioLifecycleConfigArn" + }, + "maxItems": 30, + "minItems": 0, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "CodeRepository": { + "additionalProperties": false, + "properties": { + "RepositoryUrl": { + "maxLength": 256, + "pattern": "^https://([.\\-_a-zA-Z0-9]+/?){3,1016}$", + "type": "string" + } + }, + "required": [ + "RepositoryUrl" + ], + "type": "object" + }, + "CustomFileSystemConfig": { + "additionalProperties": false, + "properties": { + "EFSFileSystemConfig": { + "$ref": "#/definitions/EFSFileSystemConfig" + } + }, + "type": "object" + }, + "CustomImage": { + "additionalProperties": false, + "properties": { + "AppImageConfigName": { + "maxLength": 63, + "pattern": "^[a-zA-Z0-9](-*[a-zA-Z0-9]){0,62}", + "type": "string" + }, + "ImageName": { + "maxLength": 63, + "pattern": "^[a-zA-Z0-9]([-.]?[a-zA-Z0-9]){0,62}$", + "type": "string" + }, + "ImageVersionNumber": { + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "AppImageConfigName", + "ImageName" + ], + "type": "object" + }, + "CustomPosixUserConfig": { + "additionalProperties": false, + "properties": { + "Gid": { + "maximum": 4000000, + "minimum": 1001, + "type": "integer" + }, + "Uid": { + "maximum": 4000000, + "minimum": 10000, + "type": "integer" + } + }, + "required": [ + "Uid", + "Gid" + ], + "type": "object" + }, + "DefaultEbsStorageSettings": { + "additionalProperties": false, + "properties": { + "DefaultEbsVolumeSizeInGb": { + "$ref": "#/definitions/SpaceEbsVolumeSizeInGb" + }, + "MaximumEbsVolumeSizeInGb": { + "$ref": "#/definitions/SpaceEbsVolumeSizeInGb" + } + }, + "required": [ + "DefaultEbsVolumeSizeInGb", + "MaximumEbsVolumeSizeInGb" + ], + "type": "object" + }, + "DefaultSpaceStorageSettings": { + "additionalProperties": false, + "properties": { + "DefaultEbsStorageSettings": { + "$ref": "#/definitions/DefaultEbsStorageSettings" + } + }, + "type": "object" + }, + "EFSFileSystemConfig": { + "additionalProperties": false, + "properties": { + "FileSystemId": { + "maxLength": 21, + "minLength": 11, + "pattern": "^(fs-[0-9a-f]{8,})$", + "type": "string" + }, + "FileSystemPath": { + "maxLength": 256, + "minLength": 1, + "pattern": "^\\/\\S*$", + "type": "string" + } + }, + "required": [ + "FileSystemId" + ], + "type": "object" + }, + "JupyterLabAppSettings": { + "additionalProperties": false, + "properties": { + "CodeRepositories": { + "items": { + "$ref": "#/definitions/CodeRepository" + }, + "maxItems": 30, + "minItems": 0, + "type": "array", + "uniqueItems": false + }, + "CustomImages": { + "items": { + "$ref": "#/definitions/CustomImage" + }, + "maxItems": 30, + "minItems": 0, + "type": "array", + "uniqueItems": false + }, + "DefaultResourceSpec": { + "$ref": "#/definitions/ResourceSpec" + }, + "LifecycleConfigArns": { + "items": { + "$ref": "#/definitions/StudioLifecycleConfigArn" + }, + "maxItems": 30, + "minItems": 0, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "JupyterServerAppSettings": { + "additionalProperties": false, + "properties": { + "DefaultResourceSpec": { + "$ref": "#/definitions/ResourceSpec" + } + }, + "type": "object" + }, + "KernelGatewayAppSettings": { + "additionalProperties": false, + "properties": { + "CustomImages": { + "items": { + "$ref": "#/definitions/CustomImage" + }, + "maxItems": 30, + "minItems": 0, + "type": "array", + "uniqueItems": false + }, + "DefaultResourceSpec": { + "$ref": "#/definitions/ResourceSpec" + } + }, + "type": "object" + }, + "MlTools": { + "enum": [ + "DataWrangler", + "FeatureStore", + "EmrClusters", + "AutoML", + "Experiments", + "Training", + "ModelEvaluation", + "Pipelines", + "Models", + "JumpStart", + "InferenceRecommender", + "Endpoints", + "Projects" + ], + "type": "string" + }, + "RStudioServerProAppSettings": { + "additionalProperties": false, + "properties": { + "AccessStatus": { + "enum": [ + "ENABLED", + "DISABLED" + ], + "type": "string" + }, + "UserGroup": { + "enum": [ + "R_STUDIO_ADMIN", + "R_STUDIO_USER" + ], + "type": "string" + } + }, + "type": "object" + }, + "ResourceSpec": { + "additionalProperties": false, + "properties": { + "InstanceType": { + "enum": [ + "system", + "ml.t3.micro", + "ml.t3.small", + "ml.t3.medium", + "ml.t3.large", + "ml.t3.xlarge", + "ml.t3.2xlarge", + "ml.m5.large", + "ml.m5.xlarge", + "ml.m5.2xlarge", + "ml.m5.4xlarge", + "ml.m5.8xlarge", + "ml.m5.12xlarge", + "ml.m5.16xlarge", + "ml.m5.24xlarge", + "ml.c5.large", + "ml.c5.xlarge", + "ml.c5.2xlarge", + "ml.c5.4xlarge", + "ml.c5.9xlarge", + "ml.c5.12xlarge", + "ml.c5.18xlarge", + "ml.c5.24xlarge", + "ml.p3.2xlarge", + "ml.p3.8xlarge", + "ml.p3.16xlarge", + "ml.g4dn.xlarge", + "ml.g4dn.2xlarge", + "ml.g4dn.4xlarge", + "ml.g4dn.8xlarge", + "ml.g4dn.12xlarge", + "ml.g4dn.16xlarge", + "ml.r5.large", + "ml.r5.xlarge", + "ml.r5.2xlarge", + "ml.r5.4xlarge", + "ml.r5.8xlarge", + "ml.r5.12xlarge", + "ml.r5.16xlarge", + "ml.r5.24xlarge", + "ml.p3dn.24xlarge", + "ml.m5d.large", + "ml.m5d.xlarge", + "ml.m5d.2xlarge", + "ml.m5d.4xlarge", + "ml.m5d.8xlarge", + "ml.m5d.12xlarge", + "ml.m5d.16xlarge", + "ml.m5d.24xlarge", + "ml.g5.xlarge", + "ml.g5.2xlarge", + "ml.g5.4xlarge", + "ml.g5.8xlarge", + "ml.g5.12xlarge", + "ml.g5.16xlarge", + "ml.g5.24xlarge", + "ml.g5.48xlarge", + "ml.p4d.24xlarge", + "ml.p4de.24xlarge", + "ml.geospatial.interactive", + "ml.trn1.2xlarge", + "ml.trn1.32xlarge", + "ml.trn1n.32xlarge" + ], + "type": "string" + }, + "SageMakerImageArn": { + "maxLength": 256, + "pattern": "^arn:aws(-[\\w]+)*:sagemaker:.+:[0-9]{12}:image/[a-z0-9]([-.]?[a-z0-9])*$", + "type": "string" + }, + "SageMakerImageVersionArn": { + "maxLength": 256, + "pattern": "^arn:aws(-[\\w]+)*:sagemaker:.+:[0-9]{12}:image-version/[a-z0-9]([-.]?[a-z0-9])*/[0-9]+$", + "type": "string" + } + }, + "type": "object" + }, + "SharingSettings": { + "additionalProperties": false, + "properties": { + "NotebookOutputOption": { + "enum": [ + "Allowed", + "Disabled" + ], + "type": "string" + }, + "S3KmsKeyId": { + "maxLength": 2048, + "pattern": ".*", + "type": "string" + }, + "S3OutputPath": { + "maxLength": 1024, + "pattern": "^(https|s3)://([^/]+)/?(.*)$", + "type": "string" + } + }, + "type": "object" + }, + "SpaceEbsVolumeSizeInGb": { + "maximum": 16384, + "minimum": 5, + "type": "integer" + }, + "StudioLifecycleConfigArn": { + "maxLength": 256, + "pattern": "arn:aws[a-z\\-]*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:studio-lifecycle-config/.*", + "type": "string" + }, + "StudioWebPortalSettings": { + "additionalProperties": false, + "properties": { + "HiddenAppTypes": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/AppType" + }, + "minItems": 0, + "type": "array", + "uniqueItems": true + }, + "HiddenMlTools": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/MlTools" + }, + "minItems": 0, + "type": "array", + "uniqueItems": true + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 128, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "UserSettings": { + "additionalProperties": false, + "properties": { + "CodeEditorAppSettings": { + "$ref": "#/definitions/CodeEditorAppSettings" + }, + "CustomFileSystemConfigs": { + "items": { + "$ref": "#/definitions/CustomFileSystemConfig" + }, + "maxItems": 2, + "minItems": 0, + "type": "array", + "uniqueItems": true + }, + "CustomPosixUserConfig": { + "$ref": "#/definitions/CustomPosixUserConfig" + }, + "DefaultLandingUri": { + "maxLength": 1023, + "type": "string" + }, + "ExecutionRole": { + "maxLength": 2048, + "minLength": 20, + "pattern": "^arn:aws[a-z\\-]*:iam::\\d{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+$", + "type": "string" + }, + "JupyterLabAppSettings": { + "$ref": "#/definitions/JupyterLabAppSettings" + }, + "JupyterServerAppSettings": { + "$ref": "#/definitions/JupyterServerAppSettings" + }, + "KernelGatewayAppSettings": { + "$ref": "#/definitions/KernelGatewayAppSettings" + }, + "RStudioServerProAppSettings": { + "$ref": "#/definitions/RStudioServerProAppSettings" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "maxLength": 32, + "pattern": "[-0-9a-zA-Z]+", + "type": "string" + }, + "maxItems": 5, + "minItems": 0, + "type": "array", + "uniqueItems": false + }, + "SharingSettings": { + "$ref": "#/definitions/SharingSettings" + }, + "SpaceStorageSettings": { + "$ref": "#/definitions/DefaultSpaceStorageSettings" + }, + "StudioWebPortal": { + "enum": [ + "ENABLED", + "DISABLED" + ], + "type": "string" + }, + "StudioWebPortalSettings": { + "$ref": "#/definitions/StudioWebPortalSettings" + } + }, + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "sagemaker:CreateUserProfile", + "sagemaker:DescribeUserProfile", + "sagemaker:DescribeImage", + "sagemaker:DescribeImageVersion", + "iam:PassRole" + ] + }, + "delete": { + "permissions": [ + "sagemaker:DeleteUserProfile", + "sagemaker:DescribeUserProfile" + ] + }, + "list": { + "permissions": [ + "sagemaker:ListUserProfiles" + ] + }, + "read": { + "permissions": [ + "sagemaker:DescribeUserProfile" + ] + }, + "update": { + "permissions": [ + "sagemaker:UpdateUserProfile", + "sagemaker:DescribeUserProfile", + "sagemaker:DescribeImage", + "sagemaker:DescribeImageVersion", + "iam:PassRole" + ] + } + }, + "primaryIdentifier": [ + "/properties/UserProfileName", + "/properties/DomainId" + ], + "properties": { + "DomainId": { + "maxLength": 63, + "minLength": 1, + "type": "string" + }, + "SingleSignOnUserIdentifier": { + "pattern": "UserName", + "type": "string" + }, + "SingleSignOnUserValue": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 50, + "minItems": 0, + "type": "array", + "uniqueItems": false + }, + "UserProfileArn": { + "maxLength": 256, + "pattern": "arn:aws[a-z\\-]*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:user-profile/.*", + "type": "string" + }, + "UserProfileName": { + "maxLength": 63, + "minLength": 1, + "type": "string" + }, + "UserSettings": { + "$ref": "#/definitions/UserSettings", + "maxItems": 50, + "minItems": 0, + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/UserProfileArn" + ], + "required": [ + "DomainId", + "UserProfileName" + ], + "typeName": "AWS::SageMaker::UserProfile", + "writeOnlyProperties": [ + "/properties/Tags" + ] +} 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 8e94b007d2..a3990d4eb4 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 @@ -450,6 +450,7 @@ "AWS::Lambda::LayerVersionPermission", "AWS::Lambda::Permission", "AWS::Lambda::Version", + "AWS::LaunchWizard::Deployment", "AWS::LicenseManager::Grant", "AWS::LicenseManager::License", "AWS::Logs::AccountPolicy", @@ -856,7 +857,6 @@ "aws-ec2-transitgatewayconnect.json", "aws-ec2-transitgatewaymulticastdomain.json", "aws-ec2-transitgatewaymulticastdomainassociation.json", - "aws-ec2-transitgatewaymulticastgroupmember.json", "aws-ec2-transitgatewaymulticastgroupsource.json", "aws-ec2-transitgatewaypeeringattachment.json", "aws-ec2-transitgatewayvpcattachment.json", @@ -1014,9 +1014,13 @@ "aws-lambda-eventinvokeconfig.json", "aws-lambda-permission.json", "aws-lambda-version.json", + "aws-launchwizard-deployment.json", "aws-licensemanager-grant.json", "aws-licensemanager-license.json", "aws-logs-accountpolicy.json", + "aws-logs-delivery.json", + "aws-logs-deliverydestination.json", + "aws-logs-deliverysource.json", "aws-logs-destination.json", "aws-logs-loggroup.json", "aws-logs-logstream.json", @@ -1032,7 +1036,9 @@ "aws-msk-configuration.json", "aws-msk-vpcconnection.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", "aws-networkmanager-customergatewayassociation.json", @@ -1055,6 +1061,7 @@ "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", @@ -1106,6 +1113,7 @@ "aws-sdb-domain.json", "aws-secretsmanager-resourcepolicy.json", "aws-secretsmanager-rotationschedule.json", + "aws-secretsmanager-secret.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-ec2-transitgatewaymulticastgroupmember.json b/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-ec2-transitgatewaymulticastgroupmember.json new file mode 100644 index 0000000000..a55b891d63 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-ec2-transitgatewaymulticastgroupmember.json @@ -0,0 +1,101 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/TransitGatewayMulticastDomainId", + "/properties/GroupIpAddress", + "/properties/NetworkInterfaceId" + ], + "handlers": { + "create": { + "permissions": [ + "ec2:RegisterTransitGatewayMulticastGroupMembers", + "ec2:SearchTransitGatewayMulticastGroups" + ] + }, + "delete": { + "permissions": [ + "ec2:DeregisterTransitGatewayMulticastGroupMembers", + "ec2:SearchTransitGatewayMulticastGroups" + ] + }, + "list": { + "handlerSchema": { + "properties": { + "TransitGatewayMulticastDomainId": { + "$ref": "resource-schema.json#/properties/TransitGatewayMulticastDomainId" + } + }, + "required": [ + "TransitGatewayMulticastDomainId" + ] + }, + "permissions": [ + "ec2:SearchTransitGatewayMulticastGroups" + ] + }, + "read": { + "permissions": [ + "ec2:SearchTransitGatewayMulticastGroups" + ] + } + }, + "primaryIdentifier": [ + "/properties/TransitGatewayMulticastDomainId", + "/properties/GroupIpAddress", + "/properties/NetworkInterfaceId" + ], + "properties": { + "GroupIpAddress": { + "type": "string" + }, + "GroupMember": { + "type": "boolean" + }, + "GroupSource": { + "type": "boolean" + }, + "MemberType": { + "type": "string" + }, + "NetworkInterfaceId": { + "type": "string" + }, + "ResourceId": { + "type": "string" + }, + "ResourceType": { + "type": "string" + }, + "SubnetId": { + "type": "string" + }, + "TransitGatewayAttachmentId": { + "type": "string" + }, + "TransitGatewayMulticastDomainId": { + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/SubnetId", + "/properties/ResourceId", + "/properties/ResourceType", + "/properties/GroupSource", + "/properties/GroupMember", + "/properties/MemberType", + "/properties/TransitGatewayAttachmentId" + ], + "required": [ + "GroupIpAddress", + "NetworkInterfaceId", + "TransitGatewayMulticastDomainId" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-transitgatewaymulticastdomain/aws-ec2-transitgatewaymulticastgroupsource", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": false, + "tagUpdatable": false, + "taggable": false + }, + "typeName": "AWS::EC2::TransitGatewayMulticastGroupMember" +} diff --git a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-logs-delivery.json b/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-logs-delivery.json deleted file mode 100644 index 9d504c7dc9..0000000000 --- a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-logs-delivery.json +++ /dev/null @@ -1,130 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/DeliverySourceName", - "/properties/DeliveryDestinationArn" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:CreateDelivery", - "logs:GetDelivery", - "logs:DescribeDeliveries", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:GetDeliverySource", - "logs:GetDeliveryDestination" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDelivery", - "logs:ListTagsForResource", - "logs:UntagResource" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliveries", - "logs:ListTagsForResource" - ] - }, - "read": { - "permissions": [ - "logs:GetDelivery", - "logs:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "logs:GetDelivery", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource" - ] - } - }, - "primaryIdentifier": [ - "/properties/DeliveryId" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationArn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationType": { - "maxLength": 12, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DeliveryId": { - "maxLength": 64, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DeliverySourceName": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/DeliveryId", - "/properties/Arn", - "/properties/DeliveryDestinationType" - ], - "required": [ - "DeliverySourceName", - "DeliveryDestinationArn" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::Delivery" -} diff --git a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-logs-deliverydestination.json b/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-logs-deliverydestination.json deleted file mode 100644 index 41e9e764ad..0000000000 --- a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-logs-deliverydestination.json +++ /dev/null @@ -1,152 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name", - "/properties/DestinationResourceArn" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "DestinationPolicy": { - "additionalProperties": false, - "properties": { - "DeliveryDestinationName": { - "maxLength": 60, - "minLength": 1, - "type": "string" - }, - "DeliveryDestinationPolicy": { - "maxLength": 51200, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "DeliveryDestinationName", - "DeliveryDestinationPolicy" - ], - "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" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:PutDeliveryDestination", - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource", - "logs:PutDeliveryDestinationPolicy", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDeliveryDestination", - "logs:DeleteDeliveryDestinationPolicy" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliveryDestinations", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "read": { - "permissions": [ - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "update": { - "permissions": [ - "logs:PutDeliveryDestination", - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource", - "logs:DeleteDeliveryDestinationPolicy", - "logs:PutDeliveryDestinationPolicy", - "logs:GetDeliveryDestinationPolicy" - ] - } - }, - "primaryIdentifier": [ - "/properties/Name" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationPolicy": { - "items": { - "$ref": "#/definitions/DestinationPolicy" - }, - "type": "object" - }, - "DeliveryDestinationType": { - "maxLength": 12, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DestinationResourceArn": { - "$ref": "#/definitions/Arn" - }, - "Name": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/Arn", - "/properties/DeliveryDestinationType" - ], - "required": [ - "Name" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::DeliveryDestination" -} diff --git a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-logs-deliverysource.json b/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-logs-deliverysource.json deleted file mode 100644 index 30c5c13d9e..0000000000 --- a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-logs-deliverysource.json +++ /dev/null @@ -1,138 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:PutDeliverySource", - "logs:GetDeliverySource", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:AllowVendedLogDeliveryForResource", - "codewhisperer:AllowVendedLogDeliveryForResource", - "autoloop:AllowVendedLogDeliveryForResource", - "workmail:AllowVendedLogDeliveryForResource" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDeliverySource" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliverySources" - ] - }, - "read": { - "permissions": [ - "logs:GetDeliverySource", - "logs:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "logs:PutDeliverySource", - "logs:GetDeliverySource", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource" - ] - } - }, - "primaryIdentifier": [ - "/properties/Name" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "LogType": { - "maxLength": 255, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Name": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "ResourceArn": { - "$ref": "#/definitions/Arn" - }, - "ResourceArns": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Arn" - }, - "type": "array", - "uniqueItems": true - }, - "Service": { - "maxLength": 255, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/Service", - "/properties/ResourceArns", - "/properties/Arn" - ], - "required": [ - "Name" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::DeliverySource", - "writeOnlyProperties": [ - "/properties/ResourceArn" - ] -} diff --git a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-networkfirewall-firewall.json b/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-networkfirewall-firewall.json deleted file mode 100644 index 233e3f6a0d..0000000000 --- a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-networkfirewall-firewall.json +++ /dev/null @@ -1,193 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/VpcId", - "/properties/FirewallName" - ], - "definitions": { - "EndpointId": { - "type": "string" - }, - "ResourceArn": { - "maxLength": 256, - "minLength": 1, - "pattern": "^arn:aws.*$", - "type": "string" - }, - "SubnetMapping": { - "additionalProperties": false, - "properties": { - "IPAddressType": { - "type": "string" - }, - "SubnetId": { - "type": "string" - } - }, - "required": [ - "SubnetId" - ], - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 255, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "ec2:CreateVpcEndpoint", - "ec2:DescribeVpcEndpoints", - "ec2:DescribeSubnets", - "ec2:DescribeVpcs", - "iam:CreateServiceLinkedRole", - "network-firewall:CreateFirewall", - "network-firewall:DescribeFirewallPolicy", - "network-firewall:DescribeRuleGroup", - "network-firewall:TagResource", - "network-firewall:AssociateSubnets", - "network-firewall:AssociateFirewallPolicy", - "network-firewall:DescribeFirewall" - ] - }, - "delete": { - "permissions": [ - "ec2:DeleteVpcEndpoints", - "ec2:DescribeRouteTables", - "logs:DescribeLogGroups", - "logs:DescribeResourcePolicies", - "logs:GetLogDelivery", - "logs:ListLogDeliveries", - "network-firewall:DeleteFirewall", - "network-firewall:UntagResource", - "network-firewall:DescribeFirewall" - ] - }, - "list": { - "permissions": [ - "network-firewall:ListFirewalls" - ] - }, - "read": { - "permissions": [ - "network-firewall:DescribeFirewall", - "network-firewall:ListTagsForResources" - ] - }, - "update": { - "permissions": [ - "network-firewall:AssociateSubnets", - "network-firewall:DisassociateSubnets", - "network-firewall:UpdateFirewallDescription", - "network-firewall:UpdateFirewallDeleteProtection", - "network-firewall:UpdateSubnetChangeProtection", - "network-firewall:UpdateFirewallPolicyChangeProtection", - "network-firewall:AssociateFirewallPolicy", - "network-firewall:TagResource", - "network-firewall:UntagResource", - "network-firewall:DescribeFirewall" - ] - } - }, - "primaryIdentifier": [ - "/properties/FirewallArn" - ], - "properties": { - "DeleteProtection": { - "type": "boolean" - }, - "Description": { - "maxLength": 512, - "pattern": "^.*$", - "type": "string" - }, - "EndpointIds": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/EndpointId" - }, - "type": "array" - }, - "FirewallArn": { - "$ref": "#/definitions/ResourceArn" - }, - "FirewallId": { - "maxLength": 36, - "minLength": 36, - "pattern": "^([0-9a-f]{8})-([0-9a-f]{4}-){3}([0-9a-f]{12})$", - "type": "string" - }, - "FirewallName": { - "maxLength": 128, - "minLength": 1, - "pattern": "^[a-zA-Z0-9-]+$", - "type": "string" - }, - "FirewallPolicyArn": { - "$ref": "#/definitions/ResourceArn" - }, - "FirewallPolicyChangeProtection": { - "type": "boolean" - }, - "SubnetChangeProtection": { - "type": "boolean" - }, - "SubnetMappings": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/SubnetMapping" - }, - "minItems": 1, - "type": "array", - "uniqueItems": true - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - }, - "VpcId": { - "format": "AWS::EC2::VPC.Id", - "maxLength": 128, - "minLength": 1, - "pattern": "^vpc-[0-9a-f]+$", - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/FirewallArn", - "/properties/FirewallId", - "/properties/EndpointIds" - ], - "required": [ - "FirewallName", - "FirewallPolicyArn", - "VpcId", - "SubnetMappings" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-networkfirewall.git", - "tagging": { - "taggable": true - }, - "typeName": "AWS::NetworkFirewall::Firewall" -} diff --git a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-networkfirewall-loggingconfiguration.json b/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-networkfirewall-loggingconfiguration.json deleted file mode 100644 index 53af2a3017..0000000000 --- a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-networkfirewall-loggingconfiguration.json +++ /dev/null @@ -1,155 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/FirewallName", - "/properties/FirewallArn" - ], - "definitions": { - "LogDestinationConfig": { - "additionalProperties": false, - "properties": { - "LogDestination": { - "additionalProperties": false, - "minProperties": 1, - "patternProperties": { - "^[0-9A-Za-z.\\-_@\\/]+$": { - "maxLength": 1024, - "minLength": 1, - "type": "string" - } - }, - "type": "object" - }, - "LogDestinationType": { - "enum": [ - "S3", - "CloudWatchLogs", - "KinesisDataFirehose" - ], - "type": "string" - }, - "LogType": { - "enum": [ - "ALERT", - "FLOW" - ], - "type": "string" - } - }, - "required": [ - "LogType", - "LogDestinationType", - "LogDestination" - ], - "type": "object" - }, - "LoggingConfiguration": { - "additionalProperties": false, - "properties": { - "LogDestinationConfigs": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/LogDestinationConfig" - }, - "minItems": 1, - "type": "array" - } - }, - "required": [ - "LogDestinationConfigs" - ], - "type": "object" - }, - "ResourceArn": { - "maxLength": 256, - "minLength": 1, - "pattern": "^arn:aws.*$", - "type": "string" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:CreateLogDelivery", - "logs:GetLogDelivery", - "logs:ListLogDeliveries", - "s3:PutBucketPolicy", - "s3:GetBucketPolicy", - "logs:PutResourcePolicy", - "logs:DescribeResourcePolicies", - "logs:DescribeLogGroups", - "iam:CreateServiceLinkedRole", - "firehose:TagDeliveryStream", - "network-firewall:UpdateLoggingConfiguration", - "network-firewall:DescribeLoggingConfiguration" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteLogDelivery", - "logs:ListLogDeliveries", - "logs:GetLogDelivery", - "network-firewall:UpdateLoggingConfiguration", - "network-firewall:DescribeLoggingConfiguration" - ] - }, - "list": { - "permissions": [ - "logs:GetLogDelivery", - "logs:ListLogDeliveries", - "network-firewall:DescribeLoggingConfiguration" - ] - }, - "read": { - "permissions": [ - "logs:GetLogDelivery", - "logs:ListLogDeliveries", - "network-firewall:DescribeLoggingConfiguration" - ] - }, - "update": { - "permissions": [ - "logs:CreateLogDelivery", - "logs:DeleteLogDelivery", - "logs:GetLogDelivery", - "logs:UpdateLogDelivery", - "logs:ListLogDeliveries", - "s3:PutBucketPolicy", - "s3:GetBucketPolicy", - "logs:PutResourcePolicy", - "logs:DescribeResourcePolicies", - "logs:DescribeLogGroups", - "iam:CreateServiceLinkedRole", - "firehose:TagDeliveryStream", - "network-firewall:UpdateLoggingConfiguration", - "network-firewall:DescribeLoggingConfiguration" - ] - } - }, - "primaryIdentifier": [ - "/properties/FirewallArn" - ], - "properties": { - "FirewallArn": { - "$ref": "#/definitions/ResourceArn" - }, - "FirewallName": { - "maxLength": 128, - "minLength": 1, - "pattern": "^[a-zA-Z0-9-]+$", - "type": "string" - }, - "LoggingConfiguration": { - "$ref": "#/definitions/LoggingConfiguration" - } - }, - "required": [ - "FirewallArn", - "LoggingConfiguration" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-networkfirewall.git", - "tagging": { - "taggable": false - }, - "typeName": "AWS::NetworkFirewall::LoggingConfiguration" -} diff --git a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-rds-dbcluster.json b/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-rds-dbcluster.json deleted file mode 100644 index fc3519fd59..0000000000 --- a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-rds-dbcluster.json +++ /dev/null @@ -1,459 +0,0 @@ -{ - "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" - } - }, - "handlers": { - "create": { - "permissions": [ - "iam:CreateServiceLinkedRole", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:CreateDBCluster", - "rds:CreateDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeDBClusterSnapshots", - "rds:DescribeDBSnapshots", - "rds:DescribeEvents", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:RestoreDBClusterFromSnapshot", - "rds:RestoreDBClusterToPointInTime", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "rds:CreateDBClusterSnapshot", - "rds:DeleteDBCluster", - "rds:DeleteDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeGlobalClusters", - "rds:RemoveFromGlobalCluster" - ] - }, - "list": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "read": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "update": { - "permissions": [ - "ec2:DescribeSecurityGroups", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:DescribeDBClusters", - "rds:DescribeDBSubnetGroups", - "rds:DescribeEvents", - "rds:DescribeGlobalClusters", - "rds:DisableHttpEndpoint", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:ModifyDBInstance", - "rds:RemoveFromGlobalCluster", - "rds:RemoveRoleFromDBCluster", - "rds:RemoveTagsFromResource", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - } - }, - "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": { - "default": 0, - "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": { - "default": "default.aurora5.6", - "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": { - "default": 0, - "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": { - "default": "full-copy", - "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)) = 'aurora-postgresql' ? 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", - "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/us_gov_east_1/aws-secretsmanager-secret.json b/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-secretsmanager-secret.json deleted file mode 100644 index 8cf3aab10e..0000000000 --- a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-secretsmanager-secret.json +++ /dev/null @@ -1,170 +0,0 @@ -{ - "$schema": "https://schema.cloudformation.us-east-1.amazonaws.com/provider.definition.schema.v1.json", - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name" - ], - "definitions": { - "GenerateSecretString": { - "additionalProperties": false, - "properties": { - "ExcludeCharacters": { - "type": "string" - }, - "ExcludeLowercase": { - "type": "boolean" - }, - "ExcludeNumbers": { - "type": "boolean" - }, - "ExcludePunctuation": { - "type": "boolean" - }, - "ExcludeUppercase": { - "type": "boolean" - }, - "GenerateStringKey": { - "type": "string" - }, - "IncludeSpace": { - "type": "boolean" - }, - "PasswordLength": { - "type": "integer" - }, - "RequireEachIncludedType": { - "type": "boolean" - }, - "SecretStringTemplate": { - "type": "string" - } - }, - "type": "object" - }, - "ReplicaRegion": { - "additionalProperties": false, - "properties": { - "KmsKeyId": { - "type": "string" - }, - "Region": { - "type": "string" - } - }, - "required": [ - "Region" - ], - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "secretsmanager:DescribeSecret", - "secretsmanager:GetRandomPassword", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ] - }, - "delete": { - "permissions": [ - "secretsmanager:DeleteSecret", - "secretsmanager:DescribeSecret", - "secretsmanager:RemoveRegionsFromReplication" - ] - }, - "list": { - "permissions": [ - "secretsmanager:ListSecrets" - ] - }, - "read": { - "permissions": [ - "secretsmanager:DescribeSecret", - "secretsmanager:GetSecretValue" - ] - }, - "update": { - "permissions": [ - "secretsmanager:UpdateSecret", - "secretsmanager:TagResource", - "secretsmanager:UntagResource", - "secretsmanager:GetRandomPassword", - "secretsmanager:GetSecretValue", - "secretsmanager:ReplicateSecretToRegions", - "secretsmanager:RemoveRegionsFromReplication" - ] - } - }, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "Description": { - "type": "string" - }, - "GenerateSecretString": { - "$ref": "#/definitions/GenerateSecretString" - }, - "Id": { - "type": "string" - }, - "KmsKeyId": { - "type": "string" - }, - "Name": { - "type": "string" - }, - "ReplicaRegions": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/ReplicaRegion" - }, - "type": "array", - "uniqueItems": false - }, - "SecretString": { - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": false - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-secretsmanager.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::SecretsManager::Secret", - "writeOnlyProperties": [ - "/properties/SecretString", - "/properties/GenerateSecretString" - ] -} 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 0929f5f8f2..366cb14075 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 @@ -509,6 +509,7 @@ "AWS::Lambda::LayerVersionPermission", "AWS::Lambda::Permission", "AWS::Lambda::Version", + "AWS::LaunchWizard::Deployment", "AWS::LicenseManager::Grant", "AWS::LicenseManager::License", "AWS::Location::GeofenceCollection", @@ -884,7 +885,6 @@ "aws-codedeploy-application.json", "aws-codedeploy-deploymentconfig.json", "aws-codedeploy-deploymentgroup.json", - "aws-codepipeline-pipeline.json", "aws-codepipeline-webhook.json", "aws-cognito-identitypool.json", "aws-cognito-identitypoolprincipaltag.json", @@ -1014,7 +1014,6 @@ "aws-ec2-transitgatewayconnect.json", "aws-ec2-transitgatewaymulticastdomain.json", "aws-ec2-transitgatewaymulticastdomainassociation.json", - "aws-ec2-transitgatewaymulticastgroupmember.json", "aws-ec2-transitgatewaymulticastgroupsource.json", "aws-ec2-transitgatewaypeeringattachment.json", "aws-ec2-transitgatewayvpcattachment.json", @@ -1196,6 +1195,7 @@ "aws-lambda-eventinvokeconfig.json", "aws-lambda-permission.json", "aws-lambda-version.json", + "aws-launchwizard-deployment.json", "aws-licensemanager-grant.json", "aws-licensemanager-license.json", "aws-location-geofencecollection.json", @@ -1204,6 +1204,9 @@ "aws-location-routecalculator.json", "aws-location-trackerconsumer.json", "aws-logs-accountpolicy.json", + "aws-logs-delivery.json", + "aws-logs-deliverydestination.json", + "aws-logs-deliverysource.json", "aws-logs-destination.json", "aws-logs-loggroup.json", "aws-logs-logstream.json", @@ -1219,7 +1222,9 @@ "aws-msk-configuration.json", "aws-msk-vpcconnection.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", "aws-networkmanager-customergatewayassociation.json", @@ -1265,6 +1270,7 @@ "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", @@ -1331,6 +1337,7 @@ "aws-sdb-domain.json", "aws-secretsmanager-resourcepolicy.json", "aws-secretsmanager-rotationschedule.json", + "aws-secretsmanager-secret.json", "aws-secretsmanager-secrettargetattachment.json", "aws-securityhub-automationrule.json", "aws-securityhub-configurationpolicy.json", diff --git a/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-codepipeline-pipeline.json b/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-codepipeline-pipeline.json new file mode 100644 index 0000000000..925fbfe118 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-codepipeline-pipeline.json @@ -0,0 +1,505 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "ActionDeclaration": { + "additionalProperties": false, + "properties": { + "ActionTypeId": { + "$ref": "#/definitions/ActionTypeId" + }, + "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 + }, + "Region": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "RunOrder": { + "type": "integer" + }, + "TimeoutInMinutes": { + "type": "integer" + } + }, + "required": [ + "ActionTypeId", + "Name" + ], + "type": "object" + }, + "ActionTypeId": { + "additionalProperties": false, + "properties": { + "Category": { + "enum": [ + "Approval", + "Build", + "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" + }, + "BlockerDeclaration": { + "additionalProperties": false, + "properties": { + "Name": { + "type": "string" + }, + "Type": { + "enum": [ + "Schedule" + ], + "type": "string" + } + }, + "required": [ + "Type", + "Name" + ], + "type": "object" + }, + "EncryptionKey": { + "additionalProperties": false, + "properties": { + "Id": { + "type": "string" + }, + "Type": { + "type": "string" + } + }, + "required": [ + "Type", + "Id" + ], + "type": "object" + }, + "FailureConditions": { + "additionalProperties": false, + "properties": { + "Result": { + "type": "string" + } + }, + "required": [ + "Result" + ], + "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": { + "Name": { + "type": "string" + } + }, + "required": [ + "Name" + ], + "type": "object" + }, + "PipelineTriggerDeclaration": { + "additionalProperties": false, + "properties": { + "GitConfiguration": { + "$ref": "#/definitions/GitConfiguration" + }, + "ProviderType": { + "type": "string" + } + }, + "required": [ + "ProviderType" + ], + "type": "object" + }, + "StageDeclaration": { + "additionalProperties": false, + "properties": { + "Actions": { + "items": { + "$ref": "#/definitions/ActionDeclaration" + }, + "type": "array", + "uniqueItems": true + }, + "Blockers": { + "items": { + "$ref": "#/definitions/BlockerDeclaration" + }, + "type": "array", + "uniqueItems": true + }, + "Name": { + "type": "string" + }, + "OnFailure": { + "$ref": "#/definitions/FailureConditions" + } + }, + "required": [ + "Actions", + "Name" + ], + "type": "object" + }, + "StageTransition": { + "additionalProperties": false, + "properties": { + "Reason": { + "type": "string" + }, + "StageName": { + "type": "string" + } + }, + "required": [ + "StageName", + "Reason" + ], + "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/Id" + ], + "properties": { + "ArtifactStore": { + "$ref": "#/definitions/ArtifactStore" + }, + "ArtifactStores": { + "items": { + "$ref": "#/definitions/ArtifactStoreMap" + }, + "type": "array", + "uniqueItems": true + }, + "DisableInboundStageTransitions": { + "items": { + "$ref": "#/definitions/StageTransition" + }, + "type": "array", + "uniqueItems": true + }, + "ExecutionMode": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "PipelineType": { + "type": "string" + }, + "RestartExecutionOnUpdate": { + "type": "boolean" + }, + "RoleArn": { + "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/Id", + "/properties/Version" + ], + "required": [ + "Stages", + "RoleArn" + ], + "requiredXor": [ + "ArtifactStore", + "ArtifactStores" + ], + "typeName": "AWS::CodePipeline::Pipeline" +} diff --git a/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-ec2-transitgatewaymulticastgroupmember.json b/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-ec2-transitgatewaymulticastgroupmember.json new file mode 100644 index 0000000000..a55b891d63 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-ec2-transitgatewaymulticastgroupmember.json @@ -0,0 +1,101 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/TransitGatewayMulticastDomainId", + "/properties/GroupIpAddress", + "/properties/NetworkInterfaceId" + ], + "handlers": { + "create": { + "permissions": [ + "ec2:RegisterTransitGatewayMulticastGroupMembers", + "ec2:SearchTransitGatewayMulticastGroups" + ] + }, + "delete": { + "permissions": [ + "ec2:DeregisterTransitGatewayMulticastGroupMembers", + "ec2:SearchTransitGatewayMulticastGroups" + ] + }, + "list": { + "handlerSchema": { + "properties": { + "TransitGatewayMulticastDomainId": { + "$ref": "resource-schema.json#/properties/TransitGatewayMulticastDomainId" + } + }, + "required": [ + "TransitGatewayMulticastDomainId" + ] + }, + "permissions": [ + "ec2:SearchTransitGatewayMulticastGroups" + ] + }, + "read": { + "permissions": [ + "ec2:SearchTransitGatewayMulticastGroups" + ] + } + }, + "primaryIdentifier": [ + "/properties/TransitGatewayMulticastDomainId", + "/properties/GroupIpAddress", + "/properties/NetworkInterfaceId" + ], + "properties": { + "GroupIpAddress": { + "type": "string" + }, + "GroupMember": { + "type": "boolean" + }, + "GroupSource": { + "type": "boolean" + }, + "MemberType": { + "type": "string" + }, + "NetworkInterfaceId": { + "type": "string" + }, + "ResourceId": { + "type": "string" + }, + "ResourceType": { + "type": "string" + }, + "SubnetId": { + "type": "string" + }, + "TransitGatewayAttachmentId": { + "type": "string" + }, + "TransitGatewayMulticastDomainId": { + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/SubnetId", + "/properties/ResourceId", + "/properties/ResourceType", + "/properties/GroupSource", + "/properties/GroupMember", + "/properties/MemberType", + "/properties/TransitGatewayAttachmentId" + ], + "required": [ + "GroupIpAddress", + "NetworkInterfaceId", + "TransitGatewayMulticastDomainId" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-transitgatewaymulticastdomain/aws-ec2-transitgatewaymulticastgroupsource", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": false, + "tagUpdatable": false, + "taggable": false + }, + "typeName": "AWS::EC2::TransitGatewayMulticastGroupMember" +} diff --git a/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-logs-delivery.json b/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-logs-delivery.json deleted file mode 100644 index 9d504c7dc9..0000000000 --- a/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-logs-delivery.json +++ /dev/null @@ -1,130 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/DeliverySourceName", - "/properties/DeliveryDestinationArn" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:CreateDelivery", - "logs:GetDelivery", - "logs:DescribeDeliveries", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:GetDeliverySource", - "logs:GetDeliveryDestination" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDelivery", - "logs:ListTagsForResource", - "logs:UntagResource" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliveries", - "logs:ListTagsForResource" - ] - }, - "read": { - "permissions": [ - "logs:GetDelivery", - "logs:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "logs:GetDelivery", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource" - ] - } - }, - "primaryIdentifier": [ - "/properties/DeliveryId" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationArn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationType": { - "maxLength": 12, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DeliveryId": { - "maxLength": 64, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DeliverySourceName": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/DeliveryId", - "/properties/Arn", - "/properties/DeliveryDestinationType" - ], - "required": [ - "DeliverySourceName", - "DeliveryDestinationArn" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::Delivery" -} diff --git a/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-logs-deliverydestination.json b/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-logs-deliverydestination.json deleted file mode 100644 index 41e9e764ad..0000000000 --- a/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-logs-deliverydestination.json +++ /dev/null @@ -1,152 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name", - "/properties/DestinationResourceArn" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "DestinationPolicy": { - "additionalProperties": false, - "properties": { - "DeliveryDestinationName": { - "maxLength": 60, - "minLength": 1, - "type": "string" - }, - "DeliveryDestinationPolicy": { - "maxLength": 51200, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "DeliveryDestinationName", - "DeliveryDestinationPolicy" - ], - "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" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:PutDeliveryDestination", - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource", - "logs:PutDeliveryDestinationPolicy", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDeliveryDestination", - "logs:DeleteDeliveryDestinationPolicy" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliveryDestinations", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "read": { - "permissions": [ - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "update": { - "permissions": [ - "logs:PutDeliveryDestination", - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource", - "logs:DeleteDeliveryDestinationPolicy", - "logs:PutDeliveryDestinationPolicy", - "logs:GetDeliveryDestinationPolicy" - ] - } - }, - "primaryIdentifier": [ - "/properties/Name" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationPolicy": { - "items": { - "$ref": "#/definitions/DestinationPolicy" - }, - "type": "object" - }, - "DeliveryDestinationType": { - "maxLength": 12, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DestinationResourceArn": { - "$ref": "#/definitions/Arn" - }, - "Name": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/Arn", - "/properties/DeliveryDestinationType" - ], - "required": [ - "Name" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::DeliveryDestination" -} diff --git a/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-logs-deliverysource.json b/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-logs-deliverysource.json deleted file mode 100644 index 30c5c13d9e..0000000000 --- a/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-logs-deliverysource.json +++ /dev/null @@ -1,138 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:PutDeliverySource", - "logs:GetDeliverySource", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:AllowVendedLogDeliveryForResource", - "codewhisperer:AllowVendedLogDeliveryForResource", - "autoloop:AllowVendedLogDeliveryForResource", - "workmail:AllowVendedLogDeliveryForResource" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDeliverySource" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliverySources" - ] - }, - "read": { - "permissions": [ - "logs:GetDeliverySource", - "logs:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "logs:PutDeliverySource", - "logs:GetDeliverySource", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource" - ] - } - }, - "primaryIdentifier": [ - "/properties/Name" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "LogType": { - "maxLength": 255, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Name": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "ResourceArn": { - "$ref": "#/definitions/Arn" - }, - "ResourceArns": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Arn" - }, - "type": "array", - "uniqueItems": true - }, - "Service": { - "maxLength": 255, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/Service", - "/properties/ResourceArns", - "/properties/Arn" - ], - "required": [ - "Name" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::DeliverySource", - "writeOnlyProperties": [ - "/properties/ResourceArn" - ] -} diff --git a/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-networkfirewall-firewall.json b/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-networkfirewall-firewall.json deleted file mode 100644 index 233e3f6a0d..0000000000 --- a/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-networkfirewall-firewall.json +++ /dev/null @@ -1,193 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/VpcId", - "/properties/FirewallName" - ], - "definitions": { - "EndpointId": { - "type": "string" - }, - "ResourceArn": { - "maxLength": 256, - "minLength": 1, - "pattern": "^arn:aws.*$", - "type": "string" - }, - "SubnetMapping": { - "additionalProperties": false, - "properties": { - "IPAddressType": { - "type": "string" - }, - "SubnetId": { - "type": "string" - } - }, - "required": [ - "SubnetId" - ], - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 255, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "ec2:CreateVpcEndpoint", - "ec2:DescribeVpcEndpoints", - "ec2:DescribeSubnets", - "ec2:DescribeVpcs", - "iam:CreateServiceLinkedRole", - "network-firewall:CreateFirewall", - "network-firewall:DescribeFirewallPolicy", - "network-firewall:DescribeRuleGroup", - "network-firewall:TagResource", - "network-firewall:AssociateSubnets", - "network-firewall:AssociateFirewallPolicy", - "network-firewall:DescribeFirewall" - ] - }, - "delete": { - "permissions": [ - "ec2:DeleteVpcEndpoints", - "ec2:DescribeRouteTables", - "logs:DescribeLogGroups", - "logs:DescribeResourcePolicies", - "logs:GetLogDelivery", - "logs:ListLogDeliveries", - "network-firewall:DeleteFirewall", - "network-firewall:UntagResource", - "network-firewall:DescribeFirewall" - ] - }, - "list": { - "permissions": [ - "network-firewall:ListFirewalls" - ] - }, - "read": { - "permissions": [ - "network-firewall:DescribeFirewall", - "network-firewall:ListTagsForResources" - ] - }, - "update": { - "permissions": [ - "network-firewall:AssociateSubnets", - "network-firewall:DisassociateSubnets", - "network-firewall:UpdateFirewallDescription", - "network-firewall:UpdateFirewallDeleteProtection", - "network-firewall:UpdateSubnetChangeProtection", - "network-firewall:UpdateFirewallPolicyChangeProtection", - "network-firewall:AssociateFirewallPolicy", - "network-firewall:TagResource", - "network-firewall:UntagResource", - "network-firewall:DescribeFirewall" - ] - } - }, - "primaryIdentifier": [ - "/properties/FirewallArn" - ], - "properties": { - "DeleteProtection": { - "type": "boolean" - }, - "Description": { - "maxLength": 512, - "pattern": "^.*$", - "type": "string" - }, - "EndpointIds": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/EndpointId" - }, - "type": "array" - }, - "FirewallArn": { - "$ref": "#/definitions/ResourceArn" - }, - "FirewallId": { - "maxLength": 36, - "minLength": 36, - "pattern": "^([0-9a-f]{8})-([0-9a-f]{4}-){3}([0-9a-f]{12})$", - "type": "string" - }, - "FirewallName": { - "maxLength": 128, - "minLength": 1, - "pattern": "^[a-zA-Z0-9-]+$", - "type": "string" - }, - "FirewallPolicyArn": { - "$ref": "#/definitions/ResourceArn" - }, - "FirewallPolicyChangeProtection": { - "type": "boolean" - }, - "SubnetChangeProtection": { - "type": "boolean" - }, - "SubnetMappings": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/SubnetMapping" - }, - "minItems": 1, - "type": "array", - "uniqueItems": true - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - }, - "VpcId": { - "format": "AWS::EC2::VPC.Id", - "maxLength": 128, - "minLength": 1, - "pattern": "^vpc-[0-9a-f]+$", - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/FirewallArn", - "/properties/FirewallId", - "/properties/EndpointIds" - ], - "required": [ - "FirewallName", - "FirewallPolicyArn", - "VpcId", - "SubnetMappings" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-networkfirewall.git", - "tagging": { - "taggable": true - }, - "typeName": "AWS::NetworkFirewall::Firewall" -} diff --git a/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-networkfirewall-loggingconfiguration.json b/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-networkfirewall-loggingconfiguration.json deleted file mode 100644 index 53af2a3017..0000000000 --- a/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-networkfirewall-loggingconfiguration.json +++ /dev/null @@ -1,155 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/FirewallName", - "/properties/FirewallArn" - ], - "definitions": { - "LogDestinationConfig": { - "additionalProperties": false, - "properties": { - "LogDestination": { - "additionalProperties": false, - "minProperties": 1, - "patternProperties": { - "^[0-9A-Za-z.\\-_@\\/]+$": { - "maxLength": 1024, - "minLength": 1, - "type": "string" - } - }, - "type": "object" - }, - "LogDestinationType": { - "enum": [ - "S3", - "CloudWatchLogs", - "KinesisDataFirehose" - ], - "type": "string" - }, - "LogType": { - "enum": [ - "ALERT", - "FLOW" - ], - "type": "string" - } - }, - "required": [ - "LogType", - "LogDestinationType", - "LogDestination" - ], - "type": "object" - }, - "LoggingConfiguration": { - "additionalProperties": false, - "properties": { - "LogDestinationConfigs": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/LogDestinationConfig" - }, - "minItems": 1, - "type": "array" - } - }, - "required": [ - "LogDestinationConfigs" - ], - "type": "object" - }, - "ResourceArn": { - "maxLength": 256, - "minLength": 1, - "pattern": "^arn:aws.*$", - "type": "string" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:CreateLogDelivery", - "logs:GetLogDelivery", - "logs:ListLogDeliveries", - "s3:PutBucketPolicy", - "s3:GetBucketPolicy", - "logs:PutResourcePolicy", - "logs:DescribeResourcePolicies", - "logs:DescribeLogGroups", - "iam:CreateServiceLinkedRole", - "firehose:TagDeliveryStream", - "network-firewall:UpdateLoggingConfiguration", - "network-firewall:DescribeLoggingConfiguration" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteLogDelivery", - "logs:ListLogDeliveries", - "logs:GetLogDelivery", - "network-firewall:UpdateLoggingConfiguration", - "network-firewall:DescribeLoggingConfiguration" - ] - }, - "list": { - "permissions": [ - "logs:GetLogDelivery", - "logs:ListLogDeliveries", - "network-firewall:DescribeLoggingConfiguration" - ] - }, - "read": { - "permissions": [ - "logs:GetLogDelivery", - "logs:ListLogDeliveries", - "network-firewall:DescribeLoggingConfiguration" - ] - }, - "update": { - "permissions": [ - "logs:CreateLogDelivery", - "logs:DeleteLogDelivery", - "logs:GetLogDelivery", - "logs:UpdateLogDelivery", - "logs:ListLogDeliveries", - "s3:PutBucketPolicy", - "s3:GetBucketPolicy", - "logs:PutResourcePolicy", - "logs:DescribeResourcePolicies", - "logs:DescribeLogGroups", - "iam:CreateServiceLinkedRole", - "firehose:TagDeliveryStream", - "network-firewall:UpdateLoggingConfiguration", - "network-firewall:DescribeLoggingConfiguration" - ] - } - }, - "primaryIdentifier": [ - "/properties/FirewallArn" - ], - "properties": { - "FirewallArn": { - "$ref": "#/definitions/ResourceArn" - }, - "FirewallName": { - "maxLength": 128, - "minLength": 1, - "pattern": "^[a-zA-Z0-9-]+$", - "type": "string" - }, - "LoggingConfiguration": { - "$ref": "#/definitions/LoggingConfiguration" - } - }, - "required": [ - "FirewallArn", - "LoggingConfiguration" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-networkfirewall.git", - "tagging": { - "taggable": false - }, - "typeName": "AWS::NetworkFirewall::LoggingConfiguration" -} diff --git a/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-rds-dbcluster.json b/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-rds-dbcluster.json deleted file mode 100644 index fc3519fd59..0000000000 --- a/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-rds-dbcluster.json +++ /dev/null @@ -1,459 +0,0 @@ -{ - "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" - } - }, - "handlers": { - "create": { - "permissions": [ - "iam:CreateServiceLinkedRole", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:CreateDBCluster", - "rds:CreateDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeDBClusterSnapshots", - "rds:DescribeDBSnapshots", - "rds:DescribeEvents", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:RestoreDBClusterFromSnapshot", - "rds:RestoreDBClusterToPointInTime", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "rds:CreateDBClusterSnapshot", - "rds:DeleteDBCluster", - "rds:DeleteDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeGlobalClusters", - "rds:RemoveFromGlobalCluster" - ] - }, - "list": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "read": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "update": { - "permissions": [ - "ec2:DescribeSecurityGroups", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:DescribeDBClusters", - "rds:DescribeDBSubnetGroups", - "rds:DescribeEvents", - "rds:DescribeGlobalClusters", - "rds:DisableHttpEndpoint", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:ModifyDBInstance", - "rds:RemoveFromGlobalCluster", - "rds:RemoveRoleFromDBCluster", - "rds:RemoveTagsFromResource", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - } - }, - "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": { - "default": 0, - "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": { - "default": "default.aurora5.6", - "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": { - "default": 0, - "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": { - "default": "full-copy", - "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)) = 'aurora-postgresql' ? 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", - "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/us_gov_west_1/aws-secretsmanager-secret.json b/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-secretsmanager-secret.json deleted file mode 100644 index 8cf3aab10e..0000000000 --- a/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-secretsmanager-secret.json +++ /dev/null @@ -1,170 +0,0 @@ -{ - "$schema": "https://schema.cloudformation.us-east-1.amazonaws.com/provider.definition.schema.v1.json", - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name" - ], - "definitions": { - "GenerateSecretString": { - "additionalProperties": false, - "properties": { - "ExcludeCharacters": { - "type": "string" - }, - "ExcludeLowercase": { - "type": "boolean" - }, - "ExcludeNumbers": { - "type": "boolean" - }, - "ExcludePunctuation": { - "type": "boolean" - }, - "ExcludeUppercase": { - "type": "boolean" - }, - "GenerateStringKey": { - "type": "string" - }, - "IncludeSpace": { - "type": "boolean" - }, - "PasswordLength": { - "type": "integer" - }, - "RequireEachIncludedType": { - "type": "boolean" - }, - "SecretStringTemplate": { - "type": "string" - } - }, - "type": "object" - }, - "ReplicaRegion": { - "additionalProperties": false, - "properties": { - "KmsKeyId": { - "type": "string" - }, - "Region": { - "type": "string" - } - }, - "required": [ - "Region" - ], - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "secretsmanager:DescribeSecret", - "secretsmanager:GetRandomPassword", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ] - }, - "delete": { - "permissions": [ - "secretsmanager:DeleteSecret", - "secretsmanager:DescribeSecret", - "secretsmanager:RemoveRegionsFromReplication" - ] - }, - "list": { - "permissions": [ - "secretsmanager:ListSecrets" - ] - }, - "read": { - "permissions": [ - "secretsmanager:DescribeSecret", - "secretsmanager:GetSecretValue" - ] - }, - "update": { - "permissions": [ - "secretsmanager:UpdateSecret", - "secretsmanager:TagResource", - "secretsmanager:UntagResource", - "secretsmanager:GetRandomPassword", - "secretsmanager:GetSecretValue", - "secretsmanager:ReplicateSecretToRegions", - "secretsmanager:RemoveRegionsFromReplication" - ] - } - }, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "Description": { - "type": "string" - }, - "GenerateSecretString": { - "$ref": "#/definitions/GenerateSecretString" - }, - "Id": { - "type": "string" - }, - "KmsKeyId": { - "type": "string" - }, - "Name": { - "type": "string" - }, - "ReplicaRegions": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/ReplicaRegion" - }, - "type": "array", - "uniqueItems": false - }, - "SecretString": { - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": false - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-secretsmanager.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::SecretsManager::Secret", - "writeOnlyProperties": [ - "/properties/SecretString", - "/properties/GenerateSecretString" - ] -} 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 20f7d91295..d7defea36e 100644 --- a/src/cfnlint/data/schemas/providers/us_west_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/us_west_1/__init__.py @@ -568,6 +568,7 @@ "AWS::Lambda::Permission", "AWS::Lambda::Url", "AWS::Lambda::Version", + "AWS::LaunchWizard::Deployment", "AWS::LicenseManager::Grant", "AWS::LicenseManager::License", "AWS::Logs::AccountPolicy", @@ -1079,6 +1080,7 @@ "aws-cloudwatch-alarm.json", "aws-cloudwatch-anomalydetector.json", "aws-cloudwatch-compositealarm.json", + "aws-cloudwatch-dashboard.json", "aws-cloudwatch-insightrule.json", "aws-cloudwatch-metricstream.json", "aws-codebuild-project.json", @@ -1289,6 +1291,7 @@ "aws-elasticbeanstalk-application.json", "aws-elasticbeanstalk-applicationversion.json", "aws-elasticbeanstalk-configurationtemplate.json", + "aws-elasticbeanstalk-environment.json", "aws-elasticloadbalancing-loadbalancer.json", "aws-elasticloadbalancingv2-listener.json", "aws-elasticloadbalancingv2-listenercertificate.json", @@ -1460,9 +1463,13 @@ "aws-lambda-permission.json", "aws-lambda-url.json", "aws-lambda-version.json", + "aws-launchwizard-deployment.json", "aws-licensemanager-grant.json", "aws-licensemanager-license.json", "aws-logs-accountpolicy.json", + "aws-logs-delivery.json", + "aws-logs-deliverydestination.json", + "aws-logs-deliverysource.json", "aws-logs-destination.json", "aws-logs-loganomalydetector.json", "aws-logs-loggroup.json", @@ -1510,6 +1517,7 @@ "aws-msk-replicator.json", "aws-msk-vpcconnection.json", "aws-mwaa-environment.json", + "aws-neptune-dbcluster.json", "aws-neptune-dbsubnetgroup.json", "aws-neptune-eventsubscription.json", "aws-networkfirewall-firewall.json", @@ -1555,6 +1563,7 @@ "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", diff --git a/src/cfnlint/data/schemas/providers/us_west_1/aws-cloudwatch-dashboard.json b/src/cfnlint/data/schemas/providers/us_west_1/aws-cloudwatch-dashboard.json deleted file mode 100644 index 258074cf80..0000000000 --- a/src/cfnlint/data/schemas/providers/us_west_1/aws-cloudwatch-dashboard.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/DashboardName" - ], - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "DashboardBody": { - "type": "string" - }, - "DashboardName": { - "type": "string" - }, - "Id": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "DashboardBody" - ], - "typeName": "AWS::CloudWatch::Dashboard" -} diff --git a/src/cfnlint/data/schemas/providers/us_west_1/aws-elasticbeanstalk-environment.json b/src/cfnlint/data/schemas/providers/us_west_1/aws-elasticbeanstalk-environment.json deleted file mode 100644 index 2fa4fe9b33..0000000000 --- a/src/cfnlint/data/schemas/providers/us_west_1/aws-elasticbeanstalk-environment.json +++ /dev/null @@ -1,183 +0,0 @@ -{ - "$schema": "https://raw.githubusercontent.com/aws-cloudformation/cloudformation-resource-schema/master/src/main/resources/schema/provider.definition.schema.v1.json", - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/CNAMEPrefix", - "/properties/EnvironmentName", - "/properties/ApplicationName", - "/properties/SolutionStackName", - "/properties/Tier/Name", - "/properties/Tier/Type" - ], - "definitions": { - "OptionSetting": { - "additionalProperties": false, - "properties": { - "Namespace": { - "type": "string" - }, - "OptionName": { - "type": "string" - }, - "ResourceName": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Namespace", - "OptionName" - ], - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - }, - "Tier": { - "additionalProperties": false, - "properties": { - "Name": { - "type": "string" - }, - "Type": { - "type": "string" - }, - "Version": { - "type": "string" - } - }, - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "elasticbeanstalk:DescribeEnvironments", - "elasticbeanstalk:CreateEnvironment", - "iam:PassRole" - ], - "timeoutInMinutes": 120 - }, - "delete": { - "permissions": [ - "elasticbeanstalk:DescribeEnvironments", - "elasticbeanstalk:TerminateEnvironment" - ], - "timeoutInMinutes": 210 - }, - "list": { - "permissions": [ - "elasticbeanstalk:DescribeEnvironments" - ] - }, - "read": { - "permissions": [ - "elasticbeanstalk:DescribeEnvironments", - "elasticbeanstalk:DescribeConfigurationSettings", - "elasticbeanstalk:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "elasticbeanstalk:DescribeEnvironments", - "elasticbeanstalk:UpdateEnvironment", - "elasticbeanstalk:UpdateTagsForResource", - "elasticbeanstalk:AssociateEnvironmentOperationsRole", - "elasticbeanstalk:DisassociateEnvironmentOperationsRole", - "iam:PassRole" - ], - "timeoutInMinutes": 300 - } - }, - "primaryIdentifier": [ - "/properties/EnvironmentName" - ], - "properties": { - "ApplicationName": { - "type": "string" - }, - "CNAMEPrefix": { - "type": "string" - }, - "Description": { - "type": "string" - }, - "EndpointURL": { - "type": "string" - }, - "EnvironmentName": { - "type": "string" - }, - "OperationsRole": { - "type": "string" - }, - "OptionSettings": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/OptionSetting" - }, - "type": "array", - "uniqueItems": false - }, - "PlatformArn": { - "type": "string" - }, - "SolutionStackName": { - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": false - }, - "TemplateName": { - "type": "string" - }, - "Tier": { - "$ref": "#/definitions/Tier" - }, - "VersionLabel": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/EndpointURL" - ], - "required": [ - "ApplicationName" - ], - "tagging": { - "cloudFormationSystemTags": false, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::ElasticBeanstalk::Environment", - "writeOnlyProperties": [ - "/properties/TemplateName", - "/properties/OptionSettings", - "/properties/OptionSettings/*/OptionName", - "/properties/OptionSettings/*/ResourceName", - "/properties/OptionSettings/*/Namespace", - "/properties/OptionSettings/*/Value" - ] -} diff --git a/src/cfnlint/data/schemas/providers/us_west_1/aws-logs-delivery.json b/src/cfnlint/data/schemas/providers/us_west_1/aws-logs-delivery.json deleted file mode 100644 index 9d504c7dc9..0000000000 --- a/src/cfnlint/data/schemas/providers/us_west_1/aws-logs-delivery.json +++ /dev/null @@ -1,130 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/DeliverySourceName", - "/properties/DeliveryDestinationArn" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:CreateDelivery", - "logs:GetDelivery", - "logs:DescribeDeliveries", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:GetDeliverySource", - "logs:GetDeliveryDestination" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDelivery", - "logs:ListTagsForResource", - "logs:UntagResource" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliveries", - "logs:ListTagsForResource" - ] - }, - "read": { - "permissions": [ - "logs:GetDelivery", - "logs:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "logs:GetDelivery", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource" - ] - } - }, - "primaryIdentifier": [ - "/properties/DeliveryId" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationArn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationType": { - "maxLength": 12, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DeliveryId": { - "maxLength": 64, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DeliverySourceName": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/DeliveryId", - "/properties/Arn", - "/properties/DeliveryDestinationType" - ], - "required": [ - "DeliverySourceName", - "DeliveryDestinationArn" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::Delivery" -} diff --git a/src/cfnlint/data/schemas/providers/us_west_1/aws-logs-deliverydestination.json b/src/cfnlint/data/schemas/providers/us_west_1/aws-logs-deliverydestination.json deleted file mode 100644 index 41e9e764ad..0000000000 --- a/src/cfnlint/data/schemas/providers/us_west_1/aws-logs-deliverydestination.json +++ /dev/null @@ -1,152 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name", - "/properties/DestinationResourceArn" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "DestinationPolicy": { - "additionalProperties": false, - "properties": { - "DeliveryDestinationName": { - "maxLength": 60, - "minLength": 1, - "type": "string" - }, - "DeliveryDestinationPolicy": { - "maxLength": 51200, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "DeliveryDestinationName", - "DeliveryDestinationPolicy" - ], - "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" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:PutDeliveryDestination", - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource", - "logs:PutDeliveryDestinationPolicy", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDeliveryDestination", - "logs:DeleteDeliveryDestinationPolicy" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliveryDestinations", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "read": { - "permissions": [ - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:GetDeliveryDestinationPolicy" - ] - }, - "update": { - "permissions": [ - "logs:PutDeliveryDestination", - "logs:GetDeliveryDestination", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource", - "logs:DeleteDeliveryDestinationPolicy", - "logs:PutDeliveryDestinationPolicy", - "logs:GetDeliveryDestinationPolicy" - ] - } - }, - "primaryIdentifier": [ - "/properties/Name" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "DeliveryDestinationPolicy": { - "items": { - "$ref": "#/definitions/DestinationPolicy" - }, - "type": "object" - }, - "DeliveryDestinationType": { - "maxLength": 12, - "minLength": 1, - "pattern": "^[0-9A-Za-z]+$", - "type": "string" - }, - "DestinationResourceArn": { - "$ref": "#/definitions/Arn" - }, - "Name": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/Arn", - "/properties/DeliveryDestinationType" - ], - "required": [ - "Name" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::DeliveryDestination" -} diff --git a/src/cfnlint/data/schemas/providers/us_west_1/aws-logs-deliverysource.json b/src/cfnlint/data/schemas/providers/us_west_1/aws-logs-deliverysource.json deleted file mode 100644 index 30c5c13d9e..0000000000 --- a/src/cfnlint/data/schemas/providers/us_west_1/aws-logs-deliverysource.json +++ /dev/null @@ -1,138 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name" - ], - "definitions": { - "Arn": { - "maxLength": 2048, - "minLength": 16, - "pattern": "^arn:(aws[a-zA-Z-]*)?:[A-Za-z0-9][A-Za-z0-9_/.-]{0,62}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9_/.-]{0,63}:[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]{0,1023}$", - "type": "string" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "logs:PutDeliverySource", - "logs:GetDeliverySource", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:AllowVendedLogDeliveryForResource", - "codewhisperer:AllowVendedLogDeliveryForResource", - "autoloop:AllowVendedLogDeliveryForResource", - "workmail:AllowVendedLogDeliveryForResource" - ] - }, - "delete": { - "permissions": [ - "logs:DeleteDeliverySource" - ] - }, - "list": { - "permissions": [ - "logs:DescribeDeliverySources" - ] - }, - "read": { - "permissions": [ - "logs:GetDeliverySource", - "logs:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "logs:PutDeliverySource", - "logs:GetDeliverySource", - "logs:ListTagsForResource", - "logs:TagResource", - "logs:UntagResource" - ] - } - }, - "primaryIdentifier": [ - "/properties/Name" - ], - "properties": { - "Arn": { - "$ref": "#/definitions/Arn" - }, - "LogType": { - "maxLength": 255, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Name": { - "maxLength": 60, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "ResourceArn": { - "$ref": "#/definitions/Arn" - }, - "ResourceArns": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Arn" - }, - "type": "array", - "uniqueItems": true - }, - "Service": { - "maxLength": 255, - "minLength": 1, - "pattern": "[\\w-]*$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": true - } - }, - "readOnlyProperties": [ - "/properties/Service", - "/properties/ResourceArns", - "/properties/Arn" - ], - "required": [ - "Name" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Logs::DeliverySource", - "writeOnlyProperties": [ - "/properties/ResourceArn" - ] -} diff --git a/src/cfnlint/data/schemas/providers/us_west_1/aws-neptune-dbcluster.json b/src/cfnlint/data/schemas/providers/us_west_1/aws-neptune-dbcluster.json deleted file mode 100644 index d682d355d7..0000000000 --- a/src/cfnlint/data/schemas/providers/us_west_1/aws-neptune-dbcluster.json +++ /dev/null @@ -1,292 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/AvailabilityZones", - "/properties/DBClusterIdentifier", - "/properties/DBSubnetGroupName", - "/properties/KmsKeyId", - "/properties/RestoreToTime", - "/properties/RestoreType", - "/properties/SnapshotIdentifier", - "/properties/SourceDBClusterIdentifier", - "/properties/StorageEncrypted", - "/properties/UseLatestRestorableTime" - ], - "definitions": { - "DBClusterRole": { - "additionalProperties": false, - "properties": { - "FeatureName": { - "type": "string" - }, - "RoleArn": { - "type": "string" - } - }, - "required": [ - "RoleArn" - ], - "type": "object" - }, - "ServerlessScalingConfiguration": { - "additionalProperties": false, - "properties": { - "MaxCapacity": { - "maximum": 128, - "minimum": 2.5, - "type": "number" - }, - "MinCapacity": { - "maximum": 128, - "minimum": 1, - "type": "number" - } - }, - "required": [ - "MinCapacity", - "MaxCapacity" - ], - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:CreateDBCluster", - "rds:CreateDBInstance", - "rds:DescribeDBClusters", - "rds:ListTagsForResource", - "rds:ModifyDBCluster", - "rds:RestoreDBClusterFromSnapshot", - "rds:RestoreDBClusterToPointInTime", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "rds:DeleteDBCluster", - "rds:DeleteDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeGlobalClusters", - "rds:ListTagsForResource", - "rds:RemoveFromGlobalCluster", - "rds:CreateDBClusterSnapshot", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "list": { - "permissions": [ - "rds:DescribeDBClusters", - "rds:ListTagsForResource", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "read": { - "permissions": [ - "rds:DescribeDBClusters", - "rds:ListTagsForResource", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "update": { - "permissions": [ - "ec2:DescribeSecurityGroups", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:DescribeDBClusters", - "rds:DescribeDBInstances", - "rds:DescribeDBSubnetGroups", - "rds:DescribeGlobalClusters", - "rds:ListTagsForResource", - "rds:ModifyDBCluster", - "rds:ModifyDBInstance", - "rds:RemoveFromGlobalCluster", - "rds:RemoveRoleFromDBCluster", - "rds:RemoveTagsFromResource", - "kms:*" - ], - "timeoutInMinutes": 2160 - } - }, - "primaryIdentifier": [ - "/properties/DBClusterIdentifier" - ], - "properties": { - "AssociatedRoles": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/DBClusterRole" - }, - "type": "array", - "uniqueItems": true - }, - "AvailabilityZones": { - "insertionOrder": true, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "BackupRetentionPeriod": { - "default": 1, - "minimum": 1, - "type": "integer" - }, - "ClusterResourceId": { - "type": "string" - }, - "CopyTagsToSnapshot": { - "type": "boolean" - }, - "DBClusterIdentifier": { - "maxLength": 63, - "minLength": 1, - "pattern": "^[a-zA-Z]{1}(?:-?[a-zA-Z0-9]){0,62}$", - "type": "string" - }, - "DBClusterParameterGroupName": { - "type": "string" - }, - "DBInstanceParameterGroupName": { - "type": "string" - }, - "DBPort": { - "type": "integer" - }, - "DBSubnetGroupName": { - "type": "string" - }, - "DeletionProtection": { - "type": "boolean" - }, - "EnableCloudwatchLogsExports": { - "insertionOrder": true, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "Endpoint": { - "type": "string" - }, - "EngineVersion": { - "type": "string" - }, - "IamAuthEnabled": { - "type": "boolean" - }, - "KmsKeyId": { - "type": "string" - }, - "Port": { - "type": "string" - }, - "PreferredBackupWindow": { - "type": "string" - }, - "PreferredMaintenanceWindow": { - "type": "string" - }, - "ReadEndpoint": { - "type": "string" - }, - "RestoreToTime": { - "type": "string" - }, - "RestoreType": { - "default": "full-copy", - "type": "string" - }, - "ServerlessScalingConfiguration": { - "$ref": "#/definitions/ServerlessScalingConfiguration" - }, - "SnapshotIdentifier": { - "type": "string" - }, - "SourceDBClusterIdentifier": { - "type": "string" - }, - "StorageEncrypted": { - "type": "boolean" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 50, - "type": "array", - "uniqueItems": true - }, - "UseLatestRestorableTime": { - "type": "boolean" - }, - "VpcSecurityGroupIds": { - "insertionOrder": true, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - } - }, - "propertyTransform": { - "/properties/DBClusterIdentifier": "$lowercase(DBClusterIdentifier)", - "/properties/DBClusterParameterGroupName": "$lowercase(DBClusterParameterGroupName)", - "/properties/DBSubnetGroupName": "$lowercase(DBSubnetGroupName)", - "/properties/SnapshotIdentifier": "$lowercase(SnapshotIdentifier)", - "/properties/SourceDBClusterIdentifier": "$lowercase(SourceDBClusterIdentifier)" - }, - "readOnlyProperties": [ - "/properties/Endpoint", - "/properties/ClusterResourceId", - "/properties/Port", - "/properties/ReadEndpoint" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-neptune", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Neptune::DBCluster", - "writeOnlyProperties": [ - "/properties/DBInstanceParameterGroupName", - "/properties/RestoreToTime", - "/properties/RestoreType", - "/properties/SnapshotIdentifier", - "/properties/SourceDBClusterIdentifier", - "/properties/UseLatestRestorableTime" - ] -} diff --git a/src/cfnlint/data/schemas/providers/us_west_1/aws-rds-dbcluster.json b/src/cfnlint/data/schemas/providers/us_west_1/aws-rds-dbcluster.json deleted file mode 100644 index fc3519fd59..0000000000 --- a/src/cfnlint/data/schemas/providers/us_west_1/aws-rds-dbcluster.json +++ /dev/null @@ -1,459 +0,0 @@ -{ - "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" - } - }, - "handlers": { - "create": { - "permissions": [ - "iam:CreateServiceLinkedRole", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:CreateDBCluster", - "rds:CreateDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeDBClusterSnapshots", - "rds:DescribeDBSnapshots", - "rds:DescribeEvents", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:RestoreDBClusterFromSnapshot", - "rds:RestoreDBClusterToPointInTime", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "rds:CreateDBClusterSnapshot", - "rds:DeleteDBCluster", - "rds:DeleteDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeGlobalClusters", - "rds:RemoveFromGlobalCluster" - ] - }, - "list": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "read": { - "permissions": [ - "rds:DescribeDBClusters" - ] - }, - "update": { - "permissions": [ - "ec2:DescribeSecurityGroups", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:DescribeDBClusters", - "rds:DescribeDBSubnetGroups", - "rds:DescribeEvents", - "rds:DescribeGlobalClusters", - "rds:DisableHttpEndpoint", - "rds:EnableHttpEndpoint", - "rds:ModifyDBCluster", - "rds:ModifyDBInstance", - "rds:RemoveFromGlobalCluster", - "rds:RemoveRoleFromDBCluster", - "rds:RemoveTagsFromResource", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - } - }, - "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": { - "default": 0, - "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": { - "default": "default.aurora5.6", - "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": { - "default": 0, - "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": { - "default": "full-copy", - "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)) = 'aurora-postgresql' ? 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", - "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/us_west_2/__init__.py b/src/cfnlint/data/schemas/providers/us_west_2/__init__.py index 3d380b7c35..f5eaebf0c6 100644 --- a/src/cfnlint/data/schemas/providers/us_west_2/__init__.py +++ b/src/cfnlint/data/schemas/providers/us_west_2/__init__.py @@ -754,6 +754,7 @@ "AWS::Lambda::Permission", "AWS::Lambda::Url", "AWS::Lambda::Version", + "AWS::LaunchWizard::Deployment", "AWS::Lex::Bot", "AWS::Lex::BotAlias", "AWS::Lex::BotVersion", @@ -1068,6 +1069,13 @@ "AWS::SES::ContactList", "AWS::SES::DedicatedIpPool", "AWS::SES::EmailIdentity", + "AWS::SES::MailManagerAddonInstance", + "AWS::SES::MailManagerAddonSubscription", + "AWS::SES::MailManagerArchive", + "AWS::SES::MailManagerIngressPoint", + "AWS::SES::MailManagerRelay", + "AWS::SES::MailManagerRuleSet", + "AWS::SES::MailManagerTrafficPolicy", "AWS::SES::ReceiptFilter", "AWS::SES::ReceiptRule", "AWS::SES::ReceiptRuleSet", @@ -1437,6 +1445,7 @@ "aws-cloudformation-resourcedefaultversion.json", "aws-cloudformation-resourceversion.json", "aws-cloudformation-stack.json", + "aws-cloudformation-stackset.json", "aws-cloudformation-typeactivation.json", "aws-cloudformation-waitcondition.json", "aws-cloudformation-waitconditionhandle.json", @@ -1479,6 +1488,7 @@ "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", @@ -1496,7 +1506,6 @@ "aws-cognito-userpoolidentityprovider.json", "aws-cognito-userpoolresourceserver.json", "aws-cognito-userpoolriskconfigurationattachment.json", - "aws-cognito-userpooluicustomizationattachment.json", "aws-cognito-userpooluser.json", "aws-cognito-userpoolusertogroupattachment.json", "aws-comprehend-documentclassifier.json", @@ -2005,6 +2014,7 @@ "aws-lambda-permission.json", "aws-lambda-url.json", "aws-lambda-version.json", + "aws-launchwizard-deployment.json", "aws-lex-bot.json", "aws-lex-botalias.json", "aws-lex-botversion.json", @@ -2094,6 +2104,7 @@ "aws-msk-serverlesscluster.json", "aws-msk-vpcconnection.json", "aws-mwaa-environment.json", + "aws-neptune-dbcluster.json", "aws-neptune-dbclusterparametergroup.json", "aws-neptune-dbinstance.json", "aws-neptune-dbparametergroup.json", @@ -2388,6 +2399,13 @@ "aws-ses-contactlist.json", "aws-ses-dedicatedippool.json", "aws-ses-emailidentity.json", + "aws-ses-mailmanageraddoninstance.json", + "aws-ses-mailmanageraddonsubscription.json", + "aws-ses-mailmanagerarchive.json", + "aws-ses-mailmanageringresspoint.json", + "aws-ses-mailmanagerrelay.json", + "aws-ses-mailmanagerruleset.json", + "aws-ses-mailmanagertrafficpolicy.json", "aws-ses-receiptfilter.json", "aws-ses-receiptrule.json", "aws-ses-receiptruleset.json", diff --git a/src/cfnlint/data/schemas/providers/us_west_2/aws-cloudformation-stackset.json b/src/cfnlint/data/schemas/providers/us_west_2/aws-cloudformation-stackset.json deleted file mode 100644 index 792fccc85b..0000000000 --- a/src/cfnlint/data/schemas/providers/us_west_2/aws-cloudformation-stackset.json +++ /dev/null @@ -1,394 +0,0 @@ -{ - "additionalIdentifiers": [ - [ - "/properties/StackSetName" - ] - ], - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/PermissionModel", - "/properties/StackSetName" - ], - "definitions": { - "Account": { - "pattern": "^[0-9]{12}$", - "type": "string" - }, - "Active": { - "type": "boolean" - }, - "AutoDeployment": { - "additionalProperties": false, - "properties": { - "Enabled": { - "type": "boolean" - }, - "RetainStacksOnAccountRemoval": { - "type": "boolean" - } - }, - "type": "object" - }, - "Capability": { - "enum": [ - "CAPABILITY_IAM", - "CAPABILITY_NAMED_IAM", - "CAPABILITY_AUTO_EXPAND" - ], - "type": "string" - }, - "ConcurrencyMode": { - "enum": [ - "STRICT_FAILURE_TOLERANCE", - "SOFT_FAILURE_TOLERANCE" - ], - "type": "string" - }, - "DeploymentTargets": { - "additionalProperties": false, - "properties": { - "AccountFilterType": { - "enum": [ - "NONE", - "UNION", - "INTERSECTION", - "DIFFERENCE" - ], - "type": "string" - }, - "Accounts": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Account" - }, - "minItems": 1, - "type": "array", - "uniqueItems": true - }, - "AccountsUrl": { - "maxLength": 5120, - "minLength": 1, - "pattern": "(s3://|http(s?)://).+", - "type": "string" - }, - "OrganizationalUnitIds": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/OrganizationalUnitId" - }, - "minItems": 1, - "type": "array", - "uniqueItems": true - } - }, - "type": "object" - }, - "OperationPreferences": { - "additionalProperties": false, - "properties": { - "ConcurrencyMode": { - "$ref": "#/definitions/ConcurrencyMode" - }, - "FailureToleranceCount": { - "minimum": 0, - "type": "integer" - }, - "FailureTolerancePercentage": { - "maximum": 100, - "minimum": 0, - "type": "integer" - }, - "MaxConcurrentCount": { - "minimum": 1, - "type": "integer" - }, - "MaxConcurrentPercentage": { - "maximum": 100, - "minimum": 0, - "type": "integer" - }, - "RegionConcurrencyType": { - "$ref": "#/definitions/RegionConcurrencyType" - }, - "RegionOrder": { - "items": { - "$ref": "#/definitions/Region" - }, - "type": "array" - } - }, - "type": "object" - }, - "OrganizationalUnitId": { - "pattern": "^(ou-[a-z0-9]{4,32}-[a-z0-9]{8,32}|r-[a-z0-9]{4,32})$", - "type": "string" - }, - "Parameter": { - "additionalProperties": false, - "properties": { - "ParameterKey": { - "type": "string" - }, - "ParameterValue": { - "type": "string" - } - }, - "required": [ - "ParameterKey", - "ParameterValue" - ], - "type": "object" - }, - "Region": { - "pattern": "^[a-zA-Z0-9-]{1,128}$", - "type": "string" - }, - "RegionConcurrencyType": { - "enum": [ - "SEQUENTIAL", - "PARALLEL" - ], - "type": "string" - }, - "StackInstances": { - "additionalProperties": false, - "properties": { - "DeploymentTargets": { - "$ref": "#/definitions/DeploymentTargets" - }, - "ParameterOverrides": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Parameter" - }, - "type": "array", - "uniqueItems": true - }, - "Regions": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Region" - }, - "minItems": 1, - "type": "array", - "uniqueItems": true - } - }, - "required": [ - "DeploymentTargets", - "Regions" - ], - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "pattern": "^(?!aws:.*)[a-zA-Z0-9\\s\\:\\_\\.\\/\\=\\+\\-]+$", - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "cloudformation:GetTemplateSummary", - "cloudformation:CreateStackSet", - "cloudformation:CreateStackInstances", - "cloudformation:DescribeStackSetOperation", - "cloudformation:ListStackSetOperationResults", - "cloudformation:TagResource", - "iam:PassRole" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "cloudformation:DeleteStackSet", - "cloudformation:DeleteStackInstances", - "cloudformation:DescribeStackSet", - "cloudformation:DescribeStackSetOperation", - "cloudformation:ListStackSetOperationResults", - "cloudformation:UntagResource" - ], - "timeoutInMinutes": 2160 - }, - "list": { - "permissions": [ - "cloudformation:ListStackSets", - "cloudformation:DescribeStackSet", - "cloudformation:ListStackInstances", - "cloudformation:DescribeStackInstance" - ] - }, - "read": { - "permissions": [ - "cloudformation:DescribeStackSet", - "cloudformation:ListStackInstances", - "cloudformation:DescribeStackInstance" - ] - }, - "update": { - "permissions": [ - "cloudformation:GetTemplateSummary", - "cloudformation:UpdateStackSet", - "cloudformation:CreateStackInstances", - "cloudformation:DeleteStackInstances", - "cloudformation:UpdateStackInstances", - "cloudformation:DescribeStackSet", - "cloudformation:DescribeStackSetOperation", - "cloudformation:ListStackSetOperationResults", - "cloudformation:TagResource", - "cloudformation:UntagResource", - "iam:PassRole" - ], - "timeoutInMinutes": 2160 - } - }, - "oneOf": [ - { - "required": [ - "TemplateURL" - ] - }, - { - "required": [ - "TemplateBody" - ] - } - ], - "primaryIdentifier": [ - "/properties/StackSetId" - ], - "properties": { - "AdministrationRoleARN": { - "maxLength": 2048, - "minLength": 20, - "type": "string" - }, - "AutoDeployment": { - "$ref": "#/definitions/AutoDeployment" - }, - "CallAs": { - "enum": [ - "SELF", - "DELEGATED_ADMIN" - ], - "type": "string" - }, - "Capabilities": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Capability" - }, - "type": "array", - "uniqueItems": true - }, - "Description": { - "maxLength": 1024, - "minLength": 1, - "type": "string" - }, - "ExecutionRoleName": { - "maxLength": 64, - "minLength": 1, - "type": "string" - }, - "ManagedExecution": { - "additionalProperties": false, - "properties": { - "Active": { - "$ref": "#/definitions/Active" - } - }, - "type": "object" - }, - "OperationPreferences": { - "$ref": "#/definitions/OperationPreferences" - }, - "Parameters": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Parameter" - }, - "type": "array", - "uniqueItems": true - }, - "PermissionModel": { - "enum": [ - "SELF_MANAGED", - "SERVICE_MANAGED" - ], - "type": "string" - }, - "StackInstancesGroup": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/StackInstances" - }, - "type": "array", - "uniqueItems": true - }, - "StackSetId": { - "type": "string" - }, - "StackSetName": { - "maxLength": 128, - "pattern": "^[a-zA-Z][a-zA-Z0-9\\-]{0,127}$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 50, - "type": "array", - "uniqueItems": true - }, - "TemplateBody": { - "maxLength": 51200, - "minLength": 1, - "type": "string" - }, - "TemplateURL": { - "maxLength": 5120, - "minLength": 1, - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/StackSetId" - ], - "required": [ - "StackSetName", - "PermissionModel" - ], - "resourceLink": { - "mappings": { - "StackSetId": "/StackSetId" - }, - "templateUri": "/cloudformation/home?region=${awsRegion}#/stacksets/${StackSetId}" - }, - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-cloudformation.git", - "typeName": "AWS::CloudFormation::StackSet", - "writeOnlyProperties": [ - "/properties/TemplateURL", - "/properties/OperationPreferences", - "/properties/StackInstancesGroup", - "/properties/CallAs" - ] -} diff --git a/src/cfnlint/data/schemas/providers/us_west_2/aws-cognito-userpooluicustomizationattachment.json b/src/cfnlint/data/schemas/providers/us_west_2/aws-cognito-userpooluicustomizationattachment.json new file mode 100644 index 0000000000..ff8cea02ef --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_west_2/aws-cognito-userpooluicustomizationattachment.json @@ -0,0 +1,61 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/UserPoolId", + "/properties/ClientId" + ], + "handlers": { + "create": { + "permissions": [ + "cognito-idp:SetUICustomization", + "cognito-idp:GetUICustomization" + ], + "timeoutInMinutes": 2 + }, + "delete": { + "permissions": [ + "cognito-idp:SetUICustomization", + "cognito-idp:GetUICustomization" + ], + "timeoutInMinutes": 2 + }, + "read": { + "permissions": [ + "cognito-idp:GetUICustomization" + ] + }, + "update": { + "permissions": [ + "cognito-idp:SetUICustomization" + ], + "timeoutInMinutes": 2 + } + }, + "primaryIdentifier": [ + "/properties/UserPoolId", + "/properties/ClientId" + ], + "properties": { + "CSS": { + "type": "string" + }, + "ClientId": { + "type": "string" + }, + "UserPoolId": { + "type": "string" + } + }, + "required": [ + "UserPoolId", + "ClientId" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": false, + "tagUpdatable": false, + "taggable": false + }, + "typeName": "AWS::Cognito::UserPoolUICustomizationAttachment" +} diff --git a/src/cfnlint/data/schemas/providers/us_west_2/aws-neptune-dbcluster.json b/src/cfnlint/data/schemas/providers/us_west_2/aws-neptune-dbcluster.json deleted file mode 100644 index d682d355d7..0000000000 --- a/src/cfnlint/data/schemas/providers/us_west_2/aws-neptune-dbcluster.json +++ /dev/null @@ -1,292 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/AvailabilityZones", - "/properties/DBClusterIdentifier", - "/properties/DBSubnetGroupName", - "/properties/KmsKeyId", - "/properties/RestoreToTime", - "/properties/RestoreType", - "/properties/SnapshotIdentifier", - "/properties/SourceDBClusterIdentifier", - "/properties/StorageEncrypted", - "/properties/UseLatestRestorableTime" - ], - "definitions": { - "DBClusterRole": { - "additionalProperties": false, - "properties": { - "FeatureName": { - "type": "string" - }, - "RoleArn": { - "type": "string" - } - }, - "required": [ - "RoleArn" - ], - "type": "object" - }, - "ServerlessScalingConfiguration": { - "additionalProperties": false, - "properties": { - "MaxCapacity": { - "maximum": 128, - "minimum": 2.5, - "type": "number" - }, - "MinCapacity": { - "maximum": 128, - "minimum": 1, - "type": "number" - } - }, - "required": [ - "MinCapacity", - "MaxCapacity" - ], - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:CreateDBCluster", - "rds:CreateDBInstance", - "rds:DescribeDBClusters", - "rds:ListTagsForResource", - "rds:ModifyDBCluster", - "rds:RestoreDBClusterFromSnapshot", - "rds:RestoreDBClusterToPointInTime", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "rds:DeleteDBCluster", - "rds:DeleteDBInstance", - "rds:DescribeDBClusters", - "rds:DescribeGlobalClusters", - "rds:ListTagsForResource", - "rds:RemoveFromGlobalCluster", - "rds:CreateDBClusterSnapshot", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "list": { - "permissions": [ - "rds:DescribeDBClusters", - "rds:ListTagsForResource", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "read": { - "permissions": [ - "rds:DescribeDBClusters", - "rds:ListTagsForResource", - "kms:*" - ], - "timeoutInMinutes": 2160 - }, - "update": { - "permissions": [ - "ec2:DescribeSecurityGroups", - "iam:PassRole", - "rds:AddRoleToDBCluster", - "rds:AddTagsToResource", - "rds:DescribeDBClusters", - "rds:DescribeDBInstances", - "rds:DescribeDBSubnetGroups", - "rds:DescribeGlobalClusters", - "rds:ListTagsForResource", - "rds:ModifyDBCluster", - "rds:ModifyDBInstance", - "rds:RemoveFromGlobalCluster", - "rds:RemoveRoleFromDBCluster", - "rds:RemoveTagsFromResource", - "kms:*" - ], - "timeoutInMinutes": 2160 - } - }, - "primaryIdentifier": [ - "/properties/DBClusterIdentifier" - ], - "properties": { - "AssociatedRoles": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/DBClusterRole" - }, - "type": "array", - "uniqueItems": true - }, - "AvailabilityZones": { - "insertionOrder": true, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "BackupRetentionPeriod": { - "default": 1, - "minimum": 1, - "type": "integer" - }, - "ClusterResourceId": { - "type": "string" - }, - "CopyTagsToSnapshot": { - "type": "boolean" - }, - "DBClusterIdentifier": { - "maxLength": 63, - "minLength": 1, - "pattern": "^[a-zA-Z]{1}(?:-?[a-zA-Z0-9]){0,62}$", - "type": "string" - }, - "DBClusterParameterGroupName": { - "type": "string" - }, - "DBInstanceParameterGroupName": { - "type": "string" - }, - "DBPort": { - "type": "integer" - }, - "DBSubnetGroupName": { - "type": "string" - }, - "DeletionProtection": { - "type": "boolean" - }, - "EnableCloudwatchLogsExports": { - "insertionOrder": true, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "Endpoint": { - "type": "string" - }, - "EngineVersion": { - "type": "string" - }, - "IamAuthEnabled": { - "type": "boolean" - }, - "KmsKeyId": { - "type": "string" - }, - "Port": { - "type": "string" - }, - "PreferredBackupWindow": { - "type": "string" - }, - "PreferredMaintenanceWindow": { - "type": "string" - }, - "ReadEndpoint": { - "type": "string" - }, - "RestoreToTime": { - "type": "string" - }, - "RestoreType": { - "default": "full-copy", - "type": "string" - }, - "ServerlessScalingConfiguration": { - "$ref": "#/definitions/ServerlessScalingConfiguration" - }, - "SnapshotIdentifier": { - "type": "string" - }, - "SourceDBClusterIdentifier": { - "type": "string" - }, - "StorageEncrypted": { - "type": "boolean" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 50, - "type": "array", - "uniqueItems": true - }, - "UseLatestRestorableTime": { - "type": "boolean" - }, - "VpcSecurityGroupIds": { - "insertionOrder": true, - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - } - }, - "propertyTransform": { - "/properties/DBClusterIdentifier": "$lowercase(DBClusterIdentifier)", - "/properties/DBClusterParameterGroupName": "$lowercase(DBClusterParameterGroupName)", - "/properties/DBSubnetGroupName": "$lowercase(DBSubnetGroupName)", - "/properties/SnapshotIdentifier": "$lowercase(SnapshotIdentifier)", - "/properties/SourceDBClusterIdentifier": "$lowercase(SourceDBClusterIdentifier)" - }, - "readOnlyProperties": [ - "/properties/Endpoint", - "/properties/ClusterResourceId", - "/properties/Port", - "/properties/ReadEndpoint" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-neptune", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::Neptune::DBCluster", - "writeOnlyProperties": [ - "/properties/DBInstanceParameterGroupName", - "/properties/RestoreToTime", - "/properties/RestoreType", - "/properties/SnapshotIdentifier", - "/properties/SourceDBClusterIdentifier", - "/properties/UseLatestRestorableTime" - ] -}