From 49b1b7a6e05d96084a974923810753d3ae9312f0 Mon Sep 17 00:00:00 2001 From: Kevin DeJong Date: Thu, 27 Jun 2024 13:15:33 -0700 Subject: [PATCH 1/2] Fix Api Gatewayv2 stage tags --- ...5a0d14c62111ff864923fc7b7960dda6.meta.json | 2 +- ...5e4752bbc10d9552de8df8f81348c42b.meta.json | 2 +- ...4cfc32461d10e077e7e5de1fc25d8b8f.meta.json | 2 +- ...7e9907e4a512c10ddae70b98b4dada43.meta.json | 2 +- ...04470222e5e4c690bacef5312891581d.meta.json | 2 +- ...646b563d773e34b020d0ddeab2fe195b.meta.json | 2 +- ...92030ae5c03d7451980a15735e557edb.meta.json | 2 +- ...25c8d66a1f84939600616bab42579541.meta.json | 2 +- ...972142778e1ff452383ede2ad4bac3d7.meta.json | 2 +- ...318c41c71c21b0a17d4f68d82c5aee21.meta.json | 2 +- ...e50a1638ffe0a5dba0d8805c190a05f8.meta.json | 2 +- .../all/aws_apigatewayv2_stage/tags.json | 22 +- .../providers/ap_northeast_3/__init__.py | 3 + .../aws-elasticache-parametergroup.json | 61 -- .../aws-mediaconnect-gateway.json | 106 --- .../aws-rolesanywhere-profile.json | 177 ----- .../schemas/providers/ap_south_1/__init__.py | 8 +- .../ap_south_1/aws-iot-authorizer.json | 128 ++++ .../ap_south_1/aws-iot-cacertificate.json | 174 +++++ .../aws-iot-certificateprovider.json | 125 ++++ .../aws-iot-domainconfiguration.json | 224 ++++++ .../providers/ap_south_1/aws-iot-policy.json | 110 +++ .../aws-iot-provisioningtemplate.json | 141 ++++ .../ap_south_1/aws-iot-rolealias.json | 124 ++++ .../ap_south_1/aws-rolesanywhere-profile.json | 177 ----- .../providers/ap_southeast_2/__init__.py | 7 +- .../ap_southeast_2/aws-iot-authorizer.json | 128 ++++ .../ap_southeast_2/aws-iot-cacertificate.json | 174 +++++ .../aws-iot-certificateprovider.json | 125 ++++ .../ap_southeast_2/aws-iot-policy.json | 110 +++ .../aws-iot-provisioningtemplate.json | 141 ++++ .../ap_southeast_2/aws-iot-rolealias.json | 124 ++++ .../aws-rolesanywhere-profile.json | 177 ----- .../providers/ap_southeast_4/__init__.py | 3 + .../ap_southeast_4/aws-rds-dbcluster.json | 503 ------------- .../ap_southeast_4/aws-rds-dbinstance.json | 670 ------------------ .../aws-rolesanywhere-profile.json | 177 ----- .../schemas/providers/eu_north_1/__init__.py | 5 + .../aws-controltower-enabledcontrol.json | 180 ----- .../eu_north_1/aws-mediaconnect-gateway.json | 106 --- .../eu_north_1/aws-rolesanywhere-profile.json | 177 ----- .../schemas/providers/eu_south_1/__init__.py | 7 + .../aws-controltower-enabledcontrol.json | 180 ----- .../aws-lambda-eventsourcemapping.json | 365 ---------- .../eu_south_1/aws-rds-dbcluster.json | 503 ------------- .../eu_south_1/aws-rds-dbinstance.json | 670 ------------------ .../eu_south_1/aws-rolesanywhere-profile.json | 177 ----- .../schemas/providers/eu_south_2/__init__.py | 4 + .../aws-controltower-enabledcontrol.json | 180 ----- .../eu_south_2/aws-rolesanywhere-profile.json | 177 ----- .../schemas/providers/eu_west_1/__init__.py | 9 +- .../eu_west_1/aws-iot-authorizer.json | 128 ++++ .../eu_west_1/aws-iot-cacertificate.json | 174 +++++ .../aws-iot-certificateprovider.json | 125 ++++ .../aws-iot-domainconfiguration.json | 224 ++++++ .../providers/eu_west_1/aws-iot-policy.json | 110 +++ .../aws-iot-provisioningtemplate.json | 141 ++++ .../eu_west_1/aws-iot-rolealias.json | 124 ++++ .../eu_west_1/aws-location-tracker.json | 185 +++++ .../eu_west_1/aws-osis-pipeline.json | 32 +- .../eu_west_1/aws-rolesanywhere-profile.json | 177 ----- .../schemas/providers/eu_west_2/__init__.py | 9 +- .../aws-elasticache-parametergroup.json | 61 -- .../eu_west_2/aws-iot-authorizer.json | 128 ++++ .../eu_west_2/aws-iot-cacertificate.json | 174 +++++ .../aws-iot-certificateprovider.json | 125 ++++ .../aws-iot-domainconfiguration.json | 224 ++++++ .../providers/eu_west_2/aws-iot-policy.json | 110 +++ .../aws-iot-provisioningtemplate.json | 141 ++++ .../eu_west_2/aws-iot-rolealias.json | 124 ++++ .../eu_west_2/aws-rolesanywhere-profile.json | 177 ----- .../us_east_1/aws-apigatewayv2-stage.json | 22 +- .../providers/us_gov_east_1/__init__.py | 20 + .../us_gov_east_1/aws-apigateway-account.json | 18 - .../us_gov_east_1/aws-apigateway-apikey.json | 123 ---- .../aws-apigateway-authorizer.json | 63 -- .../aws-apigateway-basepathmapping.json | 34 - .../aws-apigateway-clientcertificate.json | 43 -- .../aws-apigateway-deployment.json | 219 ------ .../aws-apigateway-documentationpart.json | 111 --- .../aws-apigateway-documentationversion.json | 32 - .../aws-apigateway-gatewayresponse.json | 71 -- .../us_gov_east_1/aws-apigateway-method.json | 289 -------- .../us_gov_east_1/aws-apigateway-model.json | 42 -- .../aws-apigateway-requestvalidator.json | 34 - .../aws-apigateway-resource.json | 34 - .../us_gov_east_1/aws-apigateway-restapi.json | 145 ---- .../us_gov_east_1/aws-apigateway-stage.json | 167 ----- .../aws-apigateway-usageplan.json | 158 ----- .../aws-apigateway-usageplankey.json | 73 -- .../us_gov_east_1/aws-apigateway-vpclink.json | 60 -- .../aws-controltower-enabledcontrol.json | 180 ----- .../us_gov_east_1/aws-rds-dbcluster.json | 3 + .../aws-rolesanywhere-profile.json | 177 ----- 94 files changed, 4169 insertions(+), 7323 deletions(-) delete mode 100644 src/cfnlint/data/schemas/providers/ap_northeast_3/aws-elasticache-parametergroup.json delete mode 100644 src/cfnlint/data/schemas/providers/ap_northeast_3/aws-mediaconnect-gateway.json delete mode 100644 src/cfnlint/data/schemas/providers/ap_northeast_3/aws-rolesanywhere-profile.json create mode 100644 src/cfnlint/data/schemas/providers/ap_south_1/aws-iot-authorizer.json create mode 100644 src/cfnlint/data/schemas/providers/ap_south_1/aws-iot-cacertificate.json create mode 100644 src/cfnlint/data/schemas/providers/ap_south_1/aws-iot-certificateprovider.json create mode 100644 src/cfnlint/data/schemas/providers/ap_south_1/aws-iot-domainconfiguration.json create mode 100644 src/cfnlint/data/schemas/providers/ap_south_1/aws-iot-policy.json create mode 100644 src/cfnlint/data/schemas/providers/ap_south_1/aws-iot-provisioningtemplate.json create mode 100644 src/cfnlint/data/schemas/providers/ap_south_1/aws-iot-rolealias.json delete mode 100644 src/cfnlint/data/schemas/providers/ap_south_1/aws-rolesanywhere-profile.json create mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_2/aws-iot-authorizer.json create mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_2/aws-iot-cacertificate.json create mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_2/aws-iot-certificateprovider.json create mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_2/aws-iot-policy.json create mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_2/aws-iot-provisioningtemplate.json create mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_2/aws-iot-rolealias.json delete mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_2/aws-rolesanywhere-profile.json delete mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_4/aws-rds-dbcluster.json delete mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_4/aws-rds-dbinstance.json delete mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_4/aws-rolesanywhere-profile.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_north_1/aws-controltower-enabledcontrol.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_north_1/aws-mediaconnect-gateway.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_north_1/aws-rolesanywhere-profile.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_south_1/aws-controltower-enabledcontrol.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_south_1/aws-lambda-eventsourcemapping.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_south_1/aws-rds-dbcluster.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_south_1/aws-rds-dbinstance.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_south_1/aws-rolesanywhere-profile.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_south_2/aws-controltower-enabledcontrol.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_south_2/aws-rolesanywhere-profile.json create mode 100644 src/cfnlint/data/schemas/providers/eu_west_1/aws-iot-authorizer.json create mode 100644 src/cfnlint/data/schemas/providers/eu_west_1/aws-iot-cacertificate.json create mode 100644 src/cfnlint/data/schemas/providers/eu_west_1/aws-iot-certificateprovider.json create mode 100644 src/cfnlint/data/schemas/providers/eu_west_1/aws-iot-domainconfiguration.json create mode 100644 src/cfnlint/data/schemas/providers/eu_west_1/aws-iot-policy.json create mode 100644 src/cfnlint/data/schemas/providers/eu_west_1/aws-iot-provisioningtemplate.json create mode 100644 src/cfnlint/data/schemas/providers/eu_west_1/aws-iot-rolealias.json create mode 100644 src/cfnlint/data/schemas/providers/eu_west_1/aws-location-tracker.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_west_1/aws-rolesanywhere-profile.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_west_2/aws-elasticache-parametergroup.json create mode 100644 src/cfnlint/data/schemas/providers/eu_west_2/aws-iot-authorizer.json create mode 100644 src/cfnlint/data/schemas/providers/eu_west_2/aws-iot-cacertificate.json create mode 100644 src/cfnlint/data/schemas/providers/eu_west_2/aws-iot-certificateprovider.json create mode 100644 src/cfnlint/data/schemas/providers/eu_west_2/aws-iot-domainconfiguration.json create mode 100644 src/cfnlint/data/schemas/providers/eu_west_2/aws-iot-policy.json create mode 100644 src/cfnlint/data/schemas/providers/eu_west_2/aws-iot-provisioningtemplate.json create mode 100644 src/cfnlint/data/schemas/providers/eu_west_2/aws-iot-rolealias.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_west_2/aws-rolesanywhere-profile.json delete mode 100644 src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-account.json delete mode 100644 src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-apikey.json delete mode 100644 src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-authorizer.json delete mode 100644 src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-basepathmapping.json delete mode 100644 src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-clientcertificate.json delete mode 100644 src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-deployment.json delete mode 100644 src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-documentationpart.json delete mode 100644 src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-documentationversion.json delete mode 100644 src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-gatewayresponse.json delete mode 100644 src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-method.json delete mode 100644 src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-model.json delete mode 100644 src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-requestvalidator.json delete mode 100644 src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-resource.json delete mode 100644 src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-restapi.json delete mode 100644 src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-stage.json delete mode 100644 src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-usageplan.json delete mode 100644 src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-usageplankey.json delete mode 100644 src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-vpclink.json delete mode 100644 src/cfnlint/data/schemas/providers/us_gov_east_1/aws-controltower-enabledcontrol.json delete mode 100644 src/cfnlint/data/schemas/providers/us_gov_east_1/aws-rolesanywhere-profile.json diff --git a/src/cfnlint/data/DownloadsMetadata/123ba181485ae293d5bd09722af0c19d5a0d14c62111ff864923fc7b7960dda6.meta.json b/src/cfnlint/data/DownloadsMetadata/123ba181485ae293d5bd09722af0c19d5a0d14c62111ff864923fc7b7960dda6.meta.json index 6c90b80e40..c9ef4b78ec 100644 --- a/src/cfnlint/data/DownloadsMetadata/123ba181485ae293d5bd09722af0c19d5a0d14c62111ff864923fc7b7960dda6.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/123ba181485ae293d5bd09722af0c19d5a0d14c62111ff864923fc7b7960dda6.meta.json @@ -1 +1 @@ -{"etag": "\"9afc60ca795ea9f3bd3399d820201ffb\"", "url": "https://schema.cloudformation.eu-south-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"2373adf8d7cf06125c9dce1f2c857fb1\"", "url": "https://schema.cloudformation.eu-south-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/18624fcc4a1c571691d10b2508e6be565e4752bbc10d9552de8df8f81348c42b.meta.json b/src/cfnlint/data/DownloadsMetadata/18624fcc4a1c571691d10b2508e6be565e4752bbc10d9552de8df8f81348c42b.meta.json index daaad6cb7d..1e4dbdc455 100644 --- a/src/cfnlint/data/DownloadsMetadata/18624fcc4a1c571691d10b2508e6be565e4752bbc10d9552de8df8f81348c42b.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/18624fcc4a1c571691d10b2508e6be565e4752bbc10d9552de8df8f81348c42b.meta.json @@ -1 +1 @@ -{"etag": "\"b026f401ac1698c34da9505b2687c666\"", "url": "https://schema.cloudformation.us-gov-east-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"48543535f5029a41d3ae983bdd6ea038\"", "url": "https://schema.cloudformation.us-gov-east-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/23be708e675cb6098b08969e4dbbc3f54cfc32461d10e077e7e5de1fc25d8b8f.meta.json b/src/cfnlint/data/DownloadsMetadata/23be708e675cb6098b08969e4dbbc3f54cfc32461d10e077e7e5de1fc25d8b8f.meta.json index 5251bef81e..1666735d6e 100644 --- a/src/cfnlint/data/DownloadsMetadata/23be708e675cb6098b08969e4dbbc3f54cfc32461d10e077e7e5de1fc25d8b8f.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/23be708e675cb6098b08969e4dbbc3f54cfc32461d10e077e7e5de1fc25d8b8f.meta.json @@ -1 +1 @@ -{"etag": "\"77f8f0ff694760d9d86001ab4dca1909\"", "url": "https://schema.cloudformation.us-gov-west-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"cab7c18393919e17ef44d9fca8c62008\"", "url": "https://schema.cloudformation.us-gov-west-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/276cecfeb1ec5e608e2aaa06925a2da57e9907e4a512c10ddae70b98b4dada43.meta.json b/src/cfnlint/data/DownloadsMetadata/276cecfeb1ec5e608e2aaa06925a2da57e9907e4a512c10ddae70b98b4dada43.meta.json index 0eac7df533..b8e62cff6e 100644 --- a/src/cfnlint/data/DownloadsMetadata/276cecfeb1ec5e608e2aaa06925a2da57e9907e4a512c10ddae70b98b4dada43.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/276cecfeb1ec5e608e2aaa06925a2da57e9907e4a512c10ddae70b98b4dada43.meta.json @@ -1 +1 @@ -{"etag": "\"ff2d86966614e2da2818a06627b839b4\"", "url": "https://schema.cloudformation.eu-west-2.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"65b40b4db962501650a1e88f9c9491ac\"", "url": "https://schema.cloudformation.eu-west-2.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/56584c7d00e444de640bef01fc2c630804470222e5e4c690bacef5312891581d.meta.json b/src/cfnlint/data/DownloadsMetadata/56584c7d00e444de640bef01fc2c630804470222e5e4c690bacef5312891581d.meta.json index 988e6a4e92..1478cb6daf 100644 --- a/src/cfnlint/data/DownloadsMetadata/56584c7d00e444de640bef01fc2c630804470222e5e4c690bacef5312891581d.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/56584c7d00e444de640bef01fc2c630804470222e5e4c690bacef5312891581d.meta.json @@ -1 +1 @@ -{"etag": "\"66934d611a2eb3f5c8878ea30df0351d\"", "url": "https://schema.cloudformation.ap-south-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"a7fa297fa2a6635990643cc1cd54931c\"", "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 8d90b961e7..2a09cbcc72 100644 --- a/src/cfnlint/data/DownloadsMetadata/583721567eccd1d5855daa623819df1a646b563d773e34b020d0ddeab2fe195b.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/583721567eccd1d5855daa623819df1a646b563d773e34b020d0ddeab2fe195b.meta.json @@ -1 +1 @@ -{"etag": "\"5292e9a834f0c72f512ff815414232f0\"", "url": "https://schema.cloudformation.ap-southeast-4.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"2c03e5e2eea0225c25bfe55e7ecd2ec0\"", "url": "https://schema.cloudformation.ap-southeast-4.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/d24ce9a45a014b1ff04d479422ea956e92030ae5c03d7451980a15735e557edb.meta.json b/src/cfnlint/data/DownloadsMetadata/d24ce9a45a014b1ff04d479422ea956e92030ae5c03d7451980a15735e557edb.meta.json index 78b1b8c877..61a94ed2a6 100644 --- a/src/cfnlint/data/DownloadsMetadata/d24ce9a45a014b1ff04d479422ea956e92030ae5c03d7451980a15735e557edb.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/d24ce9a45a014b1ff04d479422ea956e92030ae5c03d7451980a15735e557edb.meta.json @@ -1 +1 @@ -{"etag": "\"cf0cf4bff0da3e45998eaea296e3ca27\"", "url": "https://schema.cloudformation.ap-southeast-2.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"977b33ce91a84c2dea11a3ddda9fd55d\"", "url": "https://schema.cloudformation.ap-southeast-2.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/dd98171253ebc36f5b78e247f3132b5f25c8d66a1f84939600616bab42579541.meta.json b/src/cfnlint/data/DownloadsMetadata/dd98171253ebc36f5b78e247f3132b5f25c8d66a1f84939600616bab42579541.meta.json index 8fdf519e9b..bafd38da9b 100644 --- a/src/cfnlint/data/DownloadsMetadata/dd98171253ebc36f5b78e247f3132b5f25c8d66a1f84939600616bab42579541.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/dd98171253ebc36f5b78e247f3132b5f25c8d66a1f84939600616bab42579541.meta.json @@ -1 +1 @@ -{"etag": "\"d34ccc2ac672aba8821b3afc1cc7a6bc\"", "url": "https://schema.cloudformation.eu-north-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"4f0d3f9d9d917e31bc773ab8c275a489\"", "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 e1c3b687d7..c18cf268d6 100644 --- a/src/cfnlint/data/DownloadsMetadata/df4945435575c690a2651bb31e7a9b48972142778e1ff452383ede2ad4bac3d7.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/df4945435575c690a2651bb31e7a9b48972142778e1ff452383ede2ad4bac3d7.meta.json @@ -1 +1 @@ -{"etag": "\"eb993b3a9009cdf11b131cb1ad6c9d7d\"", "url": "https://schema.cloudformation.eu-south-2.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"c40bbb3c3cbbb88055cfc0aab0def317\"", "url": "https://schema.cloudformation.eu-south-2.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/ea0f7b8f144feb225afe73a24dfdf993318c41c71c21b0a17d4f68d82c5aee21.meta.json b/src/cfnlint/data/DownloadsMetadata/ea0f7b8f144feb225afe73a24dfdf993318c41c71c21b0a17d4f68d82c5aee21.meta.json index 2b80b5aad8..ef81c1f985 100644 --- a/src/cfnlint/data/DownloadsMetadata/ea0f7b8f144feb225afe73a24dfdf993318c41c71c21b0a17d4f68d82c5aee21.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/ea0f7b8f144feb225afe73a24dfdf993318c41c71c21b0a17d4f68d82c5aee21.meta.json @@ -1 +1 @@ -{"etag": "\"330741cbbbacf1fc399fd4b5c32210b5\"", "url": "https://schema.cloudformation.ap-northeast-3.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"1359f3b0008cf457fba000bcfe4fbfaa\"", "url": "https://schema.cloudformation.ap-northeast-3.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/fa657351d8e89c40ba6b82c4b1f5e1b5e50a1638ffe0a5dba0d8805c190a05f8.meta.json b/src/cfnlint/data/DownloadsMetadata/fa657351d8e89c40ba6b82c4b1f5e1b5e50a1638ffe0a5dba0d8805c190a05f8.meta.json index 38b3a812e1..8e7ea9135b 100644 --- a/src/cfnlint/data/DownloadsMetadata/fa657351d8e89c40ba6b82c4b1f5e1b5e50a1638ffe0a5dba0d8805c190a05f8.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/fa657351d8e89c40ba6b82c4b1f5e1b5e50a1638ffe0a5dba0d8805c190a05f8.meta.json @@ -1 +1 @@ -{"etag": "\"955fdade794e290a83d37778bf3c44e6\"", "url": "https://schema.cloudformation.eu-west-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"6b10a6a0aa4fe4344beeab0a839c8a1b\"", "url": "https://schema.cloudformation.eu-west-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/schemas/patches/providers/all/aws_apigatewayv2_stage/tags.json b/src/cfnlint/data/schemas/patches/providers/all/aws_apigatewayv2_stage/tags.json index d2747fbfd4..0703765854 100644 --- a/src/cfnlint/data/schemas/patches/providers/all/aws_apigatewayv2_stage/tags.json +++ b/src/cfnlint/data/schemas/patches/providers/all/aws_apigatewayv2_stage/tags.json @@ -10,23 +10,13 @@ "op": "replace", "path": "/properties/Tags", "value": { - "items": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" + "additionalProperties": false, + "patternProperties": { + ".*": { + "type": "string" + } }, - "type": "array" + "type": "object" } } ] 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 42b1febcf0..f6bd6f8cc4 100644 --- a/src/cfnlint/data/schemas/providers/ap_northeast_3/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_northeast_3/__init__.py @@ -981,6 +981,7 @@ "aws-wafv2-rulegroup.json", "aws-sagemaker-modelpackagegroup.json", "aws-ses-configurationset.json", + "aws-elasticache-parametergroup.json", "aws-networkfirewall-loggingconfiguration.json", "aws-glue-classifier.json", "aws-codedeploy-deploymentgroup.json", @@ -990,6 +991,7 @@ "aws-ec2-route.json", "aws-codecommit-repository.json", "aws-cloudformation-hookversion.json", + "aws-rolesanywhere-profile.json", "aws-refactorspaces-environment.json", "aws-xray-resourcepolicy.json", "aws-servicecatalog-launchtemplateconstraint.json", @@ -1138,6 +1140,7 @@ "aws-systemsmanagersap-application.json", "aws-dms-replicationtask.json", "aws-ec2-routetable.json", + "aws-mediaconnect-gateway.json", "aws-rds-dbproxyendpoint.json", "aws-datasync-locationsmb.json", "aws-securityhub-standard.json", diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-elasticache-parametergroup.json b/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-elasticache-parametergroup.json deleted file mode 100644 index c524f26845..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_northeast_3/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/ap_northeast_3/aws-mediaconnect-gateway.json b/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-mediaconnect-gateway.json deleted file mode 100644 index 3cab25d209..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-mediaconnect-gateway.json +++ /dev/null @@ -1,106 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name", - "/properties/EgressCidrBlocks", - "/properties/Networks", - "/properties/Networks/*/Name", - "/properties/Networks/*/CidrBlock" - ], - "definitions": { - "GatewayNetwork": { - "additionalProperties": false, - "properties": { - "CidrBlock": { - "type": "string" - }, - "Name": { - "type": "string" - } - }, - "required": [ - "Name", - "CidrBlock" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "iam:CreateServiceLinkedRole", - "mediaconnect:CreateGateway", - "mediaconnect:DescribeGateway" - ] - }, - "delete": { - "permissions": [ - "iam:CreateServiceLinkedRole", - "mediaconnect:DescribeGateway", - "mediaconnect:DeleteGateway" - ] - }, - "list": { - "permissions": [ - "mediaconnect:ListGateways" - ] - }, - "read": { - "permissions": [ - "mediaconnect:DescribeGateway" - ] - } - }, - "primaryIdentifier": [ - "/properties/GatewayArn" - ], - "properties": { - "EgressCidrBlocks": { - "insertionOrder": true, - "items": { - "type": "string" - }, - "type": "array" - }, - "GatewayArn": { - "type": "string" - }, - "GatewayState": { - "enum": [ - "CREATING", - "ACTIVE", - "UPDATING", - "ERROR", - "DELETING", - "DELETED" - ], - "type": "string" - }, - "Name": { - "type": "string" - }, - "Networks": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/GatewayNetwork" - }, - "maxItems": 4, - "minItems": 1, - "type": "array" - } - }, - "readOnlyProperties": [ - "/properties/GatewayArn", - "/properties/GatewayState" - ], - "required": [ - "Name", - "EgressCidrBlocks", - "Networks" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-mediaconnect.git", - "tagging": { - "taggable": false - }, - "typeName": "AWS::MediaConnect::Gateway" -} diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-rolesanywhere-profile.json b/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-rolesanywhere-profile.json deleted file mode 100644 index 9781637c58..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-rolesanywhere-profile.json +++ /dev/null @@ -1,177 +0,0 @@ -{ - "additionalProperties": false, - "definitions": { - "AttributeMapping": { - "additionalProperties": false, - "properties": { - "CertificateField": { - "$ref": "#/definitions/CertificateField" - }, - "MappingRules": { - "items": { - "$ref": "#/definitions/MappingRule" - }, - "type": "array" - } - }, - "required": [ - "CertificateField", - "MappingRules" - ], - "type": "object" - }, - "CertificateField": { - "enum": [ - "x509Subject", - "x509Issuer", - "x509SAN" - ], - "type": "string" - }, - "MappingRule": { - "additionalProperties": false, - "properties": { - "Specifier": { - "type": "string" - } - }, - "required": [ - "Specifier" - ], - "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": [ - "iam:GetRole", - "iam:GetPolicy", - "iam:PassRole", - "rolesanywhere:CreateProfile", - "rolesanywhere:TagResource", - "rolesanywhere:ListTagsForResource", - "rolesanywhere:PutAttributeMapping", - "rolesanywhere:DeleteAttributeMapping" - ] - }, - "delete": { - "permissions": [ - "rolesanywhere:DeleteProfile" - ] - }, - "list": { - "permissions": [ - "rolesanywhere:ListProfiles", - "rolesanywhere:ListTagsForResource" - ] - }, - "read": { - "permissions": [ - "rolesanywhere:GetProfile", - "rolesanywhere:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "iam:GetRole", - "iam:GetPolicy", - "iam:PassRole", - "rolesanywhere:GetProfile", - "rolesanywhere:UpdateProfile", - "rolesanywhere:EnableProfile", - "rolesanywhere:DisableProfile", - "rolesanywhere:TagResource", - "rolesanywhere:UntagResource", - "rolesanywhere:ListTagsForResource", - "rolesanywhere:PutAttributeMapping", - "rolesanywhere:DeleteAttributeMapping" - ] - } - }, - "primaryIdentifier": [ - "/properties/ProfileId" - ], - "properties": { - "AttributeMappings": { - "items": { - "$ref": "#/definitions/AttributeMapping" - }, - "type": "array" - }, - "DurationSeconds": { - "maximum": 43200, - "minimum": 900, - "type": "number" - }, - "Enabled": { - "type": "boolean" - }, - "ManagedPolicyArns": { - "items": { - "type": "string" - }, - "type": "array" - }, - "Name": { - "type": "string" - }, - "ProfileArn": { - "type": "string" - }, - "ProfileId": { - "pattern": "[a-f0-9]{8}-([a-z0-9]{4}-){3}[a-z0-9]{12}", - "type": "string" - }, - "RequireInstanceProperties": { - "type": "boolean" - }, - "RoleArns": { - "items": { - "maxLength": 1011, - "minLength": 1, - "type": "string" - }, - "type": "array" - }, - "SessionPolicy": { - "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 200, - "minItems": 0, - "type": "array" - } - }, - "readOnlyProperties": [ - "/properties/ProfileId", - "/properties/ProfileArn" - ], - "required": [ - "Name", - "RoleArns" - ], - "typeName": "AWS::RolesAnywhere::Profile" -} 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 ead46bf177..33a7932b51 100644 --- a/src/cfnlint/data/schemas/providers/ap_south_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_south_1/__init__.py @@ -1181,7 +1181,6 @@ "aws-dms-instanceprofile.json", "aws-opensearchserverless-vpcendpoint.json", "aws-quicksight-datasource.json", - "aws-iot-cacertificate.json", "aws-ec2-networkaclentry.json", "aws-ec2-networkinsightsaccessscopeanalysis.json", "aws-transfer-certificate.json", @@ -1427,6 +1426,7 @@ "aws-fis-experimenttemplate.json", "aws-codecommit-repository.json", "aws-cloudformation-hookversion.json", + "aws-rolesanywhere-profile.json", "aws-refactorspaces-environment.json", "aws-xray-resourcepolicy.json", "aws-iot-resourcespecificlogging.json", @@ -1479,7 +1479,6 @@ "aws-apigateway-usageplan.json", "aws-mediapackagev2-channel.json", "aws-batch-schedulingpolicy.json", - "aws-iot-authorizer.json", "aws-timestream-influxdbinstance.json", "aws-mediaconnect-bridgesource.json", "aws-mediapackagev2-channelpolicy.json", @@ -1591,7 +1590,6 @@ "aws-servicecatalog-tagoption.json", "aws-servicediscovery-privatednsnamespace.json", "aws-servicecatalog-launchroleconstraint.json", - "aws-iot-rolealias.json", "aws-sagemaker-modelbiasjobdefinition.json", "aws-secretsmanager-resourcepolicy.json", "aws-cloudformation-hookdefaultversion.json", @@ -1771,7 +1769,6 @@ "aws-elasticache-subnetgroup.json", "aws-xray-group.json", "aws-oam-link.json", - "aws-iot-domainconfiguration.json", "aws-sagemaker-endpoint.json", "aws-elasticloadbalancingv2-truststorerevocation.json", "aws-networkfirewall-firewall.json", @@ -1840,7 +1837,6 @@ "aws-bedrock-datasource.json", "aws-servicecatalog-portfolio.json", "aws-workspacesweb-truststore.json", - "aws-iot-policy.json", "aws-aps-scraper.json", "aws-ec2-transitgatewayroute.json", "aws-ssm-maintenancewindow.json", @@ -1965,7 +1961,6 @@ "aws-ivs-storageconfiguration.json", "aws-ec2-verifiedaccesstrustprovider.json", "aws-appmesh-virtualrouter.json", - "aws-iot-certificateprovider.json", "aws-pinpointemail-configurationset.json", "aws-pinpoint-emailtemplate.json", "aws-medialive-multiplex.json", @@ -2056,7 +2051,6 @@ "aws-ec2-securitygroupingress.json", "aws-guardduty-detector.json", "aws-sagemaker-modelqualityjobdefinition.json", - "aws-iot-provisioningtemplate.json", "aws-personalize-schema.json", "aws-appflow-flow.json", "aws-apigateway-stage.json", diff --git a/src/cfnlint/data/schemas/providers/ap_south_1/aws-iot-authorizer.json b/src/cfnlint/data/schemas/providers/ap_south_1/aws-iot-authorizer.json new file mode 100644 index 0000000000..4fd44d03a5 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_south_1/aws-iot-authorizer.json @@ -0,0 +1,128 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/SigningDisabled", + "/properties/AuthorizerName" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "iot:CreateAuthorizer", + "iot:DescribeAuthorizer", + "iot:TagResource", + "iot:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "iot:UpdateAuthorizer", + "iot:DeleteAuthorizer", + "iot:DescribeAuthorizer" + ] + }, + "list": { + "permissions": [ + "iot:ListAuthorizers" + ] + }, + "read": { + "permissions": [ + "iot:DescribeAuthorizer", + "iot:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "iot:UpdateAuthorizer", + "iot:DescribeAuthorizer", + "iot:TagResource", + "iot:UntagResource", + "iot:ListTagsForResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/AuthorizerName" + ], + "properties": { + "Arn": { + "type": "string" + }, + "AuthorizerFunctionArn": { + "type": "string" + }, + "AuthorizerName": { + "maxLength": 128, + "minLength": 1, + "pattern": "[\\w=,@-]+", + "type": "string" + }, + "EnableCachingForHttp": { + "type": "boolean" + }, + "SigningDisabled": { + "type": "boolean" + }, + "Status": { + "enum": [ + "ACTIVE", + "INACTIVE" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + }, + "TokenKeyName": { + "type": "string" + }, + "TokenSigningPublicKeys": { + "additionalProperties": false, + "patternProperties": { + "[a-zA-Z0-9:_-]+": { + "maxLength": 5120, + "type": "string" + } + }, + "type": "object" + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "required": [ + "AuthorizerFunctionArn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::IoT::Authorizer" +} diff --git a/src/cfnlint/data/schemas/providers/ap_south_1/aws-iot-cacertificate.json b/src/cfnlint/data/schemas/providers/ap_south_1/aws-iot-cacertificate.json new file mode 100644 index 0000000000..7c56105907 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_south_1/aws-iot-cacertificate.json @@ -0,0 +1,174 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/VerificationCertificatePem", + "/properties/CertificateMode", + "/properties/CACertificatePem" + ], + "definitions": { + "RegistrationConfig": { + "additionalProperties": false, + "properties": { + "RoleArn": { + "maxLength": 2048, + "minLength": 20, + "pattern": "arn:(aws[a-zA-Z-]*)?:iam::\\d{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+", + "type": "string" + }, + "TemplateBody": { + "maxLength": 10240, + "minLength": 0, + "pattern": "[\\s\\S]*", + "type": "string" + }, + "TemplateName": { + "maxLength": 36, + "minLength": 1, + "pattern": "^[0-9A-Za-z_-]+$", + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 127, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "iam:GetRole", + "iam:PassRole", + "iot:RegisterCACertificate", + "iot:DescribeCACertificate", + "iot:TagResource", + "iot:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "iot:UpdateCACertificate", + "iot:DeleteCACertificate", + "iot:DescribeCACertificate" + ] + }, + "list": { + "permissions": [ + "iot:ListCACertificates" + ] + }, + "read": { + "permissions": [ + "iot:DescribeCACertificate", + "iot:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "iam:GetRole", + "iam:PassRole", + "iot:UpdateCACertificate", + "iot:DescribeCACertificate", + "iot:TagResource", + "iot:UntagResource", + "iot:ListTagsForResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "Arn": { + "type": "string" + }, + "AutoRegistrationStatus": { + "enum": [ + "ENABLE", + "DISABLE" + ], + "type": "string" + }, + "CACertificatePem": { + "maxLength": 65536, + "minLength": 1, + "pattern": "[\\s\\S]*", + "type": "string" + }, + "CertificateMode": { + "enum": [ + "DEFAULT", + "SNI_ONLY" + ], + "type": "string" + }, + "Id": { + "type": "string" + }, + "RegistrationConfig": { + "$ref": "#/definitions/RegistrationConfig" + }, + "RemoveAutoRegistration": { + "type": "boolean" + }, + "Status": { + "enum": [ + "ACTIVE", + "INACTIVE" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + }, + "VerificationCertificatePem": { + "maxLength": 65536, + "minLength": 1, + "pattern": "[\\s\\S]*", + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/Id" + ], + "required": [ + "CACertificatePem", + "Status" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::IoT::CACertificate", + "writeOnlyProperties": [ + "/properties/VerificationCertificatePem", + "/properties/RemoveAutoRegistration" + ] +} diff --git a/src/cfnlint/data/schemas/providers/ap_south_1/aws-iot-certificateprovider.json b/src/cfnlint/data/schemas/providers/ap_south_1/aws-iot-certificateprovider.json new file mode 100644 index 0000000000..ea4c9d9f71 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_south_1/aws-iot-certificateprovider.json @@ -0,0 +1,125 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/CertificateProviderName" + ], + "definitions": { + "CertificateProviderOperation": { + "enum": [ + "CreateCertificateFromCsr" + ], + "type": "string" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 127, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "iot:CreateCertificateProvider", + "iot:DescribeCertificateProvider", + "iot:TagResource", + "iot:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "iot:DeleteCertificateProvider", + "iot:DescribeCertificateProvider" + ] + }, + "list": { + "permissions": [ + "iot:ListCertificateProviders" + ] + }, + "read": { + "permissions": [ + "iot:DescribeCertificateProvider", + "iot:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "iot:UpdateCertificateProvider", + "iot:DescribeCertificateProvider", + "iot:TagResource", + "iot:UntagResource", + "iot:ListTagsForResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/CertificateProviderName" + ], + "properties": { + "AccountDefaultForOperations": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/CertificateProviderOperation" + }, + "maxItems": 1, + "minItems": 1, + "type": "array", + "uniqueItems": true + }, + "Arn": { + "type": "string" + }, + "CertificateProviderName": { + "maxLength": 128, + "minLength": 1, + "pattern": "[\\w=,@-]+", + "type": "string" + }, + "LambdaFunctionArn": { + "maxLength": 170, + "minLength": 1, + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 50, + "type": "array", + "uniqueItems": true + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "replacementStrategy": "delete_then_create", + "required": [ + "LambdaFunctionArn", + "AccountDefaultForOperations" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::IoT::CertificateProvider" +} diff --git a/src/cfnlint/data/schemas/providers/ap_south_1/aws-iot-domainconfiguration.json b/src/cfnlint/data/schemas/providers/ap_south_1/aws-iot-domainconfiguration.json new file mode 100644 index 0000000000..03db5c565e --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_south_1/aws-iot-domainconfiguration.json @@ -0,0 +1,224 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/DomainConfigurationName", + "/properties/DomainName", + "/properties/ServiceType", + "/properties/ValidationCertificateArn", + "/properties/ServerCertificateArns" + ], + "definitions": { + "AuthorizerConfig": { + "additionalProperties": false, + "properties": { + "AllowAuthorizerOverride": { + "type": "boolean" + }, + "DefaultAuthorizerName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[\\w=,@-]+$", + "type": "string" + } + }, + "type": "object" + }, + "ServerCertificateConfig": { + "additionalProperties": false, + "properties": { + "EnableOCSPCheck": { + "type": "boolean" + } + }, + "type": "object" + }, + "ServerCertificateSummary": { + "additionalProperties": false, + "properties": { + "ServerCertificateArn": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^arn:aws(-cn|-us-gov|-iso-b|-iso)?:acm:[a-z]{2}-(gov-|iso-|isob-)?[a-z]{4,9}-\\d{1}:\\d{12}:certificate/[a-zA-Z0-9/-]+$", + "type": "string" + }, + "ServerCertificateStatus": { + "enum": [ + "INVALID", + "VALID" + ], + "type": "string" + }, + "ServerCertificateStatusDetail": { + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "TlsConfig": { + "additionalProperties": false, + "properties": { + "SecurityPolicy": { + "maxLength": 128, + "type": "string" + } + }, + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "iot:CreateDomainConfiguration", + "iot:UpdateDomainConfiguration", + "iot:DescribeDomainConfiguration", + "iot:TagResource", + "iot:ListTagsForResource", + "acm:GetCertificate" + ] + }, + "delete": { + "permissions": [ + "iot:DescribeDomainConfiguration", + "iot:DeleteDomainConfiguration", + "iot:UpdateDomainConfiguration" + ] + }, + "list": { + "permissions": [ + "iot:ListDomainConfigurations" + ] + }, + "read": { + "permissions": [ + "iot:DescribeDomainConfiguration", + "iot:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "iot:UpdateDomainConfiguration", + "iot:DescribeDomainConfiguration", + "iot:ListTagsForResource", + "iot:TagResource", + "iot:UntagResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/DomainConfigurationName" + ], + "properties": { + "Arn": { + "type": "string" + }, + "AuthorizerConfig": { + "$ref": "#/definitions/AuthorizerConfig" + }, + "DomainConfigurationName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[\\w.-]+$", + "type": "string" + }, + "DomainConfigurationStatus": { + "enum": [ + "ENABLED", + "DISABLED" + ], + "type": "string" + }, + "DomainName": { + "maxLength": 253, + "minLength": 1, + "type": "string" + }, + "DomainType": { + "enum": [ + "ENDPOINT", + "AWS_MANAGED", + "CUSTOMER_MANAGED" + ], + "type": "string" + }, + "ServerCertificateArns": { + "insertionOrder": true, + "items": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^arn:aws(-cn|-us-gov|-iso-b|-iso)?:acm:[a-z]{2}-(gov-|iso-|isob-)?[a-z]{4,9}-\\d{1}:\\d{12}:certificate/[a-zA-Z0-9/-]+$", + "type": "string" + }, + "maxItems": 1, + "minItems": 0, + "type": "array" + }, + "ServerCertificateConfig": { + "$ref": "#/definitions/ServerCertificateConfig" + }, + "ServerCertificates": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/ServerCertificateSummary" + }, + "type": "array" + }, + "ServiceType": { + "enum": [ + "DATA", + "CREDENTIAL_PROVIDER", + "JOBS" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + }, + "TlsConfig": { + "$ref": "#/definitions/TlsConfig" + }, + "ValidationCertificateArn": { + "pattern": "^arn:aws(-cn|-us-gov|-iso-b|-iso)?:acm:[a-z]{2}-(gov-|iso-|isob-)?[a-z]{4,9}-\\d{1}:\\d{12}:certificate/[a-zA-Z0-9/-]+$", + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/DomainType", + "/properties/ServerCertificates" + ], + "required": [], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::IoT::DomainConfiguration", + "writeOnlyProperties": [ + "/properties/ValidationCertificateArn", + "/properties/ServerCertificateArns" + ] +} diff --git a/src/cfnlint/data/schemas/providers/ap_south_1/aws-iot-policy.json b/src/cfnlint/data/schemas/providers/ap_south_1/aws-iot-policy.json new file mode 100644 index 0000000000..6a8b285974 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_south_1/aws-iot-policy.json @@ -0,0 +1,110 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/PolicyName" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "iot:CreatePolicy", + "iot:GetPolicy", + "iot:TagResource", + "iot:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "iot:DeletePolicy", + "iot:GetPolicy", + "iot:ListPolicyVersions", + "iot:DeletePolicyVersion" + ] + }, + "list": { + "permissions": [ + "iot:ListPolicies" + ] + }, + "read": { + "permissions": [ + "iot:GetPolicy", + "iot:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "iot:GetPolicy", + "iot:ListPolicyVersions", + "iot:CreatePolicyVersion", + "iot:DeletePolicyVersion", + "iot:SetDefaultPolicyVersion", + "iot:TagResource", + "iot:UntagResource", + "iot:ListTagsForResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "Arn": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "PolicyDocument": { + "maxLength": 404600, + "minLength": 1, + "type": [ + "object", + "string" + ] + }, + "PolicyName": { + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + } + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/Id" + ], + "required": [ + "PolicyDocument" + ], + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::IoT::Policy" +} diff --git a/src/cfnlint/data/schemas/providers/ap_south_1/aws-iot-provisioningtemplate.json b/src/cfnlint/data/schemas/providers/ap_south_1/aws-iot-provisioningtemplate.json new file mode 100644 index 0000000000..31a4f45b65 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_south_1/aws-iot-provisioningtemplate.json @@ -0,0 +1,141 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/TemplateName", + "/properties/TemplateType" + ], + "definitions": { + "ProvisioningHook": { + "additionalProperties": false, + "properties": { + "PayloadVersion": { + "type": "string" + }, + "TargetArn": { + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "iam:GetRole", + "iam:PassRole", + "iot:CreateProvisioningTemplate", + "iot:DescribeProvisioningTemplate", + "iot:TagResource", + "iot:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "iot:DeleteProvisioningTemplate", + "iot:DescribeProvisioningTemplate" + ] + }, + "list": { + "permissions": [ + "iot:ListProvisioningTemplates" + ] + }, + "read": { + "permissions": [ + "iot:DescribeProvisioningTemplate", + "iot:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "iam:GetRole", + "iam:PassRole", + "iot:UpdateProvisioningTemplate", + "iot:CreateProvisioningTemplateVersion", + "iot:ListProvisioningTemplateVersions", + "iot:DeleteProvisioningTemplateVersion", + "iot:DescribeProvisioningTemplate", + "iot:TagResource", + "iot:UntagResource", + "iot:ListTagsForResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/TemplateName" + ], + "properties": { + "Description": { + "maxLength": 500, + "type": "string" + }, + "Enabled": { + "type": "boolean" + }, + "PreProvisioningHook": { + "$ref": "#/definitions/ProvisioningHook" + }, + "ProvisioningRoleArn": { + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + }, + "TemplateArn": { + "type": "string" + }, + "TemplateBody": { + "type": "string" + }, + "TemplateName": { + "maxLength": 36, + "minLength": 1, + "pattern": "^[0-9A-Za-z_-]+$", + "type": "string" + }, + "TemplateType": { + "enum": [ + "FLEET_PROVISIONING", + "JITP" + ], + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/TemplateArn" + ], + "required": [ + "ProvisioningRoleArn", + "TemplateBody" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::IoT::ProvisioningTemplate" +} diff --git a/src/cfnlint/data/schemas/providers/ap_south_1/aws-iot-rolealias.json b/src/cfnlint/data/schemas/providers/ap_south_1/aws-iot-rolealias.json new file mode 100644 index 0000000000..5ea03cb1af --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_south_1/aws-iot-rolealias.json @@ -0,0 +1,124 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/RoleAlias" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 127, + "minLength": 1, + "pattern": "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$", + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 1, + "pattern": "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$", + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "iam:GetRole", + "iam:PassRole", + "iot:CreateRoleAlias", + "iot:DescribeRoleAlias", + "iot:TagResource", + "iot:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "iot:DeleteRoleAlias", + "iot:DescribeRoleAlias" + ] + }, + "list": { + "permissions": [ + "iot:ListRoleAliases" + ] + }, + "read": { + "permissions": [ + "iam:GetRole", + "iam:PassRole", + "iot:DescribeRoleAlias", + "iot:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "iam:GetRole", + "iam:PassRole", + "iot:UpdateRoleAlias", + "iot:DescribeRoleAlias", + "iot:TagResource", + "iot:UntagResource", + "iot:ListTagsForResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/RoleAlias" + ], + "properties": { + "CredentialDurationSeconds": { + "default": 3600, + "maximum": 43200, + "minimum": 900, + "type": "integer" + }, + "RoleAlias": { + "maxLength": 128, + "minLength": 1, + "pattern": "[\\w=,@-]+", + "type": "string" + }, + "RoleAliasArn": { + "maxLength": 128, + "minLength": 1, + "pattern": "[\\w=,@-]+", + "type": "string" + }, + "RoleArn": { + "maxLength": 2048, + "minLength": 20, + "pattern": "arn:(aws[a-zA-Z-]*)?:iam::\\d{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+", + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + } + }, + "readOnlyProperties": [ + "/properties/RoleAliasArn" + ], + "required": [ + "RoleArn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::IoT::RoleAlias" +} diff --git a/src/cfnlint/data/schemas/providers/ap_south_1/aws-rolesanywhere-profile.json b/src/cfnlint/data/schemas/providers/ap_south_1/aws-rolesanywhere-profile.json deleted file mode 100644 index 9781637c58..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_south_1/aws-rolesanywhere-profile.json +++ /dev/null @@ -1,177 +0,0 @@ -{ - "additionalProperties": false, - "definitions": { - "AttributeMapping": { - "additionalProperties": false, - "properties": { - "CertificateField": { - "$ref": "#/definitions/CertificateField" - }, - "MappingRules": { - "items": { - "$ref": "#/definitions/MappingRule" - }, - "type": "array" - } - }, - "required": [ - "CertificateField", - "MappingRules" - ], - "type": "object" - }, - "CertificateField": { - "enum": [ - "x509Subject", - "x509Issuer", - "x509SAN" - ], - "type": "string" - }, - "MappingRule": { - "additionalProperties": false, - "properties": { - "Specifier": { - "type": "string" - } - }, - "required": [ - "Specifier" - ], - "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": [ - "iam:GetRole", - "iam:GetPolicy", - "iam:PassRole", - "rolesanywhere:CreateProfile", - "rolesanywhere:TagResource", - "rolesanywhere:ListTagsForResource", - "rolesanywhere:PutAttributeMapping", - "rolesanywhere:DeleteAttributeMapping" - ] - }, - "delete": { - "permissions": [ - "rolesanywhere:DeleteProfile" - ] - }, - "list": { - "permissions": [ - "rolesanywhere:ListProfiles", - "rolesanywhere:ListTagsForResource" - ] - }, - "read": { - "permissions": [ - "rolesanywhere:GetProfile", - "rolesanywhere:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "iam:GetRole", - "iam:GetPolicy", - "iam:PassRole", - "rolesanywhere:GetProfile", - "rolesanywhere:UpdateProfile", - "rolesanywhere:EnableProfile", - "rolesanywhere:DisableProfile", - "rolesanywhere:TagResource", - "rolesanywhere:UntagResource", - "rolesanywhere:ListTagsForResource", - "rolesanywhere:PutAttributeMapping", - "rolesanywhere:DeleteAttributeMapping" - ] - } - }, - "primaryIdentifier": [ - "/properties/ProfileId" - ], - "properties": { - "AttributeMappings": { - "items": { - "$ref": "#/definitions/AttributeMapping" - }, - "type": "array" - }, - "DurationSeconds": { - "maximum": 43200, - "minimum": 900, - "type": "number" - }, - "Enabled": { - "type": "boolean" - }, - "ManagedPolicyArns": { - "items": { - "type": "string" - }, - "type": "array" - }, - "Name": { - "type": "string" - }, - "ProfileArn": { - "type": "string" - }, - "ProfileId": { - "pattern": "[a-f0-9]{8}-([a-z0-9]{4}-){3}[a-z0-9]{12}", - "type": "string" - }, - "RequireInstanceProperties": { - "type": "boolean" - }, - "RoleArns": { - "items": { - "maxLength": 1011, - "minLength": 1, - "type": "string" - }, - "type": "array" - }, - "SessionPolicy": { - "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 200, - "minItems": 0, - "type": "array" - } - }, - "readOnlyProperties": [ - "/properties/ProfileId", - "/properties/ProfileArn" - ], - "required": [ - "Name", - "RoleArns" - ], - "typeName": "AWS::RolesAnywhere::Profile" -} 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 78d02c0ac6..36a8a32a2a 100644 --- a/src/cfnlint/data/schemas/providers/ap_southeast_2/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_southeast_2/__init__.py @@ -1275,7 +1275,6 @@ "aws-dms-instanceprofile.json", "aws-opensearchserverless-vpcendpoint.json", "aws-quicksight-datasource.json", - "aws-iot-cacertificate.json", "aws-ec2-networkaclentry.json", "aws-ec2-networkinsightsaccessscopeanalysis.json", "aws-transfer-certificate.json", @@ -1543,6 +1542,7 @@ "aws-fis-experimenttemplate.json", "aws-codecommit-repository.json", "aws-cloudformation-hookversion.json", + "aws-rolesanywhere-profile.json", "aws-refactorspaces-environment.json", "aws-xray-resourcepolicy.json", "aws-iot-resourcespecificlogging.json", @@ -1602,7 +1602,6 @@ "aws-mediapackagev2-channel.json", "aws-appintegrations-eventintegration.json", "aws-batch-schedulingpolicy.json", - "aws-iot-authorizer.json", "aws-timestream-influxdbinstance.json", "aws-mediaconnect-bridgesource.json", "aws-mediapackagev2-channelpolicy.json", @@ -1719,7 +1718,6 @@ "aws-servicecatalog-tagoption.json", "aws-servicediscovery-privatednsnamespace.json", "aws-servicecatalog-launchroleconstraint.json", - "aws-iot-rolealias.json", "aws-sagemaker-modelbiasjobdefinition.json", "aws-secretsmanager-resourcepolicy.json", "aws-cloudformation-hookdefaultversion.json", @@ -1992,7 +1990,6 @@ "aws-servicecatalog-portfolio.json", "aws-workspacesweb-truststore.json", "aws-customerprofiles-domain.json", - "aws-iot-policy.json", "aws-aps-scraper.json", "aws-ec2-transitgatewayroute.json", "aws-ssm-maintenancewindow.json", @@ -2132,7 +2129,6 @@ "aws-waf-xssmatchset.json", "aws-ec2-verifiedaccesstrustprovider.json", "aws-appmesh-virtualrouter.json", - "aws-iot-certificateprovider.json", "aws-pinpointemail-configurationset.json", "aws-pinpoint-emailtemplate.json", "aws-medialive-multiplex.json", @@ -2236,7 +2232,6 @@ "aws-ec2-securitygroupingress.json", "aws-guardduty-detector.json", "aws-sagemaker-modelqualityjobdefinition.json", - "aws-iot-provisioningtemplate.json", "aws-personalize-schema.json", "aws-appflow-flow.json", "aws-apigateway-stage.json", diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-iot-authorizer.json b/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-iot-authorizer.json new file mode 100644 index 0000000000..4fd44d03a5 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-iot-authorizer.json @@ -0,0 +1,128 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/SigningDisabled", + "/properties/AuthorizerName" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "iot:CreateAuthorizer", + "iot:DescribeAuthorizer", + "iot:TagResource", + "iot:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "iot:UpdateAuthorizer", + "iot:DeleteAuthorizer", + "iot:DescribeAuthorizer" + ] + }, + "list": { + "permissions": [ + "iot:ListAuthorizers" + ] + }, + "read": { + "permissions": [ + "iot:DescribeAuthorizer", + "iot:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "iot:UpdateAuthorizer", + "iot:DescribeAuthorizer", + "iot:TagResource", + "iot:UntagResource", + "iot:ListTagsForResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/AuthorizerName" + ], + "properties": { + "Arn": { + "type": "string" + }, + "AuthorizerFunctionArn": { + "type": "string" + }, + "AuthorizerName": { + "maxLength": 128, + "minLength": 1, + "pattern": "[\\w=,@-]+", + "type": "string" + }, + "EnableCachingForHttp": { + "type": "boolean" + }, + "SigningDisabled": { + "type": "boolean" + }, + "Status": { + "enum": [ + "ACTIVE", + "INACTIVE" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + }, + "TokenKeyName": { + "type": "string" + }, + "TokenSigningPublicKeys": { + "additionalProperties": false, + "patternProperties": { + "[a-zA-Z0-9:_-]+": { + "maxLength": 5120, + "type": "string" + } + }, + "type": "object" + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "required": [ + "AuthorizerFunctionArn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::IoT::Authorizer" +} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-iot-cacertificate.json b/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-iot-cacertificate.json new file mode 100644 index 0000000000..7c56105907 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-iot-cacertificate.json @@ -0,0 +1,174 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/VerificationCertificatePem", + "/properties/CertificateMode", + "/properties/CACertificatePem" + ], + "definitions": { + "RegistrationConfig": { + "additionalProperties": false, + "properties": { + "RoleArn": { + "maxLength": 2048, + "minLength": 20, + "pattern": "arn:(aws[a-zA-Z-]*)?:iam::\\d{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+", + "type": "string" + }, + "TemplateBody": { + "maxLength": 10240, + "minLength": 0, + "pattern": "[\\s\\S]*", + "type": "string" + }, + "TemplateName": { + "maxLength": 36, + "minLength": 1, + "pattern": "^[0-9A-Za-z_-]+$", + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 127, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "iam:GetRole", + "iam:PassRole", + "iot:RegisterCACertificate", + "iot:DescribeCACertificate", + "iot:TagResource", + "iot:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "iot:UpdateCACertificate", + "iot:DeleteCACertificate", + "iot:DescribeCACertificate" + ] + }, + "list": { + "permissions": [ + "iot:ListCACertificates" + ] + }, + "read": { + "permissions": [ + "iot:DescribeCACertificate", + "iot:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "iam:GetRole", + "iam:PassRole", + "iot:UpdateCACertificate", + "iot:DescribeCACertificate", + "iot:TagResource", + "iot:UntagResource", + "iot:ListTagsForResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "Arn": { + "type": "string" + }, + "AutoRegistrationStatus": { + "enum": [ + "ENABLE", + "DISABLE" + ], + "type": "string" + }, + "CACertificatePem": { + "maxLength": 65536, + "minLength": 1, + "pattern": "[\\s\\S]*", + "type": "string" + }, + "CertificateMode": { + "enum": [ + "DEFAULT", + "SNI_ONLY" + ], + "type": "string" + }, + "Id": { + "type": "string" + }, + "RegistrationConfig": { + "$ref": "#/definitions/RegistrationConfig" + }, + "RemoveAutoRegistration": { + "type": "boolean" + }, + "Status": { + "enum": [ + "ACTIVE", + "INACTIVE" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + }, + "VerificationCertificatePem": { + "maxLength": 65536, + "minLength": 1, + "pattern": "[\\s\\S]*", + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/Id" + ], + "required": [ + "CACertificatePem", + "Status" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::IoT::CACertificate", + "writeOnlyProperties": [ + "/properties/VerificationCertificatePem", + "/properties/RemoveAutoRegistration" + ] +} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-iot-certificateprovider.json b/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-iot-certificateprovider.json new file mode 100644 index 0000000000..ea4c9d9f71 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-iot-certificateprovider.json @@ -0,0 +1,125 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/CertificateProviderName" + ], + "definitions": { + "CertificateProviderOperation": { + "enum": [ + "CreateCertificateFromCsr" + ], + "type": "string" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 127, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "iot:CreateCertificateProvider", + "iot:DescribeCertificateProvider", + "iot:TagResource", + "iot:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "iot:DeleteCertificateProvider", + "iot:DescribeCertificateProvider" + ] + }, + "list": { + "permissions": [ + "iot:ListCertificateProviders" + ] + }, + "read": { + "permissions": [ + "iot:DescribeCertificateProvider", + "iot:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "iot:UpdateCertificateProvider", + "iot:DescribeCertificateProvider", + "iot:TagResource", + "iot:UntagResource", + "iot:ListTagsForResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/CertificateProviderName" + ], + "properties": { + "AccountDefaultForOperations": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/CertificateProviderOperation" + }, + "maxItems": 1, + "minItems": 1, + "type": "array", + "uniqueItems": true + }, + "Arn": { + "type": "string" + }, + "CertificateProviderName": { + "maxLength": 128, + "minLength": 1, + "pattern": "[\\w=,@-]+", + "type": "string" + }, + "LambdaFunctionArn": { + "maxLength": 170, + "minLength": 1, + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 50, + "type": "array", + "uniqueItems": true + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "replacementStrategy": "delete_then_create", + "required": [ + "LambdaFunctionArn", + "AccountDefaultForOperations" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::IoT::CertificateProvider" +} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-iot-policy.json b/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-iot-policy.json new file mode 100644 index 0000000000..6a8b285974 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-iot-policy.json @@ -0,0 +1,110 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/PolicyName" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "iot:CreatePolicy", + "iot:GetPolicy", + "iot:TagResource", + "iot:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "iot:DeletePolicy", + "iot:GetPolicy", + "iot:ListPolicyVersions", + "iot:DeletePolicyVersion" + ] + }, + "list": { + "permissions": [ + "iot:ListPolicies" + ] + }, + "read": { + "permissions": [ + "iot:GetPolicy", + "iot:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "iot:GetPolicy", + "iot:ListPolicyVersions", + "iot:CreatePolicyVersion", + "iot:DeletePolicyVersion", + "iot:SetDefaultPolicyVersion", + "iot:TagResource", + "iot:UntagResource", + "iot:ListTagsForResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "Arn": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "PolicyDocument": { + "maxLength": 404600, + "minLength": 1, + "type": [ + "object", + "string" + ] + }, + "PolicyName": { + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + } + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/Id" + ], + "required": [ + "PolicyDocument" + ], + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::IoT::Policy" +} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-iot-provisioningtemplate.json b/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-iot-provisioningtemplate.json new file mode 100644 index 0000000000..31a4f45b65 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-iot-provisioningtemplate.json @@ -0,0 +1,141 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/TemplateName", + "/properties/TemplateType" + ], + "definitions": { + "ProvisioningHook": { + "additionalProperties": false, + "properties": { + "PayloadVersion": { + "type": "string" + }, + "TargetArn": { + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "iam:GetRole", + "iam:PassRole", + "iot:CreateProvisioningTemplate", + "iot:DescribeProvisioningTemplate", + "iot:TagResource", + "iot:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "iot:DeleteProvisioningTemplate", + "iot:DescribeProvisioningTemplate" + ] + }, + "list": { + "permissions": [ + "iot:ListProvisioningTemplates" + ] + }, + "read": { + "permissions": [ + "iot:DescribeProvisioningTemplate", + "iot:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "iam:GetRole", + "iam:PassRole", + "iot:UpdateProvisioningTemplate", + "iot:CreateProvisioningTemplateVersion", + "iot:ListProvisioningTemplateVersions", + "iot:DeleteProvisioningTemplateVersion", + "iot:DescribeProvisioningTemplate", + "iot:TagResource", + "iot:UntagResource", + "iot:ListTagsForResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/TemplateName" + ], + "properties": { + "Description": { + "maxLength": 500, + "type": "string" + }, + "Enabled": { + "type": "boolean" + }, + "PreProvisioningHook": { + "$ref": "#/definitions/ProvisioningHook" + }, + "ProvisioningRoleArn": { + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + }, + "TemplateArn": { + "type": "string" + }, + "TemplateBody": { + "type": "string" + }, + "TemplateName": { + "maxLength": 36, + "minLength": 1, + "pattern": "^[0-9A-Za-z_-]+$", + "type": "string" + }, + "TemplateType": { + "enum": [ + "FLEET_PROVISIONING", + "JITP" + ], + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/TemplateArn" + ], + "required": [ + "ProvisioningRoleArn", + "TemplateBody" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::IoT::ProvisioningTemplate" +} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-iot-rolealias.json b/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-iot-rolealias.json new file mode 100644 index 0000000000..5ea03cb1af --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-iot-rolealias.json @@ -0,0 +1,124 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/RoleAlias" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 127, + "minLength": 1, + "pattern": "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$", + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 1, + "pattern": "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$", + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "iam:GetRole", + "iam:PassRole", + "iot:CreateRoleAlias", + "iot:DescribeRoleAlias", + "iot:TagResource", + "iot:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "iot:DeleteRoleAlias", + "iot:DescribeRoleAlias" + ] + }, + "list": { + "permissions": [ + "iot:ListRoleAliases" + ] + }, + "read": { + "permissions": [ + "iam:GetRole", + "iam:PassRole", + "iot:DescribeRoleAlias", + "iot:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "iam:GetRole", + "iam:PassRole", + "iot:UpdateRoleAlias", + "iot:DescribeRoleAlias", + "iot:TagResource", + "iot:UntagResource", + "iot:ListTagsForResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/RoleAlias" + ], + "properties": { + "CredentialDurationSeconds": { + "default": 3600, + "maximum": 43200, + "minimum": 900, + "type": "integer" + }, + "RoleAlias": { + "maxLength": 128, + "minLength": 1, + "pattern": "[\\w=,@-]+", + "type": "string" + }, + "RoleAliasArn": { + "maxLength": 128, + "minLength": 1, + "pattern": "[\\w=,@-]+", + "type": "string" + }, + "RoleArn": { + "maxLength": 2048, + "minLength": 20, + "pattern": "arn:(aws[a-zA-Z-]*)?:iam::\\d{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+", + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + } + }, + "readOnlyProperties": [ + "/properties/RoleAliasArn" + ], + "required": [ + "RoleArn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::IoT::RoleAlias" +} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-rolesanywhere-profile.json b/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-rolesanywhere-profile.json deleted file mode 100644 index 9781637c58..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-rolesanywhere-profile.json +++ /dev/null @@ -1,177 +0,0 @@ -{ - "additionalProperties": false, - "definitions": { - "AttributeMapping": { - "additionalProperties": false, - "properties": { - "CertificateField": { - "$ref": "#/definitions/CertificateField" - }, - "MappingRules": { - "items": { - "$ref": "#/definitions/MappingRule" - }, - "type": "array" - } - }, - "required": [ - "CertificateField", - "MappingRules" - ], - "type": "object" - }, - "CertificateField": { - "enum": [ - "x509Subject", - "x509Issuer", - "x509SAN" - ], - "type": "string" - }, - "MappingRule": { - "additionalProperties": false, - "properties": { - "Specifier": { - "type": "string" - } - }, - "required": [ - "Specifier" - ], - "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": [ - "iam:GetRole", - "iam:GetPolicy", - "iam:PassRole", - "rolesanywhere:CreateProfile", - "rolesanywhere:TagResource", - "rolesanywhere:ListTagsForResource", - "rolesanywhere:PutAttributeMapping", - "rolesanywhere:DeleteAttributeMapping" - ] - }, - "delete": { - "permissions": [ - "rolesanywhere:DeleteProfile" - ] - }, - "list": { - "permissions": [ - "rolesanywhere:ListProfiles", - "rolesanywhere:ListTagsForResource" - ] - }, - "read": { - "permissions": [ - "rolesanywhere:GetProfile", - "rolesanywhere:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "iam:GetRole", - "iam:GetPolicy", - "iam:PassRole", - "rolesanywhere:GetProfile", - "rolesanywhere:UpdateProfile", - "rolesanywhere:EnableProfile", - "rolesanywhere:DisableProfile", - "rolesanywhere:TagResource", - "rolesanywhere:UntagResource", - "rolesanywhere:ListTagsForResource", - "rolesanywhere:PutAttributeMapping", - "rolesanywhere:DeleteAttributeMapping" - ] - } - }, - "primaryIdentifier": [ - "/properties/ProfileId" - ], - "properties": { - "AttributeMappings": { - "items": { - "$ref": "#/definitions/AttributeMapping" - }, - "type": "array" - }, - "DurationSeconds": { - "maximum": 43200, - "minimum": 900, - "type": "number" - }, - "Enabled": { - "type": "boolean" - }, - "ManagedPolicyArns": { - "items": { - "type": "string" - }, - "type": "array" - }, - "Name": { - "type": "string" - }, - "ProfileArn": { - "type": "string" - }, - "ProfileId": { - "pattern": "[a-f0-9]{8}-([a-z0-9]{4}-){3}[a-z0-9]{12}", - "type": "string" - }, - "RequireInstanceProperties": { - "type": "boolean" - }, - "RoleArns": { - "items": { - "maxLength": 1011, - "minLength": 1, - "type": "string" - }, - "type": "array" - }, - "SessionPolicy": { - "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 200, - "minItems": 0, - "type": "array" - } - }, - "readOnlyProperties": [ - "/properties/ProfileId", - "/properties/ProfileArn" - ], - "required": [ - "Name", - "RoleArns" - ], - "typeName": "AWS::RolesAnywhere::Profile" -} 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 ba03965f1e..ca29c66221 100644 --- a/src/cfnlint/data/schemas/providers/ap_southeast_4/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_southeast_4/__init__.py @@ -608,6 +608,7 @@ "aws-mediapackage-originendpoint.json", "aws-ec2-ipampoolcidr.json", "aws-redshift-clustersubnetgroup.json", + "aws-rds-dbinstance.json", "aws-ec2-vpcdhcpoptionsassociation.json", "aws-ec2-networkacl.json", "aws-lambda-eventsourcemapping.json", @@ -724,6 +725,7 @@ "aws-cloudformation-stackset.json", "aws-ec2-route.json", "aws-cloudformation-hookversion.json", + "aws-rolesanywhere-profile.json", "aws-xray-resourcepolicy.json", "aws-servicecatalog-launchtemplateconstraint.json", "aws-wafv2-loggingconfiguration.json", @@ -879,6 +881,7 @@ "aws-redshift-cluster.json", "aws-emr-instancefleetconfig.json", "aws-emr-cluster.json", + "aws-rds-dbcluster.json", "aws-servicecatalog-resourceupdateconstraint.json", "aws-transfer-agreement.json", "aws-chatbot-slackchannelconfiguration.json", 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 e0756eb08e..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-rds-dbcluster.json +++ /dev/null @@ -1,503 +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": { - "relationshipRef": { - "propertyPath": "/properties/Arn", - "typeName": "AWS::IAM::Role" - }, - "type": "string" - } - }, - "required": [ - "RoleArn" - ], - "type": "object" - }, - "Endpoint": { - "additionalProperties": false, - "properties": { - "Address": { - "type": "string" - }, - "Port": { - "type": "string" - } - }, - "type": "object" - }, - "MasterUserSecret": { - "additionalProperties": false, - "properties": { - "KmsKeyId": { - "anyOf": [ - { - "relationshipRef": { - "propertyPath": "/properties/KeyId", - "typeName": "AWS::KMS::Key" - } - }, - { - "relationshipRef": { - "propertyPath": "/properties/Arn", - "typeName": "AWS::KMS::Key" - } - } - ], - "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: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": { - "anyOf": [ - { - "relationshipRef": { - "propertyPath": "/properties/Arn", - "typeName": "AWS::KMS::Key" - } - }, - { - "relationshipRef": { - "propertyPath": "/properties/KeyId", - "typeName": "AWS::KMS::Key" - } - } - ], - "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": { - "anyOf": [ - { - "relationshipRef": { - "propertyPath": "/properties/GroupId", - "typeName": "AWS::EC2::SecurityGroup" - } - }, - { - "relationshipRef": { - "propertyPath": "/properties/Id", - "typeName": "AWS::EC2::SecurityGroup" - } - } - ], - "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/aws-rds-dbinstance.json b/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-rds-dbinstance.json deleted file mode 100644 index d92125d3b5..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-rds-dbinstance.json +++ /dev/null @@ -1,670 +0,0 @@ -{ - "additionalProperties": false, - "conditionalCreateOnlyProperties": [ - "/properties/AutoMinorVersionUpgrade", - "/properties/AvailabilityZone", - "/properties/BackupRetentionPeriod", - "/properties/DBClusterSnapshotIdentifier", - "/properties/DBParameterGroupName", - "/properties/DBSnapshotIdentifier", - "/properties/Engine", - "/properties/MultiAZ", - "/properties/PerformanceInsightsKMSKeyId", - "/properties/PreferredMaintenanceWindow", - "/properties/RestoreTime", - "/properties/SourceDBClusterIdentifier", - "/properties/SourceDBInstanceAutomatedBackupsArn", - "/properties/SourceDBInstanceIdentifier", - "/properties/SourceDbiResourceId", - "/properties/StorageType", - "/properties/UseLatestRestorableTime" - ], - "createOnlyProperties": [ - "/properties/CharacterSetName", - "/properties/CustomIAMInstanceProfile", - "/properties/DBClusterIdentifier", - "/properties/DBInstanceIdentifier", - "/properties/DBName", - "/properties/DBSubnetGroupName", - "/properties/KmsKeyId", - "/properties/MasterUsername", - "/properties/NcharCharacterSetName", - "/properties/Port", - "/properties/SourceRegion", - "/properties/StorageEncrypted", - "/properties/Timezone" - ], - "definitions": { - "CertificateDetails": { - "additionalProperties": false, - "properties": { - "CAIdentifier": { - "type": "string" - }, - "ValidTill": { - "format": "date-time", - "type": "string" - } - }, - "type": "object" - }, - "DBInstanceRole": { - "additionalProperties": false, - "properties": { - "FeatureName": { - "type": "string" - }, - "RoleArn": { - "type": "string" - } - }, - "required": [ - "FeatureName", - "RoleArn" - ], - "type": "object" - }, - "Endpoint": { - "additionalProperties": false, - "properties": { - "Address": { - "type": "string" - }, - "HostedZoneId": { - "type": "string" - }, - "Port": { - "type": "string" - } - }, - "type": "object" - }, - "MasterUserSecret": { - "additionalProperties": false, - "properties": { - "KmsKeyId": { - "anyOf": [ - { - "relationshipRef": { - "propertyPath": "/properties/KeyId", - "typeName": "AWS::KMS::Key" - } - }, - { - "relationshipRef": { - "propertyPath": "/properties/Arn", - "typeName": "AWS::KMS::Key" - } - } - ], - "type": "string" - }, - "SecretArn": { - "type": "string" - } - }, - "type": "object" - }, - "ProcessorFeature": { - "additionalProperties": false, - "properties": { - "Name": { - "enum": [ - "coreCount", - "threadsPerCore" - ], - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key" - ], - "type": "object" - } - }, - "dependencies": { - "KmsKeyId": { - "properties": { - "StorageEncrypted": { - "enum": [ - "true", - "True", - true - ] - } - }, - "required": [ - "StorageEncrypted" - ] - } - }, - "dependentExcluded": { - "SourceDBInstanceIdentifier": [ - "CharacterSetName", - "MasterUserPassword", - "MasterUsername", - "StorageEncrypted" - ] - }, - "deprecatedProperties": [ - "/properties/TdeCredentialArn", - "/properties/TdeCredentialPassword" - ], - "handlers": { - "create": { - "permissions": [ - "ec2:DescribeAccountAttributes", - "ec2:DescribeAvailabilityZones", - "ec2:DescribeInternetGateways", - "ec2:DescribeSecurityGroups", - "ec2:DescribeSubnets", - "ec2:DescribeVpcAttribute", - "ec2:DescribeVpcs", - "iam:CreateServiceLinkedRole", - "iam:GetRole", - "iam:ListRoles", - "iam:PassRole", - "kms:CreateGrant", - "kms:DescribeKey", - "rds:AddRoleToDBInstance", - "rds:AddTagsToResource", - "rds:CreateDBInstance", - "rds:CreateDBInstanceReadReplica", - "rds:DescribeDBInstances", - "rds:DescribeDBClusters", - "rds:DescribeDBClusterSnapshots", - "rds:DescribeDBInstanceAutomatedBackups", - "rds:DescribeDBSnapshots", - "rds:DescribeEvents", - "rds:ModifyDBInstance", - "rds:RebootDBInstance", - "rds:RestoreDBInstanceFromDBSnapshot", - "rds:RestoreDBInstanceToPointInTime", - "rds:StartDBInstanceAutomatedBackupsReplication", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "rds:CreateDBSnapshot", - "rds:DeleteDBInstance", - "rds:DescribeDBInstances" - ], - "timeoutInMinutes": 2160 - }, - "list": { - "permissions": [ - "rds:DescribeDBInstances" - ] - }, - "read": { - "permissions": [ - "ec2:DescribeAccountAttributes", - "ec2:DescribeAvailabilityZones", - "ec2:DescribeInternetGateways", - "ec2:DescribeSecurityGroups", - "ec2:DescribeSubnets", - "ec2:DescribeVpcAttribute", - "ec2:DescribeVpcs", - "rds:DescribeDBInstances" - ] - }, - "update": { - "permissions": [ - "ec2:DescribeAccountAttributes", - "ec2:DescribeAvailabilityZones", - "ec2:DescribeInternetGateways", - "ec2:DescribeSecurityGroups", - "ec2:DescribeSubnets", - "ec2:DescribeVpcAttribute", - "ec2:DescribeVpcs", - "iam:CreateServiceLinkedRole", - "iam:GetRole", - "iam:ListRoles", - "iam:PassRole", - "kms:CreateGrant", - "kms:DescribeKey", - "rds:AddRoleToDBInstance", - "rds:AddTagsToResource", - "rds:DescribeDBClusters", - "rds:DescribeDBEngineVersions", - "rds:DescribeDBInstances", - "rds:DescribeDBParameterGroups", - "rds:DescribeEvents", - "rds:ModifyDBInstance", - "rds:PromoteReadReplica", - "rds:RebootDBInstance", - "rds:RemoveRoleFromDBInstance", - "rds:RemoveTagsFromResource", - "rds:StartDBInstanceAutomatedBackupsReplication", - "rds:StopDBInstanceAutomatedBackupsReplication", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - } - }, - "primaryIdentifier": [ - "/properties/DBInstanceIdentifier" - ], - "properties": { - "AllocatedStorage": { - "pattern": "^[0-9]*$", - "type": "string" - }, - "AllowMajorVersionUpgrade": { - "type": "boolean" - }, - "AssociatedRoles": { - "items": { - "$ref": "#/definitions/DBInstanceRole" - }, - "type": "array" - }, - "AutoMinorVersionUpgrade": { - "type": "boolean" - }, - "AutomaticBackupReplicationKmsKeyId": { - "type": "string" - }, - "AutomaticBackupReplicationRegion": { - "type": "string" - }, - "AvailabilityZone": { - "type": "string" - }, - "BackupRetentionPeriod": { - "default": 1, - "maximum": 35, - "minimum": 0, - "type": "integer" - }, - "CACertificateIdentifier": { - "type": "string" - }, - "CertificateDetails": { - "$ref": "#/definitions/CertificateDetails" - }, - "CertificateRotationRestart": { - "type": "boolean" - }, - "CharacterSetName": { - "type": "string" - }, - "CopyTagsToSnapshot": { - "type": "boolean" - }, - "CustomIAMInstanceProfile": { - "type": "string" - }, - "DBClusterIdentifier": { - "type": "string" - }, - "DBClusterSnapshotIdentifier": { - "type": "string" - }, - "DBInstanceArn": { - "type": "string" - }, - "DBInstanceClass": { - "type": "string" - }, - "DBInstanceIdentifier": { - "maxLength": 63, - "minLength": 1, - "pattern": "^$|^[a-zA-Z]{1}(?:-?[a-zA-Z0-9]){0,62}$", - "type": "string" - }, - "DBName": { - "type": "string" - }, - "DBParameterGroupName": { - "type": "string" - }, - "DBSecurityGroups": { - "items": { - "relationshipRef": { - "propertyPath": "/properties/Id", - "typeName": "AWS::RDS::DBSecurityGroup" - }, - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "DBSnapshotIdentifier": { - "type": "string" - }, - "DBSubnetGroupName": { - "type": "string" - }, - "DBSystemId": { - "type": "string" - }, - "DbiResourceId": { - "type": "string" - }, - "DedicatedLogVolume": { - "type": "boolean" - }, - "DeleteAutomatedBackups": { - "type": "boolean" - }, - "DeletionProtection": { - "type": "boolean" - }, - "Domain": { - "type": "string" - }, - "DomainAuthSecretArn": { - "type": "string" - }, - "DomainDnsIps": { - "items": { - "type": "string" - }, - "type": "array" - }, - "DomainFqdn": { - "type": "string" - }, - "DomainIAMRoleName": { - "type": "string" - }, - "DomainOu": { - "type": "string" - }, - "EnableCloudwatchLogsExports": { - "items": { - "type": "string" - }, - "type": "array" - }, - "EnableIAMDatabaseAuthentication": { - "type": "boolean" - }, - "EnablePerformanceInsights": { - "type": "boolean" - }, - "Endpoint": { - "$ref": "#/definitions/Endpoint" - }, - "Engine": { - "type": "string" - }, - "EngineLifecycleSupport": { - "type": "string" - }, - "EngineVersion": { - "type": "string" - }, - "Iops": { - "type": "integer" - }, - "KmsKeyId": { - "anyOf": [ - { - "relationshipRef": { - "propertyPath": "/properties/KeyId", - "typeName": "AWS::KMS::Key" - } - }, - { - "relationshipRef": { - "propertyPath": "/properties/Arn", - "typeName": "AWS::KMS::Key" - } - } - ], - "type": "string" - }, - "LicenseModel": { - "type": "string" - }, - "ManageMasterUserPassword": { - "type": "boolean" - }, - "MasterUserPassword": { - "type": "string" - }, - "MasterUserSecret": { - "$ref": "#/definitions/MasterUserSecret" - }, - "MasterUsername": { - "maxLength": 128, - "minLength": 1, - "pattern": "^[a-zA-Z][a-zA-Z0-9_]{0,127}$", - "type": "string" - }, - "MaxAllocatedStorage": { - "type": "integer" - }, - "MonitoringInterval": { - "default": 0, - "type": "integer" - }, - "MonitoringRoleArn": { - "type": "string" - }, - "MultiAZ": { - "type": "boolean" - }, - "NcharCharacterSetName": { - "type": "string" - }, - "NetworkType": { - "type": "string" - }, - "OptionGroupName": { - "type": "string" - }, - "PerformanceInsightsKMSKeyId": { - "anyOf": [ - { - "relationshipRef": { - "propertyPath": "/properties/Arn", - "typeName": "AWS::KMS::Key" - } - }, - { - "relationshipRef": { - "propertyPath": "/properties/KeyId", - "typeName": "AWS::KMS::Key" - } - } - ], - "type": "string" - }, - "PerformanceInsightsRetentionPeriod": { - "enum": [ - 7, - 31, - 62, - 93, - 124, - 155, - 186, - 217, - 248, - 279, - 310, - 341, - 372, - 403, - 434, - 465, - 496, - 527, - 558, - 589, - 620, - 651, - 682, - 713, - 731 - ], - "type": "integer" - }, - "Port": { - "pattern": "^\\d*$", - "type": "string" - }, - "PreferredBackupWindow": { - "type": "string" - }, - "PreferredMaintenanceWindow": { - "type": "string" - }, - "ProcessorFeatures": { - "items": { - "$ref": "#/definitions/ProcessorFeature" - }, - "type": "array" - }, - "PromotionTier": { - "default": 1, - "maximum": 15, - "minimum": 0, - "type": "integer" - }, - "PubliclyAccessible": { - "type": "boolean" - }, - "ReplicaMode": { - "type": "string" - }, - "RestoreTime": { - "format": "date-time", - "type": "string" - }, - "SourceDBClusterIdentifier": { - "type": "string" - }, - "SourceDBInstanceAutomatedBackupsArn": { - "type": "string" - }, - "SourceDBInstanceIdentifier": { - "type": "string" - }, - "SourceDbiResourceId": { - "type": "string" - }, - "SourceRegion": { - "type": "string" - }, - "StorageEncrypted": { - "type": "boolean" - }, - "StorageThroughput": { - "type": "integer" - }, - "StorageType": { - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": false - }, - "TdeCredentialArn": { - "type": "string" - }, - "TdeCredentialPassword": { - "type": "string" - }, - "Timezone": { - "type": "string" - }, - "UseDefaultProcessorFeatures": { - "type": "boolean" - }, - "UseLatestRestorableTime": { - "type": "boolean" - }, - "VPCSecurityGroups": { - "items": { - "relationshipRef": { - "propertyPath": "/properties/GroupId", - "typeName": "AWS::EC2::SecurityGroup" - }, - "type": "string" - }, - "type": "array", - "uniqueItems": true - } - }, - "propertyTransform": { - "/properties/DBClusterIdentifier": "$lowercase(DBClusterIdentifier)", - "/properties/DBClusterSnapshotIdentifier": "$lowercase(DBClusterSnapshotIdentifier)", - "/properties/DBInstanceIdentifier": "$lowercase(DBInstanceIdentifier)", - "/properties/DBName": "$lowercase(DBName) $OR $uppercase(DBName)", - "/properties/DBParameterGroupName": "$lowercase(DBParameterGroupName)", - "/properties/DBSnapshotIdentifier": "$lowercase(DBSnapshotIdentifier)", - "/properties/DBSubnetGroupName": "$lowercase(DBSubnetGroupName)", - "/properties/Engine": "$lowercase(Engine)", - "/properties/EngineVersion": "$join([$string(EngineVersion), \".*\"])", - "/properties/KmsKeyId": "$join([\"arn:(aws)[-]{0,1}[a-z]{0,2}[-]{0,1}[a-z]{0,3}:kms:[a-z]{2}[-]{1}[a-z]{3,10}[-]{0,1}[a-z]{0,10}[-]{1}[1-3]{1}:[0-9]{12}[:]{1}key\\/\", KmsKeyId])", - "/properties/MasterUserSecret/KmsKeyId": "$join([\"arn:(aws)[-]{0,1}[a-z]{0,2}[-]{0,1}[a-z]{0,3}:kms:[a-z]{2}[-]{1}[a-z]{3,10}[-]{0,1}[a-z]{0,10}[-]{1}[1-3]{1}:[0-9]{12}[:]{1}key\\/\", MasterUserSecret.KmsKeyId])", - "/properties/NetworkType": "$lowercase(NetworkType)", - "/properties/OptionGroupName": "$lowercase(OptionGroupName)", - "/properties/PerformanceInsightsKMSKeyId": "$join([\"arn:(aws)[-]{0,1}[a-z]{0,2}[-]{0,1}[a-z]{0,3}:kms:[a-z]{2}[-]{1}[a-z]{3,10}[-]{0,1}[a-z]{0,10}[-]{1}[1-3]{1}:[0-9]{12}[:]{1}key\\/\", PerformanceInsightsKMSKeyId])", - "/properties/PreferredMaintenanceWindow": "$lowercase(PreferredMaintenanceWindow)", - "/properties/SourceDBInstanceAutomatedBackupsArn": "$lowercase(SourceDBInstanceAutomatedBackupsArn)", - "/properties/SourceDBInstanceIdentifier": "$lowercase(SourceDBInstanceIdentifier)", - "/properties/StorageType": "$lowercase(StorageType)" - }, - "readOnlyProperties": [ - "/properties/Endpoint/Address", - "/properties/Endpoint/Port", - "/properties/Endpoint/HostedZoneId", - "/properties/DbiResourceId", - "/properties/DBInstanceArn", - "/properties/DBSystemId", - "/properties/MasterUserSecret/SecretArn", - "/properties/CertificateDetails/CAIdentifier", - "/properties/CertificateDetails/ValidTill" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", - "typeName": "AWS::RDS::DBInstance", - "writeOnlyProperties": [ - "/properties/AllowMajorVersionUpgrade", - "/properties/AutomaticBackupReplicationKmsKeyId", - "/properties/CertificateRotationRestart", - "/properties/DBSnapshotIdentifier", - "/properties/DeleteAutomatedBackups", - "/properties/MasterUserPassword", - "/properties/Port", - "/properties/RestoreTime", - "/properties/SourceDBInstanceAutomatedBackupsArn", - "/properties/SourceDBInstanceIdentifier", - "/properties/SourceDbiResourceId", - "/properties/SourceRegion", - "/properties/TdeCredentialPassword", - "/properties/UseDefaultProcessorFeatures", - "/properties/UseLatestRestorableTime" - ] -} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-rolesanywhere-profile.json b/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-rolesanywhere-profile.json deleted file mode 100644 index 9781637c58..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-rolesanywhere-profile.json +++ /dev/null @@ -1,177 +0,0 @@ -{ - "additionalProperties": false, - "definitions": { - "AttributeMapping": { - "additionalProperties": false, - "properties": { - "CertificateField": { - "$ref": "#/definitions/CertificateField" - }, - "MappingRules": { - "items": { - "$ref": "#/definitions/MappingRule" - }, - "type": "array" - } - }, - "required": [ - "CertificateField", - "MappingRules" - ], - "type": "object" - }, - "CertificateField": { - "enum": [ - "x509Subject", - "x509Issuer", - "x509SAN" - ], - "type": "string" - }, - "MappingRule": { - "additionalProperties": false, - "properties": { - "Specifier": { - "type": "string" - } - }, - "required": [ - "Specifier" - ], - "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": [ - "iam:GetRole", - "iam:GetPolicy", - "iam:PassRole", - "rolesanywhere:CreateProfile", - "rolesanywhere:TagResource", - "rolesanywhere:ListTagsForResource", - "rolesanywhere:PutAttributeMapping", - "rolesanywhere:DeleteAttributeMapping" - ] - }, - "delete": { - "permissions": [ - "rolesanywhere:DeleteProfile" - ] - }, - "list": { - "permissions": [ - "rolesanywhere:ListProfiles", - "rolesanywhere:ListTagsForResource" - ] - }, - "read": { - "permissions": [ - "rolesanywhere:GetProfile", - "rolesanywhere:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "iam:GetRole", - "iam:GetPolicy", - "iam:PassRole", - "rolesanywhere:GetProfile", - "rolesanywhere:UpdateProfile", - "rolesanywhere:EnableProfile", - "rolesanywhere:DisableProfile", - "rolesanywhere:TagResource", - "rolesanywhere:UntagResource", - "rolesanywhere:ListTagsForResource", - "rolesanywhere:PutAttributeMapping", - "rolesanywhere:DeleteAttributeMapping" - ] - } - }, - "primaryIdentifier": [ - "/properties/ProfileId" - ], - "properties": { - "AttributeMappings": { - "items": { - "$ref": "#/definitions/AttributeMapping" - }, - "type": "array" - }, - "DurationSeconds": { - "maximum": 43200, - "minimum": 900, - "type": "number" - }, - "Enabled": { - "type": "boolean" - }, - "ManagedPolicyArns": { - "items": { - "type": "string" - }, - "type": "array" - }, - "Name": { - "type": "string" - }, - "ProfileArn": { - "type": "string" - }, - "ProfileId": { - "pattern": "[a-f0-9]{8}-([a-z0-9]{4}-){3}[a-z0-9]{12}", - "type": "string" - }, - "RequireInstanceProperties": { - "type": "boolean" - }, - "RoleArns": { - "items": { - "maxLength": 1011, - "minLength": 1, - "type": "string" - }, - "type": "array" - }, - "SessionPolicy": { - "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 200, - "minItems": 0, - "type": "array" - } - }, - "readOnlyProperties": [ - "/properties/ProfileId", - "/properties/ProfileArn" - ], - "required": [ - "Name", - "RoleArns" - ], - "typeName": "AWS::RolesAnywhere::Profile" -} 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 f253fbb4f6..1593be281e 100644 --- a/src/cfnlint/data/schemas/providers/eu_north_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/eu_north_1/__init__.py @@ -898,6 +898,7 @@ "AWS::PCAConnectorAD::TemplateGroupAccessControlEntry", "AWS::DataBrew::Job", "AWS::EC2::TransitGatewayPeeringAttachment", + "AWS::ECR::RepositoryCreationTemplate", "AWS::QuickSight::Template", "AWS::CloudFront::CachePolicy", "AWS::IAM::AccessKey", @@ -1060,6 +1061,7 @@ "aws-cleanrooms-analysistemplate.json", "aws-redshift-endpointauthorization.json", "aws-ec2-transitgatewayroutetable.json", + "aws-controltower-enabledcontrol.json", "aws-networkmanager-connectattachment.json", "aws-lightsail-container.json", "aws-s3-accessgrantsinstance.json", @@ -1237,6 +1239,7 @@ "aws-fis-experimenttemplate.json", "aws-codecommit-repository.json", "aws-cloudformation-hookversion.json", + "aws-rolesanywhere-profile.json", "aws-refactorspaces-environment.json", "aws-xray-resourcepolicy.json", "aws-iot-resourcespecificlogging.json", @@ -1436,6 +1439,7 @@ "aws-systemsmanagersap-application.json", "aws-dms-replicationtask.json", "aws-ec2-routetable.json", + "aws-mediaconnect-gateway.json", "aws-rds-dbproxyendpoint.json", "aws-datasync-locationsmb.json", "aws-resiliencehub-app.json", @@ -1830,6 +1834,7 @@ "aws-pcaconnectorad-templategroupaccesscontrolentry.json", "aws-databrew-job.json", "aws-ec2-transitgatewaypeeringattachment.json", + "aws-ecr-repositorycreationtemplate.json", "aws-quicksight-template.json", "aws-cloudfront-cachepolicy.json", "aws-iam-accesskey.json", diff --git a/src/cfnlint/data/schemas/providers/eu_north_1/aws-controltower-enabledcontrol.json b/src/cfnlint/data/schemas/providers/eu_north_1/aws-controltower-enabledcontrol.json deleted file mode 100644 index fcd9f3325b..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_north_1/aws-controltower-enabledcontrol.json +++ /dev/null @@ -1,180 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/TargetIdentifier", - "/properties/ControlIdentifier" - ], - "definitions": { - "EnabledControlParameter": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "insertionOrder": false, - "items": { - "type": [ - "string", - "number", - "object", - "boolean" - ] - }, - "minItems": 1, - "type": [ - "array", - "string", - "number", - "object", - "boolean" - ] - } - }, - "required": [ - "Value", - "Key" - ], - "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": [ - "controltower:ListEnabledControls", - "controltower:GetEnabledControl", - "controltower:GetControlOperation", - "controltower:EnableControl", - "controltower:TagResource", - "organizations:UpdatePolicy", - "organizations:CreatePolicy", - "organizations:AttachPolicy", - "organizations:DetachPolicy", - "organizations:ListPoliciesForTarget", - "organizations:ListTargetsForPolicy", - "organizations:DescribePolicy" - ] - }, - "delete": { - "permissions": [ - "controltower:GetControlOperation", - "controltower:DisableControl", - "organizations:UpdatePolicy", - "organizations:DeletePolicy", - "organizations:CreatePolicy", - "organizations:AttachPolicy", - "organizations:DetachPolicy", - "organizations:ListPoliciesForTarget", - "organizations:ListTargetsForPolicy", - "organizations:DescribePolicy" - ] - }, - "list": { - "handlerSchema": { - "properties": { - "TargetIdentifier": { - "$ref": "resource-schema.json#/properties/TargetIdentifier" - } - }, - "required": [ - "TargetIdentifier" - ] - }, - "permissions": [ - "controltower:ListEnabledControls" - ] - }, - "read": { - "permissions": [ - "controltower:ListEnabledControls", - "controltower:GetEnabledControl", - "controltower:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "controltower:ListEnabledControls", - "controltower:GetEnabledControl", - "controltower:GetControlOperation", - "controltower:UpdateEnabledControl", - "controltower:UntagResource", - "controltower:TagResource", - "organizations:UpdatePolicy", - "organizations:CreatePolicy", - "organizations:AttachPolicy", - "organizations:DetachPolicy", - "organizations:ListPoliciesForTarget", - "organizations:ListTargetsForPolicy", - "organizations:DescribePolicy" - ] - } - }, - "primaryIdentifier": [ - "/properties/TargetIdentifier", - "/properties/ControlIdentifier" - ], - "properties": { - "ControlIdentifier": { - "maxLength": 2048, - "minLength": 20, - "pattern": "^arn:aws[0-9a-zA-Z_\\-:\\/]+$", - "type": "string" - }, - "Parameters": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/EnabledControlParameter" - }, - "minItems": 1, - "type": "array" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 50, - "minItems": 1, - "type": "array" - }, - "TargetIdentifier": { - "maxLength": 2048, - "minLength": 20, - "pattern": "^arn:aws[0-9a-zA-Z_\\-:\\/]+$", - "type": "string" - } - }, - "required": [ - "TargetIdentifier", - "ControlIdentifier" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-controltower", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::ControlTower::EnabledControl" -} diff --git a/src/cfnlint/data/schemas/providers/eu_north_1/aws-mediaconnect-gateway.json b/src/cfnlint/data/schemas/providers/eu_north_1/aws-mediaconnect-gateway.json deleted file mode 100644 index 3cab25d209..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_north_1/aws-mediaconnect-gateway.json +++ /dev/null @@ -1,106 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name", - "/properties/EgressCidrBlocks", - "/properties/Networks", - "/properties/Networks/*/Name", - "/properties/Networks/*/CidrBlock" - ], - "definitions": { - "GatewayNetwork": { - "additionalProperties": false, - "properties": { - "CidrBlock": { - "type": "string" - }, - "Name": { - "type": "string" - } - }, - "required": [ - "Name", - "CidrBlock" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "iam:CreateServiceLinkedRole", - "mediaconnect:CreateGateway", - "mediaconnect:DescribeGateway" - ] - }, - "delete": { - "permissions": [ - "iam:CreateServiceLinkedRole", - "mediaconnect:DescribeGateway", - "mediaconnect:DeleteGateway" - ] - }, - "list": { - "permissions": [ - "mediaconnect:ListGateways" - ] - }, - "read": { - "permissions": [ - "mediaconnect:DescribeGateway" - ] - } - }, - "primaryIdentifier": [ - "/properties/GatewayArn" - ], - "properties": { - "EgressCidrBlocks": { - "insertionOrder": true, - "items": { - "type": "string" - }, - "type": "array" - }, - "GatewayArn": { - "type": "string" - }, - "GatewayState": { - "enum": [ - "CREATING", - "ACTIVE", - "UPDATING", - "ERROR", - "DELETING", - "DELETED" - ], - "type": "string" - }, - "Name": { - "type": "string" - }, - "Networks": { - "insertionOrder": true, - "items": { - "$ref": "#/definitions/GatewayNetwork" - }, - "maxItems": 4, - "minItems": 1, - "type": "array" - } - }, - "readOnlyProperties": [ - "/properties/GatewayArn", - "/properties/GatewayState" - ], - "required": [ - "Name", - "EgressCidrBlocks", - "Networks" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-mediaconnect.git", - "tagging": { - "taggable": false - }, - "typeName": "AWS::MediaConnect::Gateway" -} diff --git a/src/cfnlint/data/schemas/providers/eu_north_1/aws-rolesanywhere-profile.json b/src/cfnlint/data/schemas/providers/eu_north_1/aws-rolesanywhere-profile.json deleted file mode 100644 index 9781637c58..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_north_1/aws-rolesanywhere-profile.json +++ /dev/null @@ -1,177 +0,0 @@ -{ - "additionalProperties": false, - "definitions": { - "AttributeMapping": { - "additionalProperties": false, - "properties": { - "CertificateField": { - "$ref": "#/definitions/CertificateField" - }, - "MappingRules": { - "items": { - "$ref": "#/definitions/MappingRule" - }, - "type": "array" - } - }, - "required": [ - "CertificateField", - "MappingRules" - ], - "type": "object" - }, - "CertificateField": { - "enum": [ - "x509Subject", - "x509Issuer", - "x509SAN" - ], - "type": "string" - }, - "MappingRule": { - "additionalProperties": false, - "properties": { - "Specifier": { - "type": "string" - } - }, - "required": [ - "Specifier" - ], - "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": [ - "iam:GetRole", - "iam:GetPolicy", - "iam:PassRole", - "rolesanywhere:CreateProfile", - "rolesanywhere:TagResource", - "rolesanywhere:ListTagsForResource", - "rolesanywhere:PutAttributeMapping", - "rolesanywhere:DeleteAttributeMapping" - ] - }, - "delete": { - "permissions": [ - "rolesanywhere:DeleteProfile" - ] - }, - "list": { - "permissions": [ - "rolesanywhere:ListProfiles", - "rolesanywhere:ListTagsForResource" - ] - }, - "read": { - "permissions": [ - "rolesanywhere:GetProfile", - "rolesanywhere:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "iam:GetRole", - "iam:GetPolicy", - "iam:PassRole", - "rolesanywhere:GetProfile", - "rolesanywhere:UpdateProfile", - "rolesanywhere:EnableProfile", - "rolesanywhere:DisableProfile", - "rolesanywhere:TagResource", - "rolesanywhere:UntagResource", - "rolesanywhere:ListTagsForResource", - "rolesanywhere:PutAttributeMapping", - "rolesanywhere:DeleteAttributeMapping" - ] - } - }, - "primaryIdentifier": [ - "/properties/ProfileId" - ], - "properties": { - "AttributeMappings": { - "items": { - "$ref": "#/definitions/AttributeMapping" - }, - "type": "array" - }, - "DurationSeconds": { - "maximum": 43200, - "minimum": 900, - "type": "number" - }, - "Enabled": { - "type": "boolean" - }, - "ManagedPolicyArns": { - "items": { - "type": "string" - }, - "type": "array" - }, - "Name": { - "type": "string" - }, - "ProfileArn": { - "type": "string" - }, - "ProfileId": { - "pattern": "[a-f0-9]{8}-([a-z0-9]{4}-){3}[a-z0-9]{12}", - "type": "string" - }, - "RequireInstanceProperties": { - "type": "boolean" - }, - "RoleArns": { - "items": { - "maxLength": 1011, - "minLength": 1, - "type": "string" - }, - "type": "array" - }, - "SessionPolicy": { - "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 200, - "minItems": 0, - "type": "array" - } - }, - "readOnlyProperties": [ - "/properties/ProfileId", - "/properties/ProfileArn" - ], - "required": [ - "Name", - "RoleArns" - ], - "typeName": "AWS::RolesAnywhere::Profile" -} 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 0598068a55..a5b6ee6111 100644 --- a/src/cfnlint/data/schemas/providers/eu_south_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/eu_south_1/__init__.py @@ -719,6 +719,7 @@ "AWS::PCAConnectorAD::TemplateGroupAccessControlEntry", "AWS::DataBrew::Job", "AWS::EC2::TransitGatewayPeeringAttachment", + "AWS::ECR::RepositoryCreationTemplate", "AWS::QuickSight::Template", "AWS::CloudFront::CachePolicy", "AWS::IAM::AccessKey", @@ -807,10 +808,12 @@ "aws-ec2-ipampoolcidr.json", "aws-amplify-branch.json", "aws-redshift-clustersubnetgroup.json", + "aws-rds-dbinstance.json", "aws-ec2-vpcdhcpoptionsassociation.json", "aws-apigateway-model.json", "aws-apigatewayv2-integrationresponse.json", "aws-ec2-networkacl.json", + "aws-lambda-eventsourcemapping.json", "aws-logs-resourcepolicy.json", "aws-servicecatalog-launchnotificationconstraint.json", "aws-dms-instanceprofile.json", @@ -841,6 +844,7 @@ "aws-route53-dnssec.json", "aws-redshift-endpointauthorization.json", "aws-ec2-transitgatewayroutetable.json", + "aws-controltower-enabledcontrol.json", "aws-networkmanager-connectattachment.json", "aws-s3-accessgrantsinstance.json", "aws-cognito-identitypoolroleattachment.json", @@ -976,6 +980,7 @@ "aws-fis-experimenttemplate.json", "aws-codecommit-repository.json", "aws-cloudformation-hookversion.json", + "aws-rolesanywhere-profile.json", "aws-xray-resourcepolicy.json", "aws-servicecatalog-launchtemplateconstraint.json", "aws-wafv2-loggingconfiguration.json", @@ -1201,6 +1206,7 @@ "aws-emr-cluster.json", "aws-codepipeline-webhook.json", "aws-apigatewayv2-domainname.json", + "aws-rds-dbcluster.json", "aws-servicecatalog-resourceupdateconstraint.json", "aws-transfer-agreement.json", "aws-chatbot-slackchannelconfiguration.json", @@ -1431,6 +1437,7 @@ "aws-pcaconnectorad-templategroupaccesscontrolentry.json", "aws-databrew-job.json", "aws-ec2-transitgatewaypeeringattachment.json", + "aws-ecr-repositorycreationtemplate.json", "aws-quicksight-template.json", "aws-cloudfront-cachepolicy.json", "aws-rds-dbsubnetgroup.json", diff --git a/src/cfnlint/data/schemas/providers/eu_south_1/aws-controltower-enabledcontrol.json b/src/cfnlint/data/schemas/providers/eu_south_1/aws-controltower-enabledcontrol.json deleted file mode 100644 index fcd9f3325b..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_south_1/aws-controltower-enabledcontrol.json +++ /dev/null @@ -1,180 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/TargetIdentifier", - "/properties/ControlIdentifier" - ], - "definitions": { - "EnabledControlParameter": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "insertionOrder": false, - "items": { - "type": [ - "string", - "number", - "object", - "boolean" - ] - }, - "minItems": 1, - "type": [ - "array", - "string", - "number", - "object", - "boolean" - ] - } - }, - "required": [ - "Value", - "Key" - ], - "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": [ - "controltower:ListEnabledControls", - "controltower:GetEnabledControl", - "controltower:GetControlOperation", - "controltower:EnableControl", - "controltower:TagResource", - "organizations:UpdatePolicy", - "organizations:CreatePolicy", - "organizations:AttachPolicy", - "organizations:DetachPolicy", - "organizations:ListPoliciesForTarget", - "organizations:ListTargetsForPolicy", - "organizations:DescribePolicy" - ] - }, - "delete": { - "permissions": [ - "controltower:GetControlOperation", - "controltower:DisableControl", - "organizations:UpdatePolicy", - "organizations:DeletePolicy", - "organizations:CreatePolicy", - "organizations:AttachPolicy", - "organizations:DetachPolicy", - "organizations:ListPoliciesForTarget", - "organizations:ListTargetsForPolicy", - "organizations:DescribePolicy" - ] - }, - "list": { - "handlerSchema": { - "properties": { - "TargetIdentifier": { - "$ref": "resource-schema.json#/properties/TargetIdentifier" - } - }, - "required": [ - "TargetIdentifier" - ] - }, - "permissions": [ - "controltower:ListEnabledControls" - ] - }, - "read": { - "permissions": [ - "controltower:ListEnabledControls", - "controltower:GetEnabledControl", - "controltower:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "controltower:ListEnabledControls", - "controltower:GetEnabledControl", - "controltower:GetControlOperation", - "controltower:UpdateEnabledControl", - "controltower:UntagResource", - "controltower:TagResource", - "organizations:UpdatePolicy", - "organizations:CreatePolicy", - "organizations:AttachPolicy", - "organizations:DetachPolicy", - "organizations:ListPoliciesForTarget", - "organizations:ListTargetsForPolicy", - "organizations:DescribePolicy" - ] - } - }, - "primaryIdentifier": [ - "/properties/TargetIdentifier", - "/properties/ControlIdentifier" - ], - "properties": { - "ControlIdentifier": { - "maxLength": 2048, - "minLength": 20, - "pattern": "^arn:aws[0-9a-zA-Z_\\-:\\/]+$", - "type": "string" - }, - "Parameters": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/EnabledControlParameter" - }, - "minItems": 1, - "type": "array" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 50, - "minItems": 1, - "type": "array" - }, - "TargetIdentifier": { - "maxLength": 2048, - "minLength": 20, - "pattern": "^arn:aws[0-9a-zA-Z_\\-:\\/]+$", - "type": "string" - } - }, - "required": [ - "TargetIdentifier", - "ControlIdentifier" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-controltower", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::ControlTower::EnabledControl" -} diff --git a/src/cfnlint/data/schemas/providers/eu_south_1/aws-lambda-eventsourcemapping.json b/src/cfnlint/data/schemas/providers/eu_south_1/aws-lambda-eventsourcemapping.json deleted file mode 100644 index fb00f52217..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_south_1/aws-lambda-eventsourcemapping.json +++ /dev/null @@ -1,365 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/EventSourceArn", - "/properties/StartingPosition", - "/properties/StartingPositionTimestamp", - "/properties/SelfManagedEventSource", - "/properties/AmazonManagedKafkaEventSourceConfig", - "/properties/SelfManagedKafkaEventSourceConfig" - ], - "definitions": { - "AmazonManagedKafkaEventSourceConfig": { - "additionalProperties": false, - "properties": { - "ConsumerGroupId": { - "$ref": "#/definitions/ConsumerGroupId" - } - }, - "type": "object" - }, - "ConsumerGroupId": { - "maxLength": 200, - "minLength": 1, - "pattern": "[a-zA-Z0-9-\\/*:_+=.@-]*", - "type": "string" - }, - "DestinationConfig": { - "additionalProperties": false, - "properties": { - "OnFailure": { - "$ref": "#/definitions/OnFailure" - } - }, - "type": "object" - }, - "DocumentDBEventSourceConfig": { - "additionalProperties": false, - "properties": { - "CollectionName": { - "maxLength": 57, - "minLength": 1, - "type": "string" - }, - "DatabaseName": { - "maxLength": 63, - "minLength": 1, - "type": "string" - }, - "FullDocument": { - "enum": [ - "UpdateLookup", - "Default" - ], - "type": "string" - } - }, - "type": "object" - }, - "Endpoints": { - "additionalProperties": false, - "properties": { - "KafkaBootstrapServers": { - "items": { - "maxLength": 300, - "minLength": 1, - "pattern": "^(([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\\-]*[a-zA-Z0-9])\\.)*([A-Za-z0-9]|[A-Za-z0-9][A-Za-z0-9\\-]*[A-Za-z0-9]):[0-9]{1,5}", - "type": "string" - }, - "maxItems": 10, - "minItems": 1, - "type": "array", - "uniqueItems": true - } - }, - "type": "object" - }, - "Filter": { - "additionalProperties": false, - "properties": { - "Pattern": { - "maxLength": 4096, - "minLength": 0, - "pattern": ".*", - "type": "string" - } - }, - "type": "object" - }, - "FilterCriteria": { - "additionalProperties": false, - "properties": { - "Filters": { - "items": { - "$ref": "#/definitions/Filter" - }, - "maxItems": 20, - "minItems": 1, - "type": "array", - "uniqueItems": true - } - }, - "type": "object" - }, - "MaximumConcurrency": { - "maximum": 1000, - "minimum": 2, - "type": "integer" - }, - "OnFailure": { - "additionalProperties": false, - "properties": { - "Destination": { - "maxLength": 1024, - "minLength": 12, - "pattern": "arn:(aws[a-zA-Z0-9-]*):([a-zA-Z0-9\\-])+:([a-z]{2}(-gov)?(-iso([a-z])?)?-[a-z]+-\\d{1})?:(\\d{12})?:(.*)", - "type": "string" - } - }, - "type": "object" - }, - "ScalingConfig": { - "additionalProperties": false, - "properties": { - "MaximumConcurrency": { - "$ref": "#/definitions/MaximumConcurrency" - } - }, - "type": "object" - }, - "SelfManagedEventSource": { - "additionalProperties": false, - "properties": { - "Endpoints": { - "$ref": "#/definitions/Endpoints" - } - }, - "type": "object" - }, - "SelfManagedKafkaEventSourceConfig": { - "additionalProperties": false, - "properties": { - "ConsumerGroupId": { - "$ref": "#/definitions/ConsumerGroupId" - } - }, - "type": "object" - }, - "SourceAccessConfiguration": { - "additionalProperties": false, - "properties": { - "Type": { - "enum": [ - "BASIC_AUTH", - "VPC_SUBNET", - "VPC_SECURITY_GROUP", - "SASL_SCRAM_512_AUTH", - "SASL_SCRAM_256_AUTH", - "VIRTUAL_HOST", - "CLIENT_CERTIFICATE_TLS_AUTH", - "SERVER_ROOT_CA_CERTIFICATE" - ], - "type": "string" - }, - "URI": { - "maxLength": 200, - "minLength": 1, - "pattern": "[a-zA-Z0-9-\\/*:_+=.@-]*", - "type": "string" - } - }, - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "lambda:CreateEventSourceMapping", - "lambda:GetEventSourceMapping" - ] - }, - "delete": { - "permissions": [ - "lambda:DeleteEventSourceMapping", - "lambda:GetEventSourceMapping" - ] - }, - "list": { - "permissions": [ - "lambda:ListEventSourceMappings" - ] - }, - "read": { - "permissions": [ - "lambda:GetEventSourceMapping" - ] - }, - "update": { - "permissions": [ - "lambda:UpdateEventSourceMapping", - "lambda:GetEventSourceMapping" - ] - } - }, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "AmazonManagedKafkaEventSourceConfig": { - "$ref": "#/definitions/AmazonManagedKafkaEventSourceConfig" - }, - "BatchSize": { - "maximum": 10000, - "minimum": 1, - "type": "integer" - }, - "BisectBatchOnFunctionError": { - "type": "boolean" - }, - "DestinationConfig": { - "$ref": "#/definitions/DestinationConfig" - }, - "DocumentDBEventSourceConfig": { - "$ref": "#/definitions/DocumentDBEventSourceConfig" - }, - "Enabled": { - "type": "boolean" - }, - "EventSourceArn": { - "maxLength": 1024, - "minLength": 12, - "pattern": "arn:(aws[a-zA-Z0-9-]*):([a-zA-Z0-9\\-])+:([a-z]{2}(-gov)?(-iso([a-z])?)?-[a-z]+-\\d{1})?:(\\d{12})?:(.*)", - "type": "string" - }, - "FilterCriteria": { - "$ref": "#/definitions/FilterCriteria" - }, - "FunctionName": { - "maxLength": 140, - "minLength": 1, - "pattern": "(arn:(aws[a-zA-Z-]*)?:lambda:)?([a-z]{2}(-gov)?(-iso([a-z])?)?-[a-z]+-\\d{1}:)?(\\d{12}:)?(function:)?([a-zA-Z0-9-_]+)(:(\\$LATEST|[a-zA-Z0-9-_]+))?", - "type": "string" - }, - "FunctionResponseTypes": { - "items": { - "enum": [ - "ReportBatchItemFailures" - ], - "type": "string" - }, - "maxLength": 1, - "minLength": 0, - "type": "array", - "uniqueItems": true - }, - "Id": { - "maxLength": 36, - "minLength": 36, - "pattern": "[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}", - "type": "string" - }, - "KmsKeyArn": { - "maxLength": 2048, - "minLength": 12, - "pattern": "(arn:(aws[a-zA-Z-]*)?:[a-z0-9-.]+:.*)|()", - "type": "string" - }, - "MaximumBatchingWindowInSeconds": { - "maximum": 300, - "minimum": 0, - "type": "integer" - }, - "MaximumRecordAgeInSeconds": { - "maximum": 604800, - "minimum": -1, - "type": "integer" - }, - "MaximumRetryAttempts": { - "maximum": 10000, - "minimum": -1, - "type": "integer" - }, - "ParallelizationFactor": { - "maximum": 10, - "minimum": 1, - "type": "integer" - }, - "Queues": { - "items": { - "maxLength": 1000, - "minLength": 1, - "pattern": "[\\s\\S]*", - "type": "string" - }, - "maxItems": 1, - "minItems": 1, - "type": "array", - "uniqueItems": true - }, - "ScalingConfig": { - "$ref": "#/definitions/ScalingConfig" - }, - "SelfManagedEventSource": { - "$ref": "#/definitions/SelfManagedEventSource" - }, - "SelfManagedKafkaEventSourceConfig": { - "$ref": "#/definitions/SelfManagedKafkaEventSourceConfig" - }, - "SourceAccessConfigurations": { - "items": { - "$ref": "#/definitions/SourceAccessConfiguration" - }, - "maxItems": 22, - "minItems": 1, - "type": "array", - "uniqueItems": true - }, - "StartingPosition": { - "enum": [ - "AT_TIMESTAMP", - "LATEST", - "TRIM_HORIZON" - ], - "maxLength": 12, - "minLength": 6, - "pattern": "(LATEST|TRIM_HORIZON|AT_TIMESTAMP)+", - "type": "string" - }, - "StartingPositionTimestamp": { - "type": "number" - }, - "Topics": { - "items": { - "maxLength": 249, - "minLength": 1, - "pattern": "^[^.]([a-zA-Z0-9\\-_.]+)", - "type": "string" - }, - "maxItems": 1, - "minItems": 1, - "type": "array", - "uniqueItems": true - }, - "TumblingWindowInSeconds": { - "maximum": 900, - "minimum": 0, - "type": "integer" - } - }, - "propertyTransform": { - "/properties/StartingPositionTimestamp": "StartingPositionTimestamp * 1000" - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "FunctionName" - ], - "tagging": { - "cloudFormationSystemTags": false, - "tagOnCreate": false, - "tagUpdatable": false, - "taggable": false - }, - "typeName": "AWS::Lambda::EventSourceMapping" -} 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 e0756eb08e..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_south_1/aws-rds-dbcluster.json +++ /dev/null @@ -1,503 +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": { - "relationshipRef": { - "propertyPath": "/properties/Arn", - "typeName": "AWS::IAM::Role" - }, - "type": "string" - } - }, - "required": [ - "RoleArn" - ], - "type": "object" - }, - "Endpoint": { - "additionalProperties": false, - "properties": { - "Address": { - "type": "string" - }, - "Port": { - "type": "string" - } - }, - "type": "object" - }, - "MasterUserSecret": { - "additionalProperties": false, - "properties": { - "KmsKeyId": { - "anyOf": [ - { - "relationshipRef": { - "propertyPath": "/properties/KeyId", - "typeName": "AWS::KMS::Key" - } - }, - { - "relationshipRef": { - "propertyPath": "/properties/Arn", - "typeName": "AWS::KMS::Key" - } - } - ], - "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: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": { - "anyOf": [ - { - "relationshipRef": { - "propertyPath": "/properties/Arn", - "typeName": "AWS::KMS::Key" - } - }, - { - "relationshipRef": { - "propertyPath": "/properties/KeyId", - "typeName": "AWS::KMS::Key" - } - } - ], - "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": { - "anyOf": [ - { - "relationshipRef": { - "propertyPath": "/properties/GroupId", - "typeName": "AWS::EC2::SecurityGroup" - } - }, - { - "relationshipRef": { - "propertyPath": "/properties/Id", - "typeName": "AWS::EC2::SecurityGroup" - } - } - ], - "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/aws-rds-dbinstance.json b/src/cfnlint/data/schemas/providers/eu_south_1/aws-rds-dbinstance.json deleted file mode 100644 index d92125d3b5..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_south_1/aws-rds-dbinstance.json +++ /dev/null @@ -1,670 +0,0 @@ -{ - "additionalProperties": false, - "conditionalCreateOnlyProperties": [ - "/properties/AutoMinorVersionUpgrade", - "/properties/AvailabilityZone", - "/properties/BackupRetentionPeriod", - "/properties/DBClusterSnapshotIdentifier", - "/properties/DBParameterGroupName", - "/properties/DBSnapshotIdentifier", - "/properties/Engine", - "/properties/MultiAZ", - "/properties/PerformanceInsightsKMSKeyId", - "/properties/PreferredMaintenanceWindow", - "/properties/RestoreTime", - "/properties/SourceDBClusterIdentifier", - "/properties/SourceDBInstanceAutomatedBackupsArn", - "/properties/SourceDBInstanceIdentifier", - "/properties/SourceDbiResourceId", - "/properties/StorageType", - "/properties/UseLatestRestorableTime" - ], - "createOnlyProperties": [ - "/properties/CharacterSetName", - "/properties/CustomIAMInstanceProfile", - "/properties/DBClusterIdentifier", - "/properties/DBInstanceIdentifier", - "/properties/DBName", - "/properties/DBSubnetGroupName", - "/properties/KmsKeyId", - "/properties/MasterUsername", - "/properties/NcharCharacterSetName", - "/properties/Port", - "/properties/SourceRegion", - "/properties/StorageEncrypted", - "/properties/Timezone" - ], - "definitions": { - "CertificateDetails": { - "additionalProperties": false, - "properties": { - "CAIdentifier": { - "type": "string" - }, - "ValidTill": { - "format": "date-time", - "type": "string" - } - }, - "type": "object" - }, - "DBInstanceRole": { - "additionalProperties": false, - "properties": { - "FeatureName": { - "type": "string" - }, - "RoleArn": { - "type": "string" - } - }, - "required": [ - "FeatureName", - "RoleArn" - ], - "type": "object" - }, - "Endpoint": { - "additionalProperties": false, - "properties": { - "Address": { - "type": "string" - }, - "HostedZoneId": { - "type": "string" - }, - "Port": { - "type": "string" - } - }, - "type": "object" - }, - "MasterUserSecret": { - "additionalProperties": false, - "properties": { - "KmsKeyId": { - "anyOf": [ - { - "relationshipRef": { - "propertyPath": "/properties/KeyId", - "typeName": "AWS::KMS::Key" - } - }, - { - "relationshipRef": { - "propertyPath": "/properties/Arn", - "typeName": "AWS::KMS::Key" - } - } - ], - "type": "string" - }, - "SecretArn": { - "type": "string" - } - }, - "type": "object" - }, - "ProcessorFeature": { - "additionalProperties": false, - "properties": { - "Name": { - "enum": [ - "coreCount", - "threadsPerCore" - ], - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Key" - ], - "type": "object" - } - }, - "dependencies": { - "KmsKeyId": { - "properties": { - "StorageEncrypted": { - "enum": [ - "true", - "True", - true - ] - } - }, - "required": [ - "StorageEncrypted" - ] - } - }, - "dependentExcluded": { - "SourceDBInstanceIdentifier": [ - "CharacterSetName", - "MasterUserPassword", - "MasterUsername", - "StorageEncrypted" - ] - }, - "deprecatedProperties": [ - "/properties/TdeCredentialArn", - "/properties/TdeCredentialPassword" - ], - "handlers": { - "create": { - "permissions": [ - "ec2:DescribeAccountAttributes", - "ec2:DescribeAvailabilityZones", - "ec2:DescribeInternetGateways", - "ec2:DescribeSecurityGroups", - "ec2:DescribeSubnets", - "ec2:DescribeVpcAttribute", - "ec2:DescribeVpcs", - "iam:CreateServiceLinkedRole", - "iam:GetRole", - "iam:ListRoles", - "iam:PassRole", - "kms:CreateGrant", - "kms:DescribeKey", - "rds:AddRoleToDBInstance", - "rds:AddTagsToResource", - "rds:CreateDBInstance", - "rds:CreateDBInstanceReadReplica", - "rds:DescribeDBInstances", - "rds:DescribeDBClusters", - "rds:DescribeDBClusterSnapshots", - "rds:DescribeDBInstanceAutomatedBackups", - "rds:DescribeDBSnapshots", - "rds:DescribeEvents", - "rds:ModifyDBInstance", - "rds:RebootDBInstance", - "rds:RestoreDBInstanceFromDBSnapshot", - "rds:RestoreDBInstanceToPointInTime", - "rds:StartDBInstanceAutomatedBackupsReplication", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "rds:CreateDBSnapshot", - "rds:DeleteDBInstance", - "rds:DescribeDBInstances" - ], - "timeoutInMinutes": 2160 - }, - "list": { - "permissions": [ - "rds:DescribeDBInstances" - ] - }, - "read": { - "permissions": [ - "ec2:DescribeAccountAttributes", - "ec2:DescribeAvailabilityZones", - "ec2:DescribeInternetGateways", - "ec2:DescribeSecurityGroups", - "ec2:DescribeSubnets", - "ec2:DescribeVpcAttribute", - "ec2:DescribeVpcs", - "rds:DescribeDBInstances" - ] - }, - "update": { - "permissions": [ - "ec2:DescribeAccountAttributes", - "ec2:DescribeAvailabilityZones", - "ec2:DescribeInternetGateways", - "ec2:DescribeSecurityGroups", - "ec2:DescribeSubnets", - "ec2:DescribeVpcAttribute", - "ec2:DescribeVpcs", - "iam:CreateServiceLinkedRole", - "iam:GetRole", - "iam:ListRoles", - "iam:PassRole", - "kms:CreateGrant", - "kms:DescribeKey", - "rds:AddRoleToDBInstance", - "rds:AddTagsToResource", - "rds:DescribeDBClusters", - "rds:DescribeDBEngineVersions", - "rds:DescribeDBInstances", - "rds:DescribeDBParameterGroups", - "rds:DescribeEvents", - "rds:ModifyDBInstance", - "rds:PromoteReadReplica", - "rds:RebootDBInstance", - "rds:RemoveRoleFromDBInstance", - "rds:RemoveTagsFromResource", - "rds:StartDBInstanceAutomatedBackupsReplication", - "rds:StopDBInstanceAutomatedBackupsReplication", - "secretsmanager:CreateSecret", - "secretsmanager:TagResource" - ], - "timeoutInMinutes": 2160 - } - }, - "primaryIdentifier": [ - "/properties/DBInstanceIdentifier" - ], - "properties": { - "AllocatedStorage": { - "pattern": "^[0-9]*$", - "type": "string" - }, - "AllowMajorVersionUpgrade": { - "type": "boolean" - }, - "AssociatedRoles": { - "items": { - "$ref": "#/definitions/DBInstanceRole" - }, - "type": "array" - }, - "AutoMinorVersionUpgrade": { - "type": "boolean" - }, - "AutomaticBackupReplicationKmsKeyId": { - "type": "string" - }, - "AutomaticBackupReplicationRegion": { - "type": "string" - }, - "AvailabilityZone": { - "type": "string" - }, - "BackupRetentionPeriod": { - "default": 1, - "maximum": 35, - "minimum": 0, - "type": "integer" - }, - "CACertificateIdentifier": { - "type": "string" - }, - "CertificateDetails": { - "$ref": "#/definitions/CertificateDetails" - }, - "CertificateRotationRestart": { - "type": "boolean" - }, - "CharacterSetName": { - "type": "string" - }, - "CopyTagsToSnapshot": { - "type": "boolean" - }, - "CustomIAMInstanceProfile": { - "type": "string" - }, - "DBClusterIdentifier": { - "type": "string" - }, - "DBClusterSnapshotIdentifier": { - "type": "string" - }, - "DBInstanceArn": { - "type": "string" - }, - "DBInstanceClass": { - "type": "string" - }, - "DBInstanceIdentifier": { - "maxLength": 63, - "minLength": 1, - "pattern": "^$|^[a-zA-Z]{1}(?:-?[a-zA-Z0-9]){0,62}$", - "type": "string" - }, - "DBName": { - "type": "string" - }, - "DBParameterGroupName": { - "type": "string" - }, - "DBSecurityGroups": { - "items": { - "relationshipRef": { - "propertyPath": "/properties/Id", - "typeName": "AWS::RDS::DBSecurityGroup" - }, - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "DBSnapshotIdentifier": { - "type": "string" - }, - "DBSubnetGroupName": { - "type": "string" - }, - "DBSystemId": { - "type": "string" - }, - "DbiResourceId": { - "type": "string" - }, - "DedicatedLogVolume": { - "type": "boolean" - }, - "DeleteAutomatedBackups": { - "type": "boolean" - }, - "DeletionProtection": { - "type": "boolean" - }, - "Domain": { - "type": "string" - }, - "DomainAuthSecretArn": { - "type": "string" - }, - "DomainDnsIps": { - "items": { - "type": "string" - }, - "type": "array" - }, - "DomainFqdn": { - "type": "string" - }, - "DomainIAMRoleName": { - "type": "string" - }, - "DomainOu": { - "type": "string" - }, - "EnableCloudwatchLogsExports": { - "items": { - "type": "string" - }, - "type": "array" - }, - "EnableIAMDatabaseAuthentication": { - "type": "boolean" - }, - "EnablePerformanceInsights": { - "type": "boolean" - }, - "Endpoint": { - "$ref": "#/definitions/Endpoint" - }, - "Engine": { - "type": "string" - }, - "EngineLifecycleSupport": { - "type": "string" - }, - "EngineVersion": { - "type": "string" - }, - "Iops": { - "type": "integer" - }, - "KmsKeyId": { - "anyOf": [ - { - "relationshipRef": { - "propertyPath": "/properties/KeyId", - "typeName": "AWS::KMS::Key" - } - }, - { - "relationshipRef": { - "propertyPath": "/properties/Arn", - "typeName": "AWS::KMS::Key" - } - } - ], - "type": "string" - }, - "LicenseModel": { - "type": "string" - }, - "ManageMasterUserPassword": { - "type": "boolean" - }, - "MasterUserPassword": { - "type": "string" - }, - "MasterUserSecret": { - "$ref": "#/definitions/MasterUserSecret" - }, - "MasterUsername": { - "maxLength": 128, - "minLength": 1, - "pattern": "^[a-zA-Z][a-zA-Z0-9_]{0,127}$", - "type": "string" - }, - "MaxAllocatedStorage": { - "type": "integer" - }, - "MonitoringInterval": { - "default": 0, - "type": "integer" - }, - "MonitoringRoleArn": { - "type": "string" - }, - "MultiAZ": { - "type": "boolean" - }, - "NcharCharacterSetName": { - "type": "string" - }, - "NetworkType": { - "type": "string" - }, - "OptionGroupName": { - "type": "string" - }, - "PerformanceInsightsKMSKeyId": { - "anyOf": [ - { - "relationshipRef": { - "propertyPath": "/properties/Arn", - "typeName": "AWS::KMS::Key" - } - }, - { - "relationshipRef": { - "propertyPath": "/properties/KeyId", - "typeName": "AWS::KMS::Key" - } - } - ], - "type": "string" - }, - "PerformanceInsightsRetentionPeriod": { - "enum": [ - 7, - 31, - 62, - 93, - 124, - 155, - 186, - 217, - 248, - 279, - 310, - 341, - 372, - 403, - 434, - 465, - 496, - 527, - 558, - 589, - 620, - 651, - 682, - 713, - 731 - ], - "type": "integer" - }, - "Port": { - "pattern": "^\\d*$", - "type": "string" - }, - "PreferredBackupWindow": { - "type": "string" - }, - "PreferredMaintenanceWindow": { - "type": "string" - }, - "ProcessorFeatures": { - "items": { - "$ref": "#/definitions/ProcessorFeature" - }, - "type": "array" - }, - "PromotionTier": { - "default": 1, - "maximum": 15, - "minimum": 0, - "type": "integer" - }, - "PubliclyAccessible": { - "type": "boolean" - }, - "ReplicaMode": { - "type": "string" - }, - "RestoreTime": { - "format": "date-time", - "type": "string" - }, - "SourceDBClusterIdentifier": { - "type": "string" - }, - "SourceDBInstanceAutomatedBackupsArn": { - "type": "string" - }, - "SourceDBInstanceIdentifier": { - "type": "string" - }, - "SourceDbiResourceId": { - "type": "string" - }, - "SourceRegion": { - "type": "string" - }, - "StorageEncrypted": { - "type": "boolean" - }, - "StorageThroughput": { - "type": "integer" - }, - "StorageType": { - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": false - }, - "TdeCredentialArn": { - "type": "string" - }, - "TdeCredentialPassword": { - "type": "string" - }, - "Timezone": { - "type": "string" - }, - "UseDefaultProcessorFeatures": { - "type": "boolean" - }, - "UseLatestRestorableTime": { - "type": "boolean" - }, - "VPCSecurityGroups": { - "items": { - "relationshipRef": { - "propertyPath": "/properties/GroupId", - "typeName": "AWS::EC2::SecurityGroup" - }, - "type": "string" - }, - "type": "array", - "uniqueItems": true - } - }, - "propertyTransform": { - "/properties/DBClusterIdentifier": "$lowercase(DBClusterIdentifier)", - "/properties/DBClusterSnapshotIdentifier": "$lowercase(DBClusterSnapshotIdentifier)", - "/properties/DBInstanceIdentifier": "$lowercase(DBInstanceIdentifier)", - "/properties/DBName": "$lowercase(DBName) $OR $uppercase(DBName)", - "/properties/DBParameterGroupName": "$lowercase(DBParameterGroupName)", - "/properties/DBSnapshotIdentifier": "$lowercase(DBSnapshotIdentifier)", - "/properties/DBSubnetGroupName": "$lowercase(DBSubnetGroupName)", - "/properties/Engine": "$lowercase(Engine)", - "/properties/EngineVersion": "$join([$string(EngineVersion), \".*\"])", - "/properties/KmsKeyId": "$join([\"arn:(aws)[-]{0,1}[a-z]{0,2}[-]{0,1}[a-z]{0,3}:kms:[a-z]{2}[-]{1}[a-z]{3,10}[-]{0,1}[a-z]{0,10}[-]{1}[1-3]{1}:[0-9]{12}[:]{1}key\\/\", KmsKeyId])", - "/properties/MasterUserSecret/KmsKeyId": "$join([\"arn:(aws)[-]{0,1}[a-z]{0,2}[-]{0,1}[a-z]{0,3}:kms:[a-z]{2}[-]{1}[a-z]{3,10}[-]{0,1}[a-z]{0,10}[-]{1}[1-3]{1}:[0-9]{12}[:]{1}key\\/\", MasterUserSecret.KmsKeyId])", - "/properties/NetworkType": "$lowercase(NetworkType)", - "/properties/OptionGroupName": "$lowercase(OptionGroupName)", - "/properties/PerformanceInsightsKMSKeyId": "$join([\"arn:(aws)[-]{0,1}[a-z]{0,2}[-]{0,1}[a-z]{0,3}:kms:[a-z]{2}[-]{1}[a-z]{3,10}[-]{0,1}[a-z]{0,10}[-]{1}[1-3]{1}:[0-9]{12}[:]{1}key\\/\", PerformanceInsightsKMSKeyId])", - "/properties/PreferredMaintenanceWindow": "$lowercase(PreferredMaintenanceWindow)", - "/properties/SourceDBInstanceAutomatedBackupsArn": "$lowercase(SourceDBInstanceAutomatedBackupsArn)", - "/properties/SourceDBInstanceIdentifier": "$lowercase(SourceDBInstanceIdentifier)", - "/properties/StorageType": "$lowercase(StorageType)" - }, - "readOnlyProperties": [ - "/properties/Endpoint/Address", - "/properties/Endpoint/Port", - "/properties/Endpoint/HostedZoneId", - "/properties/DbiResourceId", - "/properties/DBInstanceArn", - "/properties/DBSystemId", - "/properties/MasterUserSecret/SecretArn", - "/properties/CertificateDetails/CAIdentifier", - "/properties/CertificateDetails/ValidTill" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", - "typeName": "AWS::RDS::DBInstance", - "writeOnlyProperties": [ - "/properties/AllowMajorVersionUpgrade", - "/properties/AutomaticBackupReplicationKmsKeyId", - "/properties/CertificateRotationRestart", - "/properties/DBSnapshotIdentifier", - "/properties/DeleteAutomatedBackups", - "/properties/MasterUserPassword", - "/properties/Port", - "/properties/RestoreTime", - "/properties/SourceDBInstanceAutomatedBackupsArn", - "/properties/SourceDBInstanceIdentifier", - "/properties/SourceDbiResourceId", - "/properties/SourceRegion", - "/properties/TdeCredentialPassword", - "/properties/UseDefaultProcessorFeatures", - "/properties/UseLatestRestorableTime" - ] -} diff --git a/src/cfnlint/data/schemas/providers/eu_south_1/aws-rolesanywhere-profile.json b/src/cfnlint/data/schemas/providers/eu_south_1/aws-rolesanywhere-profile.json deleted file mode 100644 index 9781637c58..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_south_1/aws-rolesanywhere-profile.json +++ /dev/null @@ -1,177 +0,0 @@ -{ - "additionalProperties": false, - "definitions": { - "AttributeMapping": { - "additionalProperties": false, - "properties": { - "CertificateField": { - "$ref": "#/definitions/CertificateField" - }, - "MappingRules": { - "items": { - "$ref": "#/definitions/MappingRule" - }, - "type": "array" - } - }, - "required": [ - "CertificateField", - "MappingRules" - ], - "type": "object" - }, - "CertificateField": { - "enum": [ - "x509Subject", - "x509Issuer", - "x509SAN" - ], - "type": "string" - }, - "MappingRule": { - "additionalProperties": false, - "properties": { - "Specifier": { - "type": "string" - } - }, - "required": [ - "Specifier" - ], - "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": [ - "iam:GetRole", - "iam:GetPolicy", - "iam:PassRole", - "rolesanywhere:CreateProfile", - "rolesanywhere:TagResource", - "rolesanywhere:ListTagsForResource", - "rolesanywhere:PutAttributeMapping", - "rolesanywhere:DeleteAttributeMapping" - ] - }, - "delete": { - "permissions": [ - "rolesanywhere:DeleteProfile" - ] - }, - "list": { - "permissions": [ - "rolesanywhere:ListProfiles", - "rolesanywhere:ListTagsForResource" - ] - }, - "read": { - "permissions": [ - "rolesanywhere:GetProfile", - "rolesanywhere:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "iam:GetRole", - "iam:GetPolicy", - "iam:PassRole", - "rolesanywhere:GetProfile", - "rolesanywhere:UpdateProfile", - "rolesanywhere:EnableProfile", - "rolesanywhere:DisableProfile", - "rolesanywhere:TagResource", - "rolesanywhere:UntagResource", - "rolesanywhere:ListTagsForResource", - "rolesanywhere:PutAttributeMapping", - "rolesanywhere:DeleteAttributeMapping" - ] - } - }, - "primaryIdentifier": [ - "/properties/ProfileId" - ], - "properties": { - "AttributeMappings": { - "items": { - "$ref": "#/definitions/AttributeMapping" - }, - "type": "array" - }, - "DurationSeconds": { - "maximum": 43200, - "minimum": 900, - "type": "number" - }, - "Enabled": { - "type": "boolean" - }, - "ManagedPolicyArns": { - "items": { - "type": "string" - }, - "type": "array" - }, - "Name": { - "type": "string" - }, - "ProfileArn": { - "type": "string" - }, - "ProfileId": { - "pattern": "[a-f0-9]{8}-([a-z0-9]{4}-){3}[a-z0-9]{12}", - "type": "string" - }, - "RequireInstanceProperties": { - "type": "boolean" - }, - "RoleArns": { - "items": { - "maxLength": 1011, - "minLength": 1, - "type": "string" - }, - "type": "array" - }, - "SessionPolicy": { - "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 200, - "minItems": 0, - "type": "array" - } - }, - "readOnlyProperties": [ - "/properties/ProfileId", - "/properties/ProfileArn" - ], - "required": [ - "Name", - "RoleArns" - ], - "typeName": "AWS::RolesAnywhere::Profile" -} 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 14e8e6a035..ad850f4ac5 100644 --- a/src/cfnlint/data/schemas/providers/eu_south_2/__init__.py +++ b/src/cfnlint/data/schemas/providers/eu_south_2/__init__.py @@ -539,6 +539,7 @@ "AWS::EC2::IPAM", "AWS::PCAConnectorAD::TemplateGroupAccessControlEntry", "AWS::EC2::TransitGatewayPeeringAttachment", + "AWS::ECR::RepositoryCreationTemplate", "AWS::CloudFront::CachePolicy", "AWS::IAM::AccessKey", "AWS::RDS::DBSubnetGroup", @@ -634,6 +635,7 @@ "aws-route53-dnssec.json", "aws-redshift-endpointauthorization.json", "aws-ec2-transitgatewayroutetable.json", + "aws-controltower-enabledcontrol.json", "aws-s3-accessgrantsinstance.json", "aws-cognito-identitypoolroleattachment.json", "aws-route53-recordset.json", @@ -732,6 +734,7 @@ "aws-ec2-route.json", "aws-fis-experimenttemplate.json", "aws-cloudformation-hookversion.json", + "aws-rolesanywhere-profile.json", "aws-xray-resourcepolicy.json", "aws-servicecatalog-launchtemplateconstraint.json", "aws-wafv2-loggingconfiguration.json", @@ -1059,6 +1062,7 @@ "aws-ec2-ipam.json", "aws-pcaconnectorad-templategroupaccesscontrolentry.json", "aws-ec2-transitgatewaypeeringattachment.json", + "aws-ecr-repositorycreationtemplate.json", "aws-cloudfront-cachepolicy.json", "aws-rds-dbsubnetgroup.json", "aws-amazonmq-configuration.json", diff --git a/src/cfnlint/data/schemas/providers/eu_south_2/aws-controltower-enabledcontrol.json b/src/cfnlint/data/schemas/providers/eu_south_2/aws-controltower-enabledcontrol.json deleted file mode 100644 index fcd9f3325b..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_south_2/aws-controltower-enabledcontrol.json +++ /dev/null @@ -1,180 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/TargetIdentifier", - "/properties/ControlIdentifier" - ], - "definitions": { - "EnabledControlParameter": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "insertionOrder": false, - "items": { - "type": [ - "string", - "number", - "object", - "boolean" - ] - }, - "minItems": 1, - "type": [ - "array", - "string", - "number", - "object", - "boolean" - ] - } - }, - "required": [ - "Value", - "Key" - ], - "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": [ - "controltower:ListEnabledControls", - "controltower:GetEnabledControl", - "controltower:GetControlOperation", - "controltower:EnableControl", - "controltower:TagResource", - "organizations:UpdatePolicy", - "organizations:CreatePolicy", - "organizations:AttachPolicy", - "organizations:DetachPolicy", - "organizations:ListPoliciesForTarget", - "organizations:ListTargetsForPolicy", - "organizations:DescribePolicy" - ] - }, - "delete": { - "permissions": [ - "controltower:GetControlOperation", - "controltower:DisableControl", - "organizations:UpdatePolicy", - "organizations:DeletePolicy", - "organizations:CreatePolicy", - "organizations:AttachPolicy", - "organizations:DetachPolicy", - "organizations:ListPoliciesForTarget", - "organizations:ListTargetsForPolicy", - "organizations:DescribePolicy" - ] - }, - "list": { - "handlerSchema": { - "properties": { - "TargetIdentifier": { - "$ref": "resource-schema.json#/properties/TargetIdentifier" - } - }, - "required": [ - "TargetIdentifier" - ] - }, - "permissions": [ - "controltower:ListEnabledControls" - ] - }, - "read": { - "permissions": [ - "controltower:ListEnabledControls", - "controltower:GetEnabledControl", - "controltower:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "controltower:ListEnabledControls", - "controltower:GetEnabledControl", - "controltower:GetControlOperation", - "controltower:UpdateEnabledControl", - "controltower:UntagResource", - "controltower:TagResource", - "organizations:UpdatePolicy", - "organizations:CreatePolicy", - "organizations:AttachPolicy", - "organizations:DetachPolicy", - "organizations:ListPoliciesForTarget", - "organizations:ListTargetsForPolicy", - "organizations:DescribePolicy" - ] - } - }, - "primaryIdentifier": [ - "/properties/TargetIdentifier", - "/properties/ControlIdentifier" - ], - "properties": { - "ControlIdentifier": { - "maxLength": 2048, - "minLength": 20, - "pattern": "^arn:aws[0-9a-zA-Z_\\-:\\/]+$", - "type": "string" - }, - "Parameters": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/EnabledControlParameter" - }, - "minItems": 1, - "type": "array" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 50, - "minItems": 1, - "type": "array" - }, - "TargetIdentifier": { - "maxLength": 2048, - "minLength": 20, - "pattern": "^arn:aws[0-9a-zA-Z_\\-:\\/]+$", - "type": "string" - } - }, - "required": [ - "TargetIdentifier", - "ControlIdentifier" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-controltower", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::ControlTower::EnabledControl" -} diff --git a/src/cfnlint/data/schemas/providers/eu_south_2/aws-rolesanywhere-profile.json b/src/cfnlint/data/schemas/providers/eu_south_2/aws-rolesanywhere-profile.json deleted file mode 100644 index 9781637c58..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_south_2/aws-rolesanywhere-profile.json +++ /dev/null @@ -1,177 +0,0 @@ -{ - "additionalProperties": false, - "definitions": { - "AttributeMapping": { - "additionalProperties": false, - "properties": { - "CertificateField": { - "$ref": "#/definitions/CertificateField" - }, - "MappingRules": { - "items": { - "$ref": "#/definitions/MappingRule" - }, - "type": "array" - } - }, - "required": [ - "CertificateField", - "MappingRules" - ], - "type": "object" - }, - "CertificateField": { - "enum": [ - "x509Subject", - "x509Issuer", - "x509SAN" - ], - "type": "string" - }, - "MappingRule": { - "additionalProperties": false, - "properties": { - "Specifier": { - "type": "string" - } - }, - "required": [ - "Specifier" - ], - "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": [ - "iam:GetRole", - "iam:GetPolicy", - "iam:PassRole", - "rolesanywhere:CreateProfile", - "rolesanywhere:TagResource", - "rolesanywhere:ListTagsForResource", - "rolesanywhere:PutAttributeMapping", - "rolesanywhere:DeleteAttributeMapping" - ] - }, - "delete": { - "permissions": [ - "rolesanywhere:DeleteProfile" - ] - }, - "list": { - "permissions": [ - "rolesanywhere:ListProfiles", - "rolesanywhere:ListTagsForResource" - ] - }, - "read": { - "permissions": [ - "rolesanywhere:GetProfile", - "rolesanywhere:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "iam:GetRole", - "iam:GetPolicy", - "iam:PassRole", - "rolesanywhere:GetProfile", - "rolesanywhere:UpdateProfile", - "rolesanywhere:EnableProfile", - "rolesanywhere:DisableProfile", - "rolesanywhere:TagResource", - "rolesanywhere:UntagResource", - "rolesanywhere:ListTagsForResource", - "rolesanywhere:PutAttributeMapping", - "rolesanywhere:DeleteAttributeMapping" - ] - } - }, - "primaryIdentifier": [ - "/properties/ProfileId" - ], - "properties": { - "AttributeMappings": { - "items": { - "$ref": "#/definitions/AttributeMapping" - }, - "type": "array" - }, - "DurationSeconds": { - "maximum": 43200, - "minimum": 900, - "type": "number" - }, - "Enabled": { - "type": "boolean" - }, - "ManagedPolicyArns": { - "items": { - "type": "string" - }, - "type": "array" - }, - "Name": { - "type": "string" - }, - "ProfileArn": { - "type": "string" - }, - "ProfileId": { - "pattern": "[a-f0-9]{8}-([a-z0-9]{4}-){3}[a-z0-9]{12}", - "type": "string" - }, - "RequireInstanceProperties": { - "type": "boolean" - }, - "RoleArns": { - "items": { - "maxLength": 1011, - "minLength": 1, - "type": "string" - }, - "type": "array" - }, - "SessionPolicy": { - "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 200, - "minItems": 0, - "type": "array" - } - }, - "readOnlyProperties": [ - "/properties/ProfileId", - "/properties/ProfileArn" - ], - "required": [ - "Name", - "RoleArns" - ], - "typeName": "AWS::RolesAnywhere::Profile" -} 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 35d0ba3a4b..1d6019dff1 100644 --- a/src/cfnlint/data/schemas/providers/eu_west_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/eu_west_1/__init__.py @@ -1272,7 +1272,6 @@ "aws-dms-instanceprofile.json", "aws-opensearchserverless-vpcendpoint.json", "aws-quicksight-datasource.json", - "aws-iot-cacertificate.json", "aws-ec2-networkaclentry.json", "aws-robomaker-simulationapplicationversion.json", "aws-ec2-networkinsightsaccessscopeanalysis.json", @@ -1542,6 +1541,7 @@ "aws-fis-experimenttemplate.json", "aws-codecommit-repository.json", "aws-cloudformation-hookversion.json", + "aws-rolesanywhere-profile.json", "aws-refactorspaces-environment.json", "aws-xray-resourcepolicy.json", "aws-iot-resourcespecificlogging.json", @@ -1602,7 +1602,6 @@ "aws-apigateway-usageplan.json", "aws-mediapackagev2-channel.json", "aws-batch-schedulingpolicy.json", - "aws-iot-authorizer.json", "aws-timestream-influxdbinstance.json", "aws-mediaconnect-bridgesource.json", "aws-mediapackagev2-channelpolicy.json", @@ -1716,7 +1715,6 @@ "aws-servicecatalog-tagoption.json", "aws-servicediscovery-privatednsnamespace.json", "aws-servicecatalog-launchroleconstraint.json", - "aws-iot-rolealias.json", "aws-sagemaker-modelbiasjobdefinition.json", "aws-secretsmanager-resourcepolicy.json", "aws-cloudformation-hookdefaultversion.json", @@ -1912,7 +1910,6 @@ "aws-panorama-package.json", "aws-lookoutvision-project.json", "aws-oam-link.json", - "aws-iot-domainconfiguration.json", "aws-frauddetector-eventtype.json", "aws-sagemaker-endpoint.json", "aws-elasticloadbalancingv2-truststorerevocation.json", @@ -1994,7 +1991,6 @@ "aws-bedrock-datasource.json", "aws-servicecatalog-portfolio.json", "aws-workspacesweb-truststore.json", - "aws-iot-policy.json", "aws-aps-scraper.json", "aws-ec2-transitgatewayroute.json", "aws-ssm-maintenancewindow.json", @@ -2088,7 +2084,6 @@ "aws-cognito-userpoolidentityprovider.json", "aws-appstream-stackuserassociation.json", "aws-resiliencehub-resiliencypolicy.json", - "aws-location-tracker.json", "aws-iot-dimension.json", "aws-logs-loggroup.json", "aws-evidently-experiment.json", @@ -2136,7 +2131,6 @@ "aws-ivs-storageconfiguration.json", "aws-ec2-verifiedaccesstrustprovider.json", "aws-appmesh-virtualrouter.json", - "aws-iot-certificateprovider.json", "aws-pinpointemail-configurationset.json", "aws-pinpoint-emailtemplate.json", "aws-medialive-multiplex.json", @@ -2238,7 +2232,6 @@ "aws-ec2-securitygroupingress.json", "aws-guardduty-detector.json", "aws-sagemaker-modelqualityjobdefinition.json", - "aws-iot-provisioningtemplate.json", "aws-personalize-schema.json", "aws-appflow-flow.json", "aws-apigateway-stage.json", diff --git a/src/cfnlint/data/schemas/providers/eu_west_1/aws-iot-authorizer.json b/src/cfnlint/data/schemas/providers/eu_west_1/aws-iot-authorizer.json new file mode 100644 index 0000000000..4fd44d03a5 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_west_1/aws-iot-authorizer.json @@ -0,0 +1,128 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/SigningDisabled", + "/properties/AuthorizerName" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "iot:CreateAuthorizer", + "iot:DescribeAuthorizer", + "iot:TagResource", + "iot:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "iot:UpdateAuthorizer", + "iot:DeleteAuthorizer", + "iot:DescribeAuthorizer" + ] + }, + "list": { + "permissions": [ + "iot:ListAuthorizers" + ] + }, + "read": { + "permissions": [ + "iot:DescribeAuthorizer", + "iot:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "iot:UpdateAuthorizer", + "iot:DescribeAuthorizer", + "iot:TagResource", + "iot:UntagResource", + "iot:ListTagsForResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/AuthorizerName" + ], + "properties": { + "Arn": { + "type": "string" + }, + "AuthorizerFunctionArn": { + "type": "string" + }, + "AuthorizerName": { + "maxLength": 128, + "minLength": 1, + "pattern": "[\\w=,@-]+", + "type": "string" + }, + "EnableCachingForHttp": { + "type": "boolean" + }, + "SigningDisabled": { + "type": "boolean" + }, + "Status": { + "enum": [ + "ACTIVE", + "INACTIVE" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + }, + "TokenKeyName": { + "type": "string" + }, + "TokenSigningPublicKeys": { + "additionalProperties": false, + "patternProperties": { + "[a-zA-Z0-9:_-]+": { + "maxLength": 5120, + "type": "string" + } + }, + "type": "object" + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "required": [ + "AuthorizerFunctionArn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::IoT::Authorizer" +} diff --git a/src/cfnlint/data/schemas/providers/eu_west_1/aws-iot-cacertificate.json b/src/cfnlint/data/schemas/providers/eu_west_1/aws-iot-cacertificate.json new file mode 100644 index 0000000000..7c56105907 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_west_1/aws-iot-cacertificate.json @@ -0,0 +1,174 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/VerificationCertificatePem", + "/properties/CertificateMode", + "/properties/CACertificatePem" + ], + "definitions": { + "RegistrationConfig": { + "additionalProperties": false, + "properties": { + "RoleArn": { + "maxLength": 2048, + "minLength": 20, + "pattern": "arn:(aws[a-zA-Z-]*)?:iam::\\d{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+", + "type": "string" + }, + "TemplateBody": { + "maxLength": 10240, + "minLength": 0, + "pattern": "[\\s\\S]*", + "type": "string" + }, + "TemplateName": { + "maxLength": 36, + "minLength": 1, + "pattern": "^[0-9A-Za-z_-]+$", + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 127, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "iam:GetRole", + "iam:PassRole", + "iot:RegisterCACertificate", + "iot:DescribeCACertificate", + "iot:TagResource", + "iot:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "iot:UpdateCACertificate", + "iot:DeleteCACertificate", + "iot:DescribeCACertificate" + ] + }, + "list": { + "permissions": [ + "iot:ListCACertificates" + ] + }, + "read": { + "permissions": [ + "iot:DescribeCACertificate", + "iot:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "iam:GetRole", + "iam:PassRole", + "iot:UpdateCACertificate", + "iot:DescribeCACertificate", + "iot:TagResource", + "iot:UntagResource", + "iot:ListTagsForResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "Arn": { + "type": "string" + }, + "AutoRegistrationStatus": { + "enum": [ + "ENABLE", + "DISABLE" + ], + "type": "string" + }, + "CACertificatePem": { + "maxLength": 65536, + "minLength": 1, + "pattern": "[\\s\\S]*", + "type": "string" + }, + "CertificateMode": { + "enum": [ + "DEFAULT", + "SNI_ONLY" + ], + "type": "string" + }, + "Id": { + "type": "string" + }, + "RegistrationConfig": { + "$ref": "#/definitions/RegistrationConfig" + }, + "RemoveAutoRegistration": { + "type": "boolean" + }, + "Status": { + "enum": [ + "ACTIVE", + "INACTIVE" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + }, + "VerificationCertificatePem": { + "maxLength": 65536, + "minLength": 1, + "pattern": "[\\s\\S]*", + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/Id" + ], + "required": [ + "CACertificatePem", + "Status" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::IoT::CACertificate", + "writeOnlyProperties": [ + "/properties/VerificationCertificatePem", + "/properties/RemoveAutoRegistration" + ] +} diff --git a/src/cfnlint/data/schemas/providers/eu_west_1/aws-iot-certificateprovider.json b/src/cfnlint/data/schemas/providers/eu_west_1/aws-iot-certificateprovider.json new file mode 100644 index 0000000000..ea4c9d9f71 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_west_1/aws-iot-certificateprovider.json @@ -0,0 +1,125 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/CertificateProviderName" + ], + "definitions": { + "CertificateProviderOperation": { + "enum": [ + "CreateCertificateFromCsr" + ], + "type": "string" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 127, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "iot:CreateCertificateProvider", + "iot:DescribeCertificateProvider", + "iot:TagResource", + "iot:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "iot:DeleteCertificateProvider", + "iot:DescribeCertificateProvider" + ] + }, + "list": { + "permissions": [ + "iot:ListCertificateProviders" + ] + }, + "read": { + "permissions": [ + "iot:DescribeCertificateProvider", + "iot:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "iot:UpdateCertificateProvider", + "iot:DescribeCertificateProvider", + "iot:TagResource", + "iot:UntagResource", + "iot:ListTagsForResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/CertificateProviderName" + ], + "properties": { + "AccountDefaultForOperations": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/CertificateProviderOperation" + }, + "maxItems": 1, + "minItems": 1, + "type": "array", + "uniqueItems": true + }, + "Arn": { + "type": "string" + }, + "CertificateProviderName": { + "maxLength": 128, + "minLength": 1, + "pattern": "[\\w=,@-]+", + "type": "string" + }, + "LambdaFunctionArn": { + "maxLength": 170, + "minLength": 1, + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 50, + "type": "array", + "uniqueItems": true + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "replacementStrategy": "delete_then_create", + "required": [ + "LambdaFunctionArn", + "AccountDefaultForOperations" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::IoT::CertificateProvider" +} diff --git a/src/cfnlint/data/schemas/providers/eu_west_1/aws-iot-domainconfiguration.json b/src/cfnlint/data/schemas/providers/eu_west_1/aws-iot-domainconfiguration.json new file mode 100644 index 0000000000..03db5c565e --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_west_1/aws-iot-domainconfiguration.json @@ -0,0 +1,224 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/DomainConfigurationName", + "/properties/DomainName", + "/properties/ServiceType", + "/properties/ValidationCertificateArn", + "/properties/ServerCertificateArns" + ], + "definitions": { + "AuthorizerConfig": { + "additionalProperties": false, + "properties": { + "AllowAuthorizerOverride": { + "type": "boolean" + }, + "DefaultAuthorizerName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[\\w=,@-]+$", + "type": "string" + } + }, + "type": "object" + }, + "ServerCertificateConfig": { + "additionalProperties": false, + "properties": { + "EnableOCSPCheck": { + "type": "boolean" + } + }, + "type": "object" + }, + "ServerCertificateSummary": { + "additionalProperties": false, + "properties": { + "ServerCertificateArn": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^arn:aws(-cn|-us-gov|-iso-b|-iso)?:acm:[a-z]{2}-(gov-|iso-|isob-)?[a-z]{4,9}-\\d{1}:\\d{12}:certificate/[a-zA-Z0-9/-]+$", + "type": "string" + }, + "ServerCertificateStatus": { + "enum": [ + "INVALID", + "VALID" + ], + "type": "string" + }, + "ServerCertificateStatusDetail": { + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "TlsConfig": { + "additionalProperties": false, + "properties": { + "SecurityPolicy": { + "maxLength": 128, + "type": "string" + } + }, + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "iot:CreateDomainConfiguration", + "iot:UpdateDomainConfiguration", + "iot:DescribeDomainConfiguration", + "iot:TagResource", + "iot:ListTagsForResource", + "acm:GetCertificate" + ] + }, + "delete": { + "permissions": [ + "iot:DescribeDomainConfiguration", + "iot:DeleteDomainConfiguration", + "iot:UpdateDomainConfiguration" + ] + }, + "list": { + "permissions": [ + "iot:ListDomainConfigurations" + ] + }, + "read": { + "permissions": [ + "iot:DescribeDomainConfiguration", + "iot:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "iot:UpdateDomainConfiguration", + "iot:DescribeDomainConfiguration", + "iot:ListTagsForResource", + "iot:TagResource", + "iot:UntagResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/DomainConfigurationName" + ], + "properties": { + "Arn": { + "type": "string" + }, + "AuthorizerConfig": { + "$ref": "#/definitions/AuthorizerConfig" + }, + "DomainConfigurationName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[\\w.-]+$", + "type": "string" + }, + "DomainConfigurationStatus": { + "enum": [ + "ENABLED", + "DISABLED" + ], + "type": "string" + }, + "DomainName": { + "maxLength": 253, + "minLength": 1, + "type": "string" + }, + "DomainType": { + "enum": [ + "ENDPOINT", + "AWS_MANAGED", + "CUSTOMER_MANAGED" + ], + "type": "string" + }, + "ServerCertificateArns": { + "insertionOrder": true, + "items": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^arn:aws(-cn|-us-gov|-iso-b|-iso)?:acm:[a-z]{2}-(gov-|iso-|isob-)?[a-z]{4,9}-\\d{1}:\\d{12}:certificate/[a-zA-Z0-9/-]+$", + "type": "string" + }, + "maxItems": 1, + "minItems": 0, + "type": "array" + }, + "ServerCertificateConfig": { + "$ref": "#/definitions/ServerCertificateConfig" + }, + "ServerCertificates": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/ServerCertificateSummary" + }, + "type": "array" + }, + "ServiceType": { + "enum": [ + "DATA", + "CREDENTIAL_PROVIDER", + "JOBS" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + }, + "TlsConfig": { + "$ref": "#/definitions/TlsConfig" + }, + "ValidationCertificateArn": { + "pattern": "^arn:aws(-cn|-us-gov|-iso-b|-iso)?:acm:[a-z]{2}-(gov-|iso-|isob-)?[a-z]{4,9}-\\d{1}:\\d{12}:certificate/[a-zA-Z0-9/-]+$", + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/DomainType", + "/properties/ServerCertificates" + ], + "required": [], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::IoT::DomainConfiguration", + "writeOnlyProperties": [ + "/properties/ValidationCertificateArn", + "/properties/ServerCertificateArns" + ] +} diff --git a/src/cfnlint/data/schemas/providers/eu_west_1/aws-iot-policy.json b/src/cfnlint/data/schemas/providers/eu_west_1/aws-iot-policy.json new file mode 100644 index 0000000000..6a8b285974 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_west_1/aws-iot-policy.json @@ -0,0 +1,110 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/PolicyName" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "iot:CreatePolicy", + "iot:GetPolicy", + "iot:TagResource", + "iot:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "iot:DeletePolicy", + "iot:GetPolicy", + "iot:ListPolicyVersions", + "iot:DeletePolicyVersion" + ] + }, + "list": { + "permissions": [ + "iot:ListPolicies" + ] + }, + "read": { + "permissions": [ + "iot:GetPolicy", + "iot:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "iot:GetPolicy", + "iot:ListPolicyVersions", + "iot:CreatePolicyVersion", + "iot:DeletePolicyVersion", + "iot:SetDefaultPolicyVersion", + "iot:TagResource", + "iot:UntagResource", + "iot:ListTagsForResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "Arn": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "PolicyDocument": { + "maxLength": 404600, + "minLength": 1, + "type": [ + "object", + "string" + ] + }, + "PolicyName": { + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + } + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/Id" + ], + "required": [ + "PolicyDocument" + ], + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::IoT::Policy" +} diff --git a/src/cfnlint/data/schemas/providers/eu_west_1/aws-iot-provisioningtemplate.json b/src/cfnlint/data/schemas/providers/eu_west_1/aws-iot-provisioningtemplate.json new file mode 100644 index 0000000000..31a4f45b65 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_west_1/aws-iot-provisioningtemplate.json @@ -0,0 +1,141 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/TemplateName", + "/properties/TemplateType" + ], + "definitions": { + "ProvisioningHook": { + "additionalProperties": false, + "properties": { + "PayloadVersion": { + "type": "string" + }, + "TargetArn": { + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "iam:GetRole", + "iam:PassRole", + "iot:CreateProvisioningTemplate", + "iot:DescribeProvisioningTemplate", + "iot:TagResource", + "iot:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "iot:DeleteProvisioningTemplate", + "iot:DescribeProvisioningTemplate" + ] + }, + "list": { + "permissions": [ + "iot:ListProvisioningTemplates" + ] + }, + "read": { + "permissions": [ + "iot:DescribeProvisioningTemplate", + "iot:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "iam:GetRole", + "iam:PassRole", + "iot:UpdateProvisioningTemplate", + "iot:CreateProvisioningTemplateVersion", + "iot:ListProvisioningTemplateVersions", + "iot:DeleteProvisioningTemplateVersion", + "iot:DescribeProvisioningTemplate", + "iot:TagResource", + "iot:UntagResource", + "iot:ListTagsForResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/TemplateName" + ], + "properties": { + "Description": { + "maxLength": 500, + "type": "string" + }, + "Enabled": { + "type": "boolean" + }, + "PreProvisioningHook": { + "$ref": "#/definitions/ProvisioningHook" + }, + "ProvisioningRoleArn": { + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + }, + "TemplateArn": { + "type": "string" + }, + "TemplateBody": { + "type": "string" + }, + "TemplateName": { + "maxLength": 36, + "minLength": 1, + "pattern": "^[0-9A-Za-z_-]+$", + "type": "string" + }, + "TemplateType": { + "enum": [ + "FLEET_PROVISIONING", + "JITP" + ], + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/TemplateArn" + ], + "required": [ + "ProvisioningRoleArn", + "TemplateBody" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::IoT::ProvisioningTemplate" +} diff --git a/src/cfnlint/data/schemas/providers/eu_west_1/aws-iot-rolealias.json b/src/cfnlint/data/schemas/providers/eu_west_1/aws-iot-rolealias.json new file mode 100644 index 0000000000..5ea03cb1af --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_west_1/aws-iot-rolealias.json @@ -0,0 +1,124 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/RoleAlias" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 127, + "minLength": 1, + "pattern": "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$", + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 1, + "pattern": "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$", + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "iam:GetRole", + "iam:PassRole", + "iot:CreateRoleAlias", + "iot:DescribeRoleAlias", + "iot:TagResource", + "iot:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "iot:DeleteRoleAlias", + "iot:DescribeRoleAlias" + ] + }, + "list": { + "permissions": [ + "iot:ListRoleAliases" + ] + }, + "read": { + "permissions": [ + "iam:GetRole", + "iam:PassRole", + "iot:DescribeRoleAlias", + "iot:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "iam:GetRole", + "iam:PassRole", + "iot:UpdateRoleAlias", + "iot:DescribeRoleAlias", + "iot:TagResource", + "iot:UntagResource", + "iot:ListTagsForResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/RoleAlias" + ], + "properties": { + "CredentialDurationSeconds": { + "default": 3600, + "maximum": 43200, + "minimum": 900, + "type": "integer" + }, + "RoleAlias": { + "maxLength": 128, + "minLength": 1, + "pattern": "[\\w=,@-]+", + "type": "string" + }, + "RoleAliasArn": { + "maxLength": 128, + "minLength": 1, + "pattern": "[\\w=,@-]+", + "type": "string" + }, + "RoleArn": { + "maxLength": 2048, + "minLength": 20, + "pattern": "arn:(aws[a-zA-Z-]*)?:iam::\\d{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+", + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + } + }, + "readOnlyProperties": [ + "/properties/RoleAliasArn" + ], + "required": [ + "RoleArn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::IoT::RoleAlias" +} diff --git a/src/cfnlint/data/schemas/providers/eu_west_1/aws-location-tracker.json b/src/cfnlint/data/schemas/providers/eu_west_1/aws-location-tracker.json new file mode 100644 index 0000000000..e12344f3ed --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_west_1/aws-location-tracker.json @@ -0,0 +1,185 @@ +{ + "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": { + "^([\\p{L}\\p{Z}\\p{N}_.,:/=+\\-@]*)$": { + "maxLength": 256, + "minLength": 0, + "pattern": "^([\\p{L}\\p{Z}\\p{N}_.,:/=+\\-@]*)$", + "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_1/aws-osis-pipeline.json b/src/cfnlint/data/schemas/providers/eu_west_1/aws-osis-pipeline.json index a58c2cd611..62c5a43529 100644 --- a/src/cfnlint/data/schemas/providers/eu_west_1/aws-osis-pipeline.json +++ b/src/cfnlint/data/schemas/providers/eu_west_1/aws-osis-pipeline.json @@ -112,6 +112,30 @@ "type": "string" }, "type": "array" + }, + "VpcAttachmentOptions": { + "additionalProperties": false, + "properties": { + "AttachToVpc": { + "type": "boolean" + }, + "CidrBlock": { + "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]?)/(3[0-2]|[12]?[0-9])$", + "type": "string" + } + }, + "required": [ + "AttachToVpc", + "CidrBlock" + ], + "type": "object" + }, + "VpcEndpointManagement": { + "enum": [ + "CUSTOMER", + "SERVICE" + ], + "type": "string" } }, "required": [ @@ -223,6 +247,11 @@ "type": "array", "uniqueItems": true }, + "VpcEndpointService": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, "VpcEndpoints": { "insertionOrder": false, "items": { @@ -237,7 +266,8 @@ "readOnlyProperties": [ "/properties/PipelineArn", "/properties/IngestEndpointUrls", - "/properties/VpcEndpoints" + "/properties/VpcEndpoints", + "/properties/VpcEndpointService" ], "required": [ "MaxUnits", diff --git a/src/cfnlint/data/schemas/providers/eu_west_1/aws-rolesanywhere-profile.json b/src/cfnlint/data/schemas/providers/eu_west_1/aws-rolesanywhere-profile.json deleted file mode 100644 index 9781637c58..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_west_1/aws-rolesanywhere-profile.json +++ /dev/null @@ -1,177 +0,0 @@ -{ - "additionalProperties": false, - "definitions": { - "AttributeMapping": { - "additionalProperties": false, - "properties": { - "CertificateField": { - "$ref": "#/definitions/CertificateField" - }, - "MappingRules": { - "items": { - "$ref": "#/definitions/MappingRule" - }, - "type": "array" - } - }, - "required": [ - "CertificateField", - "MappingRules" - ], - "type": "object" - }, - "CertificateField": { - "enum": [ - "x509Subject", - "x509Issuer", - "x509SAN" - ], - "type": "string" - }, - "MappingRule": { - "additionalProperties": false, - "properties": { - "Specifier": { - "type": "string" - } - }, - "required": [ - "Specifier" - ], - "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": [ - "iam:GetRole", - "iam:GetPolicy", - "iam:PassRole", - "rolesanywhere:CreateProfile", - "rolesanywhere:TagResource", - "rolesanywhere:ListTagsForResource", - "rolesanywhere:PutAttributeMapping", - "rolesanywhere:DeleteAttributeMapping" - ] - }, - "delete": { - "permissions": [ - "rolesanywhere:DeleteProfile" - ] - }, - "list": { - "permissions": [ - "rolesanywhere:ListProfiles", - "rolesanywhere:ListTagsForResource" - ] - }, - "read": { - "permissions": [ - "rolesanywhere:GetProfile", - "rolesanywhere:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "iam:GetRole", - "iam:GetPolicy", - "iam:PassRole", - "rolesanywhere:GetProfile", - "rolesanywhere:UpdateProfile", - "rolesanywhere:EnableProfile", - "rolesanywhere:DisableProfile", - "rolesanywhere:TagResource", - "rolesanywhere:UntagResource", - "rolesanywhere:ListTagsForResource", - "rolesanywhere:PutAttributeMapping", - "rolesanywhere:DeleteAttributeMapping" - ] - } - }, - "primaryIdentifier": [ - "/properties/ProfileId" - ], - "properties": { - "AttributeMappings": { - "items": { - "$ref": "#/definitions/AttributeMapping" - }, - "type": "array" - }, - "DurationSeconds": { - "maximum": 43200, - "minimum": 900, - "type": "number" - }, - "Enabled": { - "type": "boolean" - }, - "ManagedPolicyArns": { - "items": { - "type": "string" - }, - "type": "array" - }, - "Name": { - "type": "string" - }, - "ProfileArn": { - "type": "string" - }, - "ProfileId": { - "pattern": "[a-f0-9]{8}-([a-z0-9]{4}-){3}[a-z0-9]{12}", - "type": "string" - }, - "RequireInstanceProperties": { - "type": "boolean" - }, - "RoleArns": { - "items": { - "maxLength": 1011, - "minLength": 1, - "type": "string" - }, - "type": "array" - }, - "SessionPolicy": { - "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 200, - "minItems": 0, - "type": "array" - } - }, - "readOnlyProperties": [ - "/properties/ProfileId", - "/properties/ProfileArn" - ], - "required": [ - "Name", - "RoleArns" - ], - "typeName": "AWS::RolesAnywhere::Profile" -} 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 a1aa8c663e..0e7c4b8e3c 100644 --- a/src/cfnlint/data/schemas/providers/eu_west_2/__init__.py +++ b/src/cfnlint/data/schemas/providers/eu_west_2/__init__.py @@ -1196,7 +1196,6 @@ "aws-dms-instanceprofile.json", "aws-opensearchserverless-vpcendpoint.json", "aws-quicksight-datasource.json", - "aws-iot-cacertificate.json", "aws-ec2-networkaclentry.json", "aws-ec2-networkinsightsaccessscopeanalysis.json", "aws-transfer-certificate.json", @@ -1437,6 +1436,7 @@ "aws-wafv2-rulegroup.json", "aws-sagemaker-modelpackagegroup.json", "aws-ses-configurationset.json", + "aws-elasticache-parametergroup.json", "aws-networkfirewall-loggingconfiguration.json", "aws-glue-classifier.json", "aws-connect-securityprofile.json", @@ -1452,6 +1452,7 @@ "aws-fis-experimenttemplate.json", "aws-codecommit-repository.json", "aws-cloudformation-hookversion.json", + "aws-rolesanywhere-profile.json", "aws-refactorspaces-environment.json", "aws-xray-resourcepolicy.json", "aws-iot-resourcespecificlogging.json", @@ -1507,7 +1508,6 @@ "aws-mediapackagev2-channel.json", "aws-appintegrations-eventintegration.json", "aws-batch-schedulingpolicy.json", - "aws-iot-authorizer.json", "aws-mediaconnect-bridgesource.json", "aws-mediapackagev2-channelpolicy.json", "aws-iot-jobtemplate.json", @@ -1617,7 +1617,6 @@ "aws-servicecatalog-tagoption.json", "aws-servicediscovery-privatednsnamespace.json", "aws-servicecatalog-launchroleconstraint.json", - "aws-iot-rolealias.json", "aws-sagemaker-modelbiasjobdefinition.json", "aws-secretsmanager-resourcepolicy.json", "aws-cloudformation-hookdefaultversion.json", @@ -1795,7 +1794,6 @@ "aws-elasticache-subnetgroup.json", "aws-xray-group.json", "aws-oam-link.json", - "aws-iot-domainconfiguration.json", "aws-sagemaker-endpoint.json", "aws-elasticloadbalancingv2-truststorerevocation.json", "aws-networkfirewall-firewall.json", @@ -1865,7 +1863,6 @@ "aws-servicecatalog-portfolio.json", "aws-workspacesweb-truststore.json", "aws-customerprofiles-domain.json", - "aws-iot-policy.json", "aws-aps-scraper.json", "aws-ec2-transitgatewayroute.json", "aws-ssm-maintenancewindow.json", @@ -1994,7 +1991,6 @@ "aws-waf-xssmatchset.json", "aws-ec2-verifiedaccesstrustprovider.json", "aws-appmesh-virtualrouter.json", - "aws-iot-certificateprovider.json", "aws-pinpoint-emailtemplate.json", "aws-medialive-multiplex.json", "aws-scheduler-schedulegroup.json", @@ -2088,7 +2084,6 @@ "aws-ec2-securitygroupingress.json", "aws-guardduty-detector.json", "aws-sagemaker-modelqualityjobdefinition.json", - "aws-iot-provisioningtemplate.json", "aws-appflow-flow.json", "aws-apigateway-stage.json", "aws-budgets-budget.json", diff --git a/src/cfnlint/data/schemas/providers/eu_west_2/aws-elasticache-parametergroup.json b/src/cfnlint/data/schemas/providers/eu_west_2/aws-elasticache-parametergroup.json deleted file mode 100644 index c524f26845..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_west_2/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/eu_west_2/aws-iot-authorizer.json b/src/cfnlint/data/schemas/providers/eu_west_2/aws-iot-authorizer.json new file mode 100644 index 0000000000..4fd44d03a5 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_west_2/aws-iot-authorizer.json @@ -0,0 +1,128 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/SigningDisabled", + "/properties/AuthorizerName" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "iot:CreateAuthorizer", + "iot:DescribeAuthorizer", + "iot:TagResource", + "iot:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "iot:UpdateAuthorizer", + "iot:DeleteAuthorizer", + "iot:DescribeAuthorizer" + ] + }, + "list": { + "permissions": [ + "iot:ListAuthorizers" + ] + }, + "read": { + "permissions": [ + "iot:DescribeAuthorizer", + "iot:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "iot:UpdateAuthorizer", + "iot:DescribeAuthorizer", + "iot:TagResource", + "iot:UntagResource", + "iot:ListTagsForResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/AuthorizerName" + ], + "properties": { + "Arn": { + "type": "string" + }, + "AuthorizerFunctionArn": { + "type": "string" + }, + "AuthorizerName": { + "maxLength": 128, + "minLength": 1, + "pattern": "[\\w=,@-]+", + "type": "string" + }, + "EnableCachingForHttp": { + "type": "boolean" + }, + "SigningDisabled": { + "type": "boolean" + }, + "Status": { + "enum": [ + "ACTIVE", + "INACTIVE" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + }, + "TokenKeyName": { + "type": "string" + }, + "TokenSigningPublicKeys": { + "additionalProperties": false, + "patternProperties": { + "[a-zA-Z0-9:_-]+": { + "maxLength": 5120, + "type": "string" + } + }, + "type": "object" + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "required": [ + "AuthorizerFunctionArn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::IoT::Authorizer" +} diff --git a/src/cfnlint/data/schemas/providers/eu_west_2/aws-iot-cacertificate.json b/src/cfnlint/data/schemas/providers/eu_west_2/aws-iot-cacertificate.json new file mode 100644 index 0000000000..7c56105907 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_west_2/aws-iot-cacertificate.json @@ -0,0 +1,174 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/VerificationCertificatePem", + "/properties/CertificateMode", + "/properties/CACertificatePem" + ], + "definitions": { + "RegistrationConfig": { + "additionalProperties": false, + "properties": { + "RoleArn": { + "maxLength": 2048, + "minLength": 20, + "pattern": "arn:(aws[a-zA-Z-]*)?:iam::\\d{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+", + "type": "string" + }, + "TemplateBody": { + "maxLength": 10240, + "minLength": 0, + "pattern": "[\\s\\S]*", + "type": "string" + }, + "TemplateName": { + "maxLength": 36, + "minLength": 1, + "pattern": "^[0-9A-Za-z_-]+$", + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 127, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "iam:GetRole", + "iam:PassRole", + "iot:RegisterCACertificate", + "iot:DescribeCACertificate", + "iot:TagResource", + "iot:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "iot:UpdateCACertificate", + "iot:DeleteCACertificate", + "iot:DescribeCACertificate" + ] + }, + "list": { + "permissions": [ + "iot:ListCACertificates" + ] + }, + "read": { + "permissions": [ + "iot:DescribeCACertificate", + "iot:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "iam:GetRole", + "iam:PassRole", + "iot:UpdateCACertificate", + "iot:DescribeCACertificate", + "iot:TagResource", + "iot:UntagResource", + "iot:ListTagsForResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "Arn": { + "type": "string" + }, + "AutoRegistrationStatus": { + "enum": [ + "ENABLE", + "DISABLE" + ], + "type": "string" + }, + "CACertificatePem": { + "maxLength": 65536, + "minLength": 1, + "pattern": "[\\s\\S]*", + "type": "string" + }, + "CertificateMode": { + "enum": [ + "DEFAULT", + "SNI_ONLY" + ], + "type": "string" + }, + "Id": { + "type": "string" + }, + "RegistrationConfig": { + "$ref": "#/definitions/RegistrationConfig" + }, + "RemoveAutoRegistration": { + "type": "boolean" + }, + "Status": { + "enum": [ + "ACTIVE", + "INACTIVE" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + }, + "VerificationCertificatePem": { + "maxLength": 65536, + "minLength": 1, + "pattern": "[\\s\\S]*", + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/Id" + ], + "required": [ + "CACertificatePem", + "Status" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::IoT::CACertificate", + "writeOnlyProperties": [ + "/properties/VerificationCertificatePem", + "/properties/RemoveAutoRegistration" + ] +} diff --git a/src/cfnlint/data/schemas/providers/eu_west_2/aws-iot-certificateprovider.json b/src/cfnlint/data/schemas/providers/eu_west_2/aws-iot-certificateprovider.json new file mode 100644 index 0000000000..ea4c9d9f71 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_west_2/aws-iot-certificateprovider.json @@ -0,0 +1,125 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/CertificateProviderName" + ], + "definitions": { + "CertificateProviderOperation": { + "enum": [ + "CreateCertificateFromCsr" + ], + "type": "string" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 127, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "iot:CreateCertificateProvider", + "iot:DescribeCertificateProvider", + "iot:TagResource", + "iot:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "iot:DeleteCertificateProvider", + "iot:DescribeCertificateProvider" + ] + }, + "list": { + "permissions": [ + "iot:ListCertificateProviders" + ] + }, + "read": { + "permissions": [ + "iot:DescribeCertificateProvider", + "iot:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "iot:UpdateCertificateProvider", + "iot:DescribeCertificateProvider", + "iot:TagResource", + "iot:UntagResource", + "iot:ListTagsForResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/CertificateProviderName" + ], + "properties": { + "AccountDefaultForOperations": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/CertificateProviderOperation" + }, + "maxItems": 1, + "minItems": 1, + "type": "array", + "uniqueItems": true + }, + "Arn": { + "type": "string" + }, + "CertificateProviderName": { + "maxLength": 128, + "minLength": 1, + "pattern": "[\\w=,@-]+", + "type": "string" + }, + "LambdaFunctionArn": { + "maxLength": 170, + "minLength": 1, + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 50, + "type": "array", + "uniqueItems": true + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "replacementStrategy": "delete_then_create", + "required": [ + "LambdaFunctionArn", + "AccountDefaultForOperations" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::IoT::CertificateProvider" +} diff --git a/src/cfnlint/data/schemas/providers/eu_west_2/aws-iot-domainconfiguration.json b/src/cfnlint/data/schemas/providers/eu_west_2/aws-iot-domainconfiguration.json new file mode 100644 index 0000000000..03db5c565e --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_west_2/aws-iot-domainconfiguration.json @@ -0,0 +1,224 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/DomainConfigurationName", + "/properties/DomainName", + "/properties/ServiceType", + "/properties/ValidationCertificateArn", + "/properties/ServerCertificateArns" + ], + "definitions": { + "AuthorizerConfig": { + "additionalProperties": false, + "properties": { + "AllowAuthorizerOverride": { + "type": "boolean" + }, + "DefaultAuthorizerName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[\\w=,@-]+$", + "type": "string" + } + }, + "type": "object" + }, + "ServerCertificateConfig": { + "additionalProperties": false, + "properties": { + "EnableOCSPCheck": { + "type": "boolean" + } + }, + "type": "object" + }, + "ServerCertificateSummary": { + "additionalProperties": false, + "properties": { + "ServerCertificateArn": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^arn:aws(-cn|-us-gov|-iso-b|-iso)?:acm:[a-z]{2}-(gov-|iso-|isob-)?[a-z]{4,9}-\\d{1}:\\d{12}:certificate/[a-zA-Z0-9/-]+$", + "type": "string" + }, + "ServerCertificateStatus": { + "enum": [ + "INVALID", + "VALID" + ], + "type": "string" + }, + "ServerCertificateStatusDetail": { + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "TlsConfig": { + "additionalProperties": false, + "properties": { + "SecurityPolicy": { + "maxLength": 128, + "type": "string" + } + }, + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "iot:CreateDomainConfiguration", + "iot:UpdateDomainConfiguration", + "iot:DescribeDomainConfiguration", + "iot:TagResource", + "iot:ListTagsForResource", + "acm:GetCertificate" + ] + }, + "delete": { + "permissions": [ + "iot:DescribeDomainConfiguration", + "iot:DeleteDomainConfiguration", + "iot:UpdateDomainConfiguration" + ] + }, + "list": { + "permissions": [ + "iot:ListDomainConfigurations" + ] + }, + "read": { + "permissions": [ + "iot:DescribeDomainConfiguration", + "iot:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "iot:UpdateDomainConfiguration", + "iot:DescribeDomainConfiguration", + "iot:ListTagsForResource", + "iot:TagResource", + "iot:UntagResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/DomainConfigurationName" + ], + "properties": { + "Arn": { + "type": "string" + }, + "AuthorizerConfig": { + "$ref": "#/definitions/AuthorizerConfig" + }, + "DomainConfigurationName": { + "maxLength": 128, + "minLength": 1, + "pattern": "^[\\w.-]+$", + "type": "string" + }, + "DomainConfigurationStatus": { + "enum": [ + "ENABLED", + "DISABLED" + ], + "type": "string" + }, + "DomainName": { + "maxLength": 253, + "minLength": 1, + "type": "string" + }, + "DomainType": { + "enum": [ + "ENDPOINT", + "AWS_MANAGED", + "CUSTOMER_MANAGED" + ], + "type": "string" + }, + "ServerCertificateArns": { + "insertionOrder": true, + "items": { + "maxLength": 2048, + "minLength": 1, + "pattern": "^arn:aws(-cn|-us-gov|-iso-b|-iso)?:acm:[a-z]{2}-(gov-|iso-|isob-)?[a-z]{4,9}-\\d{1}:\\d{12}:certificate/[a-zA-Z0-9/-]+$", + "type": "string" + }, + "maxItems": 1, + "minItems": 0, + "type": "array" + }, + "ServerCertificateConfig": { + "$ref": "#/definitions/ServerCertificateConfig" + }, + "ServerCertificates": { + "insertionOrder": true, + "items": { + "$ref": "#/definitions/ServerCertificateSummary" + }, + "type": "array" + }, + "ServiceType": { + "enum": [ + "DATA", + "CREDENTIAL_PROVIDER", + "JOBS" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + }, + "TlsConfig": { + "$ref": "#/definitions/TlsConfig" + }, + "ValidationCertificateArn": { + "pattern": "^arn:aws(-cn|-us-gov|-iso-b|-iso)?:acm:[a-z]{2}-(gov-|iso-|isob-)?[a-z]{4,9}-\\d{1}:\\d{12}:certificate/[a-zA-Z0-9/-]+$", + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/DomainType", + "/properties/ServerCertificates" + ], + "required": [], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::IoT::DomainConfiguration", + "writeOnlyProperties": [ + "/properties/ValidationCertificateArn", + "/properties/ServerCertificateArns" + ] +} diff --git a/src/cfnlint/data/schemas/providers/eu_west_2/aws-iot-policy.json b/src/cfnlint/data/schemas/providers/eu_west_2/aws-iot-policy.json new file mode 100644 index 0000000000..6a8b285974 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_west_2/aws-iot-policy.json @@ -0,0 +1,110 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/PolicyName" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "iot:CreatePolicy", + "iot:GetPolicy", + "iot:TagResource", + "iot:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "iot:DeletePolicy", + "iot:GetPolicy", + "iot:ListPolicyVersions", + "iot:DeletePolicyVersion" + ] + }, + "list": { + "permissions": [ + "iot:ListPolicies" + ] + }, + "read": { + "permissions": [ + "iot:GetPolicy", + "iot:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "iot:GetPolicy", + "iot:ListPolicyVersions", + "iot:CreatePolicyVersion", + "iot:DeletePolicyVersion", + "iot:SetDefaultPolicyVersion", + "iot:TagResource", + "iot:UntagResource", + "iot:ListTagsForResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "Arn": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "PolicyDocument": { + "maxLength": 404600, + "minLength": 1, + "type": [ + "object", + "string" + ] + }, + "PolicyName": { + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + } + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/Id" + ], + "required": [ + "PolicyDocument" + ], + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::IoT::Policy" +} diff --git a/src/cfnlint/data/schemas/providers/eu_west_2/aws-iot-provisioningtemplate.json b/src/cfnlint/data/schemas/providers/eu_west_2/aws-iot-provisioningtemplate.json new file mode 100644 index 0000000000..31a4f45b65 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_west_2/aws-iot-provisioningtemplate.json @@ -0,0 +1,141 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/TemplateName", + "/properties/TemplateType" + ], + "definitions": { + "ProvisioningHook": { + "additionalProperties": false, + "properties": { + "PayloadVersion": { + "type": "string" + }, + "TargetArn": { + "type": "string" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "iam:GetRole", + "iam:PassRole", + "iot:CreateProvisioningTemplate", + "iot:DescribeProvisioningTemplate", + "iot:TagResource", + "iot:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "iot:DeleteProvisioningTemplate", + "iot:DescribeProvisioningTemplate" + ] + }, + "list": { + "permissions": [ + "iot:ListProvisioningTemplates" + ] + }, + "read": { + "permissions": [ + "iot:DescribeProvisioningTemplate", + "iot:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "iam:GetRole", + "iam:PassRole", + "iot:UpdateProvisioningTemplate", + "iot:CreateProvisioningTemplateVersion", + "iot:ListProvisioningTemplateVersions", + "iot:DeleteProvisioningTemplateVersion", + "iot:DescribeProvisioningTemplate", + "iot:TagResource", + "iot:UntagResource", + "iot:ListTagsForResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/TemplateName" + ], + "properties": { + "Description": { + "maxLength": 500, + "type": "string" + }, + "Enabled": { + "type": "boolean" + }, + "PreProvisioningHook": { + "$ref": "#/definitions/ProvisioningHook" + }, + "ProvisioningRoleArn": { + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + }, + "TemplateArn": { + "type": "string" + }, + "TemplateBody": { + "type": "string" + }, + "TemplateName": { + "maxLength": 36, + "minLength": 1, + "pattern": "^[0-9A-Za-z_-]+$", + "type": "string" + }, + "TemplateType": { + "enum": [ + "FLEET_PROVISIONING", + "JITP" + ], + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/TemplateArn" + ], + "required": [ + "ProvisioningRoleArn", + "TemplateBody" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::IoT::ProvisioningTemplate" +} diff --git a/src/cfnlint/data/schemas/providers/eu_west_2/aws-iot-rolealias.json b/src/cfnlint/data/schemas/providers/eu_west_2/aws-iot-rolealias.json new file mode 100644 index 0000000000..5ea03cb1af --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_west_2/aws-iot-rolealias.json @@ -0,0 +1,124 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/RoleAlias" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 127, + "minLength": 1, + "pattern": "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$", + "type": "string" + }, + "Value": { + "maxLength": 255, + "minLength": 1, + "pattern": "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$", + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "iam:GetRole", + "iam:PassRole", + "iot:CreateRoleAlias", + "iot:DescribeRoleAlias", + "iot:TagResource", + "iot:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "iot:DeleteRoleAlias", + "iot:DescribeRoleAlias" + ] + }, + "list": { + "permissions": [ + "iot:ListRoleAliases" + ] + }, + "read": { + "permissions": [ + "iam:GetRole", + "iam:PassRole", + "iot:DescribeRoleAlias", + "iot:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "iam:GetRole", + "iam:PassRole", + "iot:UpdateRoleAlias", + "iot:DescribeRoleAlias", + "iot:TagResource", + "iot:UntagResource", + "iot:ListTagsForResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/RoleAlias" + ], + "properties": { + "CredentialDurationSeconds": { + "default": 3600, + "maximum": 43200, + "minimum": 900, + "type": "integer" + }, + "RoleAlias": { + "maxLength": 128, + "minLength": 1, + "pattern": "[\\w=,@-]+", + "type": "string" + }, + "RoleAliasArn": { + "maxLength": 128, + "minLength": 1, + "pattern": "[\\w=,@-]+", + "type": "string" + }, + "RoleArn": { + "maxLength": 2048, + "minLength": 20, + "pattern": "arn:(aws[a-zA-Z-]*)?:iam::\\d{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+", + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": true + } + }, + "readOnlyProperties": [ + "/properties/RoleAliasArn" + ], + "required": [ + "RoleArn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::IoT::RoleAlias" +} diff --git a/src/cfnlint/data/schemas/providers/eu_west_2/aws-rolesanywhere-profile.json b/src/cfnlint/data/schemas/providers/eu_west_2/aws-rolesanywhere-profile.json deleted file mode 100644 index 9781637c58..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_west_2/aws-rolesanywhere-profile.json +++ /dev/null @@ -1,177 +0,0 @@ -{ - "additionalProperties": false, - "definitions": { - "AttributeMapping": { - "additionalProperties": false, - "properties": { - "CertificateField": { - "$ref": "#/definitions/CertificateField" - }, - "MappingRules": { - "items": { - "$ref": "#/definitions/MappingRule" - }, - "type": "array" - } - }, - "required": [ - "CertificateField", - "MappingRules" - ], - "type": "object" - }, - "CertificateField": { - "enum": [ - "x509Subject", - "x509Issuer", - "x509SAN" - ], - "type": "string" - }, - "MappingRule": { - "additionalProperties": false, - "properties": { - "Specifier": { - "type": "string" - } - }, - "required": [ - "Specifier" - ], - "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": [ - "iam:GetRole", - "iam:GetPolicy", - "iam:PassRole", - "rolesanywhere:CreateProfile", - "rolesanywhere:TagResource", - "rolesanywhere:ListTagsForResource", - "rolesanywhere:PutAttributeMapping", - "rolesanywhere:DeleteAttributeMapping" - ] - }, - "delete": { - "permissions": [ - "rolesanywhere:DeleteProfile" - ] - }, - "list": { - "permissions": [ - "rolesanywhere:ListProfiles", - "rolesanywhere:ListTagsForResource" - ] - }, - "read": { - "permissions": [ - "rolesanywhere:GetProfile", - "rolesanywhere:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "iam:GetRole", - "iam:GetPolicy", - "iam:PassRole", - "rolesanywhere:GetProfile", - "rolesanywhere:UpdateProfile", - "rolesanywhere:EnableProfile", - "rolesanywhere:DisableProfile", - "rolesanywhere:TagResource", - "rolesanywhere:UntagResource", - "rolesanywhere:ListTagsForResource", - "rolesanywhere:PutAttributeMapping", - "rolesanywhere:DeleteAttributeMapping" - ] - } - }, - "primaryIdentifier": [ - "/properties/ProfileId" - ], - "properties": { - "AttributeMappings": { - "items": { - "$ref": "#/definitions/AttributeMapping" - }, - "type": "array" - }, - "DurationSeconds": { - "maximum": 43200, - "minimum": 900, - "type": "number" - }, - "Enabled": { - "type": "boolean" - }, - "ManagedPolicyArns": { - "items": { - "type": "string" - }, - "type": "array" - }, - "Name": { - "type": "string" - }, - "ProfileArn": { - "type": "string" - }, - "ProfileId": { - "pattern": "[a-f0-9]{8}-([a-z0-9]{4}-){3}[a-z0-9]{12}", - "type": "string" - }, - "RequireInstanceProperties": { - "type": "boolean" - }, - "RoleArns": { - "items": { - "maxLength": 1011, - "minLength": 1, - "type": "string" - }, - "type": "array" - }, - "SessionPolicy": { - "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 200, - "minItems": 0, - "type": "array" - } - }, - "readOnlyProperties": [ - "/properties/ProfileId", - "/properties/ProfileArn" - ], - "required": [ - "Name", - "RoleArns" - ], - "typeName": "AWS::RolesAnywhere::Profile" -} diff --git a/src/cfnlint/data/schemas/providers/us_east_1/aws-apigatewayv2-stage.json b/src/cfnlint/data/schemas/providers/us_east_1/aws-apigatewayv2-stage.json index c49c40e1fb..d5c790a0cb 100644 --- a/src/cfnlint/data/schemas/providers/us_east_1/aws-apigatewayv2-stage.json +++ b/src/cfnlint/data/schemas/providers/us_east_1/aws-apigatewayv2-stage.json @@ -88,23 +88,13 @@ ] }, "Tags": { - "items": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" + "additionalProperties": false, + "patternProperties": { + ".*": { + "type": "string" + } }, - "type": "array" + "type": "object" } }, "readOnlyProperties": [ 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 1aafbf0ec0..6afc4a18de 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 @@ -672,6 +672,7 @@ "aws-sso-assignment.json", "aws-glue-partition.json", "aws-ssm-resourcepolicy.json", + "aws-apigateway-basepathmapping.json", "aws-s3-accessgrantslocation.json", "aws-guardduty-filter.json", "aws-ecs-service.json", @@ -688,17 +689,20 @@ "aws-ec2-ipampoolcidr.json", "aws-iot-topicruledestination.json", "aws-ec2-vpcdhcpoptionsassociation.json", + "aws-apigateway-model.json", "aws-ec2-networkacl.json", "aws-logs-resourcepolicy.json", "aws-servicecatalog-launchnotificationconstraint.json", "aws-iot-cacertificate.json", "aws-transfer-certificate.json", + "aws-apigateway-documentationpart.json", "aws-route53profiles-profile.json", "aws-cloudwatch-compositealarm.json", "aws-route53resolver-firewalldomainlist.json", "aws-appconfig-application.json", "aws-opsworks-stack.json", "aws-datasync-locationfsxwindows.json", + "aws-apigateway-requestvalidator.json", "aws-autoscaling-warmpool.json", "aws-config-storedquery.json", "aws-acmpca-permission.json", @@ -709,6 +713,7 @@ "aws-ecs-primarytaskset.json", "aws-autoscaling-autoscalinggroup.json", "aws-wafv2-regexpatternset.json", + "aws-controltower-enabledcontrol.json", "aws-s3-accessgrantsinstance.json", "aws-route53-recordset.json", "aws-eks-accessentry.json", @@ -723,6 +728,7 @@ "aws-organizations-resourcepolicy.json", "aws-ec2-transitgatewaymulticastgroupsource.json", "aws-transfer-profile.json", + "aws-apigateway-usageplankey.json", "aws-docdb-dbinstance.json", "aws-datasync-locationhdfs.json", "aws-msk-cluster.json", @@ -751,6 +757,7 @@ "aws-logs-deliverydestination.json", "aws-imagebuilder-imagerecipe.json", "aws-iot-softwarepackage.json", + "aws-apigateway-restapi.json", "aws-opsworks-elasticloadbalancerattachment.json", "aws-appmesh-virtualservice.json", "aws-s3objectlambda-accesspointpolicy.json", @@ -778,6 +785,8 @@ "aws-iam-role.json", "aws-dms-endpoint.json", "aws-appmesh-gatewayroute.json", + "aws-apigateway-apikey.json", + "aws-apigateway-clientcertificate.json", "aws-kinesisanalyticsv2-application.json", "aws-lambda-alias.json", "aws-waf-ipset.json", @@ -800,6 +809,7 @@ "aws-fis-experimenttemplate.json", "aws-codecommit-repository.json", "aws-cloudformation-hookversion.json", + "aws-rolesanywhere-profile.json", "aws-xray-resourcepolicy.json", "aws-iot-resourcespecificlogging.json", "aws-servicecatalog-launchtemplateconstraint.json", @@ -826,6 +836,7 @@ "aws-guardduty-ipset.json", "aws-servicediscovery-httpnamespace.json", "aws-cloudwatch-insightrule.json", + "aws-apigateway-usageplan.json", "aws-batch-schedulingpolicy.json", "aws-iot-authorizer.json", "aws-iot-jobtemplate.json", @@ -833,6 +844,7 @@ "aws-sagemaker-imageversion.json", "aws-detective-graph.json", "aws-servicecatalog-portfolioshare.json", + "aws-apigateway-vpclink.json", "aws-networkmanager-customergatewayassociation.json", "aws-iam-servercertificate.json", "aws-codestarconnections-connection.json", @@ -840,6 +852,7 @@ "aws-docdb-eventsubscription.json", "aws-organizations-organization.json", "aws-ssm-maintenancewindowtarget.json", + "aws-apigateway-authorizer.json", "aws-backupgateway-hypervisor.json", "aws-ses-contactlist.json", "aws-rds-dbsecuritygroupingress.json", @@ -943,6 +956,7 @@ "aws-s3objectlambda-accesspoint.json", "aws-waf-rule.json", "aws-sqs-queuepolicy.json", + "aws-apigateway-account.json", "aws-ec2-transitgatewayconnect.json", "aws-ec2-securitygroup.json", "aws-ec2-capacityreservationfleet.json", @@ -951,6 +965,7 @@ "aws-iam-usertogroupaddition.json", "aws-ec2-vpngatewayroutepropagation.json", "aws-glue-crawler.json", + "aws-apigateway-method.json", "aws-ssm-patchbaseline.json", "aws-servicediscovery-service.json", "aws-waf-webacl.json", @@ -979,6 +994,7 @@ "aws-appconfig-hostedconfigurationversion.json", "aws-datasync-locationefs.json", "aws-ec2-localgatewayroutetable.json", + "aws-apigateway-resource.json", "aws-sagemaker-appimageconfig.json", "aws-elasticloadbalancingv2-targetgroup.json", "aws-applicationautoscaling-scalingpolicy.json", @@ -1100,9 +1116,11 @@ "aws-route53resolver-resolverrule.json", "aws-transfer-connector.json", "aws-appmesh-virtualnode.json", + "aws-apigateway-documentationversion.json", "aws-licensemanager-grant.json", "aws-wafv2-webaclassociation.json", "aws-codebuild-reportgroup.json", + "aws-apigateway-gatewayresponse.json", "aws-ec2-enclavecertificateiamroleassociation.json", "aws-sso-application.json", "aws-fsx-volume.json", @@ -1124,10 +1142,12 @@ "aws-ec2-securitygroupingress.json", "aws-guardduty-detector.json", "aws-iot-provisioningtemplate.json", + "aws-apigateway-stage.json", "aws-batch-computeenvironment.json", "aws-events-eventbuspolicy.json", "aws-athena-namedquery.json", "aws-ec2-trafficmirrorfilter.json", + "aws-apigateway-deployment.json", "aws-lakeformation-datalakesettings.json", "aws-greengrassv2-deployment.json", "aws-rds-dbsecuritygroup.json", diff --git a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-account.json b/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-account.json deleted file mode 100644 index e732339968..0000000000 --- a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-account.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "additionalProperties": false, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "CloudWatchRoleArn": { - "type": "string" - }, - "Id": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "typeName": "AWS::ApiGateway::Account" -} diff --git a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-apikey.json b/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-apikey.json deleted file mode 100644 index 69c4b613c7..0000000000 --- a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-apikey.json +++ /dev/null @@ -1,123 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/GenerateDistinctId", - "/properties/Name", - "/properties/Value" - ], - "definitions": { - "StageKey": { - "additionalProperties": false, - "properties": { - "RestApiId": { - "type": "string" - }, - "StageName": { - "type": "string" - } - }, - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "apigateway:POST", - "apigateway:GET", - "apigateway:PUT" - ] - }, - "delete": { - "permissions": [ - "apigateway:DELETE", - "apigateway:GET" - ] - }, - "list": { - "permissions": [ - "apigateway:GET" - ] - }, - "read": { - "permissions": [ - "apigateway:GET" - ] - }, - "update": { - "permissions": [ - "apigateway:GET", - "apigateway:PATCH", - "apigateway:PUT", - "apigateway:DELETE" - ] - } - }, - "primaryIdentifier": [ - "/properties/APIKeyId" - ], - "properties": { - "APIKeyId": { - "type": "string" - }, - "CustomerId": { - "type": "string" - }, - "Description": { - "type": "string" - }, - "Enabled": { - "default": false, - "type": "boolean" - }, - "GenerateDistinctId": { - "type": "boolean" - }, - "Name": { - "type": "string" - }, - "StageKeys": { - "items": { - "$ref": "#/definitions/StageKey" - }, - "type": "array", - "uniqueItems": true - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": false - }, - "Value": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/APIKeyId" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-apigateway", - "typeName": "AWS::ApiGateway::ApiKey", - "writeOnlyProperties": [ - "/properties/GenerateDistinctId" - ] -} diff --git a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-authorizer.json b/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-authorizer.json deleted file mode 100644 index 00c9ef18d2..0000000000 --- a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-authorizer.json +++ /dev/null @@ -1,63 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/RestApiId" - ], - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "AuthType": { - "type": "string" - }, - "AuthorizerCredentials": { - "type": "string" - }, - "AuthorizerResultTtlInSeconds": { - "maximum": 3600, - "minimum": 0, - "type": "integer" - }, - "AuthorizerUri": { - "type": "string" - }, - "Id": { - "type": "string" - }, - "IdentitySource": { - "type": "string" - }, - "IdentityValidationExpression": { - "type": "string" - }, - "Name": { - "type": "string" - }, - "ProviderARNs": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "RestApiId": { - "type": "string" - }, - "Type": { - "enum": [ - "COGNITO_USER_POOLS", - "REQUEST", - "TOKEN" - ], - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "Type", - "RestApiId" - ], - "typeName": "AWS::ApiGateway::Authorizer" -} diff --git a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-basepathmapping.json b/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-basepathmapping.json deleted file mode 100644 index b10af6d11e..0000000000 --- a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-basepathmapping.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/DomainName", - "/properties/BasePath" - ], - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "BasePath": { - "type": "string" - }, - "DomainName": { - "type": "string" - }, - "Id": { - "type": "string" - }, - "RestApiId": { - "type": "string" - }, - "Stage": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "DomainName" - ], - "typeName": "AWS::ApiGateway::BasePathMapping" -} diff --git a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-clientcertificate.json b/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-clientcertificate.json deleted file mode 100644 index b25e87f3ca..0000000000 --- a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-clientcertificate.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "additionalProperties": false, - "definitions": { - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "Description": { - "type": "string" - }, - "Id": { - "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": false - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "typeName": "AWS::ApiGateway::ClientCertificate" -} diff --git a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-deployment.json b/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-deployment.json deleted file mode 100644 index b5914105d7..0000000000 --- a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-deployment.json +++ /dev/null @@ -1,219 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/DeploymentCanarySettings", - "/properties/RestApiId" - ], - "definitions": { - "AccessLogSetting": { - "additionalProperties": false, - "properties": { - "DestinationArn": { - "type": "string" - }, - "Format": { - "type": "string" - } - }, - "type": "object" - }, - "CanarySetting": { - "additionalProperties": false, - "properties": { - "PercentTraffic": { - "type": "number" - }, - "StageVariableOverrides": { - "patternProperties": { - "[a-zA-Z0-9]+": { - "type": "string" - } - }, - "type": "object" - }, - "UseStageCache": { - "type": "boolean" - } - }, - "type": "object" - }, - "DeploymentCanarySettings": { - "additionalProperties": false, - "properties": { - "PercentTraffic": { - "type": "number" - }, - "StageVariableOverrides": { - "patternProperties": { - "[a-zA-Z0-9]+": { - "type": "string" - } - }, - "type": "object" - }, - "UseStageCache": { - "type": "boolean" - } - }, - "type": "object" - }, - "MethodSetting": { - "additionalProperties": false, - "properties": { - "CacheDataEncrypted": { - "type": "boolean" - }, - "CacheTtlInSeconds": { - "type": "integer" - }, - "CachingEnabled": { - "type": "boolean" - }, - "DataTraceEnabled": { - "type": "boolean" - }, - "HttpMethod": { - "type": "string" - }, - "LoggingLevel": { - "type": "string" - }, - "MetricsEnabled": { - "type": "boolean" - }, - "ResourcePath": { - "type": "string" - }, - "ThrottlingBurstLimit": { - "type": "integer" - }, - "ThrottlingRateLimit": { - "type": "number" - } - }, - "type": "object" - }, - "StageDescription": { - "additionalProperties": false, - "properties": { - "AccessLogSetting": { - "$ref": "#/definitions/AccessLogSetting" - }, - "CacheClusterEnabled": { - "type": "boolean" - }, - "CacheClusterSize": { - "type": "string" - }, - "CacheDataEncrypted": { - "type": "boolean" - }, - "CacheTtlInSeconds": { - "type": "integer" - }, - "CachingEnabled": { - "type": "boolean" - }, - "CanarySetting": { - "$ref": "#/definitions/CanarySetting" - }, - "ClientCertificateId": { - "type": "string" - }, - "DataTraceEnabled": { - "type": "boolean" - }, - "Description": { - "type": "string" - }, - "DocumentationVersion": { - "type": "string" - }, - "LoggingLevel": { - "type": "string" - }, - "MethodSettings": { - "items": { - "$ref": "#/definitions/MethodSetting" - }, - "type": "array", - "uniqueItems": true - }, - "MetricsEnabled": { - "type": "boolean" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": false - }, - "ThrottlingBurstLimit": { - "type": "integer" - }, - "ThrottlingRateLimit": { - "type": "number" - }, - "TracingEnabled": { - "type": "boolean" - }, - "Variables": { - "patternProperties": { - "[a-zA-Z0-9]+": { - "type": "string" - } - }, - "type": "object" - } - }, - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "DeploymentCanarySettings": { - "$ref": "#/definitions/DeploymentCanarySettings" - }, - "Description": { - "type": "string" - }, - "Id": { - "type": "string" - }, - "RestApiId": { - "type": "string" - }, - "StageDescription": { - "$ref": "#/definitions/StageDescription" - }, - "StageName": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "RestApiId" - ], - "typeName": "AWS::ApiGateway::Deployment" -} diff --git a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-documentationpart.json b/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-documentationpart.json deleted file mode 100644 index 91464953ae..0000000000 --- a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-documentationpart.json +++ /dev/null @@ -1,111 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Location", - "/properties/RestApiId" - ], - "definitions": { - "Location": { - "additionalProperties": false, - "properties": { - "Method": { - "type": "string" - }, - "Name": { - "type": "string" - }, - "Path": { - "type": "string" - }, - "StatusCode": { - "type": "string" - }, - "Type": { - "enum": [ - "API", - "AUTHORIZER", - "MODEL", - "RESOURCE", - "METHOD", - "PATH_PARAMETER", - "QUERY_PARAMETER", - "REQUEST_HEADER", - "REQUEST_BODY", - "RESPONSE", - "RESPONSE_HEADER", - "RESPONSE_BODY" - ], - "type": "string" - } - }, - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "apigateway:GET", - "apigateway:POST" - ] - }, - "delete": { - "permissions": [ - "apigateway:DELETE" - ] - }, - "list": { - "handlerSchema": { - "properties": { - "RestApiId": { - "$ref": "resource-schema.json#/properties/RestApiId" - } - }, - "required": [ - "RestApiId" - ] - }, - "permissions": [ - "apigateway:GET" - ] - }, - "read": { - "permissions": [ - "apigateway:GET" - ] - }, - "update": { - "permissions": [ - "apigateway:GET", - "apigateway:PATCH" - ] - } - }, - "primaryIdentifier": [ - "/properties/DocumentationPartId", - "/properties/RestApiId" - ], - "properties": { - "DocumentationPartId": { - "type": "string" - }, - "Location": { - "$ref": "#/definitions/Location" - }, - "Properties": { - "type": "string" - }, - "RestApiId": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/DocumentationPartId" - ], - "required": [ - "Location", - "Properties", - "RestApiId" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-apigateway", - "typeName": "AWS::ApiGateway::DocumentationPart" -} diff --git a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-documentationversion.json b/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-documentationversion.json deleted file mode 100644 index a8a5e2dc17..0000000000 --- a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-documentationversion.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/DocumentationVersion", - "/properties/RestApiId" - ], - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "Description": { - "type": "string" - }, - "DocumentationVersion": { - "type": "string" - }, - "Id": { - "type": "string" - }, - "RestApiId": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "RestApiId", - "DocumentationVersion" - ], - "typeName": "AWS::ApiGateway::DocumentationVersion" -} diff --git a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-gatewayresponse.json b/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-gatewayresponse.json deleted file mode 100644 index bbef4e34b6..0000000000 --- a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-gatewayresponse.json +++ /dev/null @@ -1,71 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/ResponseType", - "/properties/RestApiId" - ], - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "Id": { - "type": "string" - }, - "ResponseParameters": { - "patternProperties": { - "[a-zA-Z0-9]+": { - "type": "string" - } - }, - "type": "object" - }, - "ResponseTemplates": { - "patternProperties": { - "[a-zA-Z0-9]+": { - "type": "string" - } - }, - "type": "object" - }, - "ResponseType": { - "enum": [ - "ACCESS_DENIED", - "API_CONFIGURATION_ERROR", - "AUTHORIZER_CONFIGURATION_ERROR", - "AUTHORIZER_FAILURE", - "BAD_REQUEST_BODY", - "BAD_REQUEST_PARAMETERS", - "DEFAULT_4XX", - "DEFAULT_5XX", - "EXPIRED_TOKEN", - "INTEGRATION_FAILURE", - "INTEGRATION_TIMEOUT", - "INVALID_API_KEY", - "INVALID_SIGNATURE", - "MISSING_AUTHENTICATION_TOKEN", - "QUOTA_EXCEEDED", - "REQUEST_TOO_LARGE", - "RESOURCE_NOT_FOUND", - "THROTTLED", - "UNAUTHORIZED", - "UNSUPPORTED_MEDIA_TYPE", - "WAF_FILTERED" - ], - "type": "string" - }, - "RestApiId": { - "type": "string" - }, - "StatusCode": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "RestApiId", - "ResponseType" - ], - "typeName": "AWS::ApiGateway::GatewayResponse" -} diff --git a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-method.json b/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-method.json deleted file mode 100644 index 5b640709fb..0000000000 --- a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-method.json +++ /dev/null @@ -1,289 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/RestApiId", - "/properties/ResourceId", - "/properties/HttpMethod" - ], - "definitions": { - "Integration": { - "additionalProperties": false, - "properties": { - "CacheKeyParameters": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "CacheNamespace": { - "type": "string" - }, - "ConnectionId": { - "type": "string" - }, - "ConnectionType": { - "enum": [ - "INTERNET", - "VPC_LINK" - ], - "type": "string" - }, - "ContentHandling": { - "enum": [ - "CONVERT_TO_BINARY", - "CONVERT_TO_TEXT" - ], - "type": "string" - }, - "Credentials": { - "type": "string" - }, - "IntegrationHttpMethod": { - "type": "string" - }, - "IntegrationResponses": { - "items": { - "$ref": "#/definitions/IntegrationResponse" - }, - "type": "array", - "uniqueItems": true - }, - "PassthroughBehavior": { - "enum": [ - "WHEN_NO_MATCH", - "WHEN_NO_TEMPLATES", - "NEVER" - ], - "type": "string" - }, - "RequestParameters": { - "additionalProperties": false, - "patternProperties": { - "[a-zA-Z0-9]+": { - "type": "string" - } - }, - "type": "object" - }, - "RequestTemplates": { - "additionalProperties": false, - "patternProperties": { - "[a-zA-Z0-9]+": { - "type": "string" - } - }, - "type": "object" - }, - "TimeoutInMillis": { - "minimum": 50, - "type": "integer" - }, - "Type": { - "enum": [ - "AWS", - "AWS_PROXY", - "HTTP", - "HTTP_PROXY", - "MOCK" - ], - "type": "string" - }, - "Uri": { - "type": "string" - } - }, - "required": [ - "Type" - ], - "type": "object" - }, - "IntegrationResponse": { - "additionalProperties": false, - "properties": { - "ContentHandling": { - "enum": [ - "CONVERT_TO_BINARY", - "CONVERT_TO_TEXT" - ], - "type": "string" - }, - "ResponseParameters": { - "additionalProperties": false, - "patternProperties": { - "[a-zA-Z0-9]+": { - "type": "string" - } - }, - "type": "object" - }, - "ResponseTemplates": { - "additionalProperties": false, - "patternProperties": { - "[a-zA-Z0-9]+": { - "type": "string" - } - }, - "type": "object" - }, - "SelectionPattern": { - "type": "string" - }, - "StatusCode": { - "type": "string" - } - }, - "required": [ - "StatusCode" - ], - "type": "object" - }, - "MethodResponse": { - "additionalProperties": false, - "properties": { - "ResponseModels": { - "additionalProperties": false, - "patternProperties": { - "[a-zA-Z0-9]+": { - "type": "string" - } - }, - "type": "object" - }, - "ResponseParameters": { - "additionalProperties": false, - "patternProperties": { - "[a-zA-Z0-9]+": { - "type": [ - "boolean", - "string" - ] - } - }, - "type": "object" - }, - "StatusCode": { - "type": "string" - } - }, - "required": [ - "StatusCode" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "apigateway:PUT", - "apigateway:GET", - "iam:PassRole" - ] - }, - "delete": { - "permissions": [ - "apigateway:DELETE" - ] - }, - "read": { - "permissions": [ - "apigateway:GET" - ] - }, - "update": { - "permissions": [ - "apigateway:GET", - "apigateway:DELETE", - "apigateway:PUT", - "iam:PassRole" - ] - } - }, - "primaryIdentifier": [ - "/properties/RestApiId", - "/properties/ResourceId", - "/properties/HttpMethod" - ], - "properties": { - "ApiKeyRequired": { - "type": "boolean" - }, - "AuthorizationScopes": { - "items": { - "type": "string" - }, - "type": "array" - }, - "AuthorizationType": { - "enum": [ - "NONE", - "AWS_IAM", - "CUSTOM", - "COGNITO_USER_POOLS" - ], - "type": "string" - }, - "AuthorizerId": { - "type": "string" - }, - "HttpMethod": { - "type": "string" - }, - "Integration": { - "$ref": "#/definitions/Integration" - }, - "MethodResponses": { - "items": { - "$ref": "#/definitions/MethodResponse" - }, - "type": "array", - "uniqueItems": true - }, - "OperationName": { - "type": "string" - }, - "RequestModels": { - "additionalProperties": false, - "patternProperties": { - "[a-zA-Z0-9]+": { - "type": "string" - } - }, - "type": "object" - }, - "RequestParameters": { - "additionalProperties": false, - "patternProperties": { - "[a-zA-Z0-9]+": { - "type": [ - "boolean", - "string" - ] - } - }, - "type": "object" - }, - "RequestValidatorId": { - "type": "string" - }, - "ResourceId": { - "type": "string" - }, - "RestApiId": { - "type": "string" - } - }, - "required": [ - "RestApiId", - "ResourceId", - "HttpMethod" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-apigateway.git", - "tagging": { - "cloudFormationSystemTags": false, - "tagOnCreate": false, - "tagUpdatable": false, - "taggable": false - }, - "typeName": "AWS::ApiGateway::Method" -} diff --git a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-model.json b/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-model.json deleted file mode 100644 index 00901c8b84..0000000000 --- a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-model.json +++ /dev/null @@ -1,42 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/ContentType", - "/properties/Name", - "/properties/RestApiId" - ], - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "ContentType": { - "type": "string" - }, - "Description": { - "type": "string" - }, - "Id": { - "type": "string" - }, - "Name": { - "type": "string" - }, - "RestApiId": { - "type": "string" - }, - "Schema": { - "format": "json", - "type": [ - "object", - "string" - ] - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "RestApiId" - ], - "typeName": "AWS::ApiGateway::Model" -} diff --git a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-requestvalidator.json b/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-requestvalidator.json deleted file mode 100644 index 72238424ed..0000000000 --- a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-requestvalidator.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name", - "/properties/RestApiId" - ], - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "Id": { - "type": "string" - }, - "Name": { - "type": "string" - }, - "RestApiId": { - "type": "string" - }, - "ValidateRequestBody": { - "type": "boolean" - }, - "ValidateRequestParameters": { - "type": "boolean" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "RestApiId" - ], - "typeName": "AWS::ApiGateway::RequestValidator" -} diff --git a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-resource.json b/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-resource.json deleted file mode 100644 index 60bfa2b925..0000000000 --- a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-resource.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/PathPart", - "/properties/ParentId", - "/properties/RestApiId" - ], - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "Id": { - "type": "string" - }, - "ParentId": { - "type": "string" - }, - "PathPart": { - "type": "string" - }, - "RestApiId": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "ParentId", - "PathPart", - "RestApiId" - ], - "typeName": "AWS::ApiGateway::Resource" -} diff --git a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-restapi.json b/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-restapi.json deleted file mode 100644 index d08152f085..0000000000 --- a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-restapi.json +++ /dev/null @@ -1,145 +0,0 @@ -{ - "additionalProperties": false, - "definitions": { - "EndpointConfiguration": { - "additionalProperties": false, - "properties": { - "Types": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "VpcEndpointIds": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - } - }, - "type": "object" - }, - "S3Location": { - "additionalProperties": false, - "properties": { - "Bucket": { - "type": "string" - }, - "ETag": { - "type": "string" - }, - "Key": { - "type": "string" - }, - "Version": { - "type": "string" - } - }, - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "ApiKeySourceType": { - "enum": [ - "AUTHORIZER", - "HEADER" - ], - "type": "string" - }, - "BinaryMediaTypes": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "Body": { - "format": "json", - "type": [ - "object", - "string" - ] - }, - "BodyS3Location": { - "$ref": "#/definitions/S3Location" - }, - "CloneFrom": { - "type": "string" - }, - "Description": { - "type": "string" - }, - "DisableExecuteApiEndpoint": { - "type": "boolean" - }, - "EndpointConfiguration": { - "$ref": "#/definitions/EndpointConfiguration" - }, - "FailOnWarnings": { - "type": "boolean" - }, - "Id": { - "type": "string" - }, - "MinimumCompressionSize": { - "type": "integer" - }, - "Mode": { - "type": "string" - }, - "Name": { - "type": "string" - }, - "Parameters": { - "patternProperties": { - "[a-zA-Z0-9]+": { - "type": "string" - } - }, - "type": "object" - }, - "Policy": { - "format": "json", - "type": [ - "object", - "string" - ] - }, - "RootResourceId": { - "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": false - } - }, - "readOnlyProperties": [ - "/properties/Id", - "/properties/RootResourceId" - ], - "typeName": "AWS::ApiGateway::RestApi" -} diff --git a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-stage.json b/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-stage.json deleted file mode 100644 index 3e0d7efcb3..0000000000 --- a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-stage.json +++ /dev/null @@ -1,167 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/StageName", - "/properties/RestApiId" - ], - "definitions": { - "AccessLogSetting": { - "additionalProperties": false, - "properties": { - "DestinationArn": { - "type": "string" - }, - "Format": { - "type": "string" - } - }, - "type": "object" - }, - "CanarySetting": { - "additionalProperties": false, - "properties": { - "DeploymentId": { - "type": "string" - }, - "PercentTraffic": { - "type": "number" - }, - "StageVariableOverrides": { - "patternProperties": { - "[a-zA-Z0-9]+": { - "type": "string" - } - }, - "type": "object" - }, - "UseStageCache": { - "type": "boolean" - } - }, - "type": "object" - }, - "MethodSetting": { - "additionalProperties": false, - "properties": { - "CacheDataEncrypted": { - "type": "boolean" - }, - "CacheTtlInSeconds": { - "type": "integer" - }, - "CachingEnabled": { - "type": "boolean" - }, - "DataTraceEnabled": { - "type": "boolean" - }, - "HttpMethod": { - "type": "string" - }, - "LoggingLevel": { - "type": "string" - }, - "MetricsEnabled": { - "type": "boolean" - }, - "ResourcePath": { - "pattern": "^/.*$", - "type": "string" - }, - "ThrottlingBurstLimit": { - "type": "integer" - }, - "ThrottlingRateLimit": { - "type": "number" - } - }, - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "AccessLogSetting": { - "$ref": "#/definitions/AccessLogSetting" - }, - "CacheClusterEnabled": { - "type": "boolean" - }, - "CacheClusterSize": { - "type": "string" - }, - "CanarySetting": { - "$ref": "#/definitions/CanarySetting" - }, - "ClientCertificateId": { - "type": "string" - }, - "DeploymentId": { - "type": "string" - }, - "Description": { - "type": "string" - }, - "DocumentationVersion": { - "type": "string" - }, - "Id": { - "type": "string" - }, - "MethodSettings": { - "items": { - "$ref": "#/definitions/MethodSetting" - }, - "type": "array", - "uniqueItems": true - }, - "RestApiId": { - "type": "string" - }, - "StageName": { - "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": false - }, - "TracingEnabled": { - "type": "boolean" - }, - "Variables": { - "patternProperties": { - "[a-zA-Z0-9]+": { - "type": "string" - } - }, - "type": "object" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "RestApiId" - ], - "typeName": "AWS::ApiGateway::Stage" -} diff --git a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-usageplan.json b/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-usageplan.json deleted file mode 100644 index 9feecacc46..0000000000 --- a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-usageplan.json +++ /dev/null @@ -1,158 +0,0 @@ -{ - "additionalProperties": false, - "definitions": { - "ApiStage": { - "additionalProperties": false, - "properties": { - "ApiId": { - "type": "string" - }, - "Stage": { - "type": "string" - }, - "Throttle": { - "additionalProperties": false, - "patternProperties": { - ".*": { - "$ref": "#/definitions/ThrottleSettings" - } - }, - "type": "object" - } - }, - "type": "object" - }, - "QuotaSettings": { - "additionalProperties": false, - "properties": { - "Limit": { - "minimum": 0, - "type": "integer" - }, - "Offset": { - "minimum": 0, - "type": "integer" - }, - "Period": { - "type": "string" - } - }, - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 0, - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - }, - "ThrottleSettings": { - "additionalProperties": false, - "properties": { - "BurstLimit": { - "minimum": 0, - "type": "integer" - }, - "RateLimit": { - "minimum": 0, - "type": "number" - } - }, - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "apigateway:POST", - "apigateway:GET", - "apigateway:PUT" - ] - }, - "delete": { - "permissions": [ - "apigateway:DELETE", - "apigateway:GET", - "apigateway:PATCH" - ] - }, - "list": { - "permissions": [ - "apigateway:GET" - ] - }, - "read": { - "permissions": [ - "apigateway:GET" - ] - }, - "update": { - "permissions": [ - "apigateway:GET", - "apigateway:DELETE", - "apigateway:PATCH", - "apigateway:PUT" - ] - } - }, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "ApiStages": { - "items": { - "$ref": "#/definitions/ApiStage" - }, - "type": "array", - "uniqueItems": true - }, - "Description": { - "type": "string" - }, - "Id": { - "type": "string" - }, - "Quota": { - "$ref": "#/definitions/QuotaSettings" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": false - }, - "Throttle": { - "$ref": "#/definitions/ThrottleSettings" - }, - "UsagePlanName": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-apigateway.git", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::ApiGateway::UsagePlan" -} diff --git a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-usageplankey.json b/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-usageplankey.json deleted file mode 100644 index 1dafb85203..0000000000 --- a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-usageplankey.json +++ /dev/null @@ -1,73 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/KeyId", - "/properties/UsagePlanId", - "/properties/KeyType" - ], - "handlers": { - "create": { - "permissions": [ - "apigateway:POST", - "apigateway:GET" - ] - }, - "delete": { - "permissions": [ - "apigateway:DELETE", - "apigateway:GET" - ] - }, - "list": { - "handlerSchema": { - "properties": { - "UsagePlanId": { - "$ref": "resource-schema.json#/properties/UsagePlanId" - } - }, - "required": [ - "UsagePlanId" - ] - }, - "permissions": [ - "apigateway:GET" - ] - }, - "read": { - "permissions": [ - "apigateway:GET" - ] - } - }, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "Id": { - "type": "string" - }, - "KeyId": { - "type": "string" - }, - "KeyType": { - "enum": [ - "API_KEY" - ], - "type": "string" - }, - "UsagePlanId": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "KeyType", - "UsagePlanId", - "KeyId" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-apigateway", - "taggable": false, - "typeName": "AWS::ApiGateway::UsagePlanKey" -} diff --git a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-vpclink.json b/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-vpclink.json deleted file mode 100644 index 39b88e0fb7..0000000000 --- a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-apigateway-vpclink.json +++ /dev/null @@ -1,60 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/TargetArns" - ], - "definitions": { - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "Description": { - "type": "string" - }, - "Id": { - "type": "string" - }, - "Name": { - "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": false - }, - "TargetArns": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "TargetArns", - "Name" - ], - "typeName": "AWS::ApiGateway::VpcLink" -} diff --git a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-controltower-enabledcontrol.json b/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-controltower-enabledcontrol.json deleted file mode 100644 index fcd9f3325b..0000000000 --- a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-controltower-enabledcontrol.json +++ /dev/null @@ -1,180 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/TargetIdentifier", - "/properties/ControlIdentifier" - ], - "definitions": { - "EnabledControlParameter": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "insertionOrder": false, - "items": { - "type": [ - "string", - "number", - "object", - "boolean" - ] - }, - "minItems": 1, - "type": [ - "array", - "string", - "number", - "object", - "boolean" - ] - } - }, - "required": [ - "Value", - "Key" - ], - "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": [ - "controltower:ListEnabledControls", - "controltower:GetEnabledControl", - "controltower:GetControlOperation", - "controltower:EnableControl", - "controltower:TagResource", - "organizations:UpdatePolicy", - "organizations:CreatePolicy", - "organizations:AttachPolicy", - "organizations:DetachPolicy", - "organizations:ListPoliciesForTarget", - "organizations:ListTargetsForPolicy", - "organizations:DescribePolicy" - ] - }, - "delete": { - "permissions": [ - "controltower:GetControlOperation", - "controltower:DisableControl", - "organizations:UpdatePolicy", - "organizations:DeletePolicy", - "organizations:CreatePolicy", - "organizations:AttachPolicy", - "organizations:DetachPolicy", - "organizations:ListPoliciesForTarget", - "organizations:ListTargetsForPolicy", - "organizations:DescribePolicy" - ] - }, - "list": { - "handlerSchema": { - "properties": { - "TargetIdentifier": { - "$ref": "resource-schema.json#/properties/TargetIdentifier" - } - }, - "required": [ - "TargetIdentifier" - ] - }, - "permissions": [ - "controltower:ListEnabledControls" - ] - }, - "read": { - "permissions": [ - "controltower:ListEnabledControls", - "controltower:GetEnabledControl", - "controltower:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "controltower:ListEnabledControls", - "controltower:GetEnabledControl", - "controltower:GetControlOperation", - "controltower:UpdateEnabledControl", - "controltower:UntagResource", - "controltower:TagResource", - "organizations:UpdatePolicy", - "organizations:CreatePolicy", - "organizations:AttachPolicy", - "organizations:DetachPolicy", - "organizations:ListPoliciesForTarget", - "organizations:ListTargetsForPolicy", - "organizations:DescribePolicy" - ] - } - }, - "primaryIdentifier": [ - "/properties/TargetIdentifier", - "/properties/ControlIdentifier" - ], - "properties": { - "ControlIdentifier": { - "maxLength": 2048, - "minLength": 20, - "pattern": "^arn:aws[0-9a-zA-Z_\\-:\\/]+$", - "type": "string" - }, - "Parameters": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/EnabledControlParameter" - }, - "minItems": 1, - "type": "array" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 50, - "minItems": 1, - "type": "array" - }, - "TargetIdentifier": { - "maxLength": 2048, - "minLength": 20, - "pattern": "^arn:aws[0-9a-zA-Z_\\-:\\/]+$", - "type": "string" - } - }, - "required": [ - "TargetIdentifier", - "ControlIdentifier" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-controltower", - "tagging": { - "cloudFormationSystemTags": true, - "tagOnCreate": true, - "tagProperty": "/properties/Tags", - "tagUpdatable": true, - "taggable": true - }, - "typeName": "AWS::ControlTower::EnabledControl" -} 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 index 62a3797fcd..e0756eb08e 100644 --- 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 @@ -302,6 +302,9 @@ "EnableIAMDatabaseAuthentication": { "type": "boolean" }, + "EnableLocalWriteForwarding": { + "type": "boolean" + }, "Endpoint": { "$ref": "#/definitions/Endpoint" }, diff --git a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-rolesanywhere-profile.json b/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-rolesanywhere-profile.json deleted file mode 100644 index 9781637c58..0000000000 --- a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-rolesanywhere-profile.json +++ /dev/null @@ -1,177 +0,0 @@ -{ - "additionalProperties": false, - "definitions": { - "AttributeMapping": { - "additionalProperties": false, - "properties": { - "CertificateField": { - "$ref": "#/definitions/CertificateField" - }, - "MappingRules": { - "items": { - "$ref": "#/definitions/MappingRule" - }, - "type": "array" - } - }, - "required": [ - "CertificateField", - "MappingRules" - ], - "type": "object" - }, - "CertificateField": { - "enum": [ - "x509Subject", - "x509Issuer", - "x509SAN" - ], - "type": "string" - }, - "MappingRule": { - "additionalProperties": false, - "properties": { - "Specifier": { - "type": "string" - } - }, - "required": [ - "Specifier" - ], - "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": [ - "iam:GetRole", - "iam:GetPolicy", - "iam:PassRole", - "rolesanywhere:CreateProfile", - "rolesanywhere:TagResource", - "rolesanywhere:ListTagsForResource", - "rolesanywhere:PutAttributeMapping", - "rolesanywhere:DeleteAttributeMapping" - ] - }, - "delete": { - "permissions": [ - "rolesanywhere:DeleteProfile" - ] - }, - "list": { - "permissions": [ - "rolesanywhere:ListProfiles", - "rolesanywhere:ListTagsForResource" - ] - }, - "read": { - "permissions": [ - "rolesanywhere:GetProfile", - "rolesanywhere:ListTagsForResource" - ] - }, - "update": { - "permissions": [ - "iam:GetRole", - "iam:GetPolicy", - "iam:PassRole", - "rolesanywhere:GetProfile", - "rolesanywhere:UpdateProfile", - "rolesanywhere:EnableProfile", - "rolesanywhere:DisableProfile", - "rolesanywhere:TagResource", - "rolesanywhere:UntagResource", - "rolesanywhere:ListTagsForResource", - "rolesanywhere:PutAttributeMapping", - "rolesanywhere:DeleteAttributeMapping" - ] - } - }, - "primaryIdentifier": [ - "/properties/ProfileId" - ], - "properties": { - "AttributeMappings": { - "items": { - "$ref": "#/definitions/AttributeMapping" - }, - "type": "array" - }, - "DurationSeconds": { - "maximum": 43200, - "minimum": 900, - "type": "number" - }, - "Enabled": { - "type": "boolean" - }, - "ManagedPolicyArns": { - "items": { - "type": "string" - }, - "type": "array" - }, - "Name": { - "type": "string" - }, - "ProfileArn": { - "type": "string" - }, - "ProfileId": { - "pattern": "[a-f0-9]{8}-([a-z0-9]{4}-){3}[a-z0-9]{12}", - "type": "string" - }, - "RequireInstanceProperties": { - "type": "boolean" - }, - "RoleArns": { - "items": { - "maxLength": 1011, - "minLength": 1, - "type": "string" - }, - "type": "array" - }, - "SessionPolicy": { - "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 200, - "minItems": 0, - "type": "array" - } - }, - "readOnlyProperties": [ - "/properties/ProfileId", - "/properties/ProfileArn" - ], - "required": [ - "Name", - "RoleArns" - ], - "typeName": "AWS::RolesAnywhere::Profile" -} From f2124068c769fc357c654e2a815ea6ce475cda05 Mon Sep 17 00:00:00 2001 From: Kevin DeJong Date: Thu, 27 Jun 2024 13:26:37 -0700 Subject: [PATCH 2/2] Fix remaining tag patches to be json objects --- ...d3fe2e7838c23f6acd054944cb2b1618.meta.json | 2 +- ...41c64a9c91b2fa5b4928c0d9b2f780b0.meta.json | 2 +- .../all/aws_batch_jobdefinition/tags.json | 22 +- .../providers/all/aws_dax_cluster/tags.json | 22 +- .../tags.json | 22 +- .../aws_greengrass_coredefinition/tags.json | 22 +- .../aws_greengrass_devicedefinition/tags.json | 22 +- .../tags.json | 22 +- .../all/aws_greengrass_group/tags.json | 22 +- .../aws_greengrass_loggerdefinition/tags.json | 22 +- .../tags.json | 22 +- .../tags.json | 22 +- .../aws_mediaconvert_jobtemplate/tags.json | 22 +- .../all/aws_mediaconvert_preset/tags.json | 22 +- .../all/aws_mediaconvert_queue/tags.json | 22 +- .../all/aws_medialive_channel/tags.json | 22 +- .../all/aws_medialive_input/tags.json | 22 +- .../tags.json | 22 +- .../all/aws_mwaa_environment/tags.json | 22 +- .../providers/all/aws_pinpoint_app/tags.json | 22 +- .../all/aws_pinpoint_campaign/tags.json | 22 +- .../all/aws_pinpoint_emailtemplate/tags.json | 22 +- .../all/aws_pinpoint_inapptemplate/tags.json | 22 +- .../all/aws_pinpoint_pushtemplate/tags.json | 22 +- .../all/aws_pinpoint_segment/tags.json | 22 +- .../all/aws_pinpoint_smstemplate/tags.json | 22 +- .../schemas/providers/af_south_1/__init__.py | 6 - .../af_south_1/aws-cloudwatch-dashboard.json | 27 + .../aws-lambda-function.json | 15 +- .../aws-logs-delivery.json | 2 +- .../aws-logs-deliverydestination.json | 2 +- .../aws-logs-deliverysource.json | 2 +- .../aws-secretsmanager-secret.json | 3 +- .../schemas/providers/ap_east_1/__init__.py | 13 - .../ap_east_1/aws-cloudwatch-dashboard.json | 27 + .../aws-iot-authorizer.json | 5 +- .../aws-iot-cacertificate.json | 3 +- .../aws-iot-certificateprovider.json | 5 +- .../aws-iot-domainconfiguration.json | 5 +- .../aws-iot-policy.json | 5 +- .../aws-iot-provisioningtemplate.json | 6 +- .../aws-iot-rolealias.json | 5 +- .../aws-lambda-function.json | 15 +- .../ap_east_1/aws-logs-delivery.json | 130 ++++ .../aws-logs-deliverydestination.json | 152 +++++ .../ap_east_1/aws-logs-deliverysource.json | 138 +++++ .../aws-secretsmanager-secret.json | 3 +- .../providers/ap_northeast_1/__init__.py | 14 +- .../aws-cloudwatch-dashboard.json | 27 + .../ap_northeast_1/aws-lambda-function.json | 559 ++++++++++++++++++ .../ap_northeast_1/aws-logs-delivery.json | 130 ++++ .../aws-logs-deliverydestination.json | 152 +++++ .../aws-logs-deliverysource.json | 138 +++++ .../ap_northeast_1/aws-pinpoint-app.json | 22 +- .../ap_northeast_1/aws-pinpoint-segment.json | 22 +- .../aws-secretsmanager-secret.json | 170 ++++++ .../providers/ap_northeast_2/__init__.py | 13 - .../aws-cloudwatch-dashboard.json | 27 + .../aws-iot-authorizer.json | 5 +- .../aws-iot-cacertificate.json | 3 +- .../aws-iot-certificateprovider.json | 5 +- .../aws-iot-domainconfiguration.json | 5 +- .../aws-iot-policy.json | 5 +- .../aws-iot-provisioningtemplate.json | 6 +- .../aws-iot-rolealias.json | 5 +- .../ap_northeast_2/aws-lambda-function.json | 559 ++++++++++++++++++ .../ap_northeast_2/aws-logs-delivery.json | 130 ++++ .../aws-logs-deliverydestination.json | 152 +++++ .../aws-logs-deliverysource.json | 138 +++++ .../ap_northeast_2/aws-pinpoint-app.json | 22 +- .../ap_northeast_2/aws-pinpoint-segment.json | 22 +- .../aws-secretsmanager-secret.json | 170 ++++++ .../providers/ap_northeast_3/__init__.py | 6 - .../aws-cloudwatch-dashboard.json | 27 + .../ap_northeast_3/aws-lambda-function.json | 559 ++++++++++++++++++ .../ap_northeast_3/aws-logs-delivery.json | 130 ++++ .../aws-logs-deliverydestination.json | 152 +++++ .../aws-logs-deliverysource.json | 138 +++++ .../aws-secretsmanager-secret.json | 170 ++++++ .../schemas/providers/ap_south_1/__init__.py | 14 +- .../ap_south_1/aws-cloudwatch-dashboard.json | 27 + .../ap_south_1/aws-lambda-function.json | 559 ++++++++++++++++++ .../aws-location-tracker.json | 4 +- .../ap_south_1/aws-logs-delivery.json | 130 ++++ .../aws-logs-deliverydestination.json | 152 +++++ .../ap_south_1/aws-logs-deliverysource.json | 138 +++++ .../ap_south_1/aws-secretsmanager-secret.json | 170 ++++++ .../schemas/providers/ap_south_2/__init__.py | 6 - .../ap_south_2/aws-cloudwatch-dashboard.json | 27 + .../ap_south_2/aws-lambda-function.json | 559 ++++++++++++++++++ .../ap_south_2/aws-logs-delivery.json | 130 ++++ .../aws-logs-deliverydestination.json | 152 +++++ .../ap_south_2/aws-logs-deliverysource.json | 138 +++++ .../ap_south_2/aws-secretsmanager-secret.json | 170 ++++++ .../providers/ap_southeast_1/__init__.py | 14 +- .../aws-cloudwatch-dashboard.json | 27 + .../ap_southeast_1/aws-lambda-function.json | 559 ++++++++++++++++++ .../aws-location-tracker.json | 4 +- .../ap_southeast_1/aws-logs-delivery.json | 130 ++++ .../aws-logs-deliverydestination.json | 152 +++++ .../aws-logs-deliverysource.json | 138 +++++ .../ap_southeast_1/aws-pinpoint-app.json | 22 +- .../ap_southeast_1/aws-pinpoint-segment.json | 22 +- .../aws-secretsmanager-secret.json | 170 ++++++ .../providers/ap_southeast_2/__init__.py | 14 +- .../aws-cloudwatch-dashboard.json | 27 + .../aws-iot-domainconfiguration.json | 5 +- .../ap_southeast_2/aws-lambda-function.json | 559 ++++++++++++++++++ .../aws-location-tracker.json | 4 +- .../ap_southeast_2/aws-logs-delivery.json | 130 ++++ .../aws-logs-deliverydestination.json | 152 +++++ .../aws-logs-deliverysource.json | 138 +++++ .../aws-secretsmanager-secret.json | 170 ++++++ .../providers/ap_southeast_3/__init__.py | 6 - .../aws-cloudwatch-dashboard.json | 27 + .../ap_southeast_3/aws-lambda-function.json | 559 ++++++++++++++++++ .../ap_southeast_3/aws-logs-delivery.json | 130 ++++ .../aws-logs-deliverydestination.json | 152 +++++ .../aws-logs-deliverysource.json | 138 +++++ .../aws-secretsmanager-secret.json | 170 ++++++ .../providers/ap_southeast_4/__init__.py | 6 - .../aws-cloudwatch-dashboard.json | 27 + .../ap_southeast_4/aws-lambda-function.json | 559 ++++++++++++++++++ .../ap_southeast_4/aws-logs-delivery.json | 130 ++++ .../aws-logs-deliverydestination.json | 152 +++++ .../aws-logs-deliverysource.json | 138 +++++ .../aws-secretsmanager-secret.json | 170 ++++++ .../providers/ca_central_1/__init__.py | 14 - .../aws-cloudwatch-dashboard.json | 27 + .../aws-iot-authorizer.json | 5 +- .../aws-iot-cacertificate.json | 3 +- .../aws-iot-certificateprovider.json | 5 +- .../aws-iot-domainconfiguration.json | 5 +- .../aws-iot-policy.json | 5 +- .../aws-iot-provisioningtemplate.json | 6 +- .../aws-iot-rolealias.json | 5 +- .../ca_central_1/aws-lambda-function.json | 559 ++++++++++++++++++ .../aws-location-tracker.json | 4 +- .../ca_central_1/aws-logs-delivery.json | 130 ++++ .../aws-logs-deliverydestination.json | 152 +++++ .../ca_central_1/aws-logs-deliverysource.json | 138 +++++ .../ca_central_1/aws-pinpoint-app.json | 22 +- .../ca_central_1/aws-pinpoint-segment.json | 22 +- .../aws-secretsmanager-secret.json | 170 ++++++ .../schemas/providers/ca_west_1/__init__.py | 6 - .../ca_west_1/aws-cloudwatch-dashboard.json | 27 + .../ca_west_1/aws-lambda-function.json | 559 ++++++++++++++++++ .../ca_west_1/aws-logs-delivery.json | 130 ++++ .../aws-logs-deliverydestination.json | 152 +++++ .../ca_west_1/aws-logs-deliverysource.json | 138 +++++ .../ca_west_1/aws-secretsmanager-secret.json | 170 ++++++ .../schemas/providers/cn_north_1/__init__.py | 13 +- .../cn_north_1/aws-cloudwatch-dashboard.json | 57 -- .../cn_north_1/aws-iot-authorizer.json | 128 ---- .../cn_north_1/aws-iot-cacertificate.json | 174 ------ .../aws-iot-certificateprovider.json | 125 ---- .../providers/cn_north_1/aws-iot-policy.json | 110 ---- .../aws-iot-provisioningtemplate.json | 141 ----- .../cn_north_1/aws-iot-rolealias.json | 124 ---- .../cn_north_1/aws-lambda-function.json | 559 ++++++++++++++++++ .../cn_north_1/aws-logs-delivery.json | 130 ++++ .../aws-logs-deliverydestination.json | 152 +++++ .../cn_north_1/aws-logs-deliverysource.json | 138 +++++ .../cn_north_1/aws-secretsmanager-secret.json | 170 ++++++ .../providers/cn_northwest_1/__init__.py | 13 - .../aws-cloudwatch-dashboard.json | 27 + .../aws-iot-authorizer.json | 5 +- .../aws-iot-cacertificate.json | 3 +- .../aws-iot-certificateprovider.json | 5 +- .../aws-iot-domainconfiguration.json | 223 +++++++ .../aws-iot-policy.json | 5 +- .../aws-iot-provisioningtemplate.json | 6 +- .../aws-iot-rolealias.json | 5 +- .../cn_northwest_1/aws-lambda-function.json | 559 ++++++++++++++++++ .../cn_northwest_1/aws-logs-delivery.json | 130 ++++ .../aws-logs-deliverydestination.json | 152 +++++ .../aws-logs-deliverysource.json | 138 +++++ .../aws-secretsmanager-secret.json | 170 ++++++ .../providers/eu_central_1/__init__.py | 14 +- .../aws-cloudwatch-dashboard.json | 57 -- .../eu_central_1/aws-iot-authorizer.json | 128 ---- .../eu_central_1/aws-iot-cacertificate.json | 174 ------ .../aws-iot-certificateprovider.json | 125 ---- .../aws-iot-domainconfiguration.json | 224 ------- .../eu_central_1/aws-iot-policy.json | 110 ---- .../aws-iot-provisioningtemplate.json | 141 ----- .../eu_central_1/aws-iot-rolealias.json | 124 ---- .../eu_central_1/aws-lambda-function.json | 559 ++++++++++++++++++ .../eu_central_1/aws-location-tracker.json | 185 ++++++ .../eu_central_1/aws-logs-delivery.json | 130 ++++ .../aws-logs-deliverydestination.json | 152 +++++ .../eu_central_1/aws-logs-deliverysource.json | 138 +++++ .../providers/eu_central_2/__init__.py | 6 - .../aws-cloudwatch-dashboard.json | 27 + .../eu_central_2/aws-lambda-function.json | 559 ++++++++++++++++++ .../eu_central_2/aws-logs-delivery.json | 130 ++++ .../aws-logs-deliverydestination.json | 152 +++++ .../eu_central_2/aws-logs-deliverysource.json | 138 +++++ .../aws-secretsmanager-secret.json | 170 ++++++ .../schemas/providers/eu_north_1/__init__.py | 14 - .../eu_north_1/aws-cloudwatch-dashboard.json | 27 + .../eu_north_1/aws-iot-authorizer.json | 127 ++++ .../eu_north_1/aws-iot-cacertificate.json | 173 ++++++ .../aws-iot-certificateprovider.json | 124 ++++ .../aws-iot-domainconfiguration.json | 223 +++++++ .../providers/eu_north_1/aws-iot-policy.json | 109 ++++ .../aws-iot-provisioningtemplate.json | 139 +++++ .../eu_north_1/aws-iot-rolealias.json | 123 ++++ .../eu_north_1/aws-lambda-function.json | 559 ++++++++++++++++++ .../eu_north_1/aws-location-tracker.json | 185 ++++++ .../eu_north_1/aws-logs-delivery.json | 130 ++++ .../aws-logs-deliverydestination.json | 152 +++++ .../eu_north_1/aws-logs-deliverysource.json | 138 +++++ .../aws-medialive-inputsecuritygroup.json | 22 +- .../eu_north_1/aws-secretsmanager-secret.json | 170 ++++++ .../schemas/providers/eu_south_1/__init__.py | 6 +- .../eu_south_1/aws-cloudwatch-dashboard.json | 27 + .../eu_south_1/aws-logs-delivery.json | 130 ++++ .../aws-logs-deliverydestination.json | 152 +++++ .../eu_south_1/aws-logs-deliverysource.json | 138 +++++ .../eu_south_1/aws-secretsmanager-secret.json | 170 ++++++ .../schemas/providers/eu_south_2/__init__.py | 6 - .../eu_south_2/aws-cloudwatch-dashboard.json | 27 + .../eu_south_2/aws-lambda-function.json | 559 ++++++++++++++++++ .../eu_south_2/aws-logs-delivery.json | 130 ++++ .../aws-logs-deliverydestination.json | 152 +++++ .../eu_south_2/aws-logs-deliverysource.json | 138 +++++ .../eu_south_2/aws-secretsmanager-secret.json | 170 ++++++ .../schemas/providers/eu_west_1/__init__.py | 14 +- .../eu_west_1/aws-cloudwatch-dashboard.json | 27 + .../eu_west_1/aws-iot-authorizer.json | 128 ---- .../eu_west_1/aws-iot-cacertificate.json | 174 ------ .../aws-iot-certificateprovider.json | 125 ---- .../aws-iot-domainconfiguration.json | 224 ------- .../providers/eu_west_1/aws-iot-policy.json | 110 ---- .../aws-iot-provisioningtemplate.json | 141 ----- .../eu_west_1/aws-iot-rolealias.json | 124 ---- .../eu_west_1/aws-logs-delivery.json | 130 ++++ .../aws-logs-deliverydestination.json | 152 +++++ .../eu_west_1/aws-logs-deliverysource.json | 138 +++++ .../eu_west_1/aws-secretsmanager-secret.json | 170 ++++++ .../schemas/providers/eu_west_2/__init__.py | 14 +- .../eu_west_2/aws-cloudwatch-dashboard.json | 27 + .../eu_west_2/aws-iot-authorizer.json | 128 ---- .../eu_west_2/aws-iot-cacertificate.json | 174 ------ .../aws-iot-certificateprovider.json | 125 ---- .../aws-iot-domainconfiguration.json | 224 ------- .../providers/eu_west_2/aws-iot-policy.json | 110 ---- .../aws-iot-provisioningtemplate.json | 141 ----- .../eu_west_2/aws-iot-rolealias.json | 124 ---- .../eu_west_2/aws-lambda-function.json | 559 ++++++++++++++++++ .../eu_west_2/aws-location-tracker.json | 185 ++++++ .../eu_west_2/aws-logs-delivery.json | 130 ++++ .../aws-logs-deliverydestination.json | 152 +++++ .../eu_west_2/aws-logs-deliverysource.json | 138 +++++ .../aws-medialive-inputsecuritygroup.json | 22 +- .../providers/eu_west_2/aws-pinpoint-app.json | 22 +- .../eu_west_2/aws-pinpoint-segment.json | 22 +- .../eu_west_2/aws-secretsmanager-secret.json | 170 ++++++ .../schemas/providers/eu_west_3/__init__.py | 13 +- .../eu_west_3/aws-cloudwatch-dashboard.json | 27 + .../eu_west_3/aws-iot-authorizer.json | 127 ++++ .../eu_west_3/aws-iot-cacertificate.json | 173 ++++++ .../aws-iot-certificateprovider.json | 124 ++++ .../aws-iot-domainconfiguration.json | 223 +++++++ .../providers/eu_west_3/aws-iot-policy.json | 109 ++++ .../aws-iot-provisioningtemplate.json | 139 +++++ .../eu_west_3/aws-iot-rolealias.json | 123 ++++ .../eu_west_3/aws-lambda-function.json | 559 ++++++++++++++++++ .../aws-medialive-inputsecuritygroup.json | 22 +- .../eu_west_3/aws-secretsmanager-secret.json | 170 ++++++ .../providers/il_central_1/__init__.py | 6 - .../aws-cloudwatch-dashboard.json | 27 + .../il_central_1/aws-lambda-function.json | 559 ++++++++++++++++++ .../il_central_1/aws-logs-delivery.json | 130 ++++ .../aws-logs-deliverydestination.json | 152 +++++ .../il_central_1/aws-logs-deliverysource.json | 138 +++++ .../aws-secretsmanager-secret.json | 170 ++++++ .../providers/me_central_1/__init__.py | 14 +- .../aws-cloudwatch-dashboard.json | 27 + .../me_central_1/aws-iot-authorizer.json | 127 ++++ .../me_central_1/aws-iot-cacertificate.json | 173 ++++++ .../aws-iot-certificateprovider.json | 124 ++++ .../aws-iot-domainconfiguration.json | 223 +++++++ .../me_central_1/aws-iot-policy.json | 109 ++++ .../aws-iot-provisioningtemplate.json | 139 +++++ .../me_central_1/aws-iot-rolealias.json | 123 ++++ .../me_central_1/aws-lambda-function.json | 559 ++++++++++++++++++ .../me_central_1/aws-logs-delivery.json | 130 ++++ .../aws-logs-deliverydestination.json | 152 +++++ .../me_central_1/aws-logs-deliverysource.json | 138 +++++ .../aws-rolesanywhere-profile.json | 177 ------ .../aws-secretsmanager-secret.json | 170 ++++++ .../schemas/providers/me_south_1/__init__.py | 13 - .../me_south_1/aws-cloudwatch-dashboard.json | 27 + .../me_south_1/aws-iot-authorizer.json | 127 ++++ .../me_south_1/aws-iot-cacertificate.json | 173 ++++++ .../aws-iot-certificateprovider.json | 124 ++++ .../aws-iot-domainconfiguration.json | 223 +++++++ .../providers/me_south_1/aws-iot-policy.json | 109 ++++ .../aws-iot-provisioningtemplate.json | 139 +++++ .../me_south_1/aws-iot-rolealias.json | 123 ++++ .../me_south_1/aws-lambda-function.json | 559 ++++++++++++++++++ .../me_south_1/aws-logs-delivery.json | 130 ++++ .../aws-logs-deliverydestination.json | 152 +++++ .../me_south_1/aws-logs-deliverysource.json | 138 +++++ .../me_south_1/aws-secretsmanager-secret.json | 170 ++++++ .../schemas/providers/sa_east_1/__init__.py | 14 +- .../sa_east_1/aws-cloudwatch-dashboard.json | 27 + .../sa_east_1/aws-iot-authorizer.json | 128 ---- .../sa_east_1/aws-iot-cacertificate.json | 174 ------ .../aws-iot-certificateprovider.json | 125 ---- .../aws-iot-domainconfiguration.json | 224 ------- .../providers/sa_east_1/aws-iot-policy.json | 110 ---- .../aws-iot-provisioningtemplate.json | 141 ----- .../sa_east_1/aws-iot-rolealias.json | 124 ---- .../sa_east_1/aws-lambda-function.json | 559 ++++++++++++++++++ .../sa_east_1/aws-location-tracker.json | 185 ++++++ .../sa_east_1/aws-logs-delivery.json | 130 ++++ .../aws-logs-deliverydestination.json | 152 +++++ .../sa_east_1/aws-logs-deliverysource.json | 138 +++++ .../sa_east_1/aws-secretsmanager-secret.json | 170 ++++++ .../us_east_1/aws-batch-jobdefinition.json | 22 +- .../us_east_1/aws-cloudwatch-dashboard.json | 44 +- .../providers/us_east_1/aws-dax-cluster.json | 22 +- .../aws-greengrass-connectordefinition.json | 22 +- .../aws-greengrass-coredefinition.json | 22 +- .../aws-greengrass-devicedefinition.json | 22 +- .../aws-greengrass-functiondefinition.json | 22 +- .../us_east_1/aws-greengrass-group.json | 22 +- .../aws-greengrass-loggerdefinition.json | 22 +- .../aws-greengrass-resourcedefinition.json | 22 +- ...aws-greengrass-subscriptiondefinition.json | 22 +- .../us_east_1/aws-iot-authorizer.json | 5 +- .../us_east_1/aws-iot-cacertificate.json | 3 +- .../aws-iot-certificateprovider.json | 5 +- .../aws-iot-domainconfiguration.json | 5 +- .../providers/us_east_1/aws-iot-policy.json | 5 +- .../aws-iot-provisioningtemplate.json | 6 +- .../us_east_1/aws-iot-rolealias.json | 5 +- .../us_east_1/aws-lambda-function.json | 15 +- .../us_east_1/aws-location-tracker.json | 4 +- .../us_east_1/aws-logs-delivery.json | 2 +- .../aws-logs-deliverydestination.json | 2 +- .../us_east_1/aws-logs-deliverysource.json | 2 +- .../aws-mediaconvert-jobtemplate.json | 22 +- .../us_east_1/aws-mediaconvert-preset.json | 22 +- .../us_east_1/aws-mediaconvert-queue.json | 22 +- .../us_east_1/aws-medialive-channel.json | 22 +- .../us_east_1/aws-medialive-input.json | 22 +- .../aws-medialive-inputsecuritygroup.json | 22 +- .../us_east_1/aws-mwaa-environment.json | 22 +- .../providers/us_east_1/aws-pinpoint-app.json | 22 +- .../us_east_1/aws-pinpoint-campaign.json | 22 +- .../us_east_1/aws-pinpoint-emailtemplate.json | 22 +- .../us_east_1/aws-pinpoint-inapptemplate.json | 22 +- .../us_east_1/aws-pinpoint-pushtemplate.json | 22 +- .../us_east_1/aws-pinpoint-segment.json | 22 +- .../us_east_1/aws-pinpoint-smstemplate.json | 22 +- .../us_east_1/aws-secretsmanager-secret.json | 3 +- .../schemas/providers/us_east_2/__init__.py | 14 +- .../us_east_2/aws-cloudwatch-dashboard.json | 27 + .../us_east_2/aws-iot-authorizer.json | 127 ++++ .../us_east_2/aws-iot-cacertificate.json | 173 ++++++ .../aws-iot-certificateprovider.json | 124 ++++ .../aws-iot-domainconfiguration.json | 223 +++++++ .../providers/us_east_2/aws-iot-policy.json | 109 ++++ .../aws-iot-provisioningtemplate.json | 139 +++++ .../us_east_2/aws-iot-rolealias.json | 123 ++++ .../us_east_2/aws-lambda-function.json | 559 ++++++++++++++++++ .../us_east_2/aws-logs-delivery.json | 130 ++++ .../aws-logs-deliverydestination.json | 152 +++++ .../us_east_2/aws-logs-deliverysource.json | 138 +++++ .../aws-medialive-inputsecuritygroup.json | 22 +- .../us_east_2/aws-secretsmanager-secret.json | 170 ++++++ .../providers/us_gov_east_1/__init__.py | 12 - .../aws-cloudwatch-dashboard.json | 27 + .../aws-greengrass-connectordefinition.json | 22 +- .../aws-greengrass-coredefinition.json | 22 +- .../aws-greengrass-devicedefinition.json | 22 +- .../aws-greengrass-functiondefinition.json | 22 +- .../us_gov_east_1/aws-greengrass-group.json | 22 +- .../aws-greengrass-loggerdefinition.json | 22 +- ...aws-greengrass-subscriptiondefinition.json | 22 +- .../us_gov_east_1/aws-iot-authorizer.json | 127 ++++ .../us_gov_east_1/aws-iot-cacertificate.json | 173 ++++++ .../aws-iot-certificateprovider.json | 124 ++++ .../us_gov_east_1/aws-iot-policy.json | 109 ++++ .../aws-iot-provisioningtemplate.json | 139 +++++ .../us_gov_east_1/aws-iot-rolealias.json | 123 ++++ .../us_gov_east_1/aws-lambda-function.json | 559 ++++++++++++++++++ .../us_gov_east_1/aws-logs-delivery.json | 130 ++++ .../aws-logs-deliverydestination.json | 152 +++++ .../aws-logs-deliverysource.json | 138 +++++ .../aws-secretsmanager-secret.json | 170 ++++++ .../providers/us_gov_west_1/__init__.py | 13 - .../aws-cloudwatch-dashboard.json | 27 + .../us_gov_west_1/aws-iot-authorizer.json | 127 ++++ .../us_gov_west_1/aws-iot-cacertificate.json | 173 ++++++ .../aws-iot-certificateprovider.json | 124 ++++ .../us_gov_west_1/aws-iot-policy.json | 109 ++++ .../aws-iot-provisioningtemplate.json | 139 +++++ .../us_gov_west_1/aws-iot-rolealias.json | 123 ++++ .../us_gov_west_1/aws-lambda-function.json | 559 ++++++++++++++++++ .../us_gov_west_1/aws-location-tracker.json | 185 ++++++ .../us_gov_west_1/aws-logs-delivery.json | 130 ++++ .../aws-logs-deliverydestination.json | 152 +++++ .../aws-logs-deliverysource.json | 138 +++++ .../us_gov_west_1/aws-pinpoint-app.json | 22 +- .../us_gov_west_1/aws-pinpoint-segment.json | 22 +- .../aws-secretsmanager-secret.json | 170 ++++++ .../schemas/providers/us_west_1/__init__.py | 13 +- .../us_west_1/aws-cloudwatch-dashboard.json | 27 + .../aws-greengrass-coredefinition.json | 22 +- .../aws-greengrass-devicedefinition.json | 22 +- .../aws-greengrass-functiondefinition.json | 22 +- .../us_west_1/aws-greengrass-group.json | 22 +- .../aws-greengrass-loggerdefinition.json | 22 +- ...aws-greengrass-subscriptiondefinition.json | 22 +- .../us_west_1/aws-iot-authorizer.json | 128 ---- .../us_west_1/aws-iot-cacertificate.json | 174 ------ .../aws-iot-certificateprovider.json | 125 ---- .../aws-iot-domainconfiguration.json | 224 ------- .../providers/us_west_1/aws-iot-policy.json | 110 ---- .../aws-iot-provisioningtemplate.json | 141 ----- .../us_west_1/aws-iot-rolealias.json | 124 ---- .../us_west_1/aws-lambda-function.json | 559 ++++++++++++++++++ .../us_west_1/aws-logs-delivery.json | 130 ++++ .../aws-logs-deliverydestination.json | 152 +++++ .../us_west_1/aws-logs-deliverysource.json | 138 +++++ .../us_west_1/aws-secretsmanager-secret.json | 170 ++++++ .../schemas/providers/us_west_2/__init__.py | 14 +- .../us_west_2/aws-cloudwatch-dashboard.json | 57 -- .../us_west_2/aws-iot-authorizer.json | 128 ---- .../us_west_2/aws-iot-cacertificate.json | 174 ------ .../aws-iot-certificateprovider.json | 125 ---- .../aws-iot-domainconfiguration.json | 224 ------- .../providers/us_west_2/aws-iot-policy.json | 110 ---- .../aws-iot-provisioningtemplate.json | 141 ----- .../us_west_2/aws-iot-rolealias.json | 124 ---- .../us_west_2/aws-lambda-function.json | 559 ++++++++++++++++++ .../us_west_2/aws-logs-delivery.json | 130 ++++ .../aws-logs-deliverydestination.json | 152 +++++ .../us_west_2/aws-logs-deliverysource.json | 138 +++++ 444 files changed, 42259 insertions(+), 9026 deletions(-) create mode 100644 src/cfnlint/data/schemas/providers/af_south_1/aws-cloudwatch-dashboard.json rename src/cfnlint/data/schemas/providers/{eu_south_1 => af_south_1}/aws-lambda-function.json (96%) rename src/cfnlint/data/schemas/providers/{eu_west_3 => af_south_1}/aws-logs-delivery.json (94%) rename src/cfnlint/data/schemas/providers/{eu_west_3 => af_south_1}/aws-logs-deliverydestination.json (95%) rename src/cfnlint/data/schemas/providers/{eu_west_3 => af_south_1}/aws-logs-deliverysource.json (94%) rename src/cfnlint/data/schemas/providers/{eu_central_1 => af_south_1}/aws-secretsmanager-secret.json (97%) create mode 100644 src/cfnlint/data/schemas/providers/ap_east_1/aws-cloudwatch-dashboard.json rename src/cfnlint/data/schemas/providers/{ap_northeast_1 => ap_east_1}/aws-iot-authorizer.json (96%) rename src/cfnlint/data/schemas/providers/{ap_south_1 => ap_east_1}/aws-iot-cacertificate.json (98%) rename src/cfnlint/data/schemas/providers/{ap_south_1 => ap_east_1}/aws-iot-certificateprovider.json (97%) rename src/cfnlint/data/schemas/providers/{ap_south_1 => ap_east_1}/aws-iot-domainconfiguration.json (98%) rename src/cfnlint/data/schemas/providers/{ap_southeast_1 => ap_east_1}/aws-iot-policy.json (96%) rename src/cfnlint/data/schemas/providers/{ap_southeast_1 => ap_east_1}/aws-iot-provisioningtemplate.json (96%) rename src/cfnlint/data/schemas/providers/{ap_southeast_1 => ap_east_1}/aws-iot-rolealias.json (96%) rename src/cfnlint/data/schemas/providers/{eu_west_1 => ap_east_1}/aws-lambda-function.json (96%) create mode 100644 src/cfnlint/data/schemas/providers/ap_east_1/aws-logs-delivery.json create mode 100644 src/cfnlint/data/schemas/providers/ap_east_1/aws-logs-deliverydestination.json create mode 100644 src/cfnlint/data/schemas/providers/ap_east_1/aws-logs-deliverysource.json rename src/cfnlint/data/schemas/providers/{us_west_2 => ap_east_1}/aws-secretsmanager-secret.json (97%) create mode 100644 src/cfnlint/data/schemas/providers/ap_northeast_1/aws-cloudwatch-dashboard.json create mode 100644 src/cfnlint/data/schemas/providers/ap_northeast_1/aws-lambda-function.json create mode 100644 src/cfnlint/data/schemas/providers/ap_northeast_1/aws-logs-delivery.json create mode 100644 src/cfnlint/data/schemas/providers/ap_northeast_1/aws-logs-deliverydestination.json create mode 100644 src/cfnlint/data/schemas/providers/ap_northeast_1/aws-logs-deliverysource.json create mode 100644 src/cfnlint/data/schemas/providers/ap_northeast_1/aws-secretsmanager-secret.json create mode 100644 src/cfnlint/data/schemas/providers/ap_northeast_2/aws-cloudwatch-dashboard.json rename src/cfnlint/data/schemas/providers/{ap_southeast_1 => ap_northeast_2}/aws-iot-authorizer.json (96%) rename src/cfnlint/data/schemas/providers/{ap_northeast_1 => ap_northeast_2}/aws-iot-cacertificate.json (98%) rename src/cfnlint/data/schemas/providers/{ap_southeast_1 => ap_northeast_2}/aws-iot-certificateprovider.json (97%) rename src/cfnlint/data/schemas/providers/{ap_southeast_1 => ap_northeast_2}/aws-iot-domainconfiguration.json (98%) rename src/cfnlint/data/schemas/providers/{ap_south_1 => ap_northeast_2}/aws-iot-policy.json (96%) rename src/cfnlint/data/schemas/providers/{ap_south_1 => ap_northeast_2}/aws-iot-provisioningtemplate.json (96%) rename src/cfnlint/data/schemas/providers/{ap_south_1 => ap_northeast_2}/aws-iot-rolealias.json (96%) create mode 100644 src/cfnlint/data/schemas/providers/ap_northeast_2/aws-lambda-function.json create mode 100644 src/cfnlint/data/schemas/providers/ap_northeast_2/aws-logs-delivery.json create mode 100644 src/cfnlint/data/schemas/providers/ap_northeast_2/aws-logs-deliverydestination.json create mode 100644 src/cfnlint/data/schemas/providers/ap_northeast_2/aws-logs-deliverysource.json create mode 100644 src/cfnlint/data/schemas/providers/ap_northeast_2/aws-secretsmanager-secret.json create mode 100644 src/cfnlint/data/schemas/providers/ap_northeast_3/aws-cloudwatch-dashboard.json create mode 100644 src/cfnlint/data/schemas/providers/ap_northeast_3/aws-lambda-function.json create mode 100644 src/cfnlint/data/schemas/providers/ap_northeast_3/aws-logs-delivery.json create mode 100644 src/cfnlint/data/schemas/providers/ap_northeast_3/aws-logs-deliverydestination.json create mode 100644 src/cfnlint/data/schemas/providers/ap_northeast_3/aws-logs-deliverysource.json create mode 100644 src/cfnlint/data/schemas/providers/ap_northeast_3/aws-secretsmanager-secret.json create mode 100644 src/cfnlint/data/schemas/providers/ap_south_1/aws-cloudwatch-dashboard.json create mode 100644 src/cfnlint/data/schemas/providers/ap_south_1/aws-lambda-function.json rename src/cfnlint/data/schemas/providers/{eu_west_1 => ap_south_1}/aws-location-tracker.json (97%) create mode 100644 src/cfnlint/data/schemas/providers/ap_south_1/aws-logs-delivery.json create mode 100644 src/cfnlint/data/schemas/providers/ap_south_1/aws-logs-deliverydestination.json create mode 100644 src/cfnlint/data/schemas/providers/ap_south_1/aws-logs-deliverysource.json create mode 100644 src/cfnlint/data/schemas/providers/ap_south_1/aws-secretsmanager-secret.json create mode 100644 src/cfnlint/data/schemas/providers/ap_south_2/aws-cloudwatch-dashboard.json create mode 100644 src/cfnlint/data/schemas/providers/ap_south_2/aws-lambda-function.json create mode 100644 src/cfnlint/data/schemas/providers/ap_south_2/aws-logs-delivery.json create mode 100644 src/cfnlint/data/schemas/providers/ap_south_2/aws-logs-deliverydestination.json create mode 100644 src/cfnlint/data/schemas/providers/ap_south_2/aws-logs-deliverysource.json create mode 100644 src/cfnlint/data/schemas/providers/ap_south_2/aws-secretsmanager-secret.json create mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_1/aws-cloudwatch-dashboard.json create mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_1/aws-lambda-function.json rename src/cfnlint/data/schemas/providers/{us_east_2 => ap_southeast_1}/aws-location-tracker.json (97%) create mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_1/aws-logs-delivery.json create mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_1/aws-logs-deliverydestination.json create mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_1/aws-logs-deliverysource.json create mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_1/aws-secretsmanager-secret.json create mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_2/aws-cloudwatch-dashboard.json rename src/cfnlint/data/schemas/providers/{cn_north_1 => ap_southeast_2}/aws-iot-domainconfiguration.json (98%) create mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_2/aws-lambda-function.json rename src/cfnlint/data/schemas/providers/{ap_northeast_1 => ap_southeast_2}/aws-location-tracker.json (97%) create mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_2/aws-logs-delivery.json create mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_2/aws-logs-deliverydestination.json create mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_2/aws-logs-deliverysource.json create mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_2/aws-secretsmanager-secret.json create mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_3/aws-cloudwatch-dashboard.json create mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_3/aws-lambda-function.json create mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_3/aws-logs-delivery.json create mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_3/aws-logs-deliverydestination.json create mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_3/aws-logs-deliverysource.json create mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_3/aws-secretsmanager-secret.json create mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_4/aws-cloudwatch-dashboard.json create mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_4/aws-lambda-function.json create mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_4/aws-logs-delivery.json create mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_4/aws-logs-deliverydestination.json create mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_4/aws-logs-deliverysource.json create mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_4/aws-secretsmanager-secret.json create mode 100644 src/cfnlint/data/schemas/providers/ca_central_1/aws-cloudwatch-dashboard.json rename src/cfnlint/data/schemas/providers/{ap_southeast_2 => ca_central_1}/aws-iot-authorizer.json (96%) rename src/cfnlint/data/schemas/providers/{ap_southeast_1 => ca_central_1}/aws-iot-cacertificate.json (98%) rename src/cfnlint/data/schemas/providers/{ap_northeast_1 => ca_central_1}/aws-iot-certificateprovider.json (97%) rename src/cfnlint/data/schemas/providers/{ap_northeast_1 => ca_central_1}/aws-iot-domainconfiguration.json (98%) rename src/cfnlint/data/schemas/providers/{ap_southeast_2 => ca_central_1}/aws-iot-policy.json (96%) rename src/cfnlint/data/schemas/providers/{ap_southeast_2 => ca_central_1}/aws-iot-provisioningtemplate.json (96%) rename src/cfnlint/data/schemas/providers/{ap_southeast_2 => ca_central_1}/aws-iot-rolealias.json (96%) create mode 100644 src/cfnlint/data/schemas/providers/ca_central_1/aws-lambda-function.json rename src/cfnlint/data/schemas/providers/{us_west_2 => ca_central_1}/aws-location-tracker.json (97%) create mode 100644 src/cfnlint/data/schemas/providers/ca_central_1/aws-logs-delivery.json create mode 100644 src/cfnlint/data/schemas/providers/ca_central_1/aws-logs-deliverydestination.json create mode 100644 src/cfnlint/data/schemas/providers/ca_central_1/aws-logs-deliverysource.json create mode 100644 src/cfnlint/data/schemas/providers/ca_central_1/aws-secretsmanager-secret.json create mode 100644 src/cfnlint/data/schemas/providers/ca_west_1/aws-cloudwatch-dashboard.json create mode 100644 src/cfnlint/data/schemas/providers/ca_west_1/aws-lambda-function.json create mode 100644 src/cfnlint/data/schemas/providers/ca_west_1/aws-logs-delivery.json create mode 100644 src/cfnlint/data/schemas/providers/ca_west_1/aws-logs-deliverydestination.json create mode 100644 src/cfnlint/data/schemas/providers/ca_west_1/aws-logs-deliverysource.json create mode 100644 src/cfnlint/data/schemas/providers/ca_west_1/aws-secretsmanager-secret.json delete mode 100644 src/cfnlint/data/schemas/providers/cn_north_1/aws-cloudwatch-dashboard.json delete mode 100644 src/cfnlint/data/schemas/providers/cn_north_1/aws-iot-authorizer.json delete mode 100644 src/cfnlint/data/schemas/providers/cn_north_1/aws-iot-cacertificate.json delete mode 100644 src/cfnlint/data/schemas/providers/cn_north_1/aws-iot-certificateprovider.json delete mode 100644 src/cfnlint/data/schemas/providers/cn_north_1/aws-iot-policy.json delete mode 100644 src/cfnlint/data/schemas/providers/cn_north_1/aws-iot-provisioningtemplate.json delete mode 100644 src/cfnlint/data/schemas/providers/cn_north_1/aws-iot-rolealias.json create mode 100644 src/cfnlint/data/schemas/providers/cn_north_1/aws-lambda-function.json create mode 100644 src/cfnlint/data/schemas/providers/cn_north_1/aws-logs-delivery.json create mode 100644 src/cfnlint/data/schemas/providers/cn_north_1/aws-logs-deliverydestination.json create mode 100644 src/cfnlint/data/schemas/providers/cn_north_1/aws-logs-deliverysource.json create mode 100644 src/cfnlint/data/schemas/providers/cn_north_1/aws-secretsmanager-secret.json create mode 100644 src/cfnlint/data/schemas/providers/cn_northwest_1/aws-cloudwatch-dashboard.json rename src/cfnlint/data/schemas/providers/{ap_south_1 => cn_northwest_1}/aws-iot-authorizer.json (96%) rename src/cfnlint/data/schemas/providers/{ap_southeast_2 => cn_northwest_1}/aws-iot-cacertificate.json (98%) rename src/cfnlint/data/schemas/providers/{ap_southeast_2 => cn_northwest_1}/aws-iot-certificateprovider.json (97%) create mode 100644 src/cfnlint/data/schemas/providers/cn_northwest_1/aws-iot-domainconfiguration.json rename src/cfnlint/data/schemas/providers/{ap_northeast_1 => cn_northwest_1}/aws-iot-policy.json (96%) rename src/cfnlint/data/schemas/providers/{ap_northeast_1 => cn_northwest_1}/aws-iot-provisioningtemplate.json (96%) rename src/cfnlint/data/schemas/providers/{ap_northeast_1 => cn_northwest_1}/aws-iot-rolealias.json (96%) create mode 100644 src/cfnlint/data/schemas/providers/cn_northwest_1/aws-lambda-function.json create mode 100644 src/cfnlint/data/schemas/providers/cn_northwest_1/aws-logs-delivery.json create mode 100644 src/cfnlint/data/schemas/providers/cn_northwest_1/aws-logs-deliverydestination.json create mode 100644 src/cfnlint/data/schemas/providers/cn_northwest_1/aws-logs-deliverysource.json create mode 100644 src/cfnlint/data/schemas/providers/cn_northwest_1/aws-secretsmanager-secret.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_central_1/aws-cloudwatch-dashboard.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_central_1/aws-iot-authorizer.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_central_1/aws-iot-cacertificate.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_central_1/aws-iot-certificateprovider.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_central_1/aws-iot-domainconfiguration.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_central_1/aws-iot-policy.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_central_1/aws-iot-provisioningtemplate.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_central_1/aws-iot-rolealias.json create mode 100644 src/cfnlint/data/schemas/providers/eu_central_1/aws-lambda-function.json create mode 100644 src/cfnlint/data/schemas/providers/eu_central_1/aws-location-tracker.json create mode 100644 src/cfnlint/data/schemas/providers/eu_central_1/aws-logs-delivery.json create mode 100644 src/cfnlint/data/schemas/providers/eu_central_1/aws-logs-deliverydestination.json create mode 100644 src/cfnlint/data/schemas/providers/eu_central_1/aws-logs-deliverysource.json create mode 100644 src/cfnlint/data/schemas/providers/eu_central_2/aws-cloudwatch-dashboard.json create mode 100644 src/cfnlint/data/schemas/providers/eu_central_2/aws-lambda-function.json create mode 100644 src/cfnlint/data/schemas/providers/eu_central_2/aws-logs-delivery.json create mode 100644 src/cfnlint/data/schemas/providers/eu_central_2/aws-logs-deliverydestination.json create mode 100644 src/cfnlint/data/schemas/providers/eu_central_2/aws-logs-deliverysource.json create mode 100644 src/cfnlint/data/schemas/providers/eu_central_2/aws-secretsmanager-secret.json create mode 100644 src/cfnlint/data/schemas/providers/eu_north_1/aws-cloudwatch-dashboard.json create mode 100644 src/cfnlint/data/schemas/providers/eu_north_1/aws-iot-authorizer.json create mode 100644 src/cfnlint/data/schemas/providers/eu_north_1/aws-iot-cacertificate.json create mode 100644 src/cfnlint/data/schemas/providers/eu_north_1/aws-iot-certificateprovider.json create mode 100644 src/cfnlint/data/schemas/providers/eu_north_1/aws-iot-domainconfiguration.json create mode 100644 src/cfnlint/data/schemas/providers/eu_north_1/aws-iot-policy.json create mode 100644 src/cfnlint/data/schemas/providers/eu_north_1/aws-iot-provisioningtemplate.json create mode 100644 src/cfnlint/data/schemas/providers/eu_north_1/aws-iot-rolealias.json create mode 100644 src/cfnlint/data/schemas/providers/eu_north_1/aws-lambda-function.json create mode 100644 src/cfnlint/data/schemas/providers/eu_north_1/aws-location-tracker.json create mode 100644 src/cfnlint/data/schemas/providers/eu_north_1/aws-logs-delivery.json create mode 100644 src/cfnlint/data/schemas/providers/eu_north_1/aws-logs-deliverydestination.json create mode 100644 src/cfnlint/data/schemas/providers/eu_north_1/aws-logs-deliverysource.json create mode 100644 src/cfnlint/data/schemas/providers/eu_north_1/aws-secretsmanager-secret.json create mode 100644 src/cfnlint/data/schemas/providers/eu_south_1/aws-cloudwatch-dashboard.json create mode 100644 src/cfnlint/data/schemas/providers/eu_south_1/aws-logs-delivery.json create mode 100644 src/cfnlint/data/schemas/providers/eu_south_1/aws-logs-deliverydestination.json create mode 100644 src/cfnlint/data/schemas/providers/eu_south_1/aws-logs-deliverysource.json create mode 100644 src/cfnlint/data/schemas/providers/eu_south_1/aws-secretsmanager-secret.json create mode 100644 src/cfnlint/data/schemas/providers/eu_south_2/aws-cloudwatch-dashboard.json create mode 100644 src/cfnlint/data/schemas/providers/eu_south_2/aws-lambda-function.json create mode 100644 src/cfnlint/data/schemas/providers/eu_south_2/aws-logs-delivery.json create mode 100644 src/cfnlint/data/schemas/providers/eu_south_2/aws-logs-deliverydestination.json create mode 100644 src/cfnlint/data/schemas/providers/eu_south_2/aws-logs-deliverysource.json create mode 100644 src/cfnlint/data/schemas/providers/eu_south_2/aws-secretsmanager-secret.json create mode 100644 src/cfnlint/data/schemas/providers/eu_west_1/aws-cloudwatch-dashboard.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_west_1/aws-iot-authorizer.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_west_1/aws-iot-cacertificate.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_west_1/aws-iot-certificateprovider.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_west_1/aws-iot-domainconfiguration.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_west_1/aws-iot-policy.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_west_1/aws-iot-provisioningtemplate.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_west_1/aws-iot-rolealias.json create mode 100644 src/cfnlint/data/schemas/providers/eu_west_1/aws-logs-delivery.json create mode 100644 src/cfnlint/data/schemas/providers/eu_west_1/aws-logs-deliverydestination.json create mode 100644 src/cfnlint/data/schemas/providers/eu_west_1/aws-logs-deliverysource.json create mode 100644 src/cfnlint/data/schemas/providers/eu_west_1/aws-secretsmanager-secret.json create mode 100644 src/cfnlint/data/schemas/providers/eu_west_2/aws-cloudwatch-dashboard.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_west_2/aws-iot-authorizer.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_west_2/aws-iot-cacertificate.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_west_2/aws-iot-certificateprovider.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_west_2/aws-iot-domainconfiguration.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_west_2/aws-iot-policy.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_west_2/aws-iot-provisioningtemplate.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_west_2/aws-iot-rolealias.json create mode 100644 src/cfnlint/data/schemas/providers/eu_west_2/aws-lambda-function.json create mode 100644 src/cfnlint/data/schemas/providers/eu_west_2/aws-location-tracker.json create mode 100644 src/cfnlint/data/schemas/providers/eu_west_2/aws-logs-delivery.json create mode 100644 src/cfnlint/data/schemas/providers/eu_west_2/aws-logs-deliverydestination.json create mode 100644 src/cfnlint/data/schemas/providers/eu_west_2/aws-logs-deliverysource.json create mode 100644 src/cfnlint/data/schemas/providers/eu_west_2/aws-secretsmanager-secret.json create mode 100644 src/cfnlint/data/schemas/providers/eu_west_3/aws-cloudwatch-dashboard.json create mode 100644 src/cfnlint/data/schemas/providers/eu_west_3/aws-iot-authorizer.json create mode 100644 src/cfnlint/data/schemas/providers/eu_west_3/aws-iot-cacertificate.json create mode 100644 src/cfnlint/data/schemas/providers/eu_west_3/aws-iot-certificateprovider.json create mode 100644 src/cfnlint/data/schemas/providers/eu_west_3/aws-iot-domainconfiguration.json create mode 100644 src/cfnlint/data/schemas/providers/eu_west_3/aws-iot-policy.json create mode 100644 src/cfnlint/data/schemas/providers/eu_west_3/aws-iot-provisioningtemplate.json create mode 100644 src/cfnlint/data/schemas/providers/eu_west_3/aws-iot-rolealias.json create mode 100644 src/cfnlint/data/schemas/providers/eu_west_3/aws-lambda-function.json create mode 100644 src/cfnlint/data/schemas/providers/eu_west_3/aws-secretsmanager-secret.json create mode 100644 src/cfnlint/data/schemas/providers/il_central_1/aws-cloudwatch-dashboard.json create mode 100644 src/cfnlint/data/schemas/providers/il_central_1/aws-lambda-function.json create mode 100644 src/cfnlint/data/schemas/providers/il_central_1/aws-logs-delivery.json create mode 100644 src/cfnlint/data/schemas/providers/il_central_1/aws-logs-deliverydestination.json create mode 100644 src/cfnlint/data/schemas/providers/il_central_1/aws-logs-deliverysource.json create mode 100644 src/cfnlint/data/schemas/providers/il_central_1/aws-secretsmanager-secret.json create mode 100644 src/cfnlint/data/schemas/providers/me_central_1/aws-cloudwatch-dashboard.json create mode 100644 src/cfnlint/data/schemas/providers/me_central_1/aws-iot-authorizer.json create mode 100644 src/cfnlint/data/schemas/providers/me_central_1/aws-iot-cacertificate.json create mode 100644 src/cfnlint/data/schemas/providers/me_central_1/aws-iot-certificateprovider.json create mode 100644 src/cfnlint/data/schemas/providers/me_central_1/aws-iot-domainconfiguration.json create mode 100644 src/cfnlint/data/schemas/providers/me_central_1/aws-iot-policy.json create mode 100644 src/cfnlint/data/schemas/providers/me_central_1/aws-iot-provisioningtemplate.json create mode 100644 src/cfnlint/data/schemas/providers/me_central_1/aws-iot-rolealias.json create mode 100644 src/cfnlint/data/schemas/providers/me_central_1/aws-lambda-function.json create mode 100644 src/cfnlint/data/schemas/providers/me_central_1/aws-logs-delivery.json create mode 100644 src/cfnlint/data/schemas/providers/me_central_1/aws-logs-deliverydestination.json create mode 100644 src/cfnlint/data/schemas/providers/me_central_1/aws-logs-deliverysource.json delete mode 100644 src/cfnlint/data/schemas/providers/me_central_1/aws-rolesanywhere-profile.json create mode 100644 src/cfnlint/data/schemas/providers/me_central_1/aws-secretsmanager-secret.json create mode 100644 src/cfnlint/data/schemas/providers/me_south_1/aws-cloudwatch-dashboard.json create mode 100644 src/cfnlint/data/schemas/providers/me_south_1/aws-iot-authorizer.json create mode 100644 src/cfnlint/data/schemas/providers/me_south_1/aws-iot-cacertificate.json create mode 100644 src/cfnlint/data/schemas/providers/me_south_1/aws-iot-certificateprovider.json create mode 100644 src/cfnlint/data/schemas/providers/me_south_1/aws-iot-domainconfiguration.json create mode 100644 src/cfnlint/data/schemas/providers/me_south_1/aws-iot-policy.json create mode 100644 src/cfnlint/data/schemas/providers/me_south_1/aws-iot-provisioningtemplate.json create mode 100644 src/cfnlint/data/schemas/providers/me_south_1/aws-iot-rolealias.json create mode 100644 src/cfnlint/data/schemas/providers/me_south_1/aws-lambda-function.json create mode 100644 src/cfnlint/data/schemas/providers/me_south_1/aws-logs-delivery.json create mode 100644 src/cfnlint/data/schemas/providers/me_south_1/aws-logs-deliverydestination.json create mode 100644 src/cfnlint/data/schemas/providers/me_south_1/aws-logs-deliverysource.json create mode 100644 src/cfnlint/data/schemas/providers/me_south_1/aws-secretsmanager-secret.json create mode 100644 src/cfnlint/data/schemas/providers/sa_east_1/aws-cloudwatch-dashboard.json delete mode 100644 src/cfnlint/data/schemas/providers/sa_east_1/aws-iot-authorizer.json delete mode 100644 src/cfnlint/data/schemas/providers/sa_east_1/aws-iot-cacertificate.json delete mode 100644 src/cfnlint/data/schemas/providers/sa_east_1/aws-iot-certificateprovider.json delete mode 100644 src/cfnlint/data/schemas/providers/sa_east_1/aws-iot-domainconfiguration.json delete mode 100644 src/cfnlint/data/schemas/providers/sa_east_1/aws-iot-policy.json delete mode 100644 src/cfnlint/data/schemas/providers/sa_east_1/aws-iot-provisioningtemplate.json delete mode 100644 src/cfnlint/data/schemas/providers/sa_east_1/aws-iot-rolealias.json create mode 100644 src/cfnlint/data/schemas/providers/sa_east_1/aws-lambda-function.json create mode 100644 src/cfnlint/data/schemas/providers/sa_east_1/aws-location-tracker.json create mode 100644 src/cfnlint/data/schemas/providers/sa_east_1/aws-logs-delivery.json create mode 100644 src/cfnlint/data/schemas/providers/sa_east_1/aws-logs-deliverydestination.json create mode 100644 src/cfnlint/data/schemas/providers/sa_east_1/aws-logs-deliverysource.json create mode 100644 src/cfnlint/data/schemas/providers/sa_east_1/aws-secretsmanager-secret.json create mode 100644 src/cfnlint/data/schemas/providers/us_east_2/aws-cloudwatch-dashboard.json create mode 100644 src/cfnlint/data/schemas/providers/us_east_2/aws-iot-authorizer.json create mode 100644 src/cfnlint/data/schemas/providers/us_east_2/aws-iot-cacertificate.json create mode 100644 src/cfnlint/data/schemas/providers/us_east_2/aws-iot-certificateprovider.json create mode 100644 src/cfnlint/data/schemas/providers/us_east_2/aws-iot-domainconfiguration.json create mode 100644 src/cfnlint/data/schemas/providers/us_east_2/aws-iot-policy.json create mode 100644 src/cfnlint/data/schemas/providers/us_east_2/aws-iot-provisioningtemplate.json create mode 100644 src/cfnlint/data/schemas/providers/us_east_2/aws-iot-rolealias.json create mode 100644 src/cfnlint/data/schemas/providers/us_east_2/aws-lambda-function.json create mode 100644 src/cfnlint/data/schemas/providers/us_east_2/aws-logs-delivery.json create mode 100644 src/cfnlint/data/schemas/providers/us_east_2/aws-logs-deliverydestination.json create mode 100644 src/cfnlint/data/schemas/providers/us_east_2/aws-logs-deliverysource.json create mode 100644 src/cfnlint/data/schemas/providers/us_east_2/aws-secretsmanager-secret.json create mode 100644 src/cfnlint/data/schemas/providers/us_gov_east_1/aws-cloudwatch-dashboard.json create mode 100644 src/cfnlint/data/schemas/providers/us_gov_east_1/aws-iot-authorizer.json create mode 100644 src/cfnlint/data/schemas/providers/us_gov_east_1/aws-iot-cacertificate.json create mode 100644 src/cfnlint/data/schemas/providers/us_gov_east_1/aws-iot-certificateprovider.json create mode 100644 src/cfnlint/data/schemas/providers/us_gov_east_1/aws-iot-policy.json create mode 100644 src/cfnlint/data/schemas/providers/us_gov_east_1/aws-iot-provisioningtemplate.json create mode 100644 src/cfnlint/data/schemas/providers/us_gov_east_1/aws-iot-rolealias.json create mode 100644 src/cfnlint/data/schemas/providers/us_gov_east_1/aws-lambda-function.json create mode 100644 src/cfnlint/data/schemas/providers/us_gov_east_1/aws-logs-delivery.json create mode 100644 src/cfnlint/data/schemas/providers/us_gov_east_1/aws-logs-deliverydestination.json create mode 100644 src/cfnlint/data/schemas/providers/us_gov_east_1/aws-logs-deliverysource.json create mode 100644 src/cfnlint/data/schemas/providers/us_gov_east_1/aws-secretsmanager-secret.json create mode 100644 src/cfnlint/data/schemas/providers/us_gov_west_1/aws-cloudwatch-dashboard.json create mode 100644 src/cfnlint/data/schemas/providers/us_gov_west_1/aws-iot-authorizer.json create mode 100644 src/cfnlint/data/schemas/providers/us_gov_west_1/aws-iot-cacertificate.json create mode 100644 src/cfnlint/data/schemas/providers/us_gov_west_1/aws-iot-certificateprovider.json create mode 100644 src/cfnlint/data/schemas/providers/us_gov_west_1/aws-iot-policy.json create mode 100644 src/cfnlint/data/schemas/providers/us_gov_west_1/aws-iot-provisioningtemplate.json create mode 100644 src/cfnlint/data/schemas/providers/us_gov_west_1/aws-iot-rolealias.json create mode 100644 src/cfnlint/data/schemas/providers/us_gov_west_1/aws-lambda-function.json create mode 100644 src/cfnlint/data/schemas/providers/us_gov_west_1/aws-location-tracker.json create mode 100644 src/cfnlint/data/schemas/providers/us_gov_west_1/aws-logs-delivery.json create mode 100644 src/cfnlint/data/schemas/providers/us_gov_west_1/aws-logs-deliverydestination.json create mode 100644 src/cfnlint/data/schemas/providers/us_gov_west_1/aws-logs-deliverysource.json create mode 100644 src/cfnlint/data/schemas/providers/us_gov_west_1/aws-secretsmanager-secret.json create mode 100644 src/cfnlint/data/schemas/providers/us_west_1/aws-cloudwatch-dashboard.json delete mode 100644 src/cfnlint/data/schemas/providers/us_west_1/aws-iot-authorizer.json delete mode 100644 src/cfnlint/data/schemas/providers/us_west_1/aws-iot-cacertificate.json delete mode 100644 src/cfnlint/data/schemas/providers/us_west_1/aws-iot-certificateprovider.json delete mode 100644 src/cfnlint/data/schemas/providers/us_west_1/aws-iot-domainconfiguration.json delete mode 100644 src/cfnlint/data/schemas/providers/us_west_1/aws-iot-policy.json delete mode 100644 src/cfnlint/data/schemas/providers/us_west_1/aws-iot-provisioningtemplate.json delete mode 100644 src/cfnlint/data/schemas/providers/us_west_1/aws-iot-rolealias.json create mode 100644 src/cfnlint/data/schemas/providers/us_west_1/aws-lambda-function.json create mode 100644 src/cfnlint/data/schemas/providers/us_west_1/aws-logs-delivery.json create mode 100644 src/cfnlint/data/schemas/providers/us_west_1/aws-logs-deliverydestination.json create mode 100644 src/cfnlint/data/schemas/providers/us_west_1/aws-logs-deliverysource.json create mode 100644 src/cfnlint/data/schemas/providers/us_west_1/aws-secretsmanager-secret.json delete mode 100644 src/cfnlint/data/schemas/providers/us_west_2/aws-cloudwatch-dashboard.json delete mode 100644 src/cfnlint/data/schemas/providers/us_west_2/aws-iot-authorizer.json delete mode 100644 src/cfnlint/data/schemas/providers/us_west_2/aws-iot-cacertificate.json delete mode 100644 src/cfnlint/data/schemas/providers/us_west_2/aws-iot-certificateprovider.json delete mode 100644 src/cfnlint/data/schemas/providers/us_west_2/aws-iot-domainconfiguration.json delete mode 100644 src/cfnlint/data/schemas/providers/us_west_2/aws-iot-policy.json delete mode 100644 src/cfnlint/data/schemas/providers/us_west_2/aws-iot-provisioningtemplate.json delete mode 100644 src/cfnlint/data/schemas/providers/us_west_2/aws-iot-rolealias.json create mode 100644 src/cfnlint/data/schemas/providers/us_west_2/aws-lambda-function.json create mode 100644 src/cfnlint/data/schemas/providers/us_west_2/aws-logs-delivery.json create mode 100644 src/cfnlint/data/schemas/providers/us_west_2/aws-logs-deliverydestination.json create mode 100644 src/cfnlint/data/schemas/providers/us_west_2/aws-logs-deliverysource.json diff --git a/src/cfnlint/data/DownloadsMetadata/26cf4521b683d3267844178a6bcd1d0ad3fe2e7838c23f6acd054944cb2b1618.meta.json b/src/cfnlint/data/DownloadsMetadata/26cf4521b683d3267844178a6bcd1d0ad3fe2e7838c23f6acd054944cb2b1618.meta.json index 1d985d8b3f..85b5f40a76 100644 --- a/src/cfnlint/data/DownloadsMetadata/26cf4521b683d3267844178a6bcd1d0ad3fe2e7838c23f6acd054944cb2b1618.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/26cf4521b683d3267844178a6bcd1d0ad3fe2e7838c23f6acd054944cb2b1618.meta.json @@ -1 +1 @@ -{"etag": "\"9cae6b551468d4777291165964ac439d\"", "url": "https://schema.cloudformation.me-central-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"30ec741d8ffc9c9f83b4a7c029ed2ff9\"", "url": "https://schema.cloudformation.me-central-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/f54eee6f8ad9619f41835b700369cdbb41c64a9c91b2fa5b4928c0d9b2f780b0.meta.json b/src/cfnlint/data/DownloadsMetadata/f54eee6f8ad9619f41835b700369cdbb41c64a9c91b2fa5b4928c0d9b2f780b0.meta.json index 02e905933d..2dd2315a5a 100644 --- a/src/cfnlint/data/DownloadsMetadata/f54eee6f8ad9619f41835b700369cdbb41c64a9c91b2fa5b4928c0d9b2f780b0.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/f54eee6f8ad9619f41835b700369cdbb41c64a9c91b2fa5b4928c0d9b2f780b0.meta.json @@ -1 +1 @@ -{"etag": "\"8bedc60ccb57f9f836f1f576c107b12d\"", "url": "https://schema.cloudformation.us-east-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"6e8e5964bd493cfa06c83b4c97c16eff\"", "url": "https://schema.cloudformation.us-east-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/schemas/patches/providers/all/aws_batch_jobdefinition/tags.json b/src/cfnlint/data/schemas/patches/providers/all/aws_batch_jobdefinition/tags.json index d2747fbfd4..00da84113e 100644 --- a/src/cfnlint/data/schemas/patches/providers/all/aws_batch_jobdefinition/tags.json +++ b/src/cfnlint/data/schemas/patches/providers/all/aws_batch_jobdefinition/tags.json @@ -10,23 +10,11 @@ "op": "replace", "path": "/properties/Tags", "value": { - "items": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - }, - "type": "array" + "format": "json", + "type": [ + "object", + "string" + ] } } ] diff --git a/src/cfnlint/data/schemas/patches/providers/all/aws_dax_cluster/tags.json b/src/cfnlint/data/schemas/patches/providers/all/aws_dax_cluster/tags.json index d2747fbfd4..00da84113e 100644 --- a/src/cfnlint/data/schemas/patches/providers/all/aws_dax_cluster/tags.json +++ b/src/cfnlint/data/schemas/patches/providers/all/aws_dax_cluster/tags.json @@ -10,23 +10,11 @@ "op": "replace", "path": "/properties/Tags", "value": { - "items": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - }, - "type": "array" + "format": "json", + "type": [ + "object", + "string" + ] } } ] diff --git a/src/cfnlint/data/schemas/patches/providers/all/aws_greengrass_connectordefinition/tags.json b/src/cfnlint/data/schemas/patches/providers/all/aws_greengrass_connectordefinition/tags.json index d2747fbfd4..00da84113e 100644 --- a/src/cfnlint/data/schemas/patches/providers/all/aws_greengrass_connectordefinition/tags.json +++ b/src/cfnlint/data/schemas/patches/providers/all/aws_greengrass_connectordefinition/tags.json @@ -10,23 +10,11 @@ "op": "replace", "path": "/properties/Tags", "value": { - "items": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - }, - "type": "array" + "format": "json", + "type": [ + "object", + "string" + ] } } ] diff --git a/src/cfnlint/data/schemas/patches/providers/all/aws_greengrass_coredefinition/tags.json b/src/cfnlint/data/schemas/patches/providers/all/aws_greengrass_coredefinition/tags.json index d2747fbfd4..00da84113e 100644 --- a/src/cfnlint/data/schemas/patches/providers/all/aws_greengrass_coredefinition/tags.json +++ b/src/cfnlint/data/schemas/patches/providers/all/aws_greengrass_coredefinition/tags.json @@ -10,23 +10,11 @@ "op": "replace", "path": "/properties/Tags", "value": { - "items": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - }, - "type": "array" + "format": "json", + "type": [ + "object", + "string" + ] } } ] diff --git a/src/cfnlint/data/schemas/patches/providers/all/aws_greengrass_devicedefinition/tags.json b/src/cfnlint/data/schemas/patches/providers/all/aws_greengrass_devicedefinition/tags.json index d2747fbfd4..00da84113e 100644 --- a/src/cfnlint/data/schemas/patches/providers/all/aws_greengrass_devicedefinition/tags.json +++ b/src/cfnlint/data/schemas/patches/providers/all/aws_greengrass_devicedefinition/tags.json @@ -10,23 +10,11 @@ "op": "replace", "path": "/properties/Tags", "value": { - "items": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - }, - "type": "array" + "format": "json", + "type": [ + "object", + "string" + ] } } ] diff --git a/src/cfnlint/data/schemas/patches/providers/all/aws_greengrass_functiondefinition/tags.json b/src/cfnlint/data/schemas/patches/providers/all/aws_greengrass_functiondefinition/tags.json index d2747fbfd4..00da84113e 100644 --- a/src/cfnlint/data/schemas/patches/providers/all/aws_greengrass_functiondefinition/tags.json +++ b/src/cfnlint/data/schemas/patches/providers/all/aws_greengrass_functiondefinition/tags.json @@ -10,23 +10,11 @@ "op": "replace", "path": "/properties/Tags", "value": { - "items": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - }, - "type": "array" + "format": "json", + "type": [ + "object", + "string" + ] } } ] diff --git a/src/cfnlint/data/schemas/patches/providers/all/aws_greengrass_group/tags.json b/src/cfnlint/data/schemas/patches/providers/all/aws_greengrass_group/tags.json index d2747fbfd4..00da84113e 100644 --- a/src/cfnlint/data/schemas/patches/providers/all/aws_greengrass_group/tags.json +++ b/src/cfnlint/data/schemas/patches/providers/all/aws_greengrass_group/tags.json @@ -10,23 +10,11 @@ "op": "replace", "path": "/properties/Tags", "value": { - "items": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - }, - "type": "array" + "format": "json", + "type": [ + "object", + "string" + ] } } ] diff --git a/src/cfnlint/data/schemas/patches/providers/all/aws_greengrass_loggerdefinition/tags.json b/src/cfnlint/data/schemas/patches/providers/all/aws_greengrass_loggerdefinition/tags.json index d2747fbfd4..00da84113e 100644 --- a/src/cfnlint/data/schemas/patches/providers/all/aws_greengrass_loggerdefinition/tags.json +++ b/src/cfnlint/data/schemas/patches/providers/all/aws_greengrass_loggerdefinition/tags.json @@ -10,23 +10,11 @@ "op": "replace", "path": "/properties/Tags", "value": { - "items": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - }, - "type": "array" + "format": "json", + "type": [ + "object", + "string" + ] } } ] diff --git a/src/cfnlint/data/schemas/patches/providers/all/aws_greengrass_resourcedefinition/tags.json b/src/cfnlint/data/schemas/patches/providers/all/aws_greengrass_resourcedefinition/tags.json index d2747fbfd4..00da84113e 100644 --- a/src/cfnlint/data/schemas/patches/providers/all/aws_greengrass_resourcedefinition/tags.json +++ b/src/cfnlint/data/schemas/patches/providers/all/aws_greengrass_resourcedefinition/tags.json @@ -10,23 +10,11 @@ "op": "replace", "path": "/properties/Tags", "value": { - "items": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - }, - "type": "array" + "format": "json", + "type": [ + "object", + "string" + ] } } ] diff --git a/src/cfnlint/data/schemas/patches/providers/all/aws_greengrass_subscriptiondefinition/tags.json b/src/cfnlint/data/schemas/patches/providers/all/aws_greengrass_subscriptiondefinition/tags.json index d2747fbfd4..00da84113e 100644 --- a/src/cfnlint/data/schemas/patches/providers/all/aws_greengrass_subscriptiondefinition/tags.json +++ b/src/cfnlint/data/schemas/patches/providers/all/aws_greengrass_subscriptiondefinition/tags.json @@ -10,23 +10,11 @@ "op": "replace", "path": "/properties/Tags", "value": { - "items": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - }, - "type": "array" + "format": "json", + "type": [ + "object", + "string" + ] } } ] diff --git a/src/cfnlint/data/schemas/patches/providers/all/aws_mediaconvert_jobtemplate/tags.json b/src/cfnlint/data/schemas/patches/providers/all/aws_mediaconvert_jobtemplate/tags.json index d2747fbfd4..00da84113e 100644 --- a/src/cfnlint/data/schemas/patches/providers/all/aws_mediaconvert_jobtemplate/tags.json +++ b/src/cfnlint/data/schemas/patches/providers/all/aws_mediaconvert_jobtemplate/tags.json @@ -10,23 +10,11 @@ "op": "replace", "path": "/properties/Tags", "value": { - "items": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - }, - "type": "array" + "format": "json", + "type": [ + "object", + "string" + ] } } ] diff --git a/src/cfnlint/data/schemas/patches/providers/all/aws_mediaconvert_preset/tags.json b/src/cfnlint/data/schemas/patches/providers/all/aws_mediaconvert_preset/tags.json index d2747fbfd4..00da84113e 100644 --- a/src/cfnlint/data/schemas/patches/providers/all/aws_mediaconvert_preset/tags.json +++ b/src/cfnlint/data/schemas/patches/providers/all/aws_mediaconvert_preset/tags.json @@ -10,23 +10,11 @@ "op": "replace", "path": "/properties/Tags", "value": { - "items": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - }, - "type": "array" + "format": "json", + "type": [ + "object", + "string" + ] } } ] diff --git a/src/cfnlint/data/schemas/patches/providers/all/aws_mediaconvert_queue/tags.json b/src/cfnlint/data/schemas/patches/providers/all/aws_mediaconvert_queue/tags.json index d2747fbfd4..00da84113e 100644 --- a/src/cfnlint/data/schemas/patches/providers/all/aws_mediaconvert_queue/tags.json +++ b/src/cfnlint/data/schemas/patches/providers/all/aws_mediaconvert_queue/tags.json @@ -10,23 +10,11 @@ "op": "replace", "path": "/properties/Tags", "value": { - "items": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - }, - "type": "array" + "format": "json", + "type": [ + "object", + "string" + ] } } ] diff --git a/src/cfnlint/data/schemas/patches/providers/all/aws_medialive_channel/tags.json b/src/cfnlint/data/schemas/patches/providers/all/aws_medialive_channel/tags.json index d2747fbfd4..00da84113e 100644 --- a/src/cfnlint/data/schemas/patches/providers/all/aws_medialive_channel/tags.json +++ b/src/cfnlint/data/schemas/patches/providers/all/aws_medialive_channel/tags.json @@ -10,23 +10,11 @@ "op": "replace", "path": "/properties/Tags", "value": { - "items": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - }, - "type": "array" + "format": "json", + "type": [ + "object", + "string" + ] } } ] diff --git a/src/cfnlint/data/schemas/patches/providers/all/aws_medialive_input/tags.json b/src/cfnlint/data/schemas/patches/providers/all/aws_medialive_input/tags.json index d2747fbfd4..00da84113e 100644 --- a/src/cfnlint/data/schemas/patches/providers/all/aws_medialive_input/tags.json +++ b/src/cfnlint/data/schemas/patches/providers/all/aws_medialive_input/tags.json @@ -10,23 +10,11 @@ "op": "replace", "path": "/properties/Tags", "value": { - "items": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - }, - "type": "array" + "format": "json", + "type": [ + "object", + "string" + ] } } ] diff --git a/src/cfnlint/data/schemas/patches/providers/all/aws_medialive_inputsecuritygroup/tags.json b/src/cfnlint/data/schemas/patches/providers/all/aws_medialive_inputsecuritygroup/tags.json index d2747fbfd4..00da84113e 100644 --- a/src/cfnlint/data/schemas/patches/providers/all/aws_medialive_inputsecuritygroup/tags.json +++ b/src/cfnlint/data/schemas/patches/providers/all/aws_medialive_inputsecuritygroup/tags.json @@ -10,23 +10,11 @@ "op": "replace", "path": "/properties/Tags", "value": { - "items": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - }, - "type": "array" + "format": "json", + "type": [ + "object", + "string" + ] } } ] diff --git a/src/cfnlint/data/schemas/patches/providers/all/aws_mwaa_environment/tags.json b/src/cfnlint/data/schemas/patches/providers/all/aws_mwaa_environment/tags.json index d2747fbfd4..00da84113e 100644 --- a/src/cfnlint/data/schemas/patches/providers/all/aws_mwaa_environment/tags.json +++ b/src/cfnlint/data/schemas/patches/providers/all/aws_mwaa_environment/tags.json @@ -10,23 +10,11 @@ "op": "replace", "path": "/properties/Tags", "value": { - "items": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - }, - "type": "array" + "format": "json", + "type": [ + "object", + "string" + ] } } ] diff --git a/src/cfnlint/data/schemas/patches/providers/all/aws_pinpoint_app/tags.json b/src/cfnlint/data/schemas/patches/providers/all/aws_pinpoint_app/tags.json index d2747fbfd4..00da84113e 100644 --- a/src/cfnlint/data/schemas/patches/providers/all/aws_pinpoint_app/tags.json +++ b/src/cfnlint/data/schemas/patches/providers/all/aws_pinpoint_app/tags.json @@ -10,23 +10,11 @@ "op": "replace", "path": "/properties/Tags", "value": { - "items": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - }, - "type": "array" + "format": "json", + "type": [ + "object", + "string" + ] } } ] diff --git a/src/cfnlint/data/schemas/patches/providers/all/aws_pinpoint_campaign/tags.json b/src/cfnlint/data/schemas/patches/providers/all/aws_pinpoint_campaign/tags.json index d2747fbfd4..00da84113e 100644 --- a/src/cfnlint/data/schemas/patches/providers/all/aws_pinpoint_campaign/tags.json +++ b/src/cfnlint/data/schemas/patches/providers/all/aws_pinpoint_campaign/tags.json @@ -10,23 +10,11 @@ "op": "replace", "path": "/properties/Tags", "value": { - "items": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - }, - "type": "array" + "format": "json", + "type": [ + "object", + "string" + ] } } ] diff --git a/src/cfnlint/data/schemas/patches/providers/all/aws_pinpoint_emailtemplate/tags.json b/src/cfnlint/data/schemas/patches/providers/all/aws_pinpoint_emailtemplate/tags.json index d2747fbfd4..00da84113e 100644 --- a/src/cfnlint/data/schemas/patches/providers/all/aws_pinpoint_emailtemplate/tags.json +++ b/src/cfnlint/data/schemas/patches/providers/all/aws_pinpoint_emailtemplate/tags.json @@ -10,23 +10,11 @@ "op": "replace", "path": "/properties/Tags", "value": { - "items": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - }, - "type": "array" + "format": "json", + "type": [ + "object", + "string" + ] } } ] diff --git a/src/cfnlint/data/schemas/patches/providers/all/aws_pinpoint_inapptemplate/tags.json b/src/cfnlint/data/schemas/patches/providers/all/aws_pinpoint_inapptemplate/tags.json index d2747fbfd4..00da84113e 100644 --- a/src/cfnlint/data/schemas/patches/providers/all/aws_pinpoint_inapptemplate/tags.json +++ b/src/cfnlint/data/schemas/patches/providers/all/aws_pinpoint_inapptemplate/tags.json @@ -10,23 +10,11 @@ "op": "replace", "path": "/properties/Tags", "value": { - "items": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - }, - "type": "array" + "format": "json", + "type": [ + "object", + "string" + ] } } ] diff --git a/src/cfnlint/data/schemas/patches/providers/all/aws_pinpoint_pushtemplate/tags.json b/src/cfnlint/data/schemas/patches/providers/all/aws_pinpoint_pushtemplate/tags.json index d2747fbfd4..00da84113e 100644 --- a/src/cfnlint/data/schemas/patches/providers/all/aws_pinpoint_pushtemplate/tags.json +++ b/src/cfnlint/data/schemas/patches/providers/all/aws_pinpoint_pushtemplate/tags.json @@ -10,23 +10,11 @@ "op": "replace", "path": "/properties/Tags", "value": { - "items": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - }, - "type": "array" + "format": "json", + "type": [ + "object", + "string" + ] } } ] diff --git a/src/cfnlint/data/schemas/patches/providers/all/aws_pinpoint_segment/tags.json b/src/cfnlint/data/schemas/patches/providers/all/aws_pinpoint_segment/tags.json index d2747fbfd4..00da84113e 100644 --- a/src/cfnlint/data/schemas/patches/providers/all/aws_pinpoint_segment/tags.json +++ b/src/cfnlint/data/schemas/patches/providers/all/aws_pinpoint_segment/tags.json @@ -10,23 +10,11 @@ "op": "replace", "path": "/properties/Tags", "value": { - "items": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - }, - "type": "array" + "format": "json", + "type": [ + "object", + "string" + ] } } ] diff --git a/src/cfnlint/data/schemas/patches/providers/all/aws_pinpoint_smstemplate/tags.json b/src/cfnlint/data/schemas/patches/providers/all/aws_pinpoint_smstemplate/tags.json index d2747fbfd4..00da84113e 100644 --- a/src/cfnlint/data/schemas/patches/providers/all/aws_pinpoint_smstemplate/tags.json +++ b/src/cfnlint/data/schemas/patches/providers/all/aws_pinpoint_smstemplate/tags.json @@ -10,23 +10,11 @@ "op": "replace", "path": "/properties/Tags", "value": { - "items": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - }, - "type": "array" + "format": "json", + "type": [ + "object", + "string" + ] } } ] 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 81e53a5fb9..38776df739 100644 --- a/src/cfnlint/data/schemas/providers/af_south_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/af_south_1/__init__.py @@ -951,7 +951,6 @@ "aws-eventschemas-discoverer.json", "aws-networkmanager-connectpeer.json", "aws-elasticache-usergroup.json", - "aws-logs-deliverydestination.json", "aws-imagebuilder-imagerecipe.json", "aws-apigateway-restapi.json", "aws-opsworks-elasticloadbalancerattachment.json", @@ -974,12 +973,10 @@ "aws-resourceexplorer2-index.json", "aws-glue-table.json", "aws-logs-metricfilter.json", - "aws-lambda-function.json", "aws-sns-topic.json", "aws-backup-backupselection.json", "aws-datasync-locationfsxlustre.json", "aws-sagemaker-app.json", - "aws-logs-deliverysource.json", "aws-ec2-vpcgatewayattachment.json", "aws-cloudtrail-trail.json", "aws-ec2-vpnconnectionroute.json", @@ -1010,7 +1007,6 @@ "aws-elasticache-securitygroupingress.json", "aws-wafregional-xssmatchset.json", "aws-rds-dbproxytargetgroup.json", - "aws-cloudwatch-dashboard.json", "aws-cloudwatch-alarm.json", "aws-guardduty-member.json", "aws-groundstation-missionprofile.json", @@ -1299,7 +1295,6 @@ "aws-cloudformation-macro.json", "aws-sagemaker-workteam.json", "aws-lambda-layerversionpermission.json", - "aws-secretsmanager-secret.json", "aws-route53resolver-resolverconfig.json", "aws-elasticache-user.json", "aws-sagemaker-image.json", @@ -1324,7 +1319,6 @@ "aws-rds-optiongroup.json", "aws-opsworks-userprofile.json", "aws-glue-schema.json", - "aws-logs-delivery.json", "aws-customerprofiles-domain.json", "aws-ec2-transitgatewayroute.json", "aws-ssm-maintenancewindow.json", diff --git a/src/cfnlint/data/schemas/providers/af_south_1/aws-cloudwatch-dashboard.json b/src/cfnlint/data/schemas/providers/af_south_1/aws-cloudwatch-dashboard.json new file mode 100644 index 0000000000..258074cf80 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/af_south_1/aws-cloudwatch-dashboard.json @@ -0,0 +1,27 @@ +{ + "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_south_1/aws-lambda-function.json b/src/cfnlint/data/schemas/providers/af_south_1/aws-lambda-function.json similarity index 96% rename from src/cfnlint/data/schemas/providers/eu_south_1/aws-lambda-function.json rename to src/cfnlint/data/schemas/providers/af_south_1/aws-lambda-function.json index 885ae9bc98..39009ea83f 100644 --- a/src/cfnlint/data/schemas/providers/eu_south_1/aws-lambda-function.json +++ b/src/cfnlint/data/schemas/providers/af_south_1/aws-lambda-function.json @@ -299,7 +299,12 @@ "lambda:GetLayerVersion", "lambda:GetRuntimeManagementConfig", "lambda:PutRuntimeManagementConfig", - "lambda:TagResource" + "lambda:TagResource", + "lambda:GetPolicy", + "lambda:AddPermission", + "lambda:RemovePermission", + "lambda:GetResourcePolicy", + "lambda:PutResourcePolicy" ] }, "delete": { @@ -345,7 +350,13 @@ "lambda:PutFunctionCodeSigningConfig", "lambda:DeleteFunctionCodeSigningConfig", "lambda:GetCodeSigningConfig", - "lambda:GetFunctionCodeSigningConfig" + "lambda:GetFunctionCodeSigningConfig", + "lambda:GetPolicy", + "lambda:AddPermission", + "lambda:RemovePermission", + "lambda:GetResourcePolicy", + "lambda:PutResourcePolicy", + "lambda:DeleteResourcePolicy" ] } }, diff --git a/src/cfnlint/data/schemas/providers/eu_west_3/aws-logs-delivery.json b/src/cfnlint/data/schemas/providers/af_south_1/aws-logs-delivery.json similarity index 94% rename from src/cfnlint/data/schemas/providers/eu_west_3/aws-logs-delivery.json rename to src/cfnlint/data/schemas/providers/af_south_1/aws-logs-delivery.json index 849da5dade..9d504c7dc9 100644 --- a/src/cfnlint/data/schemas/providers/eu_west_3/aws-logs-delivery.json +++ b/src/cfnlint/data/schemas/providers/af_south_1/aws-logs-delivery.json @@ -8,7 +8,7 @@ "Arn": { "maxLength": 2048, "minLength": 16, - "pattern": "[\\w#+=/:,.@-]*\\*?", + "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": { diff --git a/src/cfnlint/data/schemas/providers/eu_west_3/aws-logs-deliverydestination.json b/src/cfnlint/data/schemas/providers/af_south_1/aws-logs-deliverydestination.json similarity index 95% rename from src/cfnlint/data/schemas/providers/eu_west_3/aws-logs-deliverydestination.json rename to src/cfnlint/data/schemas/providers/af_south_1/aws-logs-deliverydestination.json index 29abb6e68a..41e9e764ad 100644 --- a/src/cfnlint/data/schemas/providers/eu_west_3/aws-logs-deliverydestination.json +++ b/src/cfnlint/data/schemas/providers/af_south_1/aws-logs-deliverydestination.json @@ -8,7 +8,7 @@ "Arn": { "maxLength": 2048, "minLength": 16, - "pattern": "[\\w#+=/:,.@-]*\\*?", + "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": { diff --git a/src/cfnlint/data/schemas/providers/eu_west_3/aws-logs-deliverysource.json b/src/cfnlint/data/schemas/providers/af_south_1/aws-logs-deliverysource.json similarity index 94% rename from src/cfnlint/data/schemas/providers/eu_west_3/aws-logs-deliverysource.json rename to src/cfnlint/data/schemas/providers/af_south_1/aws-logs-deliverysource.json index 13d7556bb8..30c5c13d9e 100644 --- a/src/cfnlint/data/schemas/providers/eu_west_3/aws-logs-deliverysource.json +++ b/src/cfnlint/data/schemas/providers/af_south_1/aws-logs-deliverysource.json @@ -7,7 +7,7 @@ "Arn": { "maxLength": 2048, "minLength": 16, - "pattern": "[\\w#+=/:,.@-]*\\*?", + "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": { diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/aws-secretsmanager-secret.json b/src/cfnlint/data/schemas/providers/af_south_1/aws-secretsmanager-secret.json similarity index 97% rename from src/cfnlint/data/schemas/providers/eu_central_1/aws-secretsmanager-secret.json rename to src/cfnlint/data/schemas/providers/af_south_1/aws-secretsmanager-secret.json index 98e621cb88..8cf3aab10e 100644 --- a/src/cfnlint/data/schemas/providers/eu_central_1/aws-secretsmanager-secret.json +++ b/src/cfnlint/data/schemas/providers/af_south_1/aws-secretsmanager-secret.json @@ -79,8 +79,7 @@ "secretsmanager:DescribeSecret", "secretsmanager:GetRandomPassword", "secretsmanager:CreateSecret", - "secretsmanager:TagResource", - "secretsmanager:ReplicateSecretToRegions" + "secretsmanager:TagResource" ] }, "delete": { 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 c090df74d1..b1678e0e41 100644 --- a/src/cfnlint/data/schemas/providers/ap_east_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_east_1/__init__.py @@ -837,7 +837,6 @@ "aws-logs-resourcepolicy.json", "aws-servicecatalog-launchnotificationconstraint.json", "aws-dms-instanceprofile.json", - "aws-iot-cacertificate.json", "aws-ec2-networkinsightsaccessscopeanalysis.json", "aws-transfer-certificate.json", "aws-apigateway-documentationpart.json", @@ -928,7 +927,6 @@ "aws-eventschemas-discoverer.json", "aws-elasticache-usergroup.json", "aws-iot-thinggroup.json", - "aws-logs-deliverydestination.json", "aws-imagebuilder-imagerecipe.json", "aws-iot-softwarepackage.json", "aws-apigateway-restapi.json", @@ -954,12 +952,10 @@ "aws-resourceexplorer2-index.json", "aws-glue-table.json", "aws-logs-metricfilter.json", - "aws-lambda-function.json", "aws-sns-topic.json", "aws-backup-backupselection.json", "aws-datasync-locationfsxlustre.json", "aws-sagemaker-app.json", - "aws-logs-deliverysource.json", "aws-ec2-vpcgatewayattachment.json", "aws-cloudtrail-trail.json", "aws-ec2-vpnconnectionroute.json", @@ -992,7 +988,6 @@ "aws-elasticache-securitygroupingress.json", "aws-wafregional-xssmatchset.json", "aws-rds-dbproxytargetgroup.json", - "aws-cloudwatch-dashboard.json", "aws-cloudwatch-alarm.json", "aws-iot-thingtype.json", "aws-guardduty-member.json", @@ -1046,7 +1041,6 @@ "aws-cloudwatch-insightrule.json", "aws-apigateway-usageplan.json", "aws-batch-schedulingpolicy.json", - "aws-iot-authorizer.json", "aws-mediaconnect-bridgesource.json", "aws-iot-jobtemplate.json", "aws-databrew-project.json", @@ -1119,7 +1113,6 @@ "aws-servicecatalog-tagoption.json", "aws-servicediscovery-privatednsnamespace.json", "aws-servicecatalog-launchroleconstraint.json", - "aws-iot-rolealias.json", "aws-sagemaker-modelbiasjobdefinition.json", "aws-secretsmanager-resourcepolicy.json", "aws-cloudformation-hookdefaultversion.json", @@ -1251,7 +1244,6 @@ "aws-elasticache-subnetgroup.json", "aws-xray-group.json", "aws-oam-link.json", - "aws-iot-domainconfiguration.json", "aws-sagemaker-endpoint.json", "aws-elasticloadbalancingv2-truststorerevocation.json", "aws-networkfirewall-firewall.json", @@ -1274,7 +1266,6 @@ "aws-cloudformation-macro.json", "aws-sagemaker-workteam.json", "aws-lambda-layerversionpermission.json", - "aws-secretsmanager-secret.json", "aws-route53resolver-resolverconfig.json", "aws-elasticache-user.json", "aws-sagemaker-image.json", @@ -1301,8 +1292,6 @@ "aws-opsworks-userprofile.json", "aws-glue-schema.json", "aws-docdb-dbsubnetgroup.json", - "aws-logs-delivery.json", - "aws-iot-policy.json", "aws-ec2-transitgatewayroute.json", "aws-ssm-maintenancewindow.json", "aws-lakeformation-tagassociation.json", @@ -1383,7 +1372,6 @@ "aws-rds-dbclusterparametergroup.json", "aws-waf-xssmatchset.json", "aws-appmesh-virtualrouter.json", - "aws-iot-certificateprovider.json", "aws-scheduler-schedulegroup.json", "aws-fsx-snapshot.json", "aws-eventschemas-registrypolicy.json", @@ -1449,7 +1437,6 @@ "aws-ec2-securitygroupingress.json", "aws-guardduty-detector.json", "aws-sagemaker-modelqualityjobdefinition.json", - "aws-iot-provisioningtemplate.json", "aws-apigateway-stage.json", "aws-batch-computeenvironment.json", "aws-iot-thing.json", diff --git a/src/cfnlint/data/schemas/providers/ap_east_1/aws-cloudwatch-dashboard.json b/src/cfnlint/data/schemas/providers/ap_east_1/aws-cloudwatch-dashboard.json new file mode 100644 index 0000000000..258074cf80 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_east_1/aws-cloudwatch-dashboard.json @@ -0,0 +1,27 @@ +{ + "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_1/aws-iot-authorizer.json b/src/cfnlint/data/schemas/providers/ap_east_1/aws-iot-authorizer.json similarity index 96% rename from src/cfnlint/data/schemas/providers/ap_northeast_1/aws-iot-authorizer.json rename to src/cfnlint/data/schemas/providers/ap_east_1/aws-iot-authorizer.json index 4fd44d03a5..6f5075023c 100644 --- a/src/cfnlint/data/schemas/providers/ap_northeast_1/aws-iot-authorizer.json +++ b/src/cfnlint/data/schemas/providers/ap_east_1/aws-iot-authorizer.json @@ -89,12 +89,11 @@ "type": "string" }, "Tags": { - "insertionOrder": false, + "insertionOrder": true, "items": { "$ref": "#/definitions/Tag" }, - "type": "array", - "uniqueItems": true + "type": "array" }, "TokenKeyName": { "type": "string" diff --git a/src/cfnlint/data/schemas/providers/ap_south_1/aws-iot-cacertificate.json b/src/cfnlint/data/schemas/providers/ap_east_1/aws-iot-cacertificate.json similarity index 98% rename from src/cfnlint/data/schemas/providers/ap_south_1/aws-iot-cacertificate.json rename to src/cfnlint/data/schemas/providers/ap_east_1/aws-iot-cacertificate.json index 7c56105907..eb632b3219 100644 --- a/src/cfnlint/data/schemas/providers/ap_south_1/aws-iot-cacertificate.json +++ b/src/cfnlint/data/schemas/providers/ap_east_1/aws-iot-cacertificate.json @@ -140,8 +140,7 @@ "items": { "$ref": "#/definitions/Tag" }, - "type": "array", - "uniqueItems": true + "type": "array" }, "VerificationCertificatePem": { "maxLength": 65536, diff --git a/src/cfnlint/data/schemas/providers/ap_south_1/aws-iot-certificateprovider.json b/src/cfnlint/data/schemas/providers/ap_east_1/aws-iot-certificateprovider.json similarity index 97% rename from src/cfnlint/data/schemas/providers/ap_south_1/aws-iot-certificateprovider.json rename to src/cfnlint/data/schemas/providers/ap_east_1/aws-iot-certificateprovider.json index ea4c9d9f71..e0d97244bc 100644 --- a/src/cfnlint/data/schemas/providers/ap_south_1/aws-iot-certificateprovider.json +++ b/src/cfnlint/data/schemas/providers/ap_east_1/aws-iot-certificateprovider.json @@ -96,13 +96,12 @@ "type": "string" }, "Tags": { - "insertionOrder": false, + "insertionOrder": true, "items": { "$ref": "#/definitions/Tag" }, "maxItems": 50, - "type": "array", - "uniqueItems": true + "type": "array" } }, "readOnlyProperties": [ diff --git a/src/cfnlint/data/schemas/providers/ap_south_1/aws-iot-domainconfiguration.json b/src/cfnlint/data/schemas/providers/ap_east_1/aws-iot-domainconfiguration.json similarity index 98% rename from src/cfnlint/data/schemas/providers/ap_south_1/aws-iot-domainconfiguration.json rename to src/cfnlint/data/schemas/providers/ap_east_1/aws-iot-domainconfiguration.json index 03db5c565e..6fb0a77acb 100644 --- a/src/cfnlint/data/schemas/providers/ap_south_1/aws-iot-domainconfiguration.json +++ b/src/cfnlint/data/schemas/providers/ap_east_1/aws-iot-domainconfiguration.json @@ -187,12 +187,11 @@ "type": "string" }, "Tags": { - "insertionOrder": false, + "insertionOrder": true, "items": { "$ref": "#/definitions/Tag" }, - "type": "array", - "uniqueItems": true + "type": "array" }, "TlsConfig": { "$ref": "#/definitions/TlsConfig" diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_1/aws-iot-policy.json b/src/cfnlint/data/schemas/providers/ap_east_1/aws-iot-policy.json similarity index 96% rename from src/cfnlint/data/schemas/providers/ap_southeast_1/aws-iot-policy.json rename to src/cfnlint/data/schemas/providers/ap_east_1/aws-iot-policy.json index 6a8b285974..70a8d4861b 100644 --- a/src/cfnlint/data/schemas/providers/ap_southeast_1/aws-iot-policy.json +++ b/src/cfnlint/data/schemas/providers/ap_east_1/aws-iot-policy.json @@ -84,12 +84,11 @@ "type": "string" }, "Tags": { - "insertionOrder": false, + "insertionOrder": true, "items": { "$ref": "#/definitions/Tag" }, - "type": "array", - "uniqueItems": true + "type": "array" } }, "readOnlyProperties": [ diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_1/aws-iot-provisioningtemplate.json b/src/cfnlint/data/schemas/providers/ap_east_1/aws-iot-provisioningtemplate.json similarity index 96% rename from src/cfnlint/data/schemas/providers/ap_southeast_1/aws-iot-provisioningtemplate.json rename to src/cfnlint/data/schemas/providers/ap_east_1/aws-iot-provisioningtemplate.json index 31a4f45b65..52368e152b 100644 --- a/src/cfnlint/data/schemas/providers/ap_southeast_1/aws-iot-provisioningtemplate.json +++ b/src/cfnlint/data/schemas/providers/ap_east_1/aws-iot-provisioningtemplate.json @@ -6,7 +6,6 @@ ], "definitions": { "ProvisioningHook": { - "additionalProperties": false, "properties": { "PayloadVersion": { "type": "string" @@ -95,12 +94,11 @@ "type": "string" }, "Tags": { - "insertionOrder": false, + "insertionOrder": true, "items": { "$ref": "#/definitions/Tag" }, - "type": "array", - "uniqueItems": true + "type": "array" }, "TemplateArn": { "type": "string" diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_1/aws-iot-rolealias.json b/src/cfnlint/data/schemas/providers/ap_east_1/aws-iot-rolealias.json similarity index 96% rename from src/cfnlint/data/schemas/providers/ap_southeast_1/aws-iot-rolealias.json rename to src/cfnlint/data/schemas/providers/ap_east_1/aws-iot-rolealias.json index 5ea03cb1af..6a2e419b45 100644 --- a/src/cfnlint/data/schemas/providers/ap_southeast_1/aws-iot-rolealias.json +++ b/src/cfnlint/data/schemas/providers/ap_east_1/aws-iot-rolealias.json @@ -98,12 +98,11 @@ "type": "string" }, "Tags": { - "insertionOrder": false, + "insertionOrder": true, "items": { "$ref": "#/definitions/Tag" }, - "type": "array", - "uniqueItems": true + "type": "array" } }, "readOnlyProperties": [ diff --git a/src/cfnlint/data/schemas/providers/eu_west_1/aws-lambda-function.json b/src/cfnlint/data/schemas/providers/ap_east_1/aws-lambda-function.json similarity index 96% rename from src/cfnlint/data/schemas/providers/eu_west_1/aws-lambda-function.json rename to src/cfnlint/data/schemas/providers/ap_east_1/aws-lambda-function.json index 885ae9bc98..39009ea83f 100644 --- a/src/cfnlint/data/schemas/providers/eu_west_1/aws-lambda-function.json +++ b/src/cfnlint/data/schemas/providers/ap_east_1/aws-lambda-function.json @@ -299,7 +299,12 @@ "lambda:GetLayerVersion", "lambda:GetRuntimeManagementConfig", "lambda:PutRuntimeManagementConfig", - "lambda:TagResource" + "lambda:TagResource", + "lambda:GetPolicy", + "lambda:AddPermission", + "lambda:RemovePermission", + "lambda:GetResourcePolicy", + "lambda:PutResourcePolicy" ] }, "delete": { @@ -345,7 +350,13 @@ "lambda:PutFunctionCodeSigningConfig", "lambda:DeleteFunctionCodeSigningConfig", "lambda:GetCodeSigningConfig", - "lambda:GetFunctionCodeSigningConfig" + "lambda:GetFunctionCodeSigningConfig", + "lambda:GetPolicy", + "lambda:AddPermission", + "lambda:RemovePermission", + "lambda:GetResourcePolicy", + "lambda:PutResourcePolicy", + "lambda:DeleteResourcePolicy" ] } }, diff --git a/src/cfnlint/data/schemas/providers/ap_east_1/aws-logs-delivery.json b/src/cfnlint/data/schemas/providers/ap_east_1/aws-logs-delivery.json new file mode 100644 index 0000000000..9d504c7dc9 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_east_1/aws-logs-delivery.json @@ -0,0 +1,130 @@ +{ + "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_east_1/aws-logs-deliverydestination.json b/src/cfnlint/data/schemas/providers/ap_east_1/aws-logs-deliverydestination.json new file mode 100644 index 0000000000..41e9e764ad --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_east_1/aws-logs-deliverydestination.json @@ -0,0 +1,152 @@ +{ + "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_east_1/aws-logs-deliverysource.json b/src/cfnlint/data/schemas/providers/ap_east_1/aws-logs-deliverysource.json new file mode 100644 index 0000000000..30c5c13d9e --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_east_1/aws-logs-deliverysource.json @@ -0,0 +1,138 @@ +{ + "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_2/aws-secretsmanager-secret.json b/src/cfnlint/data/schemas/providers/ap_east_1/aws-secretsmanager-secret.json similarity index 97% rename from src/cfnlint/data/schemas/providers/us_west_2/aws-secretsmanager-secret.json rename to src/cfnlint/data/schemas/providers/ap_east_1/aws-secretsmanager-secret.json index 98e621cb88..8cf3aab10e 100644 --- a/src/cfnlint/data/schemas/providers/us_west_2/aws-secretsmanager-secret.json +++ b/src/cfnlint/data/schemas/providers/ap_east_1/aws-secretsmanager-secret.json @@ -79,8 +79,7 @@ "secretsmanager:DescribeSecret", "secretsmanager:GetRandomPassword", "secretsmanager:CreateSecret", - "secretsmanager:TagResource", - "secretsmanager:ReplicateSecretToRegions" + "secretsmanager:TagResource" ] }, "delete": { 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 3197e32277..57b6e8a056 100644 --- a/src/cfnlint/data/schemas/providers/ap_northeast_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_northeast_1/__init__.py @@ -1281,6 +1281,7 @@ "aws-dms-instanceprofile.json", "aws-opensearchserverless-vpcendpoint.json", "aws-quicksight-datasource.json", + "aws-iot-cacertificate.json", "aws-ec2-networkaclentry.json", "aws-robomaker-simulationapplicationversion.json", "aws-ec2-networkinsightsaccessscopeanalysis.json", @@ -1430,7 +1431,6 @@ "aws-networkmanager-connectpeer.json", "aws-elasticache-usergroup.json", "aws-iot-thinggroup.json", - "aws-logs-deliverydestination.json", "aws-imagebuilder-imagerecipe.json", "aws-iot-softwarepackage.json", "aws-apigateway-restapi.json", @@ -1467,12 +1467,10 @@ "aws-wafregional-webacl.json", "aws-sagemaker-inferencecomponent.json", "aws-logs-metricfilter.json", - "aws-lambda-function.json", "aws-sns-topic.json", "aws-backup-backupselection.json", "aws-datasync-locationfsxlustre.json", "aws-sagemaker-app.json", - "aws-logs-deliverysource.json", "aws-ec2-vpcgatewayattachment.json", "aws-cloudtrail-trail.json", "aws-ec2-vpnconnectionroute.json", @@ -1522,7 +1520,6 @@ "aws-wafregional-xssmatchset.json", "aws-vpclattice-rule.json", "aws-rds-dbproxytargetgroup.json", - "aws-cloudwatch-dashboard.json", "aws-cloudwatch-alarm.json", "aws-datazone-datasource.json", "aws-iot-thingtype.json", @@ -1615,6 +1612,7 @@ "aws-mediapackagev2-channel.json", "aws-appintegrations-eventintegration.json", "aws-batch-schedulingpolicy.json", + "aws-iot-authorizer.json", "aws-timestream-influxdbinstance.json", "aws-mediaconnect-bridgesource.json", "aws-mediapackagev2-channelpolicy.json", @@ -1735,6 +1733,7 @@ "aws-servicecatalog-tagoption.json", "aws-servicediscovery-privatednsnamespace.json", "aws-servicecatalog-launchroleconstraint.json", + "aws-iot-rolealias.json", "aws-sagemaker-modelbiasjobdefinition.json", "aws-secretsmanager-resourcepolicy.json", "aws-cloudformation-hookdefaultversion.json", @@ -1931,6 +1930,7 @@ "aws-xray-group.json", "aws-lookoutvision-project.json", "aws-oam-link.json", + "aws-iot-domainconfiguration.json", "aws-sagemaker-endpoint.json", "aws-elasticloadbalancingv2-truststorerevocation.json", "aws-networkfirewall-firewall.json", @@ -1966,7 +1966,6 @@ "aws-sagemaker-workteam.json", "aws-ssmincidents-responseplan.json", "aws-lambda-layerversionpermission.json", - "aws-secretsmanager-secret.json", "aws-route53resolver-resolverconfig.json", "aws-elasticache-user.json", "aws-sagemaker-image.json", @@ -2002,11 +2001,11 @@ "aws-glue-schema.json", "aws-datazone-environment.json", "aws-docdb-dbsubnetgroup.json", - "aws-logs-delivery.json", "aws-bedrock-datasource.json", "aws-servicecatalog-portfolio.json", "aws-workspacesweb-truststore.json", "aws-customerprofiles-domain.json", + "aws-iot-policy.json", "aws-aps-scraper.json", "aws-ec2-transitgatewayroute.json", "aws-ssm-maintenancewindow.json", @@ -2101,6 +2100,7 @@ "aws-cognito-userpoolidentityprovider.json", "aws-appstream-stackuserassociation.json", "aws-resiliencehub-resiliencypolicy.json", + "aws-location-tracker.json", "aws-iot-dimension.json", "aws-logs-loggroup.json", "aws-evidently-experiment.json", @@ -2149,6 +2149,7 @@ "aws-ivs-storageconfiguration.json", "aws-ec2-verifiedaccesstrustprovider.json", "aws-appmesh-virtualrouter.json", + "aws-iot-certificateprovider.json", "aws-pinpoint-emailtemplate.json", "aws-medialive-multiplex.json", "aws-scheduler-schedulegroup.json", @@ -2248,6 +2249,7 @@ "aws-ec2-securitygroupingress.json", "aws-guardduty-detector.json", "aws-sagemaker-modelqualityjobdefinition.json", + "aws-iot-provisioningtemplate.json", "aws-personalize-schema.json", "aws-appflow-flow.json", "aws-apigateway-stage.json", diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_1/aws-cloudwatch-dashboard.json b/src/cfnlint/data/schemas/providers/ap_northeast_1/aws-cloudwatch-dashboard.json new file mode 100644 index 0000000000..258074cf80 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_northeast_1/aws-cloudwatch-dashboard.json @@ -0,0 +1,27 @@ +{ + "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_1/aws-lambda-function.json b/src/cfnlint/data/schemas/providers/ap_northeast_1/aws-lambda-function.json new file mode 100644 index 0000000000..39009ea83f --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_northeast_1/aws-lambda-function.json @@ -0,0 +1,559 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/FunctionName" + ], + "definitions": { + "Code": { + "additionalProperties": false, + "properties": { + "ImageUri": { + "type": "string" + }, + "S3Bucket": { + "maxLength": 63, + "minLength": 3, + "pattern": "^[0-9A-Za-z\\.\\-_]*(?