From 907ed2ea6af9800e9070c80274d6ba64c8c23850 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 9 Jul 2024 10:48:27 -0700 Subject: [PATCH] chore(schemas) - Update CloudFormation schemas to 2024-07-09 (#3457) * Update CloudFormation schemas to 2024-07-09 * Patch and fix issues with ptrs in ec2 instance --------- Co-authored-by: kddejong <36457093+kddejong@users.noreply.github.com> Co-authored-by: Kevin DeJong --- docs/rules.md | 3 +- .../data/AdditionalSpecs/Policies.json | 36 +- ...5a0d14c62111ff864923fc7b7960dda6.meta.json | 2 +- ...2b6653d7edfe98a64577daae0b481c38.meta.json | 2 +- ...5e4752bbc10d9552de8df8f81348c42b.meta.json | 2 +- ...63a1bf4413531ad420ff60a5a0d7965d.meta.json | 2 +- ...4cfc32461d10e077e7e5de1fc25d8b8f.meta.json | 2 +- ...d3fe2e7838c23f6acd054944cb2b1618.meta.json | 2 +- ...7e9907e4a512c10ddae70b98b4dada43.meta.json | 2 +- ...3fbf0a0fb76625ba46dbe42abd34333c.meta.json | 2 +- ...376aa3fe15197e3bb0e9290ff8719b4e.meta.json | 2 +- ...f60a7b5acfc406ebb10d5748cbb8ed41.meta.json | 2 +- ...f35136af536e92a84ccbaf062c315066.meta.json | 2 +- ...04470222e5e4c690bacef5312891581d.meta.json | 2 +- ...646b563d773e34b020d0ddeab2fe195b.meta.json | 2 +- ...548d44cc32e246ec9d7742088a2c17f8.meta.json | 2 +- ...98ac34d4109512e0e0947ef752dcb9c9.meta.json | 2 +- ...7e4a4542365d35fd75466abcf306eeca.meta.json | 2 +- ...69b7533eabab32ecfc0a00cb19e55a5f.meta.json | 2 +- ...e783fe32b6bb6b13774c32fcca1d303a.meta.json | 2 +- ...05f2567698dfdfa979bf0ccdb68cb856.meta.json | 2 +- ...92030ae5c03d7451980a15735e557edb.meta.json | 2 +- ...6bb7f975b606f8db57532faddfcdd8c8.meta.json | 2 +- ...73ff097c685cda0a63c08a6416dc58ed.meta.json | 2 +- ...25c8d66a1f84939600616bab42579541.meta.json | 2 +- ...972142778e1ff452383ede2ad4bac3d7.meta.json | 2 +- ...26b315ef6f38515840537c02de23abe2.meta.json | 2 +- ...cf908a34e6b4c3fb3e97e2b584f651ca.meta.json | 2 +- ...318c41c71c21b0a17d4f68d82c5aee21.meta.json | 2 +- ...6cd7e4ced378cacdb93f76ed227b5c5d.meta.json | 2 +- ...b9e2e4d5e38136a5be83b6a55e7a82a1.meta.json | 2 +- ...41c64a9c91b2fa5b4928c0d9b2f780b0.meta.json | 2 +- ...b2d398fe33547eed780b9b70f10eb4a2.meta.json | 2 +- ...e50a1638ffe0a5dba0d8805c190a05f8.meta.json | 2 +- ...3b69878d351cffd417dc9a457df808af.meta.json | 2 +- .../data/Serverless/ManagedPolicies.json | 1 + .../aws_dax_cluster/nodetype_enum.json | 5 - .../aws_rds_dbcluster/engine_version.json | 1 + .../aws_rds_dbinstance/engine_version.json | 7 +- .../writeonlyproperties-2.json | 28 + .../schemas/providers/af_south_1/__init__.py | 2 +- .../af_south_1/aws-codepipeline-pipeline.json | 355 -------- .../aws-sso-instance.json | 1 - .../schemas/providers/ap_east_1/__init__.py | 2 +- .../ap_east_1/aws-codepipeline-pipeline.json | 505 ----------- .../providers/ap_east_1/aws-sso-instance.json | 125 +++ .../providers/ap_northeast_1/__init__.py | 2 +- ...ito-userpooluicustomizationattachment.json | 61 -- .../ap_northeast_1/aws-sso-instance.json | 125 +++ .../providers/ap_northeast_2/__init__.py | 2 - ...ito-userpooluicustomizationattachment.json | 32 + .../ap_northeast_2/aws-sso-instance.json | 125 +++ .../providers/ap_northeast_3/__init__.py | 1 - .../ap_northeast_3/aws-sso-instance.json | 125 +++ .../schemas/providers/ap_south_1/__init__.py | 2 - ...ito-userpooluicustomizationattachment.json | 32 + .../ap_south_1/aws-sso-instance.json | 125 +++ .../schemas/providers/ap_south_2/__init__.py | 1 + .../ap_south_2/aws-codepipeline-pipeline.json | 505 ----------- .../providers/ap_southeast_1/__init__.py | 1 - .../ap_southeast_1/aws-sso-instance.json | 125 +++ .../providers/ap_southeast_2/__init__.py | 2 +- ...ito-userpooluicustomizationattachment.json | 32 + .../providers/ap_southeast_3/__init__.py | 1 - .../ap_southeast_3/aws-sso-instance.json | 125 +++ .../providers/ap_southeast_4/__init__.py | 1 + .../aws-codepipeline-pipeline.json | 505 ----------- .../providers/ca_central_1/__init__.py | 4 - ...ito-userpooluicustomizationattachment.json | 32 + .../ca_central_1/aws-sagemaker-domain.json | 831 ++++++++++++++++++ .../aws-sagemaker-userprofile.json | 592 +++++++++++++ .../ca_central_1/aws-sso-instance.json | 125 +++ .../schemas/providers/ca_west_1/__init__.py | 4 + .../schemas/providers/cn_north_1/__init__.py | 1 - .../cn_north_1/aws-sso-instance.json | 125 +++ .../providers/cn_northwest_1/__init__.py | 1 - .../cn_northwest_1/aws-sso-instance.json | 125 +++ .../providers/eu_central_1/__init__.py | 4 +- ...ito-userpooluicustomizationattachment.json | 61 -- .../eu_central_1/aws-iam-oidcprovider.json | 117 +++ .../eu_central_1/aws-lambda-alias.json | 145 +++ .../eu_central_1/aws-sso-instance.json | 125 +++ .../providers/eu_central_2/__init__.py | 1 - .../eu_central_2/aws-sso-instance.json | 125 +++ .../schemas/providers/eu_north_1/__init__.py | 1 - .../eu_north_1/aws-sso-instance.json | 125 +++ .../schemas/providers/eu_south_1/__init__.py | 1 - .../eu_south_1/aws-sso-instance.json | 125 +++ .../schemas/providers/eu_west_1/__init__.py | 3 +- ...ito-userpooluicustomizationattachment.json | 61 -- .../aws-mediaconnect-flowsource.json | 198 +++++ .../providers/eu_west_1/aws-sso-instance.json | 125 +++ .../schemas/providers/eu_west_2/__init__.py | 2 - ...ito-userpooluicustomizationattachment.json | 32 + .../providers/eu_west_2/aws-sso-instance.json | 125 +++ .../schemas/providers/eu_west_3/__init__.py | 1 - .../providers/eu_west_3/aws-sso-instance.json | 125 +++ .../providers/il_central_1/__init__.py | 1 - .../il_central_1/aws-sso-instance.json | 125 +++ .../providers/me_central_1/__init__.py | 1 - .../me_central_1/aws-sso-instance.json | 125 +++ .../schemas/providers/me_south_1/__init__.py | 4 +- .../me_south_1/aws-codepipeline-pipeline.json | 505 ----------- .../me_south_1/aws-sagemaker-domain.json | 831 ++++++++++++++++++ .../me_south_1/aws-sagemaker-userprofile.json | 592 +++++++++++++ .../me_south_1/aws-sso-instance.json | 125 +++ .../schemas/providers/sa_east_1/__init__.py | 1 - .../providers/sa_east_1/aws-sso-instance.json | 125 +++ ...ito-userpooluicustomizationattachment.json | 47 +- .../providers/us_east_1/aws-sso-instance.json | 1 + .../schemas/providers/us_east_2/__init__.py | 2 - ...ito-userpooluicustomizationattachment.json | 32 + .../providers/us_east_2/aws-sso-instance.json | 125 +++ .../providers/us_gov_east_1/__init__.py | 1 + .../us_gov_east_1/aws-lambda-function.json | 559 ------------ .../providers/us_gov_west_1/__init__.py | 2 + .../us_gov_west_1/aws-lambda-function.json | 559 ------------ .../us_gov_west_1/aws-location-tracker.json | 185 ---- .../schemas/providers/us_west_1/__init__.py | 2 - .../aws-mediaconnect-flowsource.json | 198 +++++ .../providers/us_west_1/aws-sso-instance.json | 125 +++ .../schemas/providers/us_west_2/__init__.py | 3 +- ...ito-userpooluicustomizationattachment.json | 61 -- .../us_west_2/aws-sagemaker-domain.json | 70 +- .../us_west_2/aws-sagemaker-userprofile.json | 592 +++++++++++++ .../providers/us_west_2/aws-sso-instance.json | 125 +++ 126 files changed, 7513 insertions(+), 4020 deletions(-) create mode 100644 src/cfnlint/data/schemas/patches/providers/all/aws_ec2_instance/writeonlyproperties-2.json delete mode 100644 src/cfnlint/data/schemas/providers/af_south_1/aws-codepipeline-pipeline.json rename src/cfnlint/data/schemas/providers/{ap_southeast_2 => af_south_1}/aws-sso-instance.json (98%) delete mode 100644 src/cfnlint/data/schemas/providers/ap_east_1/aws-codepipeline-pipeline.json create mode 100644 src/cfnlint/data/schemas/providers/ap_east_1/aws-sso-instance.json delete mode 100644 src/cfnlint/data/schemas/providers/ap_northeast_1/aws-cognito-userpooluicustomizationattachment.json create mode 100644 src/cfnlint/data/schemas/providers/ap_northeast_1/aws-sso-instance.json create mode 100644 src/cfnlint/data/schemas/providers/ap_northeast_2/aws-cognito-userpooluicustomizationattachment.json create mode 100644 src/cfnlint/data/schemas/providers/ap_northeast_2/aws-sso-instance.json create mode 100644 src/cfnlint/data/schemas/providers/ap_northeast_3/aws-sso-instance.json create mode 100644 src/cfnlint/data/schemas/providers/ap_south_1/aws-cognito-userpooluicustomizationattachment.json create mode 100644 src/cfnlint/data/schemas/providers/ap_south_1/aws-sso-instance.json delete mode 100644 src/cfnlint/data/schemas/providers/ap_south_2/aws-codepipeline-pipeline.json create mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_1/aws-sso-instance.json create mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_2/aws-cognito-userpooluicustomizationattachment.json create mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_3/aws-sso-instance.json delete mode 100644 src/cfnlint/data/schemas/providers/ap_southeast_4/aws-codepipeline-pipeline.json create mode 100644 src/cfnlint/data/schemas/providers/ca_central_1/aws-cognito-userpooluicustomizationattachment.json create mode 100644 src/cfnlint/data/schemas/providers/ca_central_1/aws-sagemaker-domain.json create mode 100644 src/cfnlint/data/schemas/providers/ca_central_1/aws-sagemaker-userprofile.json create mode 100644 src/cfnlint/data/schemas/providers/ca_central_1/aws-sso-instance.json create mode 100644 src/cfnlint/data/schemas/providers/cn_north_1/aws-sso-instance.json create mode 100644 src/cfnlint/data/schemas/providers/cn_northwest_1/aws-sso-instance.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_central_1/aws-cognito-userpooluicustomizationattachment.json create mode 100644 src/cfnlint/data/schemas/providers/eu_central_1/aws-iam-oidcprovider.json create mode 100644 src/cfnlint/data/schemas/providers/eu_central_1/aws-lambda-alias.json create mode 100644 src/cfnlint/data/schemas/providers/eu_central_1/aws-sso-instance.json create mode 100644 src/cfnlint/data/schemas/providers/eu_central_2/aws-sso-instance.json create mode 100644 src/cfnlint/data/schemas/providers/eu_north_1/aws-sso-instance.json create mode 100644 src/cfnlint/data/schemas/providers/eu_south_1/aws-sso-instance.json delete mode 100644 src/cfnlint/data/schemas/providers/eu_west_1/aws-cognito-userpooluicustomizationattachment.json create mode 100644 src/cfnlint/data/schemas/providers/eu_west_1/aws-mediaconnect-flowsource.json create mode 100644 src/cfnlint/data/schemas/providers/eu_west_1/aws-sso-instance.json create mode 100644 src/cfnlint/data/schemas/providers/eu_west_2/aws-cognito-userpooluicustomizationattachment.json create mode 100644 src/cfnlint/data/schemas/providers/eu_west_2/aws-sso-instance.json create mode 100644 src/cfnlint/data/schemas/providers/eu_west_3/aws-sso-instance.json create mode 100644 src/cfnlint/data/schemas/providers/il_central_1/aws-sso-instance.json create mode 100644 src/cfnlint/data/schemas/providers/me_central_1/aws-sso-instance.json delete mode 100644 src/cfnlint/data/schemas/providers/me_south_1/aws-codepipeline-pipeline.json create mode 100644 src/cfnlint/data/schemas/providers/me_south_1/aws-sagemaker-domain.json create mode 100644 src/cfnlint/data/schemas/providers/me_south_1/aws-sagemaker-userprofile.json create mode 100644 src/cfnlint/data/schemas/providers/me_south_1/aws-sso-instance.json create mode 100644 src/cfnlint/data/schemas/providers/sa_east_1/aws-sso-instance.json create mode 100644 src/cfnlint/data/schemas/providers/us_east_2/aws-cognito-userpooluicustomizationattachment.json create mode 100644 src/cfnlint/data/schemas/providers/us_east_2/aws-sso-instance.json delete mode 100644 src/cfnlint/data/schemas/providers/us_gov_east_1/aws-lambda-function.json delete mode 100644 src/cfnlint/data/schemas/providers/us_gov_west_1/aws-lambda-function.json delete mode 100644 src/cfnlint/data/schemas/providers/us_gov_west_1/aws-location-tracker.json create mode 100644 src/cfnlint/data/schemas/providers/us_west_1/aws-mediaconnect-flowsource.json create mode 100644 src/cfnlint/data/schemas/providers/us_west_1/aws-sso-instance.json delete mode 100644 src/cfnlint/data/schemas/providers/us_west_2/aws-cognito-userpooluicustomizationattachment.json create mode 100644 src/cfnlint/data/schemas/providers/us_west_2/aws-sagemaker-userprofile.json create mode 100644 src/cfnlint/data/schemas/providers/us_west_2/aws-sso-instance.json diff --git a/docs/rules.md b/docs/rules.md index 1cf60332f6..167e163798 100644 --- a/docs/rules.md +++ b/docs/rules.md @@ -46,7 +46,7 @@ To include these rules, use the `-e/include-experimental` argument when running ## Rules (_This documentation is generated by running `cfn-lint --update-documentation`, do not alter this manually_) -The following **208** rules are applied by this linter: +The following **209** rules are applied by this linter: | Rule ID | Title | Description | Config
(Name:Type:Default) | Source | Tags | | -------- | ----- | ----------- | ---------- | ------ | ---- | @@ -57,6 +57,7 @@ The following **208** rules are applied by this linter: | [E1002](../src/cfnlint/rules/templates/LimitSize.py) | Validate if a template size is too large | Check the size of the template is less than the upper limit | | [Source](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cloudformation-limits.html) | `limits` | | [E1003](../src/cfnlint/rules/templates/LimitDescription.py) | Validate the max size of a description | Check if the size of the template description is less than the upper limit | | [Source](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cloudformation-limits.html) | `description`,`limits` | | [E1004](../src/cfnlint/rules/templates/Description.py) | Template description can only be a string | Template description can only be a string | | [Source](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-description-structure.html) | `description` | +| [E1005](../src/cfnlint/rules/transforms/Configuration.py) | Validate Transform configuration | Validate that the transforms section of a template is properly configured | | [Source](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-section-structure.html) | `transform` | | [E1010](../src/cfnlint/rules/functions/GetAtt.py) | GetAtt validation of parameters | Validates that GetAtt parameters are to valid resources and properties of those resources | | [Source](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-getatt.html) | `functions`,`getatt` | | [E1011](../src/cfnlint/rules/functions/FindInMap.py) | FindInMap validation of configuration | Making sure the function is a list of appropriate config | | [Source](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-findinmap.html) | `functions`,`findinmap` | | [E1015](../src/cfnlint/rules/functions/GetAz.py) | GetAz validation of parameters | Making sure the GetAz function is properly configured | | [Source](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-getavailabilityzones.html) | `functions`,`getaz` | diff --git a/src/cfnlint/data/AdditionalSpecs/Policies.json b/src/cfnlint/data/AdditionalSpecs/Policies.json index 7fde60a745..d28c8860ca 100644 --- a/src/cfnlint/data/AdditionalSpecs/Policies.json +++ b/src/cfnlint/data/AdditionalSpecs/Policies.json @@ -10334,6 +10334,31 @@ "aws:TagKeys" ] }, + "AWS Systems Manager Quick Setup": { + "ARNFormat": "arn:aws:ssm-quicksetup:${Region}:${Account}:${ResourceType}/${ResourceId}", + "ARNRegex": "^arn:aws:ssm-quicksetup:.+", + "Actions": [ + "CreateConfigurationManager", + "DeleteConfigurationManager", + "GetConfigurationManager", + "GetServiceSettings", + "ListConfigurationManagers", + "ListQuickSetupTypes", + "ListTagsForResource", + "TagResource", + "UntagResource", + "UpdateConfigurationDefinition", + "UpdateConfigurationManager", + "UpdateServiceSettings" + ], + "HasResource": true, + "StringPrefix": "ssm-quicksetup", + "conditionKeys": [ + "aws:RequestTag/${TagKey}", + "aws:ResourceTag/${TagKey}", + "aws:TagKeys" + ] + }, "AWS Systems Manager for SAP": { "ARNFormat": "arn:aws:ssm-sap:${Region}:${Account}:${ApplicationType}/${ApplicationId}", "ARNRegex": "^arn:aws:ssm-sap:.+", @@ -19215,12 +19240,14 @@ "ImportDocumentToQAppSession", "ListLibraryItems", "ListQApps", + "ListTagsForResource", "PredictProblemStatementFromConversation", "PredictQApp", "PredictQAppFromProblemStatement", "StartQAppSession", "StopQAppSession", "TagResource", + "UntagResource", "UpdateLibraryItem", "UpdateQApp", "UpdateQAppSession", @@ -19231,7 +19258,11 @@ "conditionKeys": [ "aws:RequestTag/${TagKey}", "aws:ResourceTag/${TagKey}", - "aws:TagKeys" + "aws:TagKeys", + "qapps:AppIsPublished", + "qapps:SessionIsShared", + "qapps:UserIsAppOwner", + "qapps:UserIsSessionModerator" ] }, "Amazon Q in Connect": { @@ -21149,6 +21180,7 @@ "CreateFeatureGroup", "CreateFlowDefinition", "CreateHub", + "CreateHubContentReference", "CreateHumanTaskUi", "CreateHyperParameterTuningJob", "CreateImage", @@ -21208,6 +21240,7 @@ "DeleteFlowDefinition", "DeleteHub", "DeleteHubContent", + "DeleteHubContentReference", "DeleteHumanLoop", "DeleteHumanTaskUi", "DeleteHyperParameterTuningJob", @@ -21240,6 +21273,7 @@ "DeleteUserProfile", "DeleteWorkforce", "DeleteWorkteam", + "DeployHubModel", "DeregisterDevices", "DescribeAction", "DescribeAlgorithm", diff --git a/src/cfnlint/data/DownloadsMetadata/123ba181485ae293d5bd09722af0c19d5a0d14c62111ff864923fc7b7960dda6.meta.json b/src/cfnlint/data/DownloadsMetadata/123ba181485ae293d5bd09722af0c19d5a0d14c62111ff864923fc7b7960dda6.meta.json index 6fbeb098b4..d8bc779aa4 100644 --- a/src/cfnlint/data/DownloadsMetadata/123ba181485ae293d5bd09722af0c19d5a0d14c62111ff864923fc7b7960dda6.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/123ba181485ae293d5bd09722af0c19d5a0d14c62111ff864923fc7b7960dda6.meta.json @@ -1 +1 @@ -{"etag": "\"6a9fea827ba62a4f7c6dc950b298df53\"", "url": "https://schema.cloudformation.eu-south-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"fca661173bec87b9931105a1e4837b58\"", "url": "https://schema.cloudformation.eu-south-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/164e1bfc2823fbd49d8d0e7163ebf32b2b6653d7edfe98a64577daae0b481c38.meta.json b/src/cfnlint/data/DownloadsMetadata/164e1bfc2823fbd49d8d0e7163ebf32b2b6653d7edfe98a64577daae0b481c38.meta.json index 5363a3fec7..7e7c044655 100644 --- a/src/cfnlint/data/DownloadsMetadata/164e1bfc2823fbd49d8d0e7163ebf32b2b6653d7edfe98a64577daae0b481c38.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/164e1bfc2823fbd49d8d0e7163ebf32b2b6653d7edfe98a64577daae0b481c38.meta.json @@ -1 +1 @@ -{"etag": "\"21d11d89e4620170bf319c86ab65cb0e\"", "url": "https://schema.cloudformation.cn-north-1.amazonaws.com.cn/CloudformationSchema.zip"} +{"etag": "\"44b238171f54205cc3cfb468130b1dcb\"", "url": "https://schema.cloudformation.cn-north-1.amazonaws.com.cn/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/18624fcc4a1c571691d10b2508e6be565e4752bbc10d9552de8df8f81348c42b.meta.json b/src/cfnlint/data/DownloadsMetadata/18624fcc4a1c571691d10b2508e6be565e4752bbc10d9552de8df8f81348c42b.meta.json index f01076be0c..a667a52e76 100644 --- a/src/cfnlint/data/DownloadsMetadata/18624fcc4a1c571691d10b2508e6be565e4752bbc10d9552de8df8f81348c42b.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/18624fcc4a1c571691d10b2508e6be565e4752bbc10d9552de8df8f81348c42b.meta.json @@ -1 +1 @@ -{"etag": "\"56c19db31a7e08d717de45ef6f48d694\"", "url": "https://schema.cloudformation.us-gov-east-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"8bacb83d9b2956f042839e8288424f61\"", "url": "https://schema.cloudformation.us-gov-east-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/227d6e59c86482f7153466759080e65963a1bf4413531ad420ff60a5a0d7965d.meta.json b/src/cfnlint/data/DownloadsMetadata/227d6e59c86482f7153466759080e65963a1bf4413531ad420ff60a5a0d7965d.meta.json index 10c004adfc..9af3f753fd 100644 --- a/src/cfnlint/data/DownloadsMetadata/227d6e59c86482f7153466759080e65963a1bf4413531ad420ff60a5a0d7965d.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/227d6e59c86482f7153466759080e65963a1bf4413531ad420ff60a5a0d7965d.meta.json @@ -1 +1 @@ -{"etag": "\"e71a332cc2661b48d95bcf3b37f5cedf\"", "url": "https://schema.cloudformation.me-south-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"cf08b6f95e54bd440e37d2eca78d0a17\"", "url": "https://schema.cloudformation.me-south-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/23be708e675cb6098b08969e4dbbc3f54cfc32461d10e077e7e5de1fc25d8b8f.meta.json b/src/cfnlint/data/DownloadsMetadata/23be708e675cb6098b08969e4dbbc3f54cfc32461d10e077e7e5de1fc25d8b8f.meta.json index 07050d6300..56618eace5 100644 --- a/src/cfnlint/data/DownloadsMetadata/23be708e675cb6098b08969e4dbbc3f54cfc32461d10e077e7e5de1fc25d8b8f.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/23be708e675cb6098b08969e4dbbc3f54cfc32461d10e077e7e5de1fc25d8b8f.meta.json @@ -1 +1 @@ -{"etag": "\"b21d60cb56c76f34ac3d3a20ec3ba88f\"", "url": "https://schema.cloudformation.us-gov-west-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"fe7b465559bf503c1bf2e9f37594d316\"", "url": "https://schema.cloudformation.us-gov-west-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/26cf4521b683d3267844178a6bcd1d0ad3fe2e7838c23f6acd054944cb2b1618.meta.json b/src/cfnlint/data/DownloadsMetadata/26cf4521b683d3267844178a6bcd1d0ad3fe2e7838c23f6acd054944cb2b1618.meta.json index b7790052bd..adfea6bd85 100644 --- a/src/cfnlint/data/DownloadsMetadata/26cf4521b683d3267844178a6bcd1d0ad3fe2e7838c23f6acd054944cb2b1618.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/26cf4521b683d3267844178a6bcd1d0ad3fe2e7838c23f6acd054944cb2b1618.meta.json @@ -1 +1 @@ -{"etag": "\"0a7bfcb4c82179f8b896a35925491e09\"", "url": "https://schema.cloudformation.me-central-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"6219780f75f418e68cd84e355a3f493b\"", "url": "https://schema.cloudformation.me-central-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/276cecfeb1ec5e608e2aaa06925a2da57e9907e4a512c10ddae70b98b4dada43.meta.json b/src/cfnlint/data/DownloadsMetadata/276cecfeb1ec5e608e2aaa06925a2da57e9907e4a512c10ddae70b98b4dada43.meta.json index 3a13b738e6..3b7d4acb7d 100644 --- a/src/cfnlint/data/DownloadsMetadata/276cecfeb1ec5e608e2aaa06925a2da57e9907e4a512c10ddae70b98b4dada43.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/276cecfeb1ec5e608e2aaa06925a2da57e9907e4a512c10ddae70b98b4dada43.meta.json @@ -1 +1 @@ -{"etag": "\"bb8babaff748994c63162308f4eeadf6\"", "url": "https://schema.cloudformation.eu-west-2.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"cbfbefba6f56a517eff55af0fcb17208\"", "url": "https://schema.cloudformation.eu-west-2.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/371e40c90b2e47c99f6e275e060ee83a3fbf0a0fb76625ba46dbe42abd34333c.meta.json b/src/cfnlint/data/DownloadsMetadata/371e40c90b2e47c99f6e275e060ee83a3fbf0a0fb76625ba46dbe42abd34333c.meta.json index 91e5df52df..46c433ba59 100644 --- a/src/cfnlint/data/DownloadsMetadata/371e40c90b2e47c99f6e275e060ee83a3fbf0a0fb76625ba46dbe42abd34333c.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/371e40c90b2e47c99f6e275e060ee83a3fbf0a0fb76625ba46dbe42abd34333c.meta.json @@ -1 +1 @@ -{"etag": "\"bc2777243a907772deacca24d0f07138\"", "url": "https://schema.cloudformation.cn-northwest-1.amazonaws.com.cn/CloudformationSchema.zip"} +{"etag": "\"b33dacbecbabf16880c10c9618f34b6c\"", "url": "https://schema.cloudformation.cn-northwest-1.amazonaws.com.cn/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/42155835f382d82337be3d2bf832bada376aa3fe15197e3bb0e9290ff8719b4e.meta.json b/src/cfnlint/data/DownloadsMetadata/42155835f382d82337be3d2bf832bada376aa3fe15197e3bb0e9290ff8719b4e.meta.json index 0f4183968d..2892b550fa 100644 --- a/src/cfnlint/data/DownloadsMetadata/42155835f382d82337be3d2bf832bada376aa3fe15197e3bb0e9290ff8719b4e.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/42155835f382d82337be3d2bf832bada376aa3fe15197e3bb0e9290ff8719b4e.meta.json @@ -1 +1 @@ -{"etag": "\"91f0978825d39a2e63edb1a4e29aed89\"", "url": "https://schema.cloudformation.af-south-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"49c50678af95826ceebdd6b225bc3465\"", "url": "https://schema.cloudformation.af-south-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/42e9df95722b6524cd001503b6750b86f60a7b5acfc406ebb10d5748cbb8ed41.meta.json b/src/cfnlint/data/DownloadsMetadata/42e9df95722b6524cd001503b6750b86f60a7b5acfc406ebb10d5748cbb8ed41.meta.json index 839c4de64f..4a2d29c547 100644 --- a/src/cfnlint/data/DownloadsMetadata/42e9df95722b6524cd001503b6750b86f60a7b5acfc406ebb10d5748cbb8ed41.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/42e9df95722b6524cd001503b6750b86f60a7b5acfc406ebb10d5748cbb8ed41.meta.json @@ -1 +1 @@ -{"etag": "\"fc7dc016514c70a7debeccc3c56dbb09\"", "url": "https://schema.cloudformation.us-west-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"8f978d1d28e4fa0b444aac5992272500\"", "url": "https://schema.cloudformation.us-west-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/4fbb29b69678acdd32c5758ed43ead9bf35136af536e92a84ccbaf062c315066.meta.json b/src/cfnlint/data/DownloadsMetadata/4fbb29b69678acdd32c5758ed43ead9bf35136af536e92a84ccbaf062c315066.meta.json index 878b5fc540..d001552962 100644 --- a/src/cfnlint/data/DownloadsMetadata/4fbb29b69678acdd32c5758ed43ead9bf35136af536e92a84ccbaf062c315066.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/4fbb29b69678acdd32c5758ed43ead9bf35136af536e92a84ccbaf062c315066.meta.json @@ -1 +1 @@ -{"etag": "\"991196a2de6f8c6b5538c1a544b58979\"", "url": "https://schema.cloudformation.eu-central-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"2de27f61d596e949671623eec93ca984\"", "url": "https://schema.cloudformation.eu-central-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/56584c7d00e444de640bef01fc2c630804470222e5e4c690bacef5312891581d.meta.json b/src/cfnlint/data/DownloadsMetadata/56584c7d00e444de640bef01fc2c630804470222e5e4c690bacef5312891581d.meta.json index 9b98e28775..66933b6aaf 100644 --- a/src/cfnlint/data/DownloadsMetadata/56584c7d00e444de640bef01fc2c630804470222e5e4c690bacef5312891581d.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/56584c7d00e444de640bef01fc2c630804470222e5e4c690bacef5312891581d.meta.json @@ -1 +1 @@ -{"etag": "\"395a9158b87cdc3728334073eda6165b\"", "url": "https://schema.cloudformation.ap-south-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"bed0ddc94bdad72679213e7da587cd35\"", "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 06ff64a0db..44c8641900 100644 --- a/src/cfnlint/data/DownloadsMetadata/583721567eccd1d5855daa623819df1a646b563d773e34b020d0ddeab2fe195b.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/583721567eccd1d5855daa623819df1a646b563d773e34b020d0ddeab2fe195b.meta.json @@ -1 +1 @@ -{"etag": "\"df91f04b90a0bf3c17a1cf6b6dfc6cf0\"", "url": "https://schema.cloudformation.ap-southeast-4.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"0a7ead0f761e21c1d26fabfe4d0ab12c\"", "url": "https://schema.cloudformation.ap-southeast-4.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/6316ae24f21cb620947aa250bebbee69548d44cc32e246ec9d7742088a2c17f8.meta.json b/src/cfnlint/data/DownloadsMetadata/6316ae24f21cb620947aa250bebbee69548d44cc32e246ec9d7742088a2c17f8.meta.json index 50c3731337..213b5060ce 100644 --- a/src/cfnlint/data/DownloadsMetadata/6316ae24f21cb620947aa250bebbee69548d44cc32e246ec9d7742088a2c17f8.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/6316ae24f21cb620947aa250bebbee69548d44cc32e246ec9d7742088a2c17f8.meta.json @@ -1 +1 @@ -{"etag": "\"7fd0faefbfc8e4a02af5ff51fed6fb76\"", "url": "https://schema.cloudformation.us-east-2.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"3388bdac1094b7ce5c686498980d7ae4\"", "url": "https://schema.cloudformation.us-east-2.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/81e1cc73ff2daf7d1e1eca393c2d1fdd98ac34d4109512e0e0947ef752dcb9c9.meta.json b/src/cfnlint/data/DownloadsMetadata/81e1cc73ff2daf7d1e1eca393c2d1fdd98ac34d4109512e0e0947ef752dcb9c9.meta.json index 4abd1ded87..06b9d83097 100644 --- a/src/cfnlint/data/DownloadsMetadata/81e1cc73ff2daf7d1e1eca393c2d1fdd98ac34d4109512e0e0947ef752dcb9c9.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/81e1cc73ff2daf7d1e1eca393c2d1fdd98ac34d4109512e0e0947ef752dcb9c9.meta.json @@ -1 +1 @@ -{"etag": "\"27374bda6245a69e30814683e62de6ec\"", "url": "https://schema.cloudformation.ap-southeast-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"9d55fdb052ec6c80816d6e110fe6c67e\"", "url": "https://schema.cloudformation.ap-southeast-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/8adeabf0a09b37a8ed924aea799005947e4a4542365d35fd75466abcf306eeca.meta.json b/src/cfnlint/data/DownloadsMetadata/8adeabf0a09b37a8ed924aea799005947e4a4542365d35fd75466abcf306eeca.meta.json index 7310b68ac4..0a65a40e52 100644 --- a/src/cfnlint/data/DownloadsMetadata/8adeabf0a09b37a8ed924aea799005947e4a4542365d35fd75466abcf306eeca.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/8adeabf0a09b37a8ed924aea799005947e4a4542365d35fd75466abcf306eeca.meta.json @@ -1 +1 @@ -{"etag": "\"98719bf3496f55719534c6360f8346a7\"", "url": "https://schema.cloudformation.ap-northeast-2.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"edf94f0ce457cd9cf8d922df85e88e26\"", "url": "https://schema.cloudformation.ap-northeast-2.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/8b8b0cee4df1ef0947a8289e8ec0c67869b7533eabab32ecfc0a00cb19e55a5f.meta.json b/src/cfnlint/data/DownloadsMetadata/8b8b0cee4df1ef0947a8289e8ec0c67869b7533eabab32ecfc0a00cb19e55a5f.meta.json index d7ad437767..a728a64ffc 100644 --- a/src/cfnlint/data/DownloadsMetadata/8b8b0cee4df1ef0947a8289e8ec0c67869b7533eabab32ecfc0a00cb19e55a5f.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/8b8b0cee4df1ef0947a8289e8ec0c67869b7533eabab32ecfc0a00cb19e55a5f.meta.json @@ -1 +1 @@ -{"etag": "\"61b296ed6543d05a85d0ab5611cc4d3a\"", "url": "https://schema.cloudformation.ap-southeast-3.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"fd5b3262a2eab93279c1410341eae6f0\"", "url": "https://schema.cloudformation.ap-southeast-3.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/b1f069477cd577cde04dfe1b323c0bb0e783fe32b6bb6b13774c32fcca1d303a.meta.json b/src/cfnlint/data/DownloadsMetadata/b1f069477cd577cde04dfe1b323c0bb0e783fe32b6bb6b13774c32fcca1d303a.meta.json index 5ad59f0e73..d0716354f6 100644 --- a/src/cfnlint/data/DownloadsMetadata/b1f069477cd577cde04dfe1b323c0bb0e783fe32b6bb6b13774c32fcca1d303a.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/b1f069477cd577cde04dfe1b323c0bb0e783fe32b6bb6b13774c32fcca1d303a.meta.json @@ -1 +1 @@ -{"etag": "\"7187774c04713c1502263442a2d6ab3f\"", "url": "https://schema.cloudformation.ap-east-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"b6d8e3218ab5eb827f0937652265540f\"", "url": "https://schema.cloudformation.ap-east-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/c7ada205073390b33b7593ef8f304b9705f2567698dfdfa979bf0ccdb68cb856.meta.json b/src/cfnlint/data/DownloadsMetadata/c7ada205073390b33b7593ef8f304b9705f2567698dfdfa979bf0ccdb68cb856.meta.json index 522d873be5..5786e959bf 100644 --- a/src/cfnlint/data/DownloadsMetadata/c7ada205073390b33b7593ef8f304b9705f2567698dfdfa979bf0ccdb68cb856.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/c7ada205073390b33b7593ef8f304b9705f2567698dfdfa979bf0ccdb68cb856.meta.json @@ -1 +1 @@ -{"etag": "\"54b50841e5d209c975128bb77bb3db22\"", "url": "https://schema.cloudformation.sa-east-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"a15034fae8ab865f90ef7ef2e2f5d3a9\"", "url": "https://schema.cloudformation.sa-east-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/d24ce9a45a014b1ff04d479422ea956e92030ae5c03d7451980a15735e557edb.meta.json b/src/cfnlint/data/DownloadsMetadata/d24ce9a45a014b1ff04d479422ea956e92030ae5c03d7451980a15735e557edb.meta.json index 9dfc362aeb..1511d3f044 100644 --- a/src/cfnlint/data/DownloadsMetadata/d24ce9a45a014b1ff04d479422ea956e92030ae5c03d7451980a15735e557edb.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/d24ce9a45a014b1ff04d479422ea956e92030ae5c03d7451980a15735e557edb.meta.json @@ -1 +1 @@ -{"etag": "\"a64a40fa66f83f219a05b0ef7edb1bf6\"", "url": "https://schema.cloudformation.ap-southeast-2.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"85030c3fc55a02effd586262eb0b2f32\"", "url": "https://schema.cloudformation.ap-southeast-2.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/d85e2e061cacfcffe4902adb1074a04e6bb7f975b606f8db57532faddfcdd8c8.meta.json b/src/cfnlint/data/DownloadsMetadata/d85e2e061cacfcffe4902adb1074a04e6bb7f975b606f8db57532faddfcdd8c8.meta.json index b05f92dfbd..d6a7adec20 100644 --- a/src/cfnlint/data/DownloadsMetadata/d85e2e061cacfcffe4902adb1074a04e6bb7f975b606f8db57532faddfcdd8c8.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/d85e2e061cacfcffe4902adb1074a04e6bb7f975b606f8db57532faddfcdd8c8.meta.json @@ -1 +1 @@ -{"etag": "\"b01e9073b37eb46f5c2b281f6db771e8\"", "url": "https://schema.cloudformation.ca-west-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"219c41d3925b7de5879a3e8bf4ef77e8\"", "url": "https://schema.cloudformation.ca-west-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/d8e41d35f4f8922b66525dea2c66d72a73ff097c685cda0a63c08a6416dc58ed.meta.json b/src/cfnlint/data/DownloadsMetadata/d8e41d35f4f8922b66525dea2c66d72a73ff097c685cda0a63c08a6416dc58ed.meta.json index 59314be054..983e65e42b 100644 --- a/src/cfnlint/data/DownloadsMetadata/d8e41d35f4f8922b66525dea2c66d72a73ff097c685cda0a63c08a6416dc58ed.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/d8e41d35f4f8922b66525dea2c66d72a73ff097c685cda0a63c08a6416dc58ed.meta.json @@ -1 +1 @@ -{"etag": "\"2c38db24fb827eafdef16e5f48216d9e\"", "url": "https://schema.cloudformation.eu-central-2.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"875dc5e03652215ba55290811e01ef74\"", "url": "https://schema.cloudformation.eu-central-2.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/dd98171253ebc36f5b78e247f3132b5f25c8d66a1f84939600616bab42579541.meta.json b/src/cfnlint/data/DownloadsMetadata/dd98171253ebc36f5b78e247f3132b5f25c8d66a1f84939600616bab42579541.meta.json index c5511db1e8..985ebbef53 100644 --- a/src/cfnlint/data/DownloadsMetadata/dd98171253ebc36f5b78e247f3132b5f25c8d66a1f84939600616bab42579541.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/dd98171253ebc36f5b78e247f3132b5f25c8d66a1f84939600616bab42579541.meta.json @@ -1 +1 @@ -{"etag": "\"3e5d616fe869d01f1741b56510072f71\"", "url": "https://schema.cloudformation.eu-north-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"abcc9a4a47bf03454210b7cca7acceb7\"", "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 c76df0f29b..108a85734a 100644 --- a/src/cfnlint/data/DownloadsMetadata/df4945435575c690a2651bb31e7a9b48972142778e1ff452383ede2ad4bac3d7.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/df4945435575c690a2651bb31e7a9b48972142778e1ff452383ede2ad4bac3d7.meta.json @@ -1 +1 @@ -{"etag": "\"613b72638ddbe49611c6bc87d2e43df0\"", "url": "https://schema.cloudformation.eu-south-2.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"6381af14034ca7a1403cf2ac0577eb6b\"", "url": "https://schema.cloudformation.eu-south-2.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/e5301e07e25fa2c35d2c7e1f9dcf720826b315ef6f38515840537c02de23abe2.meta.json b/src/cfnlint/data/DownloadsMetadata/e5301e07e25fa2c35d2c7e1f9dcf720826b315ef6f38515840537c02de23abe2.meta.json index f6be6dce05..2fdedc0033 100644 --- a/src/cfnlint/data/DownloadsMetadata/e5301e07e25fa2c35d2c7e1f9dcf720826b315ef6f38515840537c02de23abe2.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/e5301e07e25fa2c35d2c7e1f9dcf720826b315ef6f38515840537c02de23abe2.meta.json @@ -1 +1 @@ -{"etag": "\"0dd1ed3ea43b33340d7d538500073843\"", "url": "https://schema.cloudformation.ca-central-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"5f6aed5dc01eaa2491a91ec1b533215d\"", "url": "https://schema.cloudformation.ca-central-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/e8b3dacc1675b478e8c7392b51f41467cf908a34e6b4c3fb3e97e2b584f651ca.meta.json b/src/cfnlint/data/DownloadsMetadata/e8b3dacc1675b478e8c7392b51f41467cf908a34e6b4c3fb3e97e2b584f651ca.meta.json index be914b490b..27c6445d2c 100644 --- a/src/cfnlint/data/DownloadsMetadata/e8b3dacc1675b478e8c7392b51f41467cf908a34e6b4c3fb3e97e2b584f651ca.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/e8b3dacc1675b478e8c7392b51f41467cf908a34e6b4c3fb3e97e2b584f651ca.meta.json @@ -1 +1 @@ -{"etag": "\"0fdf19c33931e5ba91c4015a3a4865a0\"", "url": "https://schema.cloudformation.eu-west-3.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"8cc0ee67adf10e5e0675b1ea8b808995\"", "url": "https://schema.cloudformation.eu-west-3.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/ea0f7b8f144feb225afe73a24dfdf993318c41c71c21b0a17d4f68d82c5aee21.meta.json b/src/cfnlint/data/DownloadsMetadata/ea0f7b8f144feb225afe73a24dfdf993318c41c71c21b0a17d4f68d82c5aee21.meta.json index 9a53b8c50d..9c7972bf7b 100644 --- a/src/cfnlint/data/DownloadsMetadata/ea0f7b8f144feb225afe73a24dfdf993318c41c71c21b0a17d4f68d82c5aee21.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/ea0f7b8f144feb225afe73a24dfdf993318c41c71c21b0a17d4f68d82c5aee21.meta.json @@ -1 +1 @@ -{"etag": "\"9527c9638e1c9c42e467012e1f547974\"", "url": "https://schema.cloudformation.ap-northeast-3.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"82a2bf2383192b7e6092bdc8a70d6074\"", "url": "https://schema.cloudformation.ap-northeast-3.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/f1896c9151984eec294af1eddf64260f6cd7e4ced378cacdb93f76ed227b5c5d.meta.json b/src/cfnlint/data/DownloadsMetadata/f1896c9151984eec294af1eddf64260f6cd7e4ced378cacdb93f76ed227b5c5d.meta.json index 9a021800c9..df5daa82e8 100644 --- a/src/cfnlint/data/DownloadsMetadata/f1896c9151984eec294af1eddf64260f6cd7e4ced378cacdb93f76ed227b5c5d.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/f1896c9151984eec294af1eddf64260f6cd7e4ced378cacdb93f76ed227b5c5d.meta.json @@ -1 +1 @@ -{"etag": "\"a9a849e9a12e9e0c019062316ea02406\"", "url": "https://schema.cloudformation.us-west-2.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"497dfbf8ddf7a75cdfc9a55c5418b3b3\"", "url": "https://schema.cloudformation.us-west-2.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/f49718b210ea89ff182ae51cb7004366b9e2e4d5e38136a5be83b6a55e7a82a1.meta.json b/src/cfnlint/data/DownloadsMetadata/f49718b210ea89ff182ae51cb7004366b9e2e4d5e38136a5be83b6a55e7a82a1.meta.json index c70bb03e66..941daab94d 100644 --- a/src/cfnlint/data/DownloadsMetadata/f49718b210ea89ff182ae51cb7004366b9e2e4d5e38136a5be83b6a55e7a82a1.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/f49718b210ea89ff182ae51cb7004366b9e2e4d5e38136a5be83b6a55e7a82a1.meta.json @@ -1 +1 @@ -{"etag": "\"e3846207dba9497182ae4faaad55f9e7\"", "url": "https://schema.cloudformation.ap-south-2.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"3407c45be9d672535e538a0799086e02\"", "url": "https://schema.cloudformation.ap-south-2.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/f54eee6f8ad9619f41835b700369cdbb41c64a9c91b2fa5b4928c0d9b2f780b0.meta.json b/src/cfnlint/data/DownloadsMetadata/f54eee6f8ad9619f41835b700369cdbb41c64a9c91b2fa5b4928c0d9b2f780b0.meta.json index 5e100b0f77..40e75daece 100644 --- a/src/cfnlint/data/DownloadsMetadata/f54eee6f8ad9619f41835b700369cdbb41c64a9c91b2fa5b4928c0d9b2f780b0.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/f54eee6f8ad9619f41835b700369cdbb41c64a9c91b2fa5b4928c0d9b2f780b0.meta.json @@ -1 +1 @@ -{"etag": "\"9090d15775b8e346663a0c65d21deeab\"", "url": "https://schema.cloudformation.us-east-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"17cfbb043503a1368c1b3968e79d9c3f\"", "url": "https://schema.cloudformation.us-east-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/f6f35a459759d6c132fa2fe798cefbd5b2d398fe33547eed780b9b70f10eb4a2.meta.json b/src/cfnlint/data/DownloadsMetadata/f6f35a459759d6c132fa2fe798cefbd5b2d398fe33547eed780b9b70f10eb4a2.meta.json index 70c850a335..9145a20063 100644 --- a/src/cfnlint/data/DownloadsMetadata/f6f35a459759d6c132fa2fe798cefbd5b2d398fe33547eed780b9b70f10eb4a2.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/f6f35a459759d6c132fa2fe798cefbd5b2d398fe33547eed780b9b70f10eb4a2.meta.json @@ -1 +1 @@ -{"etag": "\"91a94fe4c235b3ec62196d1fdf65de67\"", "url": "https://schema.cloudformation.il-central-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"7fe4a93bbfc36ce4d87c6849c218a89c\"", "url": "https://schema.cloudformation.il-central-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/fa657351d8e89c40ba6b82c4b1f5e1b5e50a1638ffe0a5dba0d8805c190a05f8.meta.json b/src/cfnlint/data/DownloadsMetadata/fa657351d8e89c40ba6b82c4b1f5e1b5e50a1638ffe0a5dba0d8805c190a05f8.meta.json index f95474576a..52d71ef4a3 100644 --- a/src/cfnlint/data/DownloadsMetadata/fa657351d8e89c40ba6b82c4b1f5e1b5e50a1638ffe0a5dba0d8805c190a05f8.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/fa657351d8e89c40ba6b82c4b1f5e1b5e50a1638ffe0a5dba0d8805c190a05f8.meta.json @@ -1 +1 @@ -{"etag": "\"1cf883a1462f756e4f5ada47de144441\"", "url": "https://schema.cloudformation.eu-west-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"6b98a890ad1abfcfd5eec6e9150085fd\"", "url": "https://schema.cloudformation.eu-west-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/DownloadsMetadata/ff02b7d808c1c00053f09aa43a50addf3b69878d351cffd417dc9a457df808af.meta.json b/src/cfnlint/data/DownloadsMetadata/ff02b7d808c1c00053f09aa43a50addf3b69878d351cffd417dc9a457df808af.meta.json index 6d5c21ff48..36fc0fdf65 100644 --- a/src/cfnlint/data/DownloadsMetadata/ff02b7d808c1c00053f09aa43a50addf3b69878d351cffd417dc9a457df808af.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/ff02b7d808c1c00053f09aa43a50addf3b69878d351cffd417dc9a457df808af.meta.json @@ -1 +1 @@ -{"etag": "\"1e84d5bea7764517ccbc12987e5cab4e\"", "url": "https://schema.cloudformation.ap-northeast-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"f9dc17365a5d3c547ed30cb9514215da\"", "url": "https://schema.cloudformation.ap-northeast-1.amazonaws.com/CloudformationSchema.zip"} diff --git a/src/cfnlint/data/Serverless/ManagedPolicies.json b/src/cfnlint/data/Serverless/ManagedPolicies.json index 00fd48e694..67cfac3381 100644 --- a/src/cfnlint/data/Serverless/ManagedPolicies.json +++ b/src/cfnlint/data/Serverless/ManagedPolicies.json @@ -887,6 +887,7 @@ "AmazonPrometheusQueryAccess": "arn:aws:iam::aws:policy/AmazonPrometheusQueryAccess", "AmazonPrometheusRemoteWriteAccess": "arn:aws:iam::aws:policy/AmazonPrometheusRemoteWriteAccess", "AmazonPrometheusScraperServiceRolePolicy": "arn:aws:iam::aws:policy/aws-service-role/AmazonPrometheusScraperServiceRolePolicy", + "AmazonQDeveloperAccess": "arn:aws:iam::aws:policy/AmazonQDeveloperAccess", "AmazonQFullAccess": "arn:aws:iam::aws:policy/AmazonQFullAccess", "AmazonQLDBConsoleFullAccess": "arn:aws:iam::aws:policy/AmazonQLDBConsoleFullAccess", "AmazonQLDBFullAccess": "arn:aws:iam::aws:policy/AmazonQLDBFullAccess", diff --git a/src/cfnlint/data/schemas/extensions/aws_dax_cluster/nodetype_enum.json b/src/cfnlint/data/schemas/extensions/aws_dax_cluster/nodetype_enum.json index c1fa805c1b..ca9442f6f5 100644 --- a/src/cfnlint/data/schemas/extensions/aws_dax_cluster/nodetype_enum.json +++ b/src/cfnlint/data/schemas/extensions/aws_dax_cluster/nodetype_enum.json @@ -241,11 +241,6 @@ }, "sa-east-1": { "enum": [ - "dax.r3.2xlarge", - "dax.r3.4xlarge", - "dax.r3.8xlarge", - "dax.r3.large", - "dax.r3.xlarge", "dax.r4.16xlarge", "dax.r4.2xlarge", "dax.r4.4xlarge", diff --git a/src/cfnlint/data/schemas/extensions/aws_rds_dbcluster/engine_version.json b/src/cfnlint/data/schemas/extensions/aws_rds_dbcluster/engine_version.json index 0a7ca921e9..3d01e43500 100644 --- a/src/cfnlint/data/schemas/extensions/aws_rds_dbcluster/engine_version.json +++ b/src/cfnlint/data/schemas/extensions/aws_rds_dbcluster/engine_version.json @@ -58,6 +58,7 @@ "5.7.mysql_aurora.2.12.0", "5.7.mysql_aurora.2.12.1", "5.7.mysql_aurora.2.12.2", + "5.7.mysql_aurora.2.12.3", "8.0.mysql_aurora.3.03.0", "8.0.mysql_aurora.3.03.1", "8.0.mysql_aurora.3.03.2", diff --git a/src/cfnlint/data/schemas/extensions/aws_rds_dbinstance/engine_version.json b/src/cfnlint/data/schemas/extensions/aws_rds_dbinstance/engine_version.json index 192ddc3977..f821fb6564 100644 --- a/src/cfnlint/data/schemas/extensions/aws_rds_dbinstance/engine_version.json +++ b/src/cfnlint/data/schemas/extensions/aws_rds_dbinstance/engine_version.json @@ -74,6 +74,7 @@ "5.7.mysql_aurora.2.12.0", "5.7.mysql_aurora.2.12.1", "5.7.mysql_aurora.2.12.2", + "5.7.mysql_aurora.2.12.3", "8.0.mysql_aurora.3.03.0", "8.0.mysql_aurora.3.03.1", "8.0.mysql_aurora.3.03.2", @@ -282,7 +283,8 @@ "11.5.9.0.sb00039210.r1", "11.5.9.0.sb00039340.r1", "11.5.9.0.sb00040222.r1", - "11.5.9.0.sb00040226.r1" + "11.5.9.0.sb00040226.r1", + "11.5.9.0.sb00042449.r1" ] } } @@ -314,7 +316,8 @@ "11.5.9.0.sb00039210.r1", "11.5.9.0.sb00039340.r1", "11.5.9.0.sb00040222.r1", - "11.5.9.0.sb00040226.r1" + "11.5.9.0.sb00040226.r1", + "11.5.9.0.sb00042449.r1" ] } } diff --git a/src/cfnlint/data/schemas/patches/providers/all/aws_ec2_instance/writeonlyproperties-2.json b/src/cfnlint/data/schemas/patches/providers/all/aws_ec2_instance/writeonlyproperties-2.json new file mode 100644 index 0000000000..20350d88cd --- /dev/null +++ b/src/cfnlint/data/schemas/patches/providers/all/aws_ec2_instance/writeonlyproperties-2.json @@ -0,0 +1,28 @@ +[ + { + "op": "test", + "path": "/writeOnlyProperties", + "value": [ + "/properties/BlockDeviceMappings/*/NoDevice", + "/properties/BlockDeviceMappings/*/VirtualName", + "/properties/LicenseSpecification", + "/properties/AdditionalInfo", + "/properties/Ipv6AddressCount", + "/properties/Ipv6Addresses", + "/properties/PropagateTagsToVolumeOnCreation" + ] + }, + { + "op": "replace", + "path": "/writeOnlyProperties", + "value": [ + "/properties/BlockDeviceMappings/*/NoDevice", + "/properties/BlockDeviceMappings/*/VirtualName", + "/properties/LicenseSpecifications", + "/properties/AdditionalInfo", + "/properties/Ipv6AddressCount", + "/properties/Ipv6Addresses", + "/properties/PropagateTagsToVolumeOnCreation" + ] + } +] 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 ee96112b46..7f3e150cdc 100644 --- a/src/cfnlint/data/schemas/providers/af_south_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/af_south_1/__init__.py @@ -959,6 +959,7 @@ "aws-codedeploy-application.json", "aws-codedeploy-deploymentconfig.json", "aws-codedeploy-deploymentgroup.json", + "aws-codepipeline-pipeline.json", "aws-cognito-identitypool.json", "aws-cognito-identitypoolprincipaltag.json", "aws-cognito-identitypoolroleattachment.json", @@ -1520,7 +1521,6 @@ "aws-sso-application.json", "aws-sso-applicationassignment.json", "aws-sso-assignment.json", - "aws-sso-instance.json", "aws-sso-instanceaccesscontrolattributeconfiguration.json", "aws-sso-permissionset.json", "aws-stepfunctions-activity.json", diff --git a/src/cfnlint/data/schemas/providers/af_south_1/aws-codepipeline-pipeline.json b/src/cfnlint/data/schemas/providers/af_south_1/aws-codepipeline-pipeline.json deleted file mode 100644 index 2b41420f66..0000000000 --- a/src/cfnlint/data/schemas/providers/af_south_1/aws-codepipeline-pipeline.json +++ /dev/null @@ -1,355 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name" - ], - "definitions": { - "ActionDeclaration": { - "additionalProperties": false, - "properties": { - "ActionTypeId": { - "$ref": "#/definitions/ActionTypeId" - }, - "Configuration": { - "format": "json", - "type": [ - "object", - "string" - ] - }, - "InputArtifacts": { - "items": { - "$ref": "#/definitions/InputArtifact" - }, - "type": "array", - "uniqueItems": false - }, - "Name": { - "type": "string" - }, - "OutputArtifacts": { - "items": { - "$ref": "#/definitions/OutputArtifact" - }, - "type": "array", - "uniqueItems": false - }, - "RoleArn": { - "type": "string" - }, - "RunOrder": { - "type": "integer" - } - }, - "required": [ - "ActionTypeId", - "Name" - ], - "type": "object" - }, - "ActionTypeId": { - "additionalProperties": false, - "properties": { - "Category": { - "enum": [ - "Approval", - "Build", - "Deploy", - "Invoke", - "Source", - "Test" - ], - "type": "string" - }, - "Owner": { - "enum": [ - "AWS", - "Custom", - "ThirdParty" - ], - "type": "string" - }, - "Provider": { - "type": "string" - }, - "Version": { - "type": "string" - } - }, - "required": [ - "Owner", - "Category", - "Version", - "Provider" - ], - "type": "object" - }, - "ArtifactStore": { - "additionalProperties": false, - "properties": { - "EncryptionKey": { - "$ref": "#/definitions/EncryptionKey" - }, - "Location": { - "type": "string" - }, - "Type": { - "enum": [ - "S3" - ], - "type": "string" - } - }, - "required": [ - "Type", - "Location" - ], - "type": "object" - }, - "BlockerDeclaration": { - "additionalProperties": false, - "properties": { - "Name": { - "type": "string" - }, - "Type": { - "enum": [ - "Schedule" - ], - "type": "string" - } - }, - "required": [ - "Type", - "Name" - ], - "type": "object" - }, - "EncryptionKey": { - "additionalProperties": false, - "properties": { - "Id": { - "type": "string" - }, - "Type": { - "type": "string" - } - }, - "required": [ - "Type", - "Id" - ], - "type": "object" - }, - "GitConfiguration": { - "additionalProperties": false, - "properties": { - "Push": { - "items": { - "$ref": "#/definitions/GitPushDeclaration" - }, - "type": "array", - "uniqueItems": false - }, - "SourceActionName": { - "type": "string" - } - }, - "type": "object" - }, - "GitPushDeclaration": { - "additionalProperties": false, - "properties": { - "Tags": { - "$ref": "#/definitions/Tags" - } - }, - "type": "object" - }, - "InputArtifact": { - "additionalProperties": false, - "properties": { - "Name": { - "type": "string" - } - }, - "required": [ - "Name" - ], - "type": "object" - }, - "OutputArtifact": { - "additionalProperties": false, - "properties": { - "Name": { - "type": "string" - } - }, - "required": [ - "Name" - ], - "type": "object" - }, - "StageDeclaration": { - "additionalProperties": false, - "properties": { - "Actions": { - "items": { - "$ref": "#/definitions/ActionDeclaration" - }, - "type": "array", - "uniqueItems": false - }, - "Blockers": { - "items": { - "$ref": "#/definitions/BlockerDeclaration" - }, - "type": "array", - "uniqueItems": false - }, - "Name": { - "type": "string" - } - }, - "required": [ - "Actions", - "Name" - ], - "type": "object" - }, - "StageTransition": { - "additionalProperties": false, - "properties": { - "Reason": { - "type": "string" - }, - "StageName": { - "type": "string" - } - }, - "required": [ - "StageName", - "Reason" - ], - "type": "object" - }, - "Tags": { - "additionalProperties": false, - "properties": { - "Excludes": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "Includes": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - } - }, - "type": "object" - }, - "TriggerDeclaration": { - "additionalProperties": false, - "properties": { - "GitConfiguration": { - "$ref": "#/definitions/GitConfiguration" - }, - "ProviderType": { - "type": "string" - } - }, - "type": "object" - }, - "VariableDeclaration": { - "additionalProperties": false, - "properties": { - "DefaultValue": { - "type": "string" - }, - "Description": { - "type": "string" - }, - "Name": { - "type": "string" - } - }, - "required": [ - "Name" - ], - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "ArtifactStore": { - "$ref": "#/definitions/ArtifactStore" - }, - "DisableInboundStageTransitions": { - "items": { - "$ref": "#/definitions/StageTransition" - }, - "type": "array", - "uniqueItems": false - }, - "Id": { - "type": "string" - }, - "Name": { - "type": "string" - }, - "PipelineType": { - "type": "string" - }, - "RestartExecutionOnUpdate": { - "type": "boolean" - }, - "RoleArn": { - "type": "string" - }, - "Stages": { - "items": { - "$ref": "#/definitions/StageDeclaration" - }, - "type": "array", - "uniqueItems": false - }, - "Triggers": { - "items": { - "$ref": "#/definitions/TriggerDeclaration" - }, - "type": "array", - "uniqueItems": false - }, - "Variables": { - "items": { - "$ref": "#/definitions/VariableDeclaration" - }, - "type": "array", - "uniqueItems": false - }, - "Version": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id", - "/properties/Version" - ], - "required": [ - "ArtifactStore", - "Stages", - "RoleArn" - ], - "requiredXor": [ - "ArtifactStore", - "ArtifactStores" - ], - "typeName": "AWS::CodePipeline::Pipeline" -} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-sso-instance.json b/src/cfnlint/data/schemas/providers/af_south_1/aws-sso-instance.json similarity index 98% rename from src/cfnlint/data/schemas/providers/ap_southeast_2/aws-sso-instance.json rename to src/cfnlint/data/schemas/providers/af_south_1/aws-sso-instance.json index bd637397ab..26c2ca063a 100644 --- a/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-sso-instance.json +++ b/src/cfnlint/data/schemas/providers/af_south_1/aws-sso-instance.json @@ -116,7 +116,6 @@ ], "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sso/aws-sso-instance", "tagging": { - "cloudFormationSystemTags": true, "tagOnCreate": true, "tagProperty": "/properties/Tags", "tagUpdatable": true, 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 7041ba003a..b809d9895b 100644 --- a/src/cfnlint/data/schemas/providers/ap_east_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_east_1/__init__.py @@ -946,6 +946,7 @@ "aws-codedeploy-deploymentconfig.json", "aws-codedeploy-deploymentgroup.json", "aws-codepipeline-customactiontype.json", + "aws-codepipeline-pipeline.json", "aws-codepipeline-webhook.json", "aws-codestarnotifications-notificationrule.json", "aws-cognito-identitypool.json", @@ -1496,7 +1497,6 @@ "aws-sso-application.json", "aws-sso-applicationassignment.json", "aws-sso-assignment.json", - "aws-sso-instance.json", "aws-sso-instanceaccesscontrolattributeconfiguration.json", "aws-sso-permissionset.json", "aws-stepfunctions-activity.json", diff --git a/src/cfnlint/data/schemas/providers/ap_east_1/aws-codepipeline-pipeline.json b/src/cfnlint/data/schemas/providers/ap_east_1/aws-codepipeline-pipeline.json deleted file mode 100644 index 925fbfe118..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_east_1/aws-codepipeline-pipeline.json +++ /dev/null @@ -1,505 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name" - ], - "definitions": { - "ActionDeclaration": { - "additionalProperties": false, - "properties": { - "ActionTypeId": { - "$ref": "#/definitions/ActionTypeId" - }, - "Configuration": { - "format": "json", - "type": [ - "object", - "string" - ] - }, - "InputArtifacts": { - "items": { - "$ref": "#/definitions/InputArtifact" - }, - "type": "array", - "uniqueItems": true - }, - "Name": { - "type": "string" - }, - "Namespace": { - "type": "string" - }, - "OutputArtifacts": { - "items": { - "$ref": "#/definitions/OutputArtifact" - }, - "type": "array", - "uniqueItems": true - }, - "Region": { - "type": "string" - }, - "RoleArn": { - "type": "string" - }, - "RunOrder": { - "type": "integer" - }, - "TimeoutInMinutes": { - "type": "integer" - } - }, - "required": [ - "ActionTypeId", - "Name" - ], - "type": "object" - }, - "ActionTypeId": { - "additionalProperties": false, - "properties": { - "Category": { - "enum": [ - "Approval", - "Build", - "Deploy", - "Invoke", - "Source", - "Test" - ], - "type": "string" - }, - "Owner": { - "enum": [ - "AWS", - "Custom", - "ThirdParty" - ], - "type": "string" - }, - "Provider": { - "type": "string" - }, - "Version": { - "type": "string" - } - }, - "required": [ - "Owner", - "Category", - "Version", - "Provider" - ], - "type": "object" - }, - "ArtifactStore": { - "additionalProperties": false, - "properties": { - "EncryptionKey": { - "$ref": "#/definitions/EncryptionKey" - }, - "Location": { - "type": "string" - }, - "Type": { - "enum": [ - "S3" - ], - "type": "string" - } - }, - "required": [ - "Type", - "Location" - ], - "type": "object" - }, - "ArtifactStoreMap": { - "additionalProperties": false, - "properties": { - "ArtifactStore": { - "$ref": "#/definitions/ArtifactStore" - }, - "Region": { - "type": "string" - } - }, - "required": [ - "ArtifactStore", - "Region" - ], - "type": "object" - }, - "BlockerDeclaration": { - "additionalProperties": false, - "properties": { - "Name": { - "type": "string" - }, - "Type": { - "enum": [ - "Schedule" - ], - "type": "string" - } - }, - "required": [ - "Type", - "Name" - ], - "type": "object" - }, - "EncryptionKey": { - "additionalProperties": false, - "properties": { - "Id": { - "type": "string" - }, - "Type": { - "type": "string" - } - }, - "required": [ - "Type", - "Id" - ], - "type": "object" - }, - "FailureConditions": { - "additionalProperties": false, - "properties": { - "Result": { - "type": "string" - } - }, - "required": [ - "Result" - ], - "type": "object" - }, - "GitBranchFilterCriteria": { - "additionalProperties": false, - "properties": { - "Excludes": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "Includes": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - } - }, - "type": "object" - }, - "GitConfiguration": { - "additionalProperties": false, - "properties": { - "PullRequest": { - "items": { - "$ref": "#/definitions/GitPullRequestFilter" - }, - "type": "array", - "uniqueItems": true - }, - "Push": { - "items": { - "$ref": "#/definitions/GitPushFilter" - }, - "type": "array", - "uniqueItems": true - }, - "SourceActionName": { - "type": "string" - } - }, - "required": [ - "SourceActionName" - ], - "type": "object" - }, - "GitFilePathFilterCriteria": { - "additionalProperties": false, - "properties": { - "Excludes": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "Includes": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - } - }, - "type": "object" - }, - "GitPullRequestFilter": { - "additionalProperties": false, - "properties": { - "Branches": { - "$ref": "#/definitions/GitBranchFilterCriteria" - }, - "Events": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "FilePaths": { - "$ref": "#/definitions/GitFilePathFilterCriteria" - } - }, - "type": "object" - }, - "GitPushFilter": { - "additionalProperties": false, - "properties": { - "Branches": { - "$ref": "#/definitions/GitBranchFilterCriteria" - }, - "FilePaths": { - "$ref": "#/definitions/GitFilePathFilterCriteria" - }, - "Tags": { - "$ref": "#/definitions/GitTagFilterCriteria" - } - }, - "type": "object" - }, - "GitTagFilterCriteria": { - "additionalProperties": false, - "properties": { - "Excludes": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "Includes": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - } - }, - "type": "object" - }, - "InputArtifact": { - "additionalProperties": false, - "properties": { - "Name": { - "type": "string" - } - }, - "required": [ - "Name" - ], - "type": "object" - }, - "OutputArtifact": { - "additionalProperties": false, - "properties": { - "Name": { - "type": "string" - } - }, - "required": [ - "Name" - ], - "type": "object" - }, - "PipelineTriggerDeclaration": { - "additionalProperties": false, - "properties": { - "GitConfiguration": { - "$ref": "#/definitions/GitConfiguration" - }, - "ProviderType": { - "type": "string" - } - }, - "required": [ - "ProviderType" - ], - "type": "object" - }, - "StageDeclaration": { - "additionalProperties": false, - "properties": { - "Actions": { - "items": { - "$ref": "#/definitions/ActionDeclaration" - }, - "type": "array", - "uniqueItems": true - }, - "Blockers": { - "items": { - "$ref": "#/definitions/BlockerDeclaration" - }, - "type": "array", - "uniqueItems": true - }, - "Name": { - "type": "string" - }, - "OnFailure": { - "$ref": "#/definitions/FailureConditions" - } - }, - "required": [ - "Actions", - "Name" - ], - "type": "object" - }, - "StageTransition": { - "additionalProperties": false, - "properties": { - "Reason": { - "type": "string" - }, - "StageName": { - "type": "string" - } - }, - "required": [ - "StageName", - "Reason" - ], - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - }, - "VariableDeclaration": { - "additionalProperties": false, - "properties": { - "DefaultValue": { - "type": "string" - }, - "Description": { - "type": "string" - }, - "Name": { - "type": "string" - } - }, - "required": [ - "Name" - ], - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "ArtifactStore": { - "$ref": "#/definitions/ArtifactStore" - }, - "ArtifactStores": { - "items": { - "$ref": "#/definitions/ArtifactStoreMap" - }, - "type": "array", - "uniqueItems": true - }, - "DisableInboundStageTransitions": { - "items": { - "$ref": "#/definitions/StageTransition" - }, - "type": "array", - "uniqueItems": true - }, - "ExecutionMode": { - "type": "string" - }, - "Id": { - "type": "string" - }, - "Name": { - "type": "string" - }, - "PipelineType": { - "type": "string" - }, - "RestartExecutionOnUpdate": { - "type": "boolean" - }, - "RoleArn": { - "type": "string" - }, - "Stages": { - "items": { - "$ref": "#/definitions/StageDeclaration" - }, - "type": "array", - "uniqueItems": true - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": false - }, - "Triggers": { - "items": { - "$ref": "#/definitions/PipelineTriggerDeclaration" - }, - "type": "array", - "uniqueItems": true - }, - "Variables": { - "items": { - "$ref": "#/definitions/VariableDeclaration" - }, - "type": "array", - "uniqueItems": true - }, - "Version": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id", - "/properties/Version" - ], - "required": [ - "Stages", - "RoleArn" - ], - "requiredXor": [ - "ArtifactStore", - "ArtifactStores" - ], - "typeName": "AWS::CodePipeline::Pipeline" -} diff --git a/src/cfnlint/data/schemas/providers/ap_east_1/aws-sso-instance.json b/src/cfnlint/data/schemas/providers/ap_east_1/aws-sso-instance.json new file mode 100644 index 0000000000..26c2ca063a --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_east_1/aws-sso-instance.json @@ -0,0 +1,125 @@ +{ + "additionalProperties": false, + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "[\\w+=,.@-]+", + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "pattern": "[\\w+=,.@-]+", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "sso:CreateInstance", + "sso:DescribeInstance", + "sso:TagResource", + "iam:CreateServiceLinkedRole", + "sso:TagInstance", + "sso:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "sso:DeleteInstance" + ] + }, + "list": { + "permissions": [ + "sso:ListInstances" + ] + }, + "read": { + "permissions": [ + "sso:DescribeInstance", + "sso:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "sso:UpdateInstance", + "sso:TagResource", + "sso:UntagResource", + "sso:ListTagsForResource", + "sso:TagInstance", + "sso:DescribeInstance" + ] + } + }, + "primaryIdentifier": [ + "/properties/InstanceArn" + ], + "properties": { + "IdentityStoreId": { + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-]*$", + "type": "string" + }, + "InstanceArn": { + "maxLength": 1224, + "minLength": 10, + "pattern": "^arn:(aws|aws-us-gov|aws-cn|aws-iso|aws-iso-b):sso:::instance/(sso)?ins-[a-zA-Z0-9-.]{16}$", + "type": "string" + }, + "Name": { + "maxLength": 32, + "minLength": 1, + "pattern": "^[\\w+=,.@-]+$", + "type": "string" + }, + "OwnerAccountId": { + "maxLength": 12, + "minLength": 12, + "pattern": "^\\d{12}?$", + "type": "string" + }, + "Status": { + "enum": [ + "CREATE_IN_PROGRESS", + "DELETE_IN_PROGRESS", + "ACTIVE" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 75, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/InstanceArn", + "/properties/OwnerAccountId", + "/properties/IdentityStoreId", + "/properties/Status" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sso/aws-sso-instance", + "tagging": { + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::SSO::Instance" +} 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 78e35070b8..a19a7a1c33 100644 --- a/src/cfnlint/data/schemas/providers/ap_northeast_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_northeast_1/__init__.py @@ -1446,6 +1446,7 @@ "aws-cognito-userpoolidentityprovider.json", "aws-cognito-userpoolresourceserver.json", "aws-cognito-userpoolriskconfigurationattachment.json", + "aws-cognito-userpooluicustomizationattachment.json", "aws-cognito-userpooluser.json", "aws-cognito-userpoolusertogroupattachment.json", "aws-comprehend-documentclassifier.json", @@ -2335,7 +2336,6 @@ "aws-sso-application.json", "aws-sso-applicationassignment.json", "aws-sso-assignment.json", - "aws-sso-instance.json", "aws-sso-instanceaccesscontrolattributeconfiguration.json", "aws-sso-permissionset.json", "aws-stepfunctions-activity.json", diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_1/aws-cognito-userpooluicustomizationattachment.json b/src/cfnlint/data/schemas/providers/ap_northeast_1/aws-cognito-userpooluicustomizationattachment.json deleted file mode 100644 index ff8cea02ef..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_northeast_1/aws-cognito-userpooluicustomizationattachment.json +++ /dev/null @@ -1,61 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/UserPoolId", - "/properties/ClientId" - ], - "handlers": { - "create": { - "permissions": [ - "cognito-idp:SetUICustomization", - "cognito-idp:GetUICustomization" - ], - "timeoutInMinutes": 2 - }, - "delete": { - "permissions": [ - "cognito-idp:SetUICustomization", - "cognito-idp:GetUICustomization" - ], - "timeoutInMinutes": 2 - }, - "read": { - "permissions": [ - "cognito-idp:GetUICustomization" - ] - }, - "update": { - "permissions": [ - "cognito-idp:SetUICustomization" - ], - "timeoutInMinutes": 2 - } - }, - "primaryIdentifier": [ - "/properties/UserPoolId", - "/properties/ClientId" - ], - "properties": { - "CSS": { - "type": "string" - }, - "ClientId": { - "type": "string" - }, - "UserPoolId": { - "type": "string" - } - }, - "required": [ - "UserPoolId", - "ClientId" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", - "tagging": { - "cloudFormationSystemTags": false, - "tagOnCreate": false, - "tagUpdatable": false, - "taggable": false - }, - "typeName": "AWS::Cognito::UserPoolUICustomizationAttachment" -} diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_1/aws-sso-instance.json b/src/cfnlint/data/schemas/providers/ap_northeast_1/aws-sso-instance.json new file mode 100644 index 0000000000..26c2ca063a --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_northeast_1/aws-sso-instance.json @@ -0,0 +1,125 @@ +{ + "additionalProperties": false, + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "[\\w+=,.@-]+", + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "pattern": "[\\w+=,.@-]+", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "sso:CreateInstance", + "sso:DescribeInstance", + "sso:TagResource", + "iam:CreateServiceLinkedRole", + "sso:TagInstance", + "sso:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "sso:DeleteInstance" + ] + }, + "list": { + "permissions": [ + "sso:ListInstances" + ] + }, + "read": { + "permissions": [ + "sso:DescribeInstance", + "sso:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "sso:UpdateInstance", + "sso:TagResource", + "sso:UntagResource", + "sso:ListTagsForResource", + "sso:TagInstance", + "sso:DescribeInstance" + ] + } + }, + "primaryIdentifier": [ + "/properties/InstanceArn" + ], + "properties": { + "IdentityStoreId": { + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-]*$", + "type": "string" + }, + "InstanceArn": { + "maxLength": 1224, + "minLength": 10, + "pattern": "^arn:(aws|aws-us-gov|aws-cn|aws-iso|aws-iso-b):sso:::instance/(sso)?ins-[a-zA-Z0-9-.]{16}$", + "type": "string" + }, + "Name": { + "maxLength": 32, + "minLength": 1, + "pattern": "^[\\w+=,.@-]+$", + "type": "string" + }, + "OwnerAccountId": { + "maxLength": 12, + "minLength": 12, + "pattern": "^\\d{12}?$", + "type": "string" + }, + "Status": { + "enum": [ + "CREATE_IN_PROGRESS", + "DELETE_IN_PROGRESS", + "ACTIVE" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 75, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/InstanceArn", + "/properties/OwnerAccountId", + "/properties/IdentityStoreId", + "/properties/Status" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sso/aws-sso-instance", + "tagging": { + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::SSO::Instance" +} diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_2/__init__.py b/src/cfnlint/data/schemas/providers/ap_northeast_2/__init__.py index d0d3ff10d0..62814f0be9 100644 --- a/src/cfnlint/data/schemas/providers/ap_northeast_2/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_northeast_2/__init__.py @@ -1318,7 +1318,6 @@ "aws-cognito-userpoolidentityprovider.json", "aws-cognito-userpoolresourceserver.json", "aws-cognito-userpoolriskconfigurationattachment.json", - "aws-cognito-userpooluicustomizationattachment.json", "aws-cognito-userpooluser.json", "aws-cognito-userpoolusertogroupattachment.json", "aws-comprehend-documentclassifier.json", @@ -2124,7 +2123,6 @@ "aws-sso-application.json", "aws-sso-applicationassignment.json", "aws-sso-assignment.json", - "aws-sso-instance.json", "aws-sso-instanceaccesscontrolattributeconfiguration.json", "aws-sso-permissionset.json", "aws-stepfunctions-activity.json", diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-cognito-userpooluicustomizationattachment.json b/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-cognito-userpooluicustomizationattachment.json new file mode 100644 index 0000000000..009f1aea8c --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-cognito-userpooluicustomizationattachment.json @@ -0,0 +1,32 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/UserPoolId", + "/properties/ClientId" + ], + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "CSS": { + "type": "string" + }, + "ClientId": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "UserPoolId": { + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "ClientId", + "UserPoolId" + ], + "typeName": "AWS::Cognito::UserPoolUICustomizationAttachment" +} diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-sso-instance.json b/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-sso-instance.json new file mode 100644 index 0000000000..26c2ca063a --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-sso-instance.json @@ -0,0 +1,125 @@ +{ + "additionalProperties": false, + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "[\\w+=,.@-]+", + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "pattern": "[\\w+=,.@-]+", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "sso:CreateInstance", + "sso:DescribeInstance", + "sso:TagResource", + "iam:CreateServiceLinkedRole", + "sso:TagInstance", + "sso:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "sso:DeleteInstance" + ] + }, + "list": { + "permissions": [ + "sso:ListInstances" + ] + }, + "read": { + "permissions": [ + "sso:DescribeInstance", + "sso:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "sso:UpdateInstance", + "sso:TagResource", + "sso:UntagResource", + "sso:ListTagsForResource", + "sso:TagInstance", + "sso:DescribeInstance" + ] + } + }, + "primaryIdentifier": [ + "/properties/InstanceArn" + ], + "properties": { + "IdentityStoreId": { + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-]*$", + "type": "string" + }, + "InstanceArn": { + "maxLength": 1224, + "minLength": 10, + "pattern": "^arn:(aws|aws-us-gov|aws-cn|aws-iso|aws-iso-b):sso:::instance/(sso)?ins-[a-zA-Z0-9-.]{16}$", + "type": "string" + }, + "Name": { + "maxLength": 32, + "minLength": 1, + "pattern": "^[\\w+=,.@-]+$", + "type": "string" + }, + "OwnerAccountId": { + "maxLength": 12, + "minLength": 12, + "pattern": "^\\d{12}?$", + "type": "string" + }, + "Status": { + "enum": [ + "CREATE_IN_PROGRESS", + "DELETE_IN_PROGRESS", + "ACTIVE" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 75, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/InstanceArn", + "/properties/OwnerAccountId", + "/properties/IdentityStoreId", + "/properties/Status" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sso/aws-sso-instance", + "tagging": { + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::SSO::Instance" +} 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 e16b6caaf0..6d2faf0181 100644 --- a/src/cfnlint/data/schemas/providers/ap_northeast_3/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_northeast_3/__init__.py @@ -1449,7 +1449,6 @@ "aws-sso-application.json", "aws-sso-applicationassignment.json", "aws-sso-assignment.json", - "aws-sso-instance.json", "aws-sso-instanceaccesscontrolattributeconfiguration.json", "aws-sso-permissionset.json", "aws-stepfunctions-activity.json", diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-sso-instance.json b/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-sso-instance.json new file mode 100644 index 0000000000..26c2ca063a --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-sso-instance.json @@ -0,0 +1,125 @@ +{ + "additionalProperties": false, + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "[\\w+=,.@-]+", + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "pattern": "[\\w+=,.@-]+", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "sso:CreateInstance", + "sso:DescribeInstance", + "sso:TagResource", + "iam:CreateServiceLinkedRole", + "sso:TagInstance", + "sso:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "sso:DeleteInstance" + ] + }, + "list": { + "permissions": [ + "sso:ListInstances" + ] + }, + "read": { + "permissions": [ + "sso:DescribeInstance", + "sso:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "sso:UpdateInstance", + "sso:TagResource", + "sso:UntagResource", + "sso:ListTagsForResource", + "sso:TagInstance", + "sso:DescribeInstance" + ] + } + }, + "primaryIdentifier": [ + "/properties/InstanceArn" + ], + "properties": { + "IdentityStoreId": { + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-]*$", + "type": "string" + }, + "InstanceArn": { + "maxLength": 1224, + "minLength": 10, + "pattern": "^arn:(aws|aws-us-gov|aws-cn|aws-iso|aws-iso-b):sso:::instance/(sso)?ins-[a-zA-Z0-9-.]{16}$", + "type": "string" + }, + "Name": { + "maxLength": 32, + "minLength": 1, + "pattern": "^[\\w+=,.@-]+$", + "type": "string" + }, + "OwnerAccountId": { + "maxLength": 12, + "minLength": 12, + "pattern": "^\\d{12}?$", + "type": "string" + }, + "Status": { + "enum": [ + "CREATE_IN_PROGRESS", + "DELETE_IN_PROGRESS", + "ACTIVE" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 75, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/InstanceArn", + "/properties/OwnerAccountId", + "/properties/IdentityStoreId", + "/properties/Status" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sso/aws-sso-instance", + "tagging": { + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::SSO::Instance" +} 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 67447407e2..aa2adec428 100644 --- a/src/cfnlint/data/schemas/providers/ap_south_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_south_1/__init__.py @@ -1330,7 +1330,6 @@ "aws-cognito-userpoolidentityprovider.json", "aws-cognito-userpoolresourceserver.json", "aws-cognito-userpoolriskconfigurationattachment.json", - "aws-cognito-userpooluicustomizationattachment.json", "aws-cognito-userpooluser.json", "aws-cognito-userpoolusertogroupattachment.json", "aws-comprehend-documentclassifier.json", @@ -2132,7 +2131,6 @@ "aws-sso-application.json", "aws-sso-applicationassignment.json", "aws-sso-assignment.json", - "aws-sso-instance.json", "aws-sso-instanceaccesscontrolattributeconfiguration.json", "aws-sso-permissionset.json", "aws-stepfunctions-activity.json", diff --git a/src/cfnlint/data/schemas/providers/ap_south_1/aws-cognito-userpooluicustomizationattachment.json b/src/cfnlint/data/schemas/providers/ap_south_1/aws-cognito-userpooluicustomizationattachment.json new file mode 100644 index 0000000000..009f1aea8c --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_south_1/aws-cognito-userpooluicustomizationattachment.json @@ -0,0 +1,32 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/UserPoolId", + "/properties/ClientId" + ], + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "CSS": { + "type": "string" + }, + "ClientId": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "UserPoolId": { + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "ClientId", + "UserPoolId" + ], + "typeName": "AWS::Cognito::UserPoolUICustomizationAttachment" +} diff --git a/src/cfnlint/data/schemas/providers/ap_south_1/aws-sso-instance.json b/src/cfnlint/data/schemas/providers/ap_south_1/aws-sso-instance.json new file mode 100644 index 0000000000..26c2ca063a --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_south_1/aws-sso-instance.json @@ -0,0 +1,125 @@ +{ + "additionalProperties": false, + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "[\\w+=,.@-]+", + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "pattern": "[\\w+=,.@-]+", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "sso:CreateInstance", + "sso:DescribeInstance", + "sso:TagResource", + "iam:CreateServiceLinkedRole", + "sso:TagInstance", + "sso:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "sso:DeleteInstance" + ] + }, + "list": { + "permissions": [ + "sso:ListInstances" + ] + }, + "read": { + "permissions": [ + "sso:DescribeInstance", + "sso:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "sso:UpdateInstance", + "sso:TagResource", + "sso:UntagResource", + "sso:ListTagsForResource", + "sso:TagInstance", + "sso:DescribeInstance" + ] + } + }, + "primaryIdentifier": [ + "/properties/InstanceArn" + ], + "properties": { + "IdentityStoreId": { + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-]*$", + "type": "string" + }, + "InstanceArn": { + "maxLength": 1224, + "minLength": 10, + "pattern": "^arn:(aws|aws-us-gov|aws-cn|aws-iso|aws-iso-b):sso:::instance/(sso)?ins-[a-zA-Z0-9-.]{16}$", + "type": "string" + }, + "Name": { + "maxLength": 32, + "minLength": 1, + "pattern": "^[\\w+=,.@-]+$", + "type": "string" + }, + "OwnerAccountId": { + "maxLength": 12, + "minLength": 12, + "pattern": "^\\d{12}?$", + "type": "string" + }, + "Status": { + "enum": [ + "CREATE_IN_PROGRESS", + "DELETE_IN_PROGRESS", + "ACTIVE" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 75, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/InstanceArn", + "/properties/OwnerAccountId", + "/properties/IdentityStoreId", + "/properties/Status" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sso/aws-sso-instance", + "tagging": { + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::SSO::Instance" +} diff --git a/src/cfnlint/data/schemas/providers/ap_south_2/__init__.py b/src/cfnlint/data/schemas/providers/ap_south_2/__init__.py index d3ce3e2f77..f938f7c0a2 100644 --- a/src/cfnlint/data/schemas/providers/ap_south_2/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_south_2/__init__.py @@ -721,6 +721,7 @@ "aws-codedeploy-application.json", "aws-codedeploy-deploymentconfig.json", "aws-codedeploy-deploymentgroup.json", + "aws-codepipeline-pipeline.json", "aws-cognito-identitypool.json", "aws-cognito-identitypoolprincipaltag.json", "aws-cognito-identitypoolroleattachment.json", diff --git a/src/cfnlint/data/schemas/providers/ap_south_2/aws-codepipeline-pipeline.json b/src/cfnlint/data/schemas/providers/ap_south_2/aws-codepipeline-pipeline.json deleted file mode 100644 index 925fbfe118..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_south_2/aws-codepipeline-pipeline.json +++ /dev/null @@ -1,505 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name" - ], - "definitions": { - "ActionDeclaration": { - "additionalProperties": false, - "properties": { - "ActionTypeId": { - "$ref": "#/definitions/ActionTypeId" - }, - "Configuration": { - "format": "json", - "type": [ - "object", - "string" - ] - }, - "InputArtifacts": { - "items": { - "$ref": "#/definitions/InputArtifact" - }, - "type": "array", - "uniqueItems": true - }, - "Name": { - "type": "string" - }, - "Namespace": { - "type": "string" - }, - "OutputArtifacts": { - "items": { - "$ref": "#/definitions/OutputArtifact" - }, - "type": "array", - "uniqueItems": true - }, - "Region": { - "type": "string" - }, - "RoleArn": { - "type": "string" - }, - "RunOrder": { - "type": "integer" - }, - "TimeoutInMinutes": { - "type": "integer" - } - }, - "required": [ - "ActionTypeId", - "Name" - ], - "type": "object" - }, - "ActionTypeId": { - "additionalProperties": false, - "properties": { - "Category": { - "enum": [ - "Approval", - "Build", - "Deploy", - "Invoke", - "Source", - "Test" - ], - "type": "string" - }, - "Owner": { - "enum": [ - "AWS", - "Custom", - "ThirdParty" - ], - "type": "string" - }, - "Provider": { - "type": "string" - }, - "Version": { - "type": "string" - } - }, - "required": [ - "Owner", - "Category", - "Version", - "Provider" - ], - "type": "object" - }, - "ArtifactStore": { - "additionalProperties": false, - "properties": { - "EncryptionKey": { - "$ref": "#/definitions/EncryptionKey" - }, - "Location": { - "type": "string" - }, - "Type": { - "enum": [ - "S3" - ], - "type": "string" - } - }, - "required": [ - "Type", - "Location" - ], - "type": "object" - }, - "ArtifactStoreMap": { - "additionalProperties": false, - "properties": { - "ArtifactStore": { - "$ref": "#/definitions/ArtifactStore" - }, - "Region": { - "type": "string" - } - }, - "required": [ - "ArtifactStore", - "Region" - ], - "type": "object" - }, - "BlockerDeclaration": { - "additionalProperties": false, - "properties": { - "Name": { - "type": "string" - }, - "Type": { - "enum": [ - "Schedule" - ], - "type": "string" - } - }, - "required": [ - "Type", - "Name" - ], - "type": "object" - }, - "EncryptionKey": { - "additionalProperties": false, - "properties": { - "Id": { - "type": "string" - }, - "Type": { - "type": "string" - } - }, - "required": [ - "Type", - "Id" - ], - "type": "object" - }, - "FailureConditions": { - "additionalProperties": false, - "properties": { - "Result": { - "type": "string" - } - }, - "required": [ - "Result" - ], - "type": "object" - }, - "GitBranchFilterCriteria": { - "additionalProperties": false, - "properties": { - "Excludes": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "Includes": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - } - }, - "type": "object" - }, - "GitConfiguration": { - "additionalProperties": false, - "properties": { - "PullRequest": { - "items": { - "$ref": "#/definitions/GitPullRequestFilter" - }, - "type": "array", - "uniqueItems": true - }, - "Push": { - "items": { - "$ref": "#/definitions/GitPushFilter" - }, - "type": "array", - "uniqueItems": true - }, - "SourceActionName": { - "type": "string" - } - }, - "required": [ - "SourceActionName" - ], - "type": "object" - }, - "GitFilePathFilterCriteria": { - "additionalProperties": false, - "properties": { - "Excludes": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "Includes": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - } - }, - "type": "object" - }, - "GitPullRequestFilter": { - "additionalProperties": false, - "properties": { - "Branches": { - "$ref": "#/definitions/GitBranchFilterCriteria" - }, - "Events": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "FilePaths": { - "$ref": "#/definitions/GitFilePathFilterCriteria" - } - }, - "type": "object" - }, - "GitPushFilter": { - "additionalProperties": false, - "properties": { - "Branches": { - "$ref": "#/definitions/GitBranchFilterCriteria" - }, - "FilePaths": { - "$ref": "#/definitions/GitFilePathFilterCriteria" - }, - "Tags": { - "$ref": "#/definitions/GitTagFilterCriteria" - } - }, - "type": "object" - }, - "GitTagFilterCriteria": { - "additionalProperties": false, - "properties": { - "Excludes": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "Includes": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - } - }, - "type": "object" - }, - "InputArtifact": { - "additionalProperties": false, - "properties": { - "Name": { - "type": "string" - } - }, - "required": [ - "Name" - ], - "type": "object" - }, - "OutputArtifact": { - "additionalProperties": false, - "properties": { - "Name": { - "type": "string" - } - }, - "required": [ - "Name" - ], - "type": "object" - }, - "PipelineTriggerDeclaration": { - "additionalProperties": false, - "properties": { - "GitConfiguration": { - "$ref": "#/definitions/GitConfiguration" - }, - "ProviderType": { - "type": "string" - } - }, - "required": [ - "ProviderType" - ], - "type": "object" - }, - "StageDeclaration": { - "additionalProperties": false, - "properties": { - "Actions": { - "items": { - "$ref": "#/definitions/ActionDeclaration" - }, - "type": "array", - "uniqueItems": true - }, - "Blockers": { - "items": { - "$ref": "#/definitions/BlockerDeclaration" - }, - "type": "array", - "uniqueItems": true - }, - "Name": { - "type": "string" - }, - "OnFailure": { - "$ref": "#/definitions/FailureConditions" - } - }, - "required": [ - "Actions", - "Name" - ], - "type": "object" - }, - "StageTransition": { - "additionalProperties": false, - "properties": { - "Reason": { - "type": "string" - }, - "StageName": { - "type": "string" - } - }, - "required": [ - "StageName", - "Reason" - ], - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - }, - "VariableDeclaration": { - "additionalProperties": false, - "properties": { - "DefaultValue": { - "type": "string" - }, - "Description": { - "type": "string" - }, - "Name": { - "type": "string" - } - }, - "required": [ - "Name" - ], - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "ArtifactStore": { - "$ref": "#/definitions/ArtifactStore" - }, - "ArtifactStores": { - "items": { - "$ref": "#/definitions/ArtifactStoreMap" - }, - "type": "array", - "uniqueItems": true - }, - "DisableInboundStageTransitions": { - "items": { - "$ref": "#/definitions/StageTransition" - }, - "type": "array", - "uniqueItems": true - }, - "ExecutionMode": { - "type": "string" - }, - "Id": { - "type": "string" - }, - "Name": { - "type": "string" - }, - "PipelineType": { - "type": "string" - }, - "RestartExecutionOnUpdate": { - "type": "boolean" - }, - "RoleArn": { - "type": "string" - }, - "Stages": { - "items": { - "$ref": "#/definitions/StageDeclaration" - }, - "type": "array", - "uniqueItems": true - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": false - }, - "Triggers": { - "items": { - "$ref": "#/definitions/PipelineTriggerDeclaration" - }, - "type": "array", - "uniqueItems": true - }, - "Variables": { - "items": { - "$ref": "#/definitions/VariableDeclaration" - }, - "type": "array", - "uniqueItems": true - }, - "Version": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id", - "/properties/Version" - ], - "required": [ - "Stages", - "RoleArn" - ], - "requiredXor": [ - "ArtifactStore", - "ArtifactStores" - ], - "typeName": "AWS::CodePipeline::Pipeline" -} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_1/__init__.py b/src/cfnlint/data/schemas/providers/ap_southeast_1/__init__.py index d3527bcecf..2b563a78de 100644 --- a/src/cfnlint/data/schemas/providers/ap_southeast_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_southeast_1/__init__.py @@ -2271,7 +2271,6 @@ "aws-sso-application.json", "aws-sso-applicationassignment.json", "aws-sso-assignment.json", - "aws-sso-instance.json", "aws-sso-instanceaccesscontrolattributeconfiguration.json", "aws-sso-permissionset.json", "aws-stepfunctions-activity.json", diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_1/aws-sso-instance.json b/src/cfnlint/data/schemas/providers/ap_southeast_1/aws-sso-instance.json new file mode 100644 index 0000000000..26c2ca063a --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_1/aws-sso-instance.json @@ -0,0 +1,125 @@ +{ + "additionalProperties": false, + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "[\\w+=,.@-]+", + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "pattern": "[\\w+=,.@-]+", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "sso:CreateInstance", + "sso:DescribeInstance", + "sso:TagResource", + "iam:CreateServiceLinkedRole", + "sso:TagInstance", + "sso:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "sso:DeleteInstance" + ] + }, + "list": { + "permissions": [ + "sso:ListInstances" + ] + }, + "read": { + "permissions": [ + "sso:DescribeInstance", + "sso:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "sso:UpdateInstance", + "sso:TagResource", + "sso:UntagResource", + "sso:ListTagsForResource", + "sso:TagInstance", + "sso:DescribeInstance" + ] + } + }, + "primaryIdentifier": [ + "/properties/InstanceArn" + ], + "properties": { + "IdentityStoreId": { + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-]*$", + "type": "string" + }, + "InstanceArn": { + "maxLength": 1224, + "minLength": 10, + "pattern": "^arn:(aws|aws-us-gov|aws-cn|aws-iso|aws-iso-b):sso:::instance/(sso)?ins-[a-zA-Z0-9-.]{16}$", + "type": "string" + }, + "Name": { + "maxLength": 32, + "minLength": 1, + "pattern": "^[\\w+=,.@-]+$", + "type": "string" + }, + "OwnerAccountId": { + "maxLength": 12, + "minLength": 12, + "pattern": "^\\d{12}?$", + "type": "string" + }, + "Status": { + "enum": [ + "CREATE_IN_PROGRESS", + "DELETE_IN_PROGRESS", + "ACTIVE" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 75, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/InstanceArn", + "/properties/OwnerAccountId", + "/properties/IdentityStoreId", + "/properties/Status" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sso/aws-sso-instance", + "tagging": { + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::SSO::Instance" +} 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 51630e9419..1070f4346b 100644 --- a/src/cfnlint/data/schemas/providers/ap_southeast_2/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_southeast_2/__init__.py @@ -1441,7 +1441,6 @@ "aws-cognito-userpoolidentityprovider.json", "aws-cognito-userpoolresourceserver.json", "aws-cognito-userpoolriskconfigurationattachment.json", - "aws-cognito-userpooluicustomizationattachment.json", "aws-cognito-userpooluser.json", "aws-cognito-userpoolusertogroupattachment.json", "aws-comprehend-documentclassifier.json", @@ -2320,6 +2319,7 @@ "aws-sso-application.json", "aws-sso-applicationassignment.json", "aws-sso-assignment.json", + "aws-sso-instance.json", "aws-sso-instanceaccesscontrolattributeconfiguration.json", "aws-sso-permissionset.json", "aws-stepfunctions-activity.json", diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-cognito-userpooluicustomizationattachment.json b/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-cognito-userpooluicustomizationattachment.json new file mode 100644 index 0000000000..009f1aea8c --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-cognito-userpooluicustomizationattachment.json @@ -0,0 +1,32 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/UserPoolId", + "/properties/ClientId" + ], + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "CSS": { + "type": "string" + }, + "ClientId": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "UserPoolId": { + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "ClientId", + "UserPoolId" + ], + "typeName": "AWS::Cognito::UserPoolUICustomizationAttachment" +} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_3/__init__.py b/src/cfnlint/data/schemas/providers/ap_southeast_3/__init__.py index 8b0509f98e..db6e576b1f 100644 --- a/src/cfnlint/data/schemas/providers/ap_southeast_3/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_southeast_3/__init__.py @@ -1185,7 +1185,6 @@ "aws-sso-application.json", "aws-sso-applicationassignment.json", "aws-sso-assignment.json", - "aws-sso-instance.json", "aws-sso-instanceaccesscontrolattributeconfiguration.json", "aws-sso-permissionset.json", "aws-stepfunctions-activity.json", diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-sso-instance.json b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-sso-instance.json new file mode 100644 index 0000000000..26c2ca063a --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-sso-instance.json @@ -0,0 +1,125 @@ +{ + "additionalProperties": false, + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "[\\w+=,.@-]+", + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "pattern": "[\\w+=,.@-]+", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "sso:CreateInstance", + "sso:DescribeInstance", + "sso:TagResource", + "iam:CreateServiceLinkedRole", + "sso:TagInstance", + "sso:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "sso:DeleteInstance" + ] + }, + "list": { + "permissions": [ + "sso:ListInstances" + ] + }, + "read": { + "permissions": [ + "sso:DescribeInstance", + "sso:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "sso:UpdateInstance", + "sso:TagResource", + "sso:UntagResource", + "sso:ListTagsForResource", + "sso:TagInstance", + "sso:DescribeInstance" + ] + } + }, + "primaryIdentifier": [ + "/properties/InstanceArn" + ], + "properties": { + "IdentityStoreId": { + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-]*$", + "type": "string" + }, + "InstanceArn": { + "maxLength": 1224, + "minLength": 10, + "pattern": "^arn:(aws|aws-us-gov|aws-cn|aws-iso|aws-iso-b):sso:::instance/(sso)?ins-[a-zA-Z0-9-.]{16}$", + "type": "string" + }, + "Name": { + "maxLength": 32, + "minLength": 1, + "pattern": "^[\\w+=,.@-]+$", + "type": "string" + }, + "OwnerAccountId": { + "maxLength": 12, + "minLength": 12, + "pattern": "^\\d{12}?$", + "type": "string" + }, + "Status": { + "enum": [ + "CREATE_IN_PROGRESS", + "DELETE_IN_PROGRESS", + "ACTIVE" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 75, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/InstanceArn", + "/properties/OwnerAccountId", + "/properties/IdentityStoreId", + "/properties/Status" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sso/aws-sso-instance", + "tagging": { + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::SSO::Instance" +} 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 b54ee681d7..f4d40e1d19 100644 --- a/src/cfnlint/data/schemas/providers/ap_southeast_4/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_southeast_4/__init__.py @@ -683,6 +683,7 @@ "aws-codedeploy-application.json", "aws-codedeploy-deploymentconfig.json", "aws-codedeploy-deploymentgroup.json", + "aws-codepipeline-pipeline.json", "aws-cognito-identitypool.json", "aws-cognito-identitypoolprincipaltag.json", "aws-cognito-identitypoolroleattachment.json", diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-codepipeline-pipeline.json b/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-codepipeline-pipeline.json deleted file mode 100644 index 925fbfe118..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-codepipeline-pipeline.json +++ /dev/null @@ -1,505 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name" - ], - "definitions": { - "ActionDeclaration": { - "additionalProperties": false, - "properties": { - "ActionTypeId": { - "$ref": "#/definitions/ActionTypeId" - }, - "Configuration": { - "format": "json", - "type": [ - "object", - "string" - ] - }, - "InputArtifacts": { - "items": { - "$ref": "#/definitions/InputArtifact" - }, - "type": "array", - "uniqueItems": true - }, - "Name": { - "type": "string" - }, - "Namespace": { - "type": "string" - }, - "OutputArtifacts": { - "items": { - "$ref": "#/definitions/OutputArtifact" - }, - "type": "array", - "uniqueItems": true - }, - "Region": { - "type": "string" - }, - "RoleArn": { - "type": "string" - }, - "RunOrder": { - "type": "integer" - }, - "TimeoutInMinutes": { - "type": "integer" - } - }, - "required": [ - "ActionTypeId", - "Name" - ], - "type": "object" - }, - "ActionTypeId": { - "additionalProperties": false, - "properties": { - "Category": { - "enum": [ - "Approval", - "Build", - "Deploy", - "Invoke", - "Source", - "Test" - ], - "type": "string" - }, - "Owner": { - "enum": [ - "AWS", - "Custom", - "ThirdParty" - ], - "type": "string" - }, - "Provider": { - "type": "string" - }, - "Version": { - "type": "string" - } - }, - "required": [ - "Owner", - "Category", - "Version", - "Provider" - ], - "type": "object" - }, - "ArtifactStore": { - "additionalProperties": false, - "properties": { - "EncryptionKey": { - "$ref": "#/definitions/EncryptionKey" - }, - "Location": { - "type": "string" - }, - "Type": { - "enum": [ - "S3" - ], - "type": "string" - } - }, - "required": [ - "Type", - "Location" - ], - "type": "object" - }, - "ArtifactStoreMap": { - "additionalProperties": false, - "properties": { - "ArtifactStore": { - "$ref": "#/definitions/ArtifactStore" - }, - "Region": { - "type": "string" - } - }, - "required": [ - "ArtifactStore", - "Region" - ], - "type": "object" - }, - "BlockerDeclaration": { - "additionalProperties": false, - "properties": { - "Name": { - "type": "string" - }, - "Type": { - "enum": [ - "Schedule" - ], - "type": "string" - } - }, - "required": [ - "Type", - "Name" - ], - "type": "object" - }, - "EncryptionKey": { - "additionalProperties": false, - "properties": { - "Id": { - "type": "string" - }, - "Type": { - "type": "string" - } - }, - "required": [ - "Type", - "Id" - ], - "type": "object" - }, - "FailureConditions": { - "additionalProperties": false, - "properties": { - "Result": { - "type": "string" - } - }, - "required": [ - "Result" - ], - "type": "object" - }, - "GitBranchFilterCriteria": { - "additionalProperties": false, - "properties": { - "Excludes": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "Includes": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - } - }, - "type": "object" - }, - "GitConfiguration": { - "additionalProperties": false, - "properties": { - "PullRequest": { - "items": { - "$ref": "#/definitions/GitPullRequestFilter" - }, - "type": "array", - "uniqueItems": true - }, - "Push": { - "items": { - "$ref": "#/definitions/GitPushFilter" - }, - "type": "array", - "uniqueItems": true - }, - "SourceActionName": { - "type": "string" - } - }, - "required": [ - "SourceActionName" - ], - "type": "object" - }, - "GitFilePathFilterCriteria": { - "additionalProperties": false, - "properties": { - "Excludes": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "Includes": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - } - }, - "type": "object" - }, - "GitPullRequestFilter": { - "additionalProperties": false, - "properties": { - "Branches": { - "$ref": "#/definitions/GitBranchFilterCriteria" - }, - "Events": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "FilePaths": { - "$ref": "#/definitions/GitFilePathFilterCriteria" - } - }, - "type": "object" - }, - "GitPushFilter": { - "additionalProperties": false, - "properties": { - "Branches": { - "$ref": "#/definitions/GitBranchFilterCriteria" - }, - "FilePaths": { - "$ref": "#/definitions/GitFilePathFilterCriteria" - }, - "Tags": { - "$ref": "#/definitions/GitTagFilterCriteria" - } - }, - "type": "object" - }, - "GitTagFilterCriteria": { - "additionalProperties": false, - "properties": { - "Excludes": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "Includes": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - } - }, - "type": "object" - }, - "InputArtifact": { - "additionalProperties": false, - "properties": { - "Name": { - "type": "string" - } - }, - "required": [ - "Name" - ], - "type": "object" - }, - "OutputArtifact": { - "additionalProperties": false, - "properties": { - "Name": { - "type": "string" - } - }, - "required": [ - "Name" - ], - "type": "object" - }, - "PipelineTriggerDeclaration": { - "additionalProperties": false, - "properties": { - "GitConfiguration": { - "$ref": "#/definitions/GitConfiguration" - }, - "ProviderType": { - "type": "string" - } - }, - "required": [ - "ProviderType" - ], - "type": "object" - }, - "StageDeclaration": { - "additionalProperties": false, - "properties": { - "Actions": { - "items": { - "$ref": "#/definitions/ActionDeclaration" - }, - "type": "array", - "uniqueItems": true - }, - "Blockers": { - "items": { - "$ref": "#/definitions/BlockerDeclaration" - }, - "type": "array", - "uniqueItems": true - }, - "Name": { - "type": "string" - }, - "OnFailure": { - "$ref": "#/definitions/FailureConditions" - } - }, - "required": [ - "Actions", - "Name" - ], - "type": "object" - }, - "StageTransition": { - "additionalProperties": false, - "properties": { - "Reason": { - "type": "string" - }, - "StageName": { - "type": "string" - } - }, - "required": [ - "StageName", - "Reason" - ], - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - }, - "VariableDeclaration": { - "additionalProperties": false, - "properties": { - "DefaultValue": { - "type": "string" - }, - "Description": { - "type": "string" - }, - "Name": { - "type": "string" - } - }, - "required": [ - "Name" - ], - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "ArtifactStore": { - "$ref": "#/definitions/ArtifactStore" - }, - "ArtifactStores": { - "items": { - "$ref": "#/definitions/ArtifactStoreMap" - }, - "type": "array", - "uniqueItems": true - }, - "DisableInboundStageTransitions": { - "items": { - "$ref": "#/definitions/StageTransition" - }, - "type": "array", - "uniqueItems": true - }, - "ExecutionMode": { - "type": "string" - }, - "Id": { - "type": "string" - }, - "Name": { - "type": "string" - }, - "PipelineType": { - "type": "string" - }, - "RestartExecutionOnUpdate": { - "type": "boolean" - }, - "RoleArn": { - "type": "string" - }, - "Stages": { - "items": { - "$ref": "#/definitions/StageDeclaration" - }, - "type": "array", - "uniqueItems": true - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": false - }, - "Triggers": { - "items": { - "$ref": "#/definitions/PipelineTriggerDeclaration" - }, - "type": "array", - "uniqueItems": true - }, - "Variables": { - "items": { - "$ref": "#/definitions/VariableDeclaration" - }, - "type": "array", - "uniqueItems": true - }, - "Version": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id", - "/properties/Version" - ], - "required": [ - "Stages", - "RoleArn" - ], - "requiredXor": [ - "ArtifactStore", - "ArtifactStores" - ], - "typeName": "AWS::CodePipeline::Pipeline" -} diff --git a/src/cfnlint/data/schemas/providers/ca_central_1/__init__.py b/src/cfnlint/data/schemas/providers/ca_central_1/__init__.py index d72be8acc2..2d4dace933 100644 --- a/src/cfnlint/data/schemas/providers/ca_central_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/ca_central_1/__init__.py @@ -1282,7 +1282,6 @@ "aws-cognito-userpoolidentityprovider.json", "aws-cognito-userpoolresourceserver.json", "aws-cognito-userpoolriskconfigurationattachment.json", - "aws-cognito-userpooluicustomizationattachment.json", "aws-cognito-userpooluser.json", "aws-cognito-userpoolusertogroupattachment.json", "aws-comprehend-documentclassifier.json", @@ -1952,7 +1951,6 @@ "aws-sagemaker-appimageconfig.json", "aws-sagemaker-coderepository.json", "aws-sagemaker-dataqualityjobdefinition.json", - "aws-sagemaker-domain.json", "aws-sagemaker-endpoint.json", "aws-sagemaker-endpointconfig.json", "aws-sagemaker-featuregroup.json", @@ -1973,7 +1971,6 @@ "aws-sagemaker-pipeline.json", "aws-sagemaker-project.json", "aws-sagemaker-space.json", - "aws-sagemaker-userprofile.json", "aws-sagemaker-workteam.json", "aws-scheduler-schedule.json", "aws-scheduler-schedulegroup.json", @@ -2062,7 +2059,6 @@ "aws-sso-application.json", "aws-sso-applicationassignment.json", "aws-sso-assignment.json", - "aws-sso-instance.json", "aws-sso-instanceaccesscontrolattributeconfiguration.json", "aws-sso-permissionset.json", "aws-stepfunctions-activity.json", diff --git a/src/cfnlint/data/schemas/providers/ca_central_1/aws-cognito-userpooluicustomizationattachment.json b/src/cfnlint/data/schemas/providers/ca_central_1/aws-cognito-userpooluicustomizationattachment.json new file mode 100644 index 0000000000..009f1aea8c --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ca_central_1/aws-cognito-userpooluicustomizationattachment.json @@ -0,0 +1,32 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/UserPoolId", + "/properties/ClientId" + ], + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "CSS": { + "type": "string" + }, + "ClientId": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "UserPoolId": { + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "ClientId", + "UserPoolId" + ], + "typeName": "AWS::Cognito::UserPoolUICustomizationAttachment" +} diff --git a/src/cfnlint/data/schemas/providers/ca_central_1/aws-sagemaker-domain.json b/src/cfnlint/data/schemas/providers/ca_central_1/aws-sagemaker-domain.json new file mode 100644 index 0000000000..5cd4ea45fa --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ca_central_1/aws-sagemaker-domain.json @@ -0,0 +1,831 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/AuthMode", + "/properties/DomainName", + "/properties/DomainSettings/RStudioServerProDomainSettings/DefaultResourceSpec", + "/properties/KmsKeyId", + "/properties/VpcId", + "/properties/Tags" + ], + "definitions": { + "AppType": { + "enum": [ + "JupyterServer", + "TensorBoard", + "RStudioServerPro", + "JupyterLab", + "CodeEditor", + "DetailedProfiler", + "Canvas" + ], + "type": "string" + }, + "CodeEditorAppSettings": { + "additionalProperties": false, + "properties": { + "CustomImages": { + "items": { + "$ref": "#/definitions/CustomImage" + }, + "maxItems": 200, + "minItems": 0, + "type": "array", + "uniqueItems": false + }, + "DefaultResourceSpec": { + "$ref": "#/definitions/ResourceSpec" + }, + "LifecycleConfigArns": { + "items": { + "$ref": "#/definitions/StudioLifecycleConfigArn" + }, + "maxItems": 30, + "minItems": 0, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "CodeRepository": { + "additionalProperties": false, + "properties": { + "RepositoryUrl": { + "maxLength": 256, + "pattern": "^https://([.\\-_a-zA-Z0-9]+/?){3,1016}$", + "type": "string" + } + }, + "required": [ + "RepositoryUrl" + ], + "type": "object" + }, + "CustomFileSystemConfig": { + "additionalProperties": false, + "properties": { + "EFSFileSystemConfig": { + "$ref": "#/definitions/EFSFileSystemConfig" + } + }, + "type": "object" + }, + "CustomImage": { + "additionalProperties": false, + "properties": { + "AppImageConfigName": { + "maxLength": 63, + "pattern": "^[a-zA-Z0-9](-*[a-zA-Z0-9]){0,62}", + "type": "string" + }, + "ImageName": { + "maxLength": 63, + "pattern": "^[a-zA-Z0-9]([-.]?[a-zA-Z0-9]){0,62}$", + "type": "string" + }, + "ImageVersionNumber": { + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "AppImageConfigName", + "ImageName" + ], + "type": "object" + }, + "CustomPosixUserConfig": { + "additionalProperties": false, + "properties": { + "Gid": { + "maximum": 4000000, + "minimum": 1001, + "type": "integer" + }, + "Uid": { + "maximum": 4000000, + "minimum": 10000, + "type": "integer" + } + }, + "required": [ + "Uid", + "Gid" + ], + "type": "object" + }, + "DefaultEbsStorageSettings": { + "additionalProperties": false, + "properties": { + "DefaultEbsVolumeSizeInGb": { + "$ref": "#/definitions/SpaceEbsVolumeSizeInGb" + }, + "MaximumEbsVolumeSizeInGb": { + "$ref": "#/definitions/SpaceEbsVolumeSizeInGb" + } + }, + "required": [ + "DefaultEbsVolumeSizeInGb", + "MaximumEbsVolumeSizeInGb" + ], + "type": "object" + }, + "DefaultSpaceSettings": { + "additionalProperties": false, + "properties": { + "CustomFileSystemConfigs": { + "items": { + "$ref": "#/definitions/CustomFileSystemConfig" + }, + "maxItems": 2, + "minItems": 0, + "type": "array", + "uniqueItems": true + }, + "CustomPosixUserConfig": { + "$ref": "#/definitions/CustomPosixUserConfig" + }, + "ExecutionRole": { + "maxLength": 2048, + "minLength": 20, + "pattern": "^arn:aws[a-z\\-]*:iam::\\d{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+$", + "type": "string" + }, + "JupyterLabAppSettings": { + "$ref": "#/definitions/JupyterLabAppSettings" + }, + "JupyterServerAppSettings": { + "$ref": "#/definitions/JupyterServerAppSettings" + }, + "KernelGatewayAppSettings": { + "$ref": "#/definitions/KernelGatewayAppSettings" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "insertionOrder": false, + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "maxLength": 32, + "pattern": "[-0-9a-zA-Z]+", + "type": "string" + }, + "maxItems": 5, + "minItems": 0, + "type": "array", + "uniqueItems": false + }, + "SpaceStorageSettings": { + "$ref": "#/definitions/DefaultSpaceStorageSettings" + } + }, + "required": [ + "ExecutionRole" + ], + "type": "object" + }, + "DefaultSpaceStorageSettings": { + "additionalProperties": false, + "properties": { + "DefaultEbsStorageSettings": { + "$ref": "#/definitions/DefaultEbsStorageSettings" + } + }, + "type": "object" + }, + "DockerSettings": { + "additionalProperties": false, + "properties": { + "EnableDockerAccess": { + "enum": [ + "ENABLED", + "DISABLED" + ], + "type": "string" + }, + "VpcOnlyTrustedAccounts": { + "insertionOrder": false, + "items": { + "maxLength": 12, + "minLength": 12, + "pattern": "^\\d+$", + "type": "string" + }, + "maxItems": 20, + "minItems": 0, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "DomainSettings": { + "additionalProperties": false, + "properties": { + "DockerSettings": { + "$ref": "#/definitions/DockerSettings" + }, + "RStudioServerProDomainSettings": { + "$ref": "#/definitions/RStudioServerProDomainSettings" + }, + "SecurityGroupIds": { + "format": "AWS::EC2::SecurityGroup.Ids", + "insertionOrder": false, + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "maxLength": 32, + "pattern": "[-0-9a-zA-Z]+", + "type": "string" + }, + "maxItems": 3, + "minItems": 1, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "EFSFileSystemConfig": { + "additionalProperties": false, + "properties": { + "FileSystemId": { + "maxLength": 21, + "minLength": 11, + "pattern": "^(fs-[0-9a-f]{8,})$", + "type": "string" + }, + "FileSystemPath": { + "maxLength": 256, + "minLength": 1, + "pattern": "^\\/\\S*$", + "type": "string" + } + }, + "required": [ + "FileSystemId" + ], + "type": "object" + }, + "JupyterLabAppSettings": { + "additionalProperties": false, + "properties": { + "CodeRepositories": { + "items": { + "$ref": "#/definitions/CodeRepository" + }, + "maxItems": 30, + "minItems": 0, + "type": "array", + "uniqueItems": false + }, + "CustomImages": { + "items": { + "$ref": "#/definitions/CustomImage" + }, + "maxItems": 200, + "minItems": 0, + "type": "array", + "uniqueItems": false + }, + "DefaultResourceSpec": { + "$ref": "#/definitions/ResourceSpec" + }, + "LifecycleConfigArns": { + "items": { + "$ref": "#/definitions/StudioLifecycleConfigArn" + }, + "maxItems": 30, + "minItems": 0, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "JupyterServerAppSettings": { + "additionalProperties": false, + "properties": { + "DefaultResourceSpec": { + "$ref": "#/definitions/ResourceSpec" + } + }, + "type": "object" + }, + "KernelGatewayAppSettings": { + "additionalProperties": false, + "properties": { + "CustomImages": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/CustomImage" + }, + "maxItems": 200, + "minItems": 0, + "type": "array", + "uniqueItems": false + }, + "DefaultResourceSpec": { + "$ref": "#/definitions/ResourceSpec" + } + }, + "type": "object" + }, + "MlTools": { + "enum": [ + "DataWrangler", + "FeatureStore", + "EmrClusters", + "AutoML", + "Experiments", + "Training", + "ModelEvaluation", + "Pipelines", + "Models", + "JumpStart", + "InferenceRecommender", + "Endpoints", + "Projects" + ], + "type": "string" + }, + "RSessionAppSettings": { + "additionalProperties": false, + "properties": { + "CustomImages": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/CustomImage" + }, + "maxItems": 200, + "minItems": 0, + "type": "array", + "uniqueItems": false + }, + "DefaultResourceSpec": { + "$ref": "#/definitions/ResourceSpec" + } + }, + "type": "object" + }, + "RStudioServerProAppSettings": { + "additionalProperties": false, + "properties": { + "AccessStatus": { + "enum": [ + "ENABLED", + "DISABLED" + ], + "type": "string" + }, + "UserGroup": { + "enum": [ + "R_STUDIO_ADMIN", + "R_STUDIO_USER" + ], + "type": "string" + } + }, + "type": "object" + }, + "RStudioServerProDomainSettings": { + "additionalProperties": false, + "properties": { + "DefaultResourceSpec": { + "$ref": "#/definitions/ResourceSpec" + }, + "DomainExecutionRoleArn": { + "maxLength": 2048, + "minLength": 20, + "pattern": "^arn:aws[a-z\\-]*:iam::\\d{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+$", + "type": "string" + }, + "RStudioConnectUrl": { + "pattern": "^(https:|http:|www\\.)\\S*", + "type": "string" + }, + "RStudioPackageManagerUrl": { + "pattern": "^(https:|http:|www\\.)\\S*", + "type": "string" + } + }, + "required": [ + "DomainExecutionRoleArn" + ], + "type": "object" + }, + "ResourceSpec": { + "additionalProperties": false, + "properties": { + "InstanceType": { + "enum": [ + "system", + "ml.t3.micro", + "ml.t3.small", + "ml.t3.medium", + "ml.t3.large", + "ml.t3.xlarge", + "ml.t3.2xlarge", + "ml.m5.large", + "ml.m5.xlarge", + "ml.m5.2xlarge", + "ml.m5.4xlarge", + "ml.m5.8xlarge", + "ml.m5.12xlarge", + "ml.m5.16xlarge", + "ml.m5.24xlarge", + "ml.c5.large", + "ml.c5.xlarge", + "ml.c5.2xlarge", + "ml.c5.4xlarge", + "ml.c5.9xlarge", + "ml.c5.12xlarge", + "ml.c5.18xlarge", + "ml.c5.24xlarge", + "ml.p3.2xlarge", + "ml.p3.8xlarge", + "ml.p3.16xlarge", + "ml.g4dn.xlarge", + "ml.g4dn.2xlarge", + "ml.g4dn.4xlarge", + "ml.g4dn.8xlarge", + "ml.g4dn.12xlarge", + "ml.g4dn.16xlarge", + "ml.r5.large", + "ml.r5.xlarge", + "ml.r5.2xlarge", + "ml.r5.4xlarge", + "ml.r5.8xlarge", + "ml.r5.12xlarge", + "ml.r5.16xlarge", + "ml.r5.24xlarge", + "ml.p3dn.24xlarge", + "ml.m5d.large", + "ml.m5d.xlarge", + "ml.m5d.2xlarge", + "ml.m5d.4xlarge", + "ml.m5d.8xlarge", + "ml.m5d.12xlarge", + "ml.m5d.16xlarge", + "ml.m5d.24xlarge", + "ml.g5.xlarge", + "ml.g5.2xlarge", + "ml.g5.4xlarge", + "ml.g5.8xlarge", + "ml.g5.12xlarge", + "ml.g5.16xlarge", + "ml.g5.24xlarge", + "ml.g5.48xlarge", + "ml.p4d.24xlarge", + "ml.p4de.24xlarge", + "ml.geospatial.interactive", + "ml.trn1.2xlarge", + "ml.trn1.32xlarge", + "ml.trn1n.32xlarge" + ], + "type": "string" + }, + "LifecycleConfigArn": { + "maxLength": 256, + "pattern": "arn:aws[a-z\\-]*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:studio-lifecycle-config/.*", + "type": "string" + }, + "SageMakerImageArn": { + "maxLength": 256, + "pattern": "^arn:aws(-[\\w]+)*:sagemaker:.+:[0-9]{12}:image/[a-z0-9]([-.]?[a-z0-9])*$", + "type": "string" + }, + "SageMakerImageVersionArn": { + "maxLength": 256, + "pattern": "^arn:aws(-[\\w]+)*:sagemaker:.+:[0-9]{12}:image-version/[a-z0-9]([-.]?[a-z0-9])*/[0-9]+$", + "type": "string" + } + }, + "type": "object" + }, + "SharingSettings": { + "additionalProperties": false, + "properties": { + "NotebookOutputOption": { + "enum": [ + "Allowed", + "Disabled" + ], + "type": "string" + }, + "S3KmsKeyId": { + "maxLength": 2048, + "pattern": ".*", + "type": "string" + }, + "S3OutputPath": { + "maxLength": 1024, + "pattern": "^(https|s3)://([^/]+)/?(.*)$", + "type": "string" + } + }, + "type": "object" + }, + "SpaceEbsVolumeSizeInGb": { + "maximum": 16384, + "minimum": 5, + "type": "integer" + }, + "StudioLifecycleConfigArn": { + "maxLength": 256, + "pattern": "arn:aws[a-z\\-]*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:studio-lifecycle-config/.*", + "type": "string" + }, + "StudioWebPortalSettings": { + "additionalProperties": false, + "properties": { + "HiddenAppTypes": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/AppType" + }, + "minItems": 0, + "type": "array", + "uniqueItems": true + }, + "HiddenMlTools": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/MlTools" + }, + "minItems": 0, + "type": "array", + "uniqueItems": true + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 128, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "UserSettings": { + "additionalProperties": false, + "properties": { + "CodeEditorAppSettings": { + "$ref": "#/definitions/CodeEditorAppSettings" + }, + "CustomFileSystemConfigs": { + "items": { + "$ref": "#/definitions/CustomFileSystemConfig" + }, + "maxItems": 2, + "minItems": 0, + "type": "array", + "uniqueItems": true + }, + "CustomPosixUserConfig": { + "$ref": "#/definitions/CustomPosixUserConfig" + }, + "DefaultLandingUri": { + "maxLength": 1023, + "type": "string" + }, + "ExecutionRole": { + "maxLength": 2048, + "minLength": 20, + "pattern": "^arn:aws[a-z\\-]*:iam::\\d{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+$", + "type": "string" + }, + "JupyterLabAppSettings": { + "$ref": "#/definitions/JupyterLabAppSettings" + }, + "JupyterServerAppSettings": { + "$ref": "#/definitions/JupyterServerAppSettings" + }, + "KernelGatewayAppSettings": { + "$ref": "#/definitions/KernelGatewayAppSettings" + }, + "RSessionAppSettings": { + "$ref": "#/definitions/RSessionAppSettings" + }, + "RStudioServerProAppSettings": { + "$ref": "#/definitions/RStudioServerProAppSettings" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "insertionOrder": false, + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "maxLength": 32, + "pattern": "[-0-9a-zA-Z]+", + "type": "string" + }, + "maxItems": 5, + "minItems": 0, + "type": "array", + "uniqueItems": false + }, + "SharingSettings": { + "$ref": "#/definitions/SharingSettings" + }, + "SpaceStorageSettings": { + "$ref": "#/definitions/DefaultSpaceStorageSettings" + }, + "StudioWebPortal": { + "enum": [ + "ENABLED", + "DISABLED" + ], + "type": "string" + }, + "StudioWebPortalSettings": { + "$ref": "#/definitions/StudioWebPortalSettings" + } + }, + "required": [ + "ExecutionRole" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "sagemaker:CreateApp", + "sagemaker:CreateDomain", + "sagemaker:DescribeDomain", + "sagemaker:DescribeImage", + "sagemaker:DescribeImageVersion", + "iam:CreateServiceLinkedRole", + "iam:PassRole", + "efs:CreateFileSystem", + "kms:CreateGrant", + "kms:Decrypt", + "kms:DescribeKey", + "kms:GenerateDataKeyWithoutPlainText" + ] + }, + "delete": { + "permissions": [ + "sagemaker:DeleteApp", + "sagemaker:DeleteDomain", + "sagemaker:DescribeDomain" + ] + }, + "list": { + "permissions": [ + "sagemaker:ListDomains" + ] + }, + "read": { + "permissions": [ + "sagemaker:DescribeDomain" + ] + }, + "update": { + "permissions": [ + "sagemaker:CreateApp", + "sagemaker:UpdateDomain", + "sagemaker:DescribeDomain", + "sagemaker:DescribeImage", + "sagemaker:DescribeImageVersion", + "iam:PassRole" + ] + } + }, + "primaryIdentifier": [ + "/properties/DomainId" + ], + "properties": { + "AppNetworkAccessType": { + "enum": [ + "PublicInternetOnly", + "VpcOnly" + ], + "type": "string" + }, + "AppSecurityGroupManagement": { + "enum": [ + "Service", + "Customer" + ], + "type": "string" + }, + "AuthMode": { + "enum": [ + "SSO", + "IAM" + ], + "type": "string" + }, + "DefaultSpaceSettings": { + "$ref": "#/definitions/DefaultSpaceSettings" + }, + "DefaultUserSettings": { + "$ref": "#/definitions/UserSettings" + }, + "DomainArn": { + "maxLength": 256, + "pattern": "arn:aws[a-z\\-]*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:domain/.*", + "type": "string" + }, + "DomainId": { + "maxLength": 63, + "pattern": "^d-(-*[a-z0-9])+", + "type": "string" + }, + "DomainName": { + "maxLength": 63, + "pattern": "^[a-zA-Z0-9](-*[a-zA-Z0-9]){0,62}", + "type": "string" + }, + "DomainSettings": { + "$ref": "#/definitions/DomainSettings" + }, + "HomeEfsFileSystemId": { + "maxLength": 32, + "type": "string" + }, + "KmsKeyId": { + "maxLength": 2048, + "pattern": ".*", + "type": "string" + }, + "SecurityGroupIdForDomainBoundary": { + "maxLength": 32, + "pattern": "[-0-9a-zA-Z]+", + "type": "string" + }, + "SingleSignOnApplicationArn": { + "pattern": "^arn:(aws|aws-us-gov|aws-cn|aws-iso|aws-iso-b):sso::[0-9]+:application/[a-zA-Z0-9-_.]+/apl-[a-zA-Z0-9]+$", + "type": "string" + }, + "SingleSignOnManagedApplicationInstanceId": { + "maxLength": 256, + "type": "string" + }, + "SubnetIds": { + "insertionOrder": false, + "items": { + "maxLength": 32, + "pattern": "[-0-9a-zA-Z]+", + "type": "string" + }, + "maxItems": 16, + "minItems": 1, + "type": "array", + "uniqueItems": false + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 50, + "minItems": 0, + "type": "array", + "uniqueItems": false + }, + "Url": { + "maxLength": 1024, + "type": "string" + }, + "VpcId": { + "format": "AWS::EC2::VPC.Id", + "maxLength": 32, + "pattern": "[-0-9a-zA-Z]+", + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/DomainArn", + "/properties/Url", + "/properties/DomainId", + "/properties/HomeEfsFileSystemId", + "/properties/SecurityGroupIdForDomainBoundary", + "/properties/SingleSignOnManagedApplicationInstanceId", + "/properties/SingleSignOnApplicationArn" + ], + "required": [ + "AuthMode", + "DefaultUserSettings", + "DomainName", + "SubnetIds", + "VpcId" + ], + "typeName": "AWS::SageMaker::Domain", + "writeOnlyProperties": [ + "/properties/Tags" + ] +} diff --git a/src/cfnlint/data/schemas/providers/ca_central_1/aws-sagemaker-userprofile.json b/src/cfnlint/data/schemas/providers/ca_central_1/aws-sagemaker-userprofile.json new file mode 100644 index 0000000000..c2c0daf9fe --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ca_central_1/aws-sagemaker-userprofile.json @@ -0,0 +1,592 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/DomainId", + "/properties/UserProfileName", + "/properties/SingleSignOnUserIdentifier", + "/properties/SingleSignOnUserValue", + "/properties/UserSettings/RStudioServerProAppSettings/AccessStatus", + "/properties/UserSettings/RStudioServerProAppSettings/UserGroup", + "/properties/Tags" + ], + "definitions": { + "AppType": { + "enum": [ + "JupyterServer", + "TensorBoard", + "RStudioServerPro", + "JupyterLab", + "CodeEditor", + "DetailedProfiler", + "Canvas" + ], + "type": "string" + }, + "CodeEditorAppSettings": { + "additionalProperties": false, + "properties": { + "CustomImages": { + "items": { + "$ref": "#/definitions/CustomImage" + }, + "maxItems": 30, + "minItems": 0, + "type": "array", + "uniqueItems": false + }, + "DefaultResourceSpec": { + "$ref": "#/definitions/ResourceSpec" + }, + "LifecycleConfigArns": { + "items": { + "$ref": "#/definitions/StudioLifecycleConfigArn" + }, + "maxItems": 30, + "minItems": 0, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "CodeRepository": { + "additionalProperties": false, + "properties": { + "RepositoryUrl": { + "maxLength": 256, + "pattern": "^https://([.\\-_a-zA-Z0-9]+/?){3,1016}$", + "type": "string" + } + }, + "required": [ + "RepositoryUrl" + ], + "type": "object" + }, + "CustomFileSystemConfig": { + "additionalProperties": false, + "properties": { + "EFSFileSystemConfig": { + "$ref": "#/definitions/EFSFileSystemConfig" + } + }, + "type": "object" + }, + "CustomImage": { + "additionalProperties": false, + "properties": { + "AppImageConfigName": { + "maxLength": 63, + "pattern": "^[a-zA-Z0-9](-*[a-zA-Z0-9]){0,62}", + "type": "string" + }, + "ImageName": { + "maxLength": 63, + "pattern": "^[a-zA-Z0-9]([-.]?[a-zA-Z0-9]){0,62}$", + "type": "string" + }, + "ImageVersionNumber": { + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "AppImageConfigName", + "ImageName" + ], + "type": "object" + }, + "CustomPosixUserConfig": { + "additionalProperties": false, + "properties": { + "Gid": { + "maximum": 4000000, + "minimum": 1001, + "type": "integer" + }, + "Uid": { + "maximum": 4000000, + "minimum": 10000, + "type": "integer" + } + }, + "required": [ + "Uid", + "Gid" + ], + "type": "object" + }, + "DefaultEbsStorageSettings": { + "additionalProperties": false, + "properties": { + "DefaultEbsVolumeSizeInGb": { + "$ref": "#/definitions/SpaceEbsVolumeSizeInGb" + }, + "MaximumEbsVolumeSizeInGb": { + "$ref": "#/definitions/SpaceEbsVolumeSizeInGb" + } + }, + "required": [ + "DefaultEbsVolumeSizeInGb", + "MaximumEbsVolumeSizeInGb" + ], + "type": "object" + }, + "DefaultSpaceStorageSettings": { + "additionalProperties": false, + "properties": { + "DefaultEbsStorageSettings": { + "$ref": "#/definitions/DefaultEbsStorageSettings" + } + }, + "type": "object" + }, + "EFSFileSystemConfig": { + "additionalProperties": false, + "properties": { + "FileSystemId": { + "maxLength": 21, + "minLength": 11, + "pattern": "^(fs-[0-9a-f]{8,})$", + "type": "string" + }, + "FileSystemPath": { + "maxLength": 256, + "minLength": 1, + "pattern": "^\\/\\S*$", + "type": "string" + } + }, + "required": [ + "FileSystemId" + ], + "type": "object" + }, + "JupyterLabAppSettings": { + "additionalProperties": false, + "properties": { + "CodeRepositories": { + "items": { + "$ref": "#/definitions/CodeRepository" + }, + "maxItems": 30, + "minItems": 0, + "type": "array", + "uniqueItems": false + }, + "CustomImages": { + "items": { + "$ref": "#/definitions/CustomImage" + }, + "maxItems": 30, + "minItems": 0, + "type": "array", + "uniqueItems": false + }, + "DefaultResourceSpec": { + "$ref": "#/definitions/ResourceSpec" + }, + "LifecycleConfigArns": { + "items": { + "$ref": "#/definitions/StudioLifecycleConfigArn" + }, + "maxItems": 30, + "minItems": 0, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "JupyterServerAppSettings": { + "additionalProperties": false, + "properties": { + "DefaultResourceSpec": { + "$ref": "#/definitions/ResourceSpec" + } + }, + "type": "object" + }, + "KernelGatewayAppSettings": { + "additionalProperties": false, + "properties": { + "CustomImages": { + "items": { + "$ref": "#/definitions/CustomImage" + }, + "maxItems": 30, + "minItems": 0, + "type": "array", + "uniqueItems": false + }, + "DefaultResourceSpec": { + "$ref": "#/definitions/ResourceSpec" + } + }, + "type": "object" + }, + "MlTools": { + "enum": [ + "DataWrangler", + "FeatureStore", + "EmrClusters", + "AutoML", + "Experiments", + "Training", + "ModelEvaluation", + "Pipelines", + "Models", + "JumpStart", + "InferenceRecommender", + "Endpoints", + "Projects" + ], + "type": "string" + }, + "RStudioServerProAppSettings": { + "additionalProperties": false, + "properties": { + "AccessStatus": { + "enum": [ + "ENABLED", + "DISABLED" + ], + "type": "string" + }, + "UserGroup": { + "enum": [ + "R_STUDIO_ADMIN", + "R_STUDIO_USER" + ], + "type": "string" + } + }, + "type": "object" + }, + "ResourceSpec": { + "additionalProperties": false, + "properties": { + "InstanceType": { + "enum": [ + "system", + "ml.t3.micro", + "ml.t3.small", + "ml.t3.medium", + "ml.t3.large", + "ml.t3.xlarge", + "ml.t3.2xlarge", + "ml.m5.large", + "ml.m5.xlarge", + "ml.m5.2xlarge", + "ml.m5.4xlarge", + "ml.m5.8xlarge", + "ml.m5.12xlarge", + "ml.m5.16xlarge", + "ml.m5.24xlarge", + "ml.c5.large", + "ml.c5.xlarge", + "ml.c5.2xlarge", + "ml.c5.4xlarge", + "ml.c5.9xlarge", + "ml.c5.12xlarge", + "ml.c5.18xlarge", + "ml.c5.24xlarge", + "ml.p3.2xlarge", + "ml.p3.8xlarge", + "ml.p3.16xlarge", + "ml.g4dn.xlarge", + "ml.g4dn.2xlarge", + "ml.g4dn.4xlarge", + "ml.g4dn.8xlarge", + "ml.g4dn.12xlarge", + "ml.g4dn.16xlarge", + "ml.r5.large", + "ml.r5.xlarge", + "ml.r5.2xlarge", + "ml.r5.4xlarge", + "ml.r5.8xlarge", + "ml.r5.12xlarge", + "ml.r5.16xlarge", + "ml.r5.24xlarge", + "ml.p3dn.24xlarge", + "ml.m5d.large", + "ml.m5d.xlarge", + "ml.m5d.2xlarge", + "ml.m5d.4xlarge", + "ml.m5d.8xlarge", + "ml.m5d.12xlarge", + "ml.m5d.16xlarge", + "ml.m5d.24xlarge", + "ml.g5.xlarge", + "ml.g5.2xlarge", + "ml.g5.4xlarge", + "ml.g5.8xlarge", + "ml.g5.12xlarge", + "ml.g5.16xlarge", + "ml.g5.24xlarge", + "ml.g5.48xlarge", + "ml.p4d.24xlarge", + "ml.p4de.24xlarge", + "ml.geospatial.interactive", + "ml.trn1.2xlarge", + "ml.trn1.32xlarge", + "ml.trn1n.32xlarge" + ], + "type": "string" + }, + "SageMakerImageArn": { + "maxLength": 256, + "pattern": "^arn:aws(-[\\w]+)*:sagemaker:.+:[0-9]{12}:image/[a-z0-9]([-.]?[a-z0-9])*$", + "type": "string" + }, + "SageMakerImageVersionArn": { + "maxLength": 256, + "pattern": "^arn:aws(-[\\w]+)*:sagemaker:.+:[0-9]{12}:image-version/[a-z0-9]([-.]?[a-z0-9])*/[0-9]+$", + "type": "string" + } + }, + "type": "object" + }, + "SharingSettings": { + "additionalProperties": false, + "properties": { + "NotebookOutputOption": { + "enum": [ + "Allowed", + "Disabled" + ], + "type": "string" + }, + "S3KmsKeyId": { + "maxLength": 2048, + "pattern": ".*", + "type": "string" + }, + "S3OutputPath": { + "maxLength": 1024, + "pattern": "^(https|s3)://([^/]+)/?(.*)$", + "type": "string" + } + }, + "type": "object" + }, + "SpaceEbsVolumeSizeInGb": { + "maximum": 16384, + "minimum": 5, + "type": "integer" + }, + "StudioLifecycleConfigArn": { + "maxLength": 256, + "pattern": "arn:aws[a-z\\-]*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:studio-lifecycle-config/.*", + "type": "string" + }, + "StudioWebPortalSettings": { + "additionalProperties": false, + "properties": { + "HiddenAppTypes": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/AppType" + }, + "minItems": 0, + "type": "array", + "uniqueItems": true + }, + "HiddenMlTools": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/MlTools" + }, + "minItems": 0, + "type": "array", + "uniqueItems": true + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 128, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "UserSettings": { + "additionalProperties": false, + "properties": { + "CodeEditorAppSettings": { + "$ref": "#/definitions/CodeEditorAppSettings" + }, + "CustomFileSystemConfigs": { + "items": { + "$ref": "#/definitions/CustomFileSystemConfig" + }, + "maxItems": 2, + "minItems": 0, + "type": "array", + "uniqueItems": true + }, + "CustomPosixUserConfig": { + "$ref": "#/definitions/CustomPosixUserConfig" + }, + "DefaultLandingUri": { + "maxLength": 1023, + "type": "string" + }, + "ExecutionRole": { + "maxLength": 2048, + "minLength": 20, + "pattern": "^arn:aws[a-z\\-]*:iam::\\d{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+$", + "type": "string" + }, + "JupyterLabAppSettings": { + "$ref": "#/definitions/JupyterLabAppSettings" + }, + "JupyterServerAppSettings": { + "$ref": "#/definitions/JupyterServerAppSettings" + }, + "KernelGatewayAppSettings": { + "$ref": "#/definitions/KernelGatewayAppSettings" + }, + "RStudioServerProAppSettings": { + "$ref": "#/definitions/RStudioServerProAppSettings" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "maxLength": 32, + "pattern": "[-0-9a-zA-Z]+", + "type": "string" + }, + "maxItems": 5, + "minItems": 0, + "type": "array", + "uniqueItems": false + }, + "SharingSettings": { + "$ref": "#/definitions/SharingSettings" + }, + "SpaceStorageSettings": { + "$ref": "#/definitions/DefaultSpaceStorageSettings" + }, + "StudioWebPortal": { + "enum": [ + "ENABLED", + "DISABLED" + ], + "type": "string" + }, + "StudioWebPortalSettings": { + "$ref": "#/definitions/StudioWebPortalSettings" + } + }, + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "sagemaker:CreateUserProfile", + "sagemaker:DescribeUserProfile", + "sagemaker:DescribeImage", + "sagemaker:DescribeImageVersion", + "iam:PassRole" + ] + }, + "delete": { + "permissions": [ + "sagemaker:DeleteUserProfile", + "sagemaker:DescribeUserProfile" + ] + }, + "list": { + "permissions": [ + "sagemaker:ListUserProfiles" + ] + }, + "read": { + "permissions": [ + "sagemaker:DescribeUserProfile" + ] + }, + "update": { + "permissions": [ + "sagemaker:UpdateUserProfile", + "sagemaker:DescribeUserProfile", + "sagemaker:DescribeImage", + "sagemaker:DescribeImageVersion", + "iam:PassRole" + ] + } + }, + "primaryIdentifier": [ + "/properties/UserProfileName", + "/properties/DomainId" + ], + "properties": { + "DomainId": { + "maxLength": 63, + "minLength": 1, + "type": "string" + }, + "SingleSignOnUserIdentifier": { + "pattern": "UserName", + "type": "string" + }, + "SingleSignOnUserValue": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 50, + "minItems": 0, + "type": "array", + "uniqueItems": false + }, + "UserProfileArn": { + "maxLength": 256, + "pattern": "arn:aws[a-z\\-]*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:user-profile/.*", + "type": "string" + }, + "UserProfileName": { + "maxLength": 63, + "minLength": 1, + "type": "string" + }, + "UserSettings": { + "$ref": "#/definitions/UserSettings", + "maxItems": 50, + "minItems": 0, + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/UserProfileArn" + ], + "required": [ + "DomainId", + "UserProfileName" + ], + "typeName": "AWS::SageMaker::UserProfile", + "writeOnlyProperties": [ + "/properties/Tags" + ] +} diff --git a/src/cfnlint/data/schemas/providers/ca_central_1/aws-sso-instance.json b/src/cfnlint/data/schemas/providers/ca_central_1/aws-sso-instance.json new file mode 100644 index 0000000000..26c2ca063a --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ca_central_1/aws-sso-instance.json @@ -0,0 +1,125 @@ +{ + "additionalProperties": false, + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "[\\w+=,.@-]+", + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "pattern": "[\\w+=,.@-]+", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "sso:CreateInstance", + "sso:DescribeInstance", + "sso:TagResource", + "iam:CreateServiceLinkedRole", + "sso:TagInstance", + "sso:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "sso:DeleteInstance" + ] + }, + "list": { + "permissions": [ + "sso:ListInstances" + ] + }, + "read": { + "permissions": [ + "sso:DescribeInstance", + "sso:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "sso:UpdateInstance", + "sso:TagResource", + "sso:UntagResource", + "sso:ListTagsForResource", + "sso:TagInstance", + "sso:DescribeInstance" + ] + } + }, + "primaryIdentifier": [ + "/properties/InstanceArn" + ], + "properties": { + "IdentityStoreId": { + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-]*$", + "type": "string" + }, + "InstanceArn": { + "maxLength": 1224, + "minLength": 10, + "pattern": "^arn:(aws|aws-us-gov|aws-cn|aws-iso|aws-iso-b):sso:::instance/(sso)?ins-[a-zA-Z0-9-.]{16}$", + "type": "string" + }, + "Name": { + "maxLength": 32, + "minLength": 1, + "pattern": "^[\\w+=,.@-]+$", + "type": "string" + }, + "OwnerAccountId": { + "maxLength": 12, + "minLength": 12, + "pattern": "^\\d{12}?$", + "type": "string" + }, + "Status": { + "enum": [ + "CREATE_IN_PROGRESS", + "DELETE_IN_PROGRESS", + "ACTIVE" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 75, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/InstanceArn", + "/properties/OwnerAccountId", + "/properties/IdentityStoreId", + "/properties/Status" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sso/aws-sso-instance", + "tagging": { + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::SSO::Instance" +} diff --git a/src/cfnlint/data/schemas/providers/ca_west_1/__init__.py b/src/cfnlint/data/schemas/providers/ca_west_1/__init__.py index c8530f5946..d572a35d0d 100644 --- a/src/cfnlint/data/schemas/providers/ca_west_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/ca_west_1/__init__.py @@ -72,6 +72,8 @@ "AWS::CE::AnomalyMonitor", "AWS::CE::AnomalySubscription", "AWS::CertificateManager::Certificate", + "AWS::Chatbot::MicrosoftTeamsChannelConfiguration", + "AWS::Chatbot::SlackChannelConfiguration", "AWS::CloudFormation::CustomResource", "AWS::CloudFormation::HookDefaultVersion", "AWS::CloudFormation::HookTypeConfig", @@ -569,6 +571,8 @@ "aws-ce-anomalymonitor.json", "aws-ce-anomalysubscription.json", "aws-certificatemanager-certificate.json", + "aws-chatbot-microsoftteamschannelconfiguration.json", + "aws-chatbot-slackchannelconfiguration.json", "aws-cloudformation-customresource.json", "aws-cloudformation-hookdefaultversion.json", "aws-cloudformation-hooktypeconfig.json", diff --git a/src/cfnlint/data/schemas/providers/cn_north_1/__init__.py b/src/cfnlint/data/schemas/providers/cn_north_1/__init__.py index 2fb4c7ee00..57f1f737ec 100644 --- a/src/cfnlint/data/schemas/providers/cn_north_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/cn_north_1/__init__.py @@ -1307,7 +1307,6 @@ "aws-sso-application.json", "aws-sso-applicationassignment.json", "aws-sso-assignment.json", - "aws-sso-instance.json", "aws-sso-instanceaccesscontrolattributeconfiguration.json", "aws-sso-permissionset.json", "aws-stepfunctions-activity.json", diff --git a/src/cfnlint/data/schemas/providers/cn_north_1/aws-sso-instance.json b/src/cfnlint/data/schemas/providers/cn_north_1/aws-sso-instance.json new file mode 100644 index 0000000000..26c2ca063a --- /dev/null +++ b/src/cfnlint/data/schemas/providers/cn_north_1/aws-sso-instance.json @@ -0,0 +1,125 @@ +{ + "additionalProperties": false, + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "[\\w+=,.@-]+", + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "pattern": "[\\w+=,.@-]+", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "sso:CreateInstance", + "sso:DescribeInstance", + "sso:TagResource", + "iam:CreateServiceLinkedRole", + "sso:TagInstance", + "sso:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "sso:DeleteInstance" + ] + }, + "list": { + "permissions": [ + "sso:ListInstances" + ] + }, + "read": { + "permissions": [ + "sso:DescribeInstance", + "sso:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "sso:UpdateInstance", + "sso:TagResource", + "sso:UntagResource", + "sso:ListTagsForResource", + "sso:TagInstance", + "sso:DescribeInstance" + ] + } + }, + "primaryIdentifier": [ + "/properties/InstanceArn" + ], + "properties": { + "IdentityStoreId": { + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-]*$", + "type": "string" + }, + "InstanceArn": { + "maxLength": 1224, + "minLength": 10, + "pattern": "^arn:(aws|aws-us-gov|aws-cn|aws-iso|aws-iso-b):sso:::instance/(sso)?ins-[a-zA-Z0-9-.]{16}$", + "type": "string" + }, + "Name": { + "maxLength": 32, + "minLength": 1, + "pattern": "^[\\w+=,.@-]+$", + "type": "string" + }, + "OwnerAccountId": { + "maxLength": 12, + "minLength": 12, + "pattern": "^\\d{12}?$", + "type": "string" + }, + "Status": { + "enum": [ + "CREATE_IN_PROGRESS", + "DELETE_IN_PROGRESS", + "ACTIVE" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 75, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/InstanceArn", + "/properties/OwnerAccountId", + "/properties/IdentityStoreId", + "/properties/Status" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sso/aws-sso-instance", + "tagging": { + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::SSO::Instance" +} diff --git a/src/cfnlint/data/schemas/providers/cn_northwest_1/__init__.py b/src/cfnlint/data/schemas/providers/cn_northwest_1/__init__.py index 84bdbd53d5..614a1a14d4 100644 --- a/src/cfnlint/data/schemas/providers/cn_northwest_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/cn_northwest_1/__init__.py @@ -1200,7 +1200,6 @@ "aws-sso-application.json", "aws-sso-applicationassignment.json", "aws-sso-assignment.json", - "aws-sso-instance.json", "aws-sso-instanceaccesscontrolattributeconfiguration.json", "aws-sso-permissionset.json", "aws-stepfunctions-activity.json", diff --git a/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-sso-instance.json b/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-sso-instance.json new file mode 100644 index 0000000000..26c2ca063a --- /dev/null +++ b/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-sso-instance.json @@ -0,0 +1,125 @@ +{ + "additionalProperties": false, + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "[\\w+=,.@-]+", + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "pattern": "[\\w+=,.@-]+", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "sso:CreateInstance", + "sso:DescribeInstance", + "sso:TagResource", + "iam:CreateServiceLinkedRole", + "sso:TagInstance", + "sso:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "sso:DeleteInstance" + ] + }, + "list": { + "permissions": [ + "sso:ListInstances" + ] + }, + "read": { + "permissions": [ + "sso:DescribeInstance", + "sso:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "sso:UpdateInstance", + "sso:TagResource", + "sso:UntagResource", + "sso:ListTagsForResource", + "sso:TagInstance", + "sso:DescribeInstance" + ] + } + }, + "primaryIdentifier": [ + "/properties/InstanceArn" + ], + "properties": { + "IdentityStoreId": { + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-]*$", + "type": "string" + }, + "InstanceArn": { + "maxLength": 1224, + "minLength": 10, + "pattern": "^arn:(aws|aws-us-gov|aws-cn|aws-iso|aws-iso-b):sso:::instance/(sso)?ins-[a-zA-Z0-9-.]{16}$", + "type": "string" + }, + "Name": { + "maxLength": 32, + "minLength": 1, + "pattern": "^[\\w+=,.@-]+$", + "type": "string" + }, + "OwnerAccountId": { + "maxLength": 12, + "minLength": 12, + "pattern": "^\\d{12}?$", + "type": "string" + }, + "Status": { + "enum": [ + "CREATE_IN_PROGRESS", + "DELETE_IN_PROGRESS", + "ACTIVE" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 75, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/InstanceArn", + "/properties/OwnerAccountId", + "/properties/IdentityStoreId", + "/properties/Status" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sso/aws-sso-instance", + "tagging": { + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::SSO::Instance" +} diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/__init__.py b/src/cfnlint/data/schemas/providers/eu_central_1/__init__.py index 00041bac6c..732e42ae6c 100644 --- a/src/cfnlint/data/schemas/providers/eu_central_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/eu_central_1/__init__.py @@ -1458,6 +1458,7 @@ "aws-cognito-userpoolidentityprovider.json", "aws-cognito-userpoolresourceserver.json", "aws-cognito-userpoolriskconfigurationattachment.json", + "aws-cognito-userpooluicustomizationattachment.json", "aws-cognito-userpooluser.json", "aws-cognito-userpoolusertogroupattachment.json", "aws-comprehend-documentclassifier.json", @@ -1815,7 +1816,6 @@ "aws-iam-grouppolicy.json", "aws-iam-instanceprofile.json", "aws-iam-managedpolicy.json", - "aws-iam-oidcprovider.json", "aws-iam-policy.json", "aws-iam-role.json", "aws-iam-rolepolicy.json", @@ -1942,7 +1942,6 @@ "aws-lakeformation-resource.json", "aws-lakeformation-tag.json", "aws-lakeformation-tagassociation.json", - "aws-lambda-alias.json", "aws-lambda-codesigningconfig.json", "aws-lambda-eventsourcemapping.json", "aws-lambda-function.json", @@ -2357,7 +2356,6 @@ "aws-sso-application.json", "aws-sso-applicationassignment.json", "aws-sso-assignment.json", - "aws-sso-instance.json", "aws-sso-instanceaccesscontrolattributeconfiguration.json", "aws-sso-permissionset.json", "aws-stepfunctions-activity.json", diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/aws-cognito-userpooluicustomizationattachment.json b/src/cfnlint/data/schemas/providers/eu_central_1/aws-cognito-userpooluicustomizationattachment.json deleted file mode 100644 index ff8cea02ef..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_central_1/aws-cognito-userpooluicustomizationattachment.json +++ /dev/null @@ -1,61 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/UserPoolId", - "/properties/ClientId" - ], - "handlers": { - "create": { - "permissions": [ - "cognito-idp:SetUICustomization", - "cognito-idp:GetUICustomization" - ], - "timeoutInMinutes": 2 - }, - "delete": { - "permissions": [ - "cognito-idp:SetUICustomization", - "cognito-idp:GetUICustomization" - ], - "timeoutInMinutes": 2 - }, - "read": { - "permissions": [ - "cognito-idp:GetUICustomization" - ] - }, - "update": { - "permissions": [ - "cognito-idp:SetUICustomization" - ], - "timeoutInMinutes": 2 - } - }, - "primaryIdentifier": [ - "/properties/UserPoolId", - "/properties/ClientId" - ], - "properties": { - "CSS": { - "type": "string" - }, - "ClientId": { - "type": "string" - }, - "UserPoolId": { - "type": "string" - } - }, - "required": [ - "UserPoolId", - "ClientId" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", - "tagging": { - "cloudFormationSystemTags": false, - "tagOnCreate": false, - "tagUpdatable": false, - "taggable": false - }, - "typeName": "AWS::Cognito::UserPoolUICustomizationAttachment" -} diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/aws-iam-oidcprovider.json b/src/cfnlint/data/schemas/providers/eu_central_1/aws-iam-oidcprovider.json new file mode 100644 index 0000000000..fa37c736e1 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_1/aws-iam-oidcprovider.json @@ -0,0 +1,117 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Url" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "iam:CreateOpenIDConnectProvider", + "iam:TagOpenIDConnectProvider", + "iam:GetOpenIDConnectProvider" + ] + }, + "delete": { + "permissions": [ + "iam:DeleteOpenIDConnectProvider" + ] + }, + "list": { + "permissions": [ + "iam:ListOpenIDConnectProvider", + "iam:GetOpenIDConnectProvider" + ] + }, + "read": { + "permissions": [ + "iam:GetOpenIDConnectProvider" + ] + }, + "update": { + "permissions": [ + "iam:UpdateOpenIDConnectProviderThumbprint", + "iam:RemoveClientIDFromOpenIDConnectProvider", + "iam:AddClientIDToOpenIDConnectProvider", + "iam:GetOpenIDConnectProvider", + "iam:TagOpenIDConnectProvider", + "iam:UntagOpenIDConnectProvider", + "iam:ListOpenIDConnectProviderTags" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 20, + "type": "string" + }, + "ClientIdList": { + "insertionOrder": false, + "items": { + "maxLength": 255, + "minLength": 1, + "type": "string" + }, + "type": "array" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": false + }, + "ThumbprintList": { + "insertionOrder": false, + "items": { + "maxLength": 40, + "minLength": 40, + "pattern": "[0-9A-Fa-f]{40}", + "type": "string" + }, + "maxItems": 5, + "type": "array" + }, + "Url": { + "maxLength": 255, + "minLength": 1, + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::IAM::OIDCProvider" +} diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/aws-lambda-alias.json b/src/cfnlint/data/schemas/providers/eu_central_1/aws-lambda-alias.json new file mode 100644 index 0000000000..e952d8b59e --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_1/aws-lambda-alias.json @@ -0,0 +1,145 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name", + "/properties/FunctionName" + ], + "definitions": { + "AliasRoutingConfiguration": { + "additionalProperties": false, + "properties": { + "AdditionalVersionWeights": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/VersionWeight" + }, + "type": "array", + "uniqueItems": true + } + }, + "type": "object" + }, + "ProvisionedConcurrencyConfiguration": { + "additionalProperties": false, + "properties": { + "ProvisionedConcurrentExecutions": { + "type": "integer" + } + }, + "required": [ + "ProvisionedConcurrentExecutions" + ], + "type": "object" + }, + "VersionWeight": { + "additionalProperties": false, + "properties": { + "FunctionVersion": { + "type": "string" + }, + "FunctionWeight": { + "type": "number" + } + }, + "required": [ + "FunctionVersion", + "FunctionWeight" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "lambda:CreateAlias", + "lambda:PutProvisionedConcurrencyConfig", + "lambda:GetProvisionedConcurrencyConfig" + ], + "timeoutInMinutes": 45 + }, + "delete": { + "permissions": [ + "lambda:DeleteAlias", + "lambda:GetAlias" + ] + }, + "list": { + "handlerSchema": { + "properties": { + "FunctionName": { + "$ref": "resource-schema.json#/properties/FunctionName" + } + }, + "required": [ + "FunctionName" + ] + }, + "permissions": [ + "lambda:ListAliases" + ] + }, + "read": { + "permissions": [ + "lambda:GetAlias", + "lambda:GetProvisionedConcurrencyConfig" + ] + }, + "update": { + "permissions": [ + "lambda:UpdateAlias", + "lambda:GetAlias", + "lambda:PutProvisionedConcurrencyConfig", + "lambda:DeleteProvisionedConcurrencyConfig", + "lambda:GetProvisionedConcurrencyConfig", + "codedeploy:CreateDeployment", + "codedeploy:GetDeployment", + "codedeploy:GetDeploymentGroup", + "codedeploy:GetDeploymentConfig", + "codedeploy:StopDeployment" + ], + "timeoutInMinutes": 120 + } + }, + "primaryIdentifier": [ + "/properties/AliasArn" + ], + "properties": { + "AliasArn": { + "type": "string" + }, + "Description": { + "type": "string" + }, + "FunctionName": { + "type": "string" + }, + "FunctionVersion": { + "type": "string" + }, + "Name": { + "type": "string" + }, + "ProvisionedConcurrencyConfig": { + "$ref": "#/definitions/ProvisionedConcurrencyConfiguration" + }, + "RoutingConfig": { + "$ref": "#/definitions/AliasRoutingConfiguration" + } + }, + "propertyTransform": { + "/properties/FunctionName": "$split(FunctionName, \":\")[-1] $OR FunctionName" + }, + "readOnlyProperties": [ + "/properties/AliasArn" + ], + "required": [ + "FunctionName", + "FunctionVersion", + "Name" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-lambda", + "tagging": { + "taggable": false + }, + "typeName": "AWS::Lambda::Alias" +} diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/aws-sso-instance.json b/src/cfnlint/data/schemas/providers/eu_central_1/aws-sso-instance.json new file mode 100644 index 0000000000..26c2ca063a --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_1/aws-sso-instance.json @@ -0,0 +1,125 @@ +{ + "additionalProperties": false, + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "[\\w+=,.@-]+", + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "pattern": "[\\w+=,.@-]+", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "sso:CreateInstance", + "sso:DescribeInstance", + "sso:TagResource", + "iam:CreateServiceLinkedRole", + "sso:TagInstance", + "sso:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "sso:DeleteInstance" + ] + }, + "list": { + "permissions": [ + "sso:ListInstances" + ] + }, + "read": { + "permissions": [ + "sso:DescribeInstance", + "sso:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "sso:UpdateInstance", + "sso:TagResource", + "sso:UntagResource", + "sso:ListTagsForResource", + "sso:TagInstance", + "sso:DescribeInstance" + ] + } + }, + "primaryIdentifier": [ + "/properties/InstanceArn" + ], + "properties": { + "IdentityStoreId": { + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-]*$", + "type": "string" + }, + "InstanceArn": { + "maxLength": 1224, + "minLength": 10, + "pattern": "^arn:(aws|aws-us-gov|aws-cn|aws-iso|aws-iso-b):sso:::instance/(sso)?ins-[a-zA-Z0-9-.]{16}$", + "type": "string" + }, + "Name": { + "maxLength": 32, + "minLength": 1, + "pattern": "^[\\w+=,.@-]+$", + "type": "string" + }, + "OwnerAccountId": { + "maxLength": 12, + "minLength": 12, + "pattern": "^\\d{12}?$", + "type": "string" + }, + "Status": { + "enum": [ + "CREATE_IN_PROGRESS", + "DELETE_IN_PROGRESS", + "ACTIVE" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 75, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/InstanceArn", + "/properties/OwnerAccountId", + "/properties/IdentityStoreId", + "/properties/Status" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sso/aws-sso-instance", + "tagging": { + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::SSO::Instance" +} diff --git a/src/cfnlint/data/schemas/providers/eu_central_2/__init__.py b/src/cfnlint/data/schemas/providers/eu_central_2/__init__.py index bf3072a4e8..646705daf6 100644 --- a/src/cfnlint/data/schemas/providers/eu_central_2/__init__.py +++ b/src/cfnlint/data/schemas/providers/eu_central_2/__init__.py @@ -1073,7 +1073,6 @@ "aws-sso-application.json", "aws-sso-applicationassignment.json", "aws-sso-assignment.json", - "aws-sso-instance.json", "aws-sso-instanceaccesscontrolattributeconfiguration.json", "aws-sso-permissionset.json", "aws-stepfunctions-activity.json", diff --git a/src/cfnlint/data/schemas/providers/eu_central_2/aws-sso-instance.json b/src/cfnlint/data/schemas/providers/eu_central_2/aws-sso-instance.json new file mode 100644 index 0000000000..26c2ca063a --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_2/aws-sso-instance.json @@ -0,0 +1,125 @@ +{ + "additionalProperties": false, + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "[\\w+=,.@-]+", + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "pattern": "[\\w+=,.@-]+", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "sso:CreateInstance", + "sso:DescribeInstance", + "sso:TagResource", + "iam:CreateServiceLinkedRole", + "sso:TagInstance", + "sso:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "sso:DeleteInstance" + ] + }, + "list": { + "permissions": [ + "sso:ListInstances" + ] + }, + "read": { + "permissions": [ + "sso:DescribeInstance", + "sso:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "sso:UpdateInstance", + "sso:TagResource", + "sso:UntagResource", + "sso:ListTagsForResource", + "sso:TagInstance", + "sso:DescribeInstance" + ] + } + }, + "primaryIdentifier": [ + "/properties/InstanceArn" + ], + "properties": { + "IdentityStoreId": { + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-]*$", + "type": "string" + }, + "InstanceArn": { + "maxLength": 1224, + "minLength": 10, + "pattern": "^arn:(aws|aws-us-gov|aws-cn|aws-iso|aws-iso-b):sso:::instance/(sso)?ins-[a-zA-Z0-9-.]{16}$", + "type": "string" + }, + "Name": { + "maxLength": 32, + "minLength": 1, + "pattern": "^[\\w+=,.@-]+$", + "type": "string" + }, + "OwnerAccountId": { + "maxLength": 12, + "minLength": 12, + "pattern": "^\\d{12}?$", + "type": "string" + }, + "Status": { + "enum": [ + "CREATE_IN_PROGRESS", + "DELETE_IN_PROGRESS", + "ACTIVE" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 75, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/InstanceArn", + "/properties/OwnerAccountId", + "/properties/IdentityStoreId", + "/properties/Status" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sso/aws-sso-instance", + "tagging": { + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::SSO::Instance" +} 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 f0cf5e96cf..a8238cd66c 100644 --- a/src/cfnlint/data/schemas/providers/eu_north_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/eu_north_1/__init__.py @@ -1837,7 +1837,6 @@ "aws-sso-application.json", "aws-sso-applicationassignment.json", "aws-sso-assignment.json", - "aws-sso-instance.json", "aws-sso-instanceaccesscontrolattributeconfiguration.json", "aws-sso-permissionset.json", "aws-stepfunctions-activity.json", diff --git a/src/cfnlint/data/schemas/providers/eu_north_1/aws-sso-instance.json b/src/cfnlint/data/schemas/providers/eu_north_1/aws-sso-instance.json new file mode 100644 index 0000000000..26c2ca063a --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_north_1/aws-sso-instance.json @@ -0,0 +1,125 @@ +{ + "additionalProperties": false, + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "[\\w+=,.@-]+", + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "pattern": "[\\w+=,.@-]+", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "sso:CreateInstance", + "sso:DescribeInstance", + "sso:TagResource", + "iam:CreateServiceLinkedRole", + "sso:TagInstance", + "sso:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "sso:DeleteInstance" + ] + }, + "list": { + "permissions": [ + "sso:ListInstances" + ] + }, + "read": { + "permissions": [ + "sso:DescribeInstance", + "sso:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "sso:UpdateInstance", + "sso:TagResource", + "sso:UntagResource", + "sso:ListTagsForResource", + "sso:TagInstance", + "sso:DescribeInstance" + ] + } + }, + "primaryIdentifier": [ + "/properties/InstanceArn" + ], + "properties": { + "IdentityStoreId": { + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-]*$", + "type": "string" + }, + "InstanceArn": { + "maxLength": 1224, + "minLength": 10, + "pattern": "^arn:(aws|aws-us-gov|aws-cn|aws-iso|aws-iso-b):sso:::instance/(sso)?ins-[a-zA-Z0-9-.]{16}$", + "type": "string" + }, + "Name": { + "maxLength": 32, + "minLength": 1, + "pattern": "^[\\w+=,.@-]+$", + "type": "string" + }, + "OwnerAccountId": { + "maxLength": 12, + "minLength": 12, + "pattern": "^\\d{12}?$", + "type": "string" + }, + "Status": { + "enum": [ + "CREATE_IN_PROGRESS", + "DELETE_IN_PROGRESS", + "ACTIVE" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 75, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/InstanceArn", + "/properties/OwnerAccountId", + "/properties/IdentityStoreId", + "/properties/Status" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sso/aws-sso-instance", + "tagging": { + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::SSO::Instance" +} 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 853942e327..27cd85e305 100644 --- a/src/cfnlint/data/schemas/providers/eu_south_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/eu_south_1/__init__.py @@ -1449,7 +1449,6 @@ "aws-sso-application.json", "aws-sso-applicationassignment.json", "aws-sso-assignment.json", - "aws-sso-instance.json", "aws-sso-instanceaccesscontrolattributeconfiguration.json", "aws-sso-permissionset.json", "aws-stepfunctions-activity.json", diff --git a/src/cfnlint/data/schemas/providers/eu_south_1/aws-sso-instance.json b/src/cfnlint/data/schemas/providers/eu_south_1/aws-sso-instance.json new file mode 100644 index 0000000000..26c2ca063a --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_south_1/aws-sso-instance.json @@ -0,0 +1,125 @@ +{ + "additionalProperties": false, + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "[\\w+=,.@-]+", + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "pattern": "[\\w+=,.@-]+", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "sso:CreateInstance", + "sso:DescribeInstance", + "sso:TagResource", + "iam:CreateServiceLinkedRole", + "sso:TagInstance", + "sso:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "sso:DeleteInstance" + ] + }, + "list": { + "permissions": [ + "sso:ListInstances" + ] + }, + "read": { + "permissions": [ + "sso:DescribeInstance", + "sso:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "sso:UpdateInstance", + "sso:TagResource", + "sso:UntagResource", + "sso:ListTagsForResource", + "sso:TagInstance", + "sso:DescribeInstance" + ] + } + }, + "primaryIdentifier": [ + "/properties/InstanceArn" + ], + "properties": { + "IdentityStoreId": { + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-]*$", + "type": "string" + }, + "InstanceArn": { + "maxLength": 1224, + "minLength": 10, + "pattern": "^arn:(aws|aws-us-gov|aws-cn|aws-iso|aws-iso-b):sso:::instance/(sso)?ins-[a-zA-Z0-9-.]{16}$", + "type": "string" + }, + "Name": { + "maxLength": 32, + "minLength": 1, + "pattern": "^[\\w+=,.@-]+$", + "type": "string" + }, + "OwnerAccountId": { + "maxLength": 12, + "minLength": 12, + "pattern": "^\\d{12}?$", + "type": "string" + }, + "Status": { + "enum": [ + "CREATE_IN_PROGRESS", + "DELETE_IN_PROGRESS", + "ACTIVE" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 75, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/InstanceArn", + "/properties/OwnerAccountId", + "/properties/IdentityStoreId", + "/properties/Status" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sso/aws-sso-instance", + "tagging": { + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::SSO::Instance" +} 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 efb30a4088..9b673e3029 100644 --- a/src/cfnlint/data/schemas/providers/eu_west_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/eu_west_1/__init__.py @@ -1433,6 +1433,7 @@ "aws-cognito-userpoolidentityprovider.json", "aws-cognito-userpoolresourceserver.json", "aws-cognito-userpoolriskconfigurationattachment.json", + "aws-cognito-userpooluicustomizationattachment.json", "aws-cognito-userpooluser.json", "aws-cognito-userpoolusertogroupattachment.json", "aws-comprehend-documentclassifier.json", @@ -1965,7 +1966,6 @@ "aws-mediaconnect-flow.json", "aws-mediaconnect-flowentitlement.json", "aws-mediaconnect-flowoutput.json", - "aws-mediaconnect-flowsource.json", "aws-mediaconnect-flowvpcinterface.json", "aws-mediaconnect-gateway.json", "aws-mediaconvert-jobtemplate.json", @@ -2325,7 +2325,6 @@ "aws-sso-application.json", "aws-sso-applicationassignment.json", "aws-sso-assignment.json", - "aws-sso-instance.json", "aws-sso-instanceaccesscontrolattributeconfiguration.json", "aws-sso-permissionset.json", "aws-stepfunctions-activity.json", diff --git a/src/cfnlint/data/schemas/providers/eu_west_1/aws-cognito-userpooluicustomizationattachment.json b/src/cfnlint/data/schemas/providers/eu_west_1/aws-cognito-userpooluicustomizationattachment.json deleted file mode 100644 index ff8cea02ef..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_west_1/aws-cognito-userpooluicustomizationattachment.json +++ /dev/null @@ -1,61 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/UserPoolId", - "/properties/ClientId" - ], - "handlers": { - "create": { - "permissions": [ - "cognito-idp:SetUICustomization", - "cognito-idp:GetUICustomization" - ], - "timeoutInMinutes": 2 - }, - "delete": { - "permissions": [ - "cognito-idp:SetUICustomization", - "cognito-idp:GetUICustomization" - ], - "timeoutInMinutes": 2 - }, - "read": { - "permissions": [ - "cognito-idp:GetUICustomization" - ] - }, - "update": { - "permissions": [ - "cognito-idp:SetUICustomization" - ], - "timeoutInMinutes": 2 - } - }, - "primaryIdentifier": [ - "/properties/UserPoolId", - "/properties/ClientId" - ], - "properties": { - "CSS": { - "type": "string" - }, - "ClientId": { - "type": "string" - }, - "UserPoolId": { - "type": "string" - } - }, - "required": [ - "UserPoolId", - "ClientId" - ], - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", - "tagging": { - "cloudFormationSystemTags": false, - "tagOnCreate": false, - "tagUpdatable": false, - "taggable": false - }, - "typeName": "AWS::Cognito::UserPoolUICustomizationAttachment" -} diff --git a/src/cfnlint/data/schemas/providers/eu_west_1/aws-mediaconnect-flowsource.json b/src/cfnlint/data/schemas/providers/eu_west_1/aws-mediaconnect-flowsource.json new file mode 100644 index 0000000000..d115d07de4 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_west_1/aws-mediaconnect-flowsource.json @@ -0,0 +1,198 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "Encryption": { + "additionalProperties": false, + "properties": { + "Algorithm": { + "enum": [ + "aes128", + "aes192", + "aes256" + ], + "type": "string" + }, + "ConstantInitializationVector": { + "type": "string" + }, + "DeviceId": { + "type": "string" + }, + "KeyType": { + "default": "static-key", + "enum": [ + "speke", + "static-key", + "srt-password" + ], + "type": "string" + }, + "Region": { + "type": "string" + }, + "ResourceId": { + "type": "string" + }, + "RoleArn": { + "type": "string" + }, + "SecretArn": { + "type": "string" + }, + "Url": { + "type": "string" + } + }, + "required": [ + "RoleArn" + ], + "type": "object" + }, + "GatewayBridgeSource": { + "additionalProperties": false, + "properties": { + "BridgeArn": { + "type": "string" + }, + "VpcInterfaceAttachment": { + "$ref": "#/definitions/VpcInterfaceAttachment" + } + }, + "required": [ + "BridgeArn" + ], + "type": "object" + }, + "VpcInterfaceAttachment": { + "additionalProperties": false, + "properties": { + "VpcInterfaceName": { + "type": "string" + } + }, + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "mediaconnect:CreateFlow", + "mediaconnect:DescribeFlow", + "mediaconnect:AddFlowSources", + "iam:PassRole" + ] + }, + "delete": { + "permissions": [ + "mediaconnect:DescribeFlow", + "mediaconnect:RemoveFlowSource" + ] + }, + "list": { + "permissions": [ + "mediaconnect:DescribeFlow" + ] + }, + "read": { + "permissions": [ + "mediaconnect:DescribeFlow" + ] + }, + "update": { + "permissions": [ + "mediaconnect:DescribeFlow", + "mediaconnect:UpdateFlowSource" + ] + } + }, + "primaryIdentifier": [ + "/properties/SourceArn" + ], + "properties": { + "Decryption": { + "$ref": "#/definitions/Encryption" + }, + "Description": { + "type": "string" + }, + "EntitlementArn": { + "type": "string" + }, + "FlowArn": { + "type": "string" + }, + "GatewayBridgeSource": { + "$ref": "#/definitions/GatewayBridgeSource" + }, + "IngestIp": { + "type": "string" + }, + "IngestPort": { + "type": "integer" + }, + "MaxBitrate": { + "type": "integer" + }, + "MaxLatency": { + "type": "integer" + }, + "MinLatency": { + "type": "integer" + }, + "Name": { + "type": "string" + }, + "Protocol": { + "enum": [ + "zixi-push", + "rtp-fec", + "rtp", + "rist", + "srt-listener", + "srt-caller" + ], + "type": "string" + }, + "SenderControlPort": { + "type": "integer" + }, + "SenderIpAddress": { + "type": "string" + }, + "SourceArn": { + "type": "string" + }, + "SourceIngestPort": { + "type": "string" + }, + "SourceListenerAddress": { + "type": "string" + }, + "SourceListenerPort": { + "type": "integer" + }, + "StreamId": { + "type": "string" + }, + "VpcInterfaceName": { + "type": "string" + }, + "WhitelistCidr": { + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/IngestIp", + "/properties/SourceArn", + "/properties/SourceIngestPort" + ], + "required": [ + "Name", + "Description" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-mediaconnect.git", + "typeName": "AWS::MediaConnect::FlowSource" +} diff --git a/src/cfnlint/data/schemas/providers/eu_west_1/aws-sso-instance.json b/src/cfnlint/data/schemas/providers/eu_west_1/aws-sso-instance.json new file mode 100644 index 0000000000..26c2ca063a --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_west_1/aws-sso-instance.json @@ -0,0 +1,125 @@ +{ + "additionalProperties": false, + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "[\\w+=,.@-]+", + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "pattern": "[\\w+=,.@-]+", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "sso:CreateInstance", + "sso:DescribeInstance", + "sso:TagResource", + "iam:CreateServiceLinkedRole", + "sso:TagInstance", + "sso:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "sso:DeleteInstance" + ] + }, + "list": { + "permissions": [ + "sso:ListInstances" + ] + }, + "read": { + "permissions": [ + "sso:DescribeInstance", + "sso:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "sso:UpdateInstance", + "sso:TagResource", + "sso:UntagResource", + "sso:ListTagsForResource", + "sso:TagInstance", + "sso:DescribeInstance" + ] + } + }, + "primaryIdentifier": [ + "/properties/InstanceArn" + ], + "properties": { + "IdentityStoreId": { + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-]*$", + "type": "string" + }, + "InstanceArn": { + "maxLength": 1224, + "minLength": 10, + "pattern": "^arn:(aws|aws-us-gov|aws-cn|aws-iso|aws-iso-b):sso:::instance/(sso)?ins-[a-zA-Z0-9-.]{16}$", + "type": "string" + }, + "Name": { + "maxLength": 32, + "minLength": 1, + "pattern": "^[\\w+=,.@-]+$", + "type": "string" + }, + "OwnerAccountId": { + "maxLength": 12, + "minLength": 12, + "pattern": "^\\d{12}?$", + "type": "string" + }, + "Status": { + "enum": [ + "CREATE_IN_PROGRESS", + "DELETE_IN_PROGRESS", + "ACTIVE" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 75, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/InstanceArn", + "/properties/OwnerAccountId", + "/properties/IdentityStoreId", + "/properties/Status" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sso/aws-sso-instance", + "tagging": { + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::SSO::Instance" +} 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 270cce398f..eccadcf9ea 100644 --- a/src/cfnlint/data/schemas/providers/eu_west_2/__init__.py +++ b/src/cfnlint/data/schemas/providers/eu_west_2/__init__.py @@ -1344,7 +1344,6 @@ "aws-cognito-userpoolidentityprovider.json", "aws-cognito-userpoolresourceserver.json", "aws-cognito-userpoolriskconfigurationattachment.json", - "aws-cognito-userpooluicustomizationattachment.json", "aws-cognito-userpooluser.json", "aws-cognito-userpoolusertogroupattachment.json", "aws-comprehend-documentclassifier.json", @@ -2150,7 +2149,6 @@ "aws-sso-application.json", "aws-sso-applicationassignment.json", "aws-sso-assignment.json", - "aws-sso-instance.json", "aws-sso-instanceaccesscontrolattributeconfiguration.json", "aws-sso-permissionset.json", "aws-stepfunctions-activity.json", diff --git a/src/cfnlint/data/schemas/providers/eu_west_2/aws-cognito-userpooluicustomizationattachment.json b/src/cfnlint/data/schemas/providers/eu_west_2/aws-cognito-userpooluicustomizationattachment.json new file mode 100644 index 0000000000..009f1aea8c --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_west_2/aws-cognito-userpooluicustomizationattachment.json @@ -0,0 +1,32 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/UserPoolId", + "/properties/ClientId" + ], + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "CSS": { + "type": "string" + }, + "ClientId": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "UserPoolId": { + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "ClientId", + "UserPoolId" + ], + "typeName": "AWS::Cognito::UserPoolUICustomizationAttachment" +} diff --git a/src/cfnlint/data/schemas/providers/eu_west_2/aws-sso-instance.json b/src/cfnlint/data/schemas/providers/eu_west_2/aws-sso-instance.json new file mode 100644 index 0000000000..26c2ca063a --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_west_2/aws-sso-instance.json @@ -0,0 +1,125 @@ +{ + "additionalProperties": false, + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "[\\w+=,.@-]+", + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "pattern": "[\\w+=,.@-]+", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "sso:CreateInstance", + "sso:DescribeInstance", + "sso:TagResource", + "iam:CreateServiceLinkedRole", + "sso:TagInstance", + "sso:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "sso:DeleteInstance" + ] + }, + "list": { + "permissions": [ + "sso:ListInstances" + ] + }, + "read": { + "permissions": [ + "sso:DescribeInstance", + "sso:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "sso:UpdateInstance", + "sso:TagResource", + "sso:UntagResource", + "sso:ListTagsForResource", + "sso:TagInstance", + "sso:DescribeInstance" + ] + } + }, + "primaryIdentifier": [ + "/properties/InstanceArn" + ], + "properties": { + "IdentityStoreId": { + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-]*$", + "type": "string" + }, + "InstanceArn": { + "maxLength": 1224, + "minLength": 10, + "pattern": "^arn:(aws|aws-us-gov|aws-cn|aws-iso|aws-iso-b):sso:::instance/(sso)?ins-[a-zA-Z0-9-.]{16}$", + "type": "string" + }, + "Name": { + "maxLength": 32, + "minLength": 1, + "pattern": "^[\\w+=,.@-]+$", + "type": "string" + }, + "OwnerAccountId": { + "maxLength": 12, + "minLength": 12, + "pattern": "^\\d{12}?$", + "type": "string" + }, + "Status": { + "enum": [ + "CREATE_IN_PROGRESS", + "DELETE_IN_PROGRESS", + "ACTIVE" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 75, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/InstanceArn", + "/properties/OwnerAccountId", + "/properties/IdentityStoreId", + "/properties/Status" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sso/aws-sso-instance", + "tagging": { + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::SSO::Instance" +} diff --git a/src/cfnlint/data/schemas/providers/eu_west_3/__init__.py b/src/cfnlint/data/schemas/providers/eu_west_3/__init__.py index 70f62f3c0a..5c759638e4 100644 --- a/src/cfnlint/data/schemas/providers/eu_west_3/__init__.py +++ b/src/cfnlint/data/schemas/providers/eu_west_3/__init__.py @@ -1787,7 +1787,6 @@ "aws-sso-application.json", "aws-sso-applicationassignment.json", "aws-sso-assignment.json", - "aws-sso-instance.json", "aws-sso-instanceaccesscontrolattributeconfiguration.json", "aws-sso-permissionset.json", "aws-stepfunctions-activity.json", diff --git a/src/cfnlint/data/schemas/providers/eu_west_3/aws-sso-instance.json b/src/cfnlint/data/schemas/providers/eu_west_3/aws-sso-instance.json new file mode 100644 index 0000000000..26c2ca063a --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_west_3/aws-sso-instance.json @@ -0,0 +1,125 @@ +{ + "additionalProperties": false, + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "[\\w+=,.@-]+", + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "pattern": "[\\w+=,.@-]+", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "sso:CreateInstance", + "sso:DescribeInstance", + "sso:TagResource", + "iam:CreateServiceLinkedRole", + "sso:TagInstance", + "sso:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "sso:DeleteInstance" + ] + }, + "list": { + "permissions": [ + "sso:ListInstances" + ] + }, + "read": { + "permissions": [ + "sso:DescribeInstance", + "sso:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "sso:UpdateInstance", + "sso:TagResource", + "sso:UntagResource", + "sso:ListTagsForResource", + "sso:TagInstance", + "sso:DescribeInstance" + ] + } + }, + "primaryIdentifier": [ + "/properties/InstanceArn" + ], + "properties": { + "IdentityStoreId": { + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-]*$", + "type": "string" + }, + "InstanceArn": { + "maxLength": 1224, + "minLength": 10, + "pattern": "^arn:(aws|aws-us-gov|aws-cn|aws-iso|aws-iso-b):sso:::instance/(sso)?ins-[a-zA-Z0-9-.]{16}$", + "type": "string" + }, + "Name": { + "maxLength": 32, + "minLength": 1, + "pattern": "^[\\w+=,.@-]+$", + "type": "string" + }, + "OwnerAccountId": { + "maxLength": 12, + "minLength": 12, + "pattern": "^\\d{12}?$", + "type": "string" + }, + "Status": { + "enum": [ + "CREATE_IN_PROGRESS", + "DELETE_IN_PROGRESS", + "ACTIVE" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 75, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/InstanceArn", + "/properties/OwnerAccountId", + "/properties/IdentityStoreId", + "/properties/Status" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sso/aws-sso-instance", + "tagging": { + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::SSO::Instance" +} diff --git a/src/cfnlint/data/schemas/providers/il_central_1/__init__.py b/src/cfnlint/data/schemas/providers/il_central_1/__init__.py index a58343d9da..455c9e4e9d 100644 --- a/src/cfnlint/data/schemas/providers/il_central_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/il_central_1/__init__.py @@ -1176,7 +1176,6 @@ "aws-sso-application.json", "aws-sso-applicationassignment.json", "aws-sso-assignment.json", - "aws-sso-instance.json", "aws-sso-instanceaccesscontrolattributeconfiguration.json", "aws-sso-permissionset.json", "aws-stepfunctions-activity.json", diff --git a/src/cfnlint/data/schemas/providers/il_central_1/aws-sso-instance.json b/src/cfnlint/data/schemas/providers/il_central_1/aws-sso-instance.json new file mode 100644 index 0000000000..26c2ca063a --- /dev/null +++ b/src/cfnlint/data/schemas/providers/il_central_1/aws-sso-instance.json @@ -0,0 +1,125 @@ +{ + "additionalProperties": false, + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "[\\w+=,.@-]+", + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "pattern": "[\\w+=,.@-]+", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "sso:CreateInstance", + "sso:DescribeInstance", + "sso:TagResource", + "iam:CreateServiceLinkedRole", + "sso:TagInstance", + "sso:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "sso:DeleteInstance" + ] + }, + "list": { + "permissions": [ + "sso:ListInstances" + ] + }, + "read": { + "permissions": [ + "sso:DescribeInstance", + "sso:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "sso:UpdateInstance", + "sso:TagResource", + "sso:UntagResource", + "sso:ListTagsForResource", + "sso:TagInstance", + "sso:DescribeInstance" + ] + } + }, + "primaryIdentifier": [ + "/properties/InstanceArn" + ], + "properties": { + "IdentityStoreId": { + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-]*$", + "type": "string" + }, + "InstanceArn": { + "maxLength": 1224, + "minLength": 10, + "pattern": "^arn:(aws|aws-us-gov|aws-cn|aws-iso|aws-iso-b):sso:::instance/(sso)?ins-[a-zA-Z0-9-.]{16}$", + "type": "string" + }, + "Name": { + "maxLength": 32, + "minLength": 1, + "pattern": "^[\\w+=,.@-]+$", + "type": "string" + }, + "OwnerAccountId": { + "maxLength": 12, + "minLength": 12, + "pattern": "^\\d{12}?$", + "type": "string" + }, + "Status": { + "enum": [ + "CREATE_IN_PROGRESS", + "DELETE_IN_PROGRESS", + "ACTIVE" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 75, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/InstanceArn", + "/properties/OwnerAccountId", + "/properties/IdentityStoreId", + "/properties/Status" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sso/aws-sso-instance", + "tagging": { + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::SSO::Instance" +} diff --git a/src/cfnlint/data/schemas/providers/me_central_1/__init__.py b/src/cfnlint/data/schemas/providers/me_central_1/__init__.py index 6fa2a9847c..7622ceca14 100644 --- a/src/cfnlint/data/schemas/providers/me_central_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/me_central_1/__init__.py @@ -1223,7 +1223,6 @@ "aws-sso-application.json", "aws-sso-applicationassignment.json", "aws-sso-assignment.json", - "aws-sso-instance.json", "aws-sso-instanceaccesscontrolattributeconfiguration.json", "aws-sso-permissionset.json", "aws-stepfunctions-activity.json", diff --git a/src/cfnlint/data/schemas/providers/me_central_1/aws-sso-instance.json b/src/cfnlint/data/schemas/providers/me_central_1/aws-sso-instance.json new file mode 100644 index 0000000000..26c2ca063a --- /dev/null +++ b/src/cfnlint/data/schemas/providers/me_central_1/aws-sso-instance.json @@ -0,0 +1,125 @@ +{ + "additionalProperties": false, + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "[\\w+=,.@-]+", + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "pattern": "[\\w+=,.@-]+", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "sso:CreateInstance", + "sso:DescribeInstance", + "sso:TagResource", + "iam:CreateServiceLinkedRole", + "sso:TagInstance", + "sso:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "sso:DeleteInstance" + ] + }, + "list": { + "permissions": [ + "sso:ListInstances" + ] + }, + "read": { + "permissions": [ + "sso:DescribeInstance", + "sso:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "sso:UpdateInstance", + "sso:TagResource", + "sso:UntagResource", + "sso:ListTagsForResource", + "sso:TagInstance", + "sso:DescribeInstance" + ] + } + }, + "primaryIdentifier": [ + "/properties/InstanceArn" + ], + "properties": { + "IdentityStoreId": { + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-]*$", + "type": "string" + }, + "InstanceArn": { + "maxLength": 1224, + "minLength": 10, + "pattern": "^arn:(aws|aws-us-gov|aws-cn|aws-iso|aws-iso-b):sso:::instance/(sso)?ins-[a-zA-Z0-9-.]{16}$", + "type": "string" + }, + "Name": { + "maxLength": 32, + "minLength": 1, + "pattern": "^[\\w+=,.@-]+$", + "type": "string" + }, + "OwnerAccountId": { + "maxLength": 12, + "minLength": 12, + "pattern": "^\\d{12}?$", + "type": "string" + }, + "Status": { + "enum": [ + "CREATE_IN_PROGRESS", + "DELETE_IN_PROGRESS", + "ACTIVE" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 75, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/InstanceArn", + "/properties/OwnerAccountId", + "/properties/IdentityStoreId", + "/properties/Status" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sso/aws-sso-instance", + "tagging": { + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::SSO::Instance" +} diff --git a/src/cfnlint/data/schemas/providers/me_south_1/__init__.py b/src/cfnlint/data/schemas/providers/me_south_1/__init__.py index 822f573d71..a69f34ec5f 100644 --- a/src/cfnlint/data/schemas/providers/me_south_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/me_south_1/__init__.py @@ -939,6 +939,7 @@ "aws-codedeploy-application.json", "aws-codedeploy-deploymentconfig.json", "aws-codedeploy-deploymentgroup.json", + "aws-codepipeline-pipeline.json", "aws-codestarnotifications-notificationrule.json", "aws-cognito-identitypool.json", "aws-cognito-identitypoolprincipaltag.json", @@ -1402,7 +1403,6 @@ "aws-sagemaker-appimageconfig.json", "aws-sagemaker-coderepository.json", "aws-sagemaker-dataqualityjobdefinition.json", - "aws-sagemaker-domain.json", "aws-sagemaker-endpoint.json", "aws-sagemaker-endpointconfig.json", "aws-sagemaker-featuregroup.json", @@ -1422,7 +1422,6 @@ "aws-sagemaker-pipeline.json", "aws-sagemaker-project.json", "aws-sagemaker-space.json", - "aws-sagemaker-userprofile.json", "aws-sagemaker-workteam.json", "aws-scheduler-schedule.json", "aws-scheduler-schedulegroup.json", @@ -1488,7 +1487,6 @@ "aws-sso-application.json", "aws-sso-applicationassignment.json", "aws-sso-assignment.json", - "aws-sso-instance.json", "aws-sso-instanceaccesscontrolattributeconfiguration.json", "aws-sso-permissionset.json", "aws-stepfunctions-activity.json", diff --git a/src/cfnlint/data/schemas/providers/me_south_1/aws-codepipeline-pipeline.json b/src/cfnlint/data/schemas/providers/me_south_1/aws-codepipeline-pipeline.json deleted file mode 100644 index 925fbfe118..0000000000 --- a/src/cfnlint/data/schemas/providers/me_south_1/aws-codepipeline-pipeline.json +++ /dev/null @@ -1,505 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Name" - ], - "definitions": { - "ActionDeclaration": { - "additionalProperties": false, - "properties": { - "ActionTypeId": { - "$ref": "#/definitions/ActionTypeId" - }, - "Configuration": { - "format": "json", - "type": [ - "object", - "string" - ] - }, - "InputArtifacts": { - "items": { - "$ref": "#/definitions/InputArtifact" - }, - "type": "array", - "uniqueItems": true - }, - "Name": { - "type": "string" - }, - "Namespace": { - "type": "string" - }, - "OutputArtifacts": { - "items": { - "$ref": "#/definitions/OutputArtifact" - }, - "type": "array", - "uniqueItems": true - }, - "Region": { - "type": "string" - }, - "RoleArn": { - "type": "string" - }, - "RunOrder": { - "type": "integer" - }, - "TimeoutInMinutes": { - "type": "integer" - } - }, - "required": [ - "ActionTypeId", - "Name" - ], - "type": "object" - }, - "ActionTypeId": { - "additionalProperties": false, - "properties": { - "Category": { - "enum": [ - "Approval", - "Build", - "Deploy", - "Invoke", - "Source", - "Test" - ], - "type": "string" - }, - "Owner": { - "enum": [ - "AWS", - "Custom", - "ThirdParty" - ], - "type": "string" - }, - "Provider": { - "type": "string" - }, - "Version": { - "type": "string" - } - }, - "required": [ - "Owner", - "Category", - "Version", - "Provider" - ], - "type": "object" - }, - "ArtifactStore": { - "additionalProperties": false, - "properties": { - "EncryptionKey": { - "$ref": "#/definitions/EncryptionKey" - }, - "Location": { - "type": "string" - }, - "Type": { - "enum": [ - "S3" - ], - "type": "string" - } - }, - "required": [ - "Type", - "Location" - ], - "type": "object" - }, - "ArtifactStoreMap": { - "additionalProperties": false, - "properties": { - "ArtifactStore": { - "$ref": "#/definitions/ArtifactStore" - }, - "Region": { - "type": "string" - } - }, - "required": [ - "ArtifactStore", - "Region" - ], - "type": "object" - }, - "BlockerDeclaration": { - "additionalProperties": false, - "properties": { - "Name": { - "type": "string" - }, - "Type": { - "enum": [ - "Schedule" - ], - "type": "string" - } - }, - "required": [ - "Type", - "Name" - ], - "type": "object" - }, - "EncryptionKey": { - "additionalProperties": false, - "properties": { - "Id": { - "type": "string" - }, - "Type": { - "type": "string" - } - }, - "required": [ - "Type", - "Id" - ], - "type": "object" - }, - "FailureConditions": { - "additionalProperties": false, - "properties": { - "Result": { - "type": "string" - } - }, - "required": [ - "Result" - ], - "type": "object" - }, - "GitBranchFilterCriteria": { - "additionalProperties": false, - "properties": { - "Excludes": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "Includes": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - } - }, - "type": "object" - }, - "GitConfiguration": { - "additionalProperties": false, - "properties": { - "PullRequest": { - "items": { - "$ref": "#/definitions/GitPullRequestFilter" - }, - "type": "array", - "uniqueItems": true - }, - "Push": { - "items": { - "$ref": "#/definitions/GitPushFilter" - }, - "type": "array", - "uniqueItems": true - }, - "SourceActionName": { - "type": "string" - } - }, - "required": [ - "SourceActionName" - ], - "type": "object" - }, - "GitFilePathFilterCriteria": { - "additionalProperties": false, - "properties": { - "Excludes": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "Includes": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - } - }, - "type": "object" - }, - "GitPullRequestFilter": { - "additionalProperties": false, - "properties": { - "Branches": { - "$ref": "#/definitions/GitBranchFilterCriteria" - }, - "Events": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "FilePaths": { - "$ref": "#/definitions/GitFilePathFilterCriteria" - } - }, - "type": "object" - }, - "GitPushFilter": { - "additionalProperties": false, - "properties": { - "Branches": { - "$ref": "#/definitions/GitBranchFilterCriteria" - }, - "FilePaths": { - "$ref": "#/definitions/GitFilePathFilterCriteria" - }, - "Tags": { - "$ref": "#/definitions/GitTagFilterCriteria" - } - }, - "type": "object" - }, - "GitTagFilterCriteria": { - "additionalProperties": false, - "properties": { - "Excludes": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - }, - "Includes": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": true - } - }, - "type": "object" - }, - "InputArtifact": { - "additionalProperties": false, - "properties": { - "Name": { - "type": "string" - } - }, - "required": [ - "Name" - ], - "type": "object" - }, - "OutputArtifact": { - "additionalProperties": false, - "properties": { - "Name": { - "type": "string" - } - }, - "required": [ - "Name" - ], - "type": "object" - }, - "PipelineTriggerDeclaration": { - "additionalProperties": false, - "properties": { - "GitConfiguration": { - "$ref": "#/definitions/GitConfiguration" - }, - "ProviderType": { - "type": "string" - } - }, - "required": [ - "ProviderType" - ], - "type": "object" - }, - "StageDeclaration": { - "additionalProperties": false, - "properties": { - "Actions": { - "items": { - "$ref": "#/definitions/ActionDeclaration" - }, - "type": "array", - "uniqueItems": true - }, - "Blockers": { - "items": { - "$ref": "#/definitions/BlockerDeclaration" - }, - "type": "array", - "uniqueItems": true - }, - "Name": { - "type": "string" - }, - "OnFailure": { - "$ref": "#/definitions/FailureConditions" - } - }, - "required": [ - "Actions", - "Name" - ], - "type": "object" - }, - "StageTransition": { - "additionalProperties": false, - "properties": { - "Reason": { - "type": "string" - }, - "StageName": { - "type": "string" - } - }, - "required": [ - "StageName", - "Reason" - ], - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "required": [ - "Value", - "Key" - ], - "type": "object" - }, - "VariableDeclaration": { - "additionalProperties": false, - "properties": { - "DefaultValue": { - "type": "string" - }, - "Description": { - "type": "string" - }, - "Name": { - "type": "string" - } - }, - "required": [ - "Name" - ], - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "ArtifactStore": { - "$ref": "#/definitions/ArtifactStore" - }, - "ArtifactStores": { - "items": { - "$ref": "#/definitions/ArtifactStoreMap" - }, - "type": "array", - "uniqueItems": true - }, - "DisableInboundStageTransitions": { - "items": { - "$ref": "#/definitions/StageTransition" - }, - "type": "array", - "uniqueItems": true - }, - "ExecutionMode": { - "type": "string" - }, - "Id": { - "type": "string" - }, - "Name": { - "type": "string" - }, - "PipelineType": { - "type": "string" - }, - "RestartExecutionOnUpdate": { - "type": "boolean" - }, - "RoleArn": { - "type": "string" - }, - "Stages": { - "items": { - "$ref": "#/definitions/StageDeclaration" - }, - "type": "array", - "uniqueItems": true - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "type": "array", - "uniqueItems": false - }, - "Triggers": { - "items": { - "$ref": "#/definitions/PipelineTriggerDeclaration" - }, - "type": "array", - "uniqueItems": true - }, - "Variables": { - "items": { - "$ref": "#/definitions/VariableDeclaration" - }, - "type": "array", - "uniqueItems": true - }, - "Version": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id", - "/properties/Version" - ], - "required": [ - "Stages", - "RoleArn" - ], - "requiredXor": [ - "ArtifactStore", - "ArtifactStores" - ], - "typeName": "AWS::CodePipeline::Pipeline" -} diff --git a/src/cfnlint/data/schemas/providers/me_south_1/aws-sagemaker-domain.json b/src/cfnlint/data/schemas/providers/me_south_1/aws-sagemaker-domain.json new file mode 100644 index 0000000000..5cd4ea45fa --- /dev/null +++ b/src/cfnlint/data/schemas/providers/me_south_1/aws-sagemaker-domain.json @@ -0,0 +1,831 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/AuthMode", + "/properties/DomainName", + "/properties/DomainSettings/RStudioServerProDomainSettings/DefaultResourceSpec", + "/properties/KmsKeyId", + "/properties/VpcId", + "/properties/Tags" + ], + "definitions": { + "AppType": { + "enum": [ + "JupyterServer", + "TensorBoard", + "RStudioServerPro", + "JupyterLab", + "CodeEditor", + "DetailedProfiler", + "Canvas" + ], + "type": "string" + }, + "CodeEditorAppSettings": { + "additionalProperties": false, + "properties": { + "CustomImages": { + "items": { + "$ref": "#/definitions/CustomImage" + }, + "maxItems": 200, + "minItems": 0, + "type": "array", + "uniqueItems": false + }, + "DefaultResourceSpec": { + "$ref": "#/definitions/ResourceSpec" + }, + "LifecycleConfigArns": { + "items": { + "$ref": "#/definitions/StudioLifecycleConfigArn" + }, + "maxItems": 30, + "minItems": 0, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "CodeRepository": { + "additionalProperties": false, + "properties": { + "RepositoryUrl": { + "maxLength": 256, + "pattern": "^https://([.\\-_a-zA-Z0-9]+/?){3,1016}$", + "type": "string" + } + }, + "required": [ + "RepositoryUrl" + ], + "type": "object" + }, + "CustomFileSystemConfig": { + "additionalProperties": false, + "properties": { + "EFSFileSystemConfig": { + "$ref": "#/definitions/EFSFileSystemConfig" + } + }, + "type": "object" + }, + "CustomImage": { + "additionalProperties": false, + "properties": { + "AppImageConfigName": { + "maxLength": 63, + "pattern": "^[a-zA-Z0-9](-*[a-zA-Z0-9]){0,62}", + "type": "string" + }, + "ImageName": { + "maxLength": 63, + "pattern": "^[a-zA-Z0-9]([-.]?[a-zA-Z0-9]){0,62}$", + "type": "string" + }, + "ImageVersionNumber": { + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "AppImageConfigName", + "ImageName" + ], + "type": "object" + }, + "CustomPosixUserConfig": { + "additionalProperties": false, + "properties": { + "Gid": { + "maximum": 4000000, + "minimum": 1001, + "type": "integer" + }, + "Uid": { + "maximum": 4000000, + "minimum": 10000, + "type": "integer" + } + }, + "required": [ + "Uid", + "Gid" + ], + "type": "object" + }, + "DefaultEbsStorageSettings": { + "additionalProperties": false, + "properties": { + "DefaultEbsVolumeSizeInGb": { + "$ref": "#/definitions/SpaceEbsVolumeSizeInGb" + }, + "MaximumEbsVolumeSizeInGb": { + "$ref": "#/definitions/SpaceEbsVolumeSizeInGb" + } + }, + "required": [ + "DefaultEbsVolumeSizeInGb", + "MaximumEbsVolumeSizeInGb" + ], + "type": "object" + }, + "DefaultSpaceSettings": { + "additionalProperties": false, + "properties": { + "CustomFileSystemConfigs": { + "items": { + "$ref": "#/definitions/CustomFileSystemConfig" + }, + "maxItems": 2, + "minItems": 0, + "type": "array", + "uniqueItems": true + }, + "CustomPosixUserConfig": { + "$ref": "#/definitions/CustomPosixUserConfig" + }, + "ExecutionRole": { + "maxLength": 2048, + "minLength": 20, + "pattern": "^arn:aws[a-z\\-]*:iam::\\d{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+$", + "type": "string" + }, + "JupyterLabAppSettings": { + "$ref": "#/definitions/JupyterLabAppSettings" + }, + "JupyterServerAppSettings": { + "$ref": "#/definitions/JupyterServerAppSettings" + }, + "KernelGatewayAppSettings": { + "$ref": "#/definitions/KernelGatewayAppSettings" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "insertionOrder": false, + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "maxLength": 32, + "pattern": "[-0-9a-zA-Z]+", + "type": "string" + }, + "maxItems": 5, + "minItems": 0, + "type": "array", + "uniqueItems": false + }, + "SpaceStorageSettings": { + "$ref": "#/definitions/DefaultSpaceStorageSettings" + } + }, + "required": [ + "ExecutionRole" + ], + "type": "object" + }, + "DefaultSpaceStorageSettings": { + "additionalProperties": false, + "properties": { + "DefaultEbsStorageSettings": { + "$ref": "#/definitions/DefaultEbsStorageSettings" + } + }, + "type": "object" + }, + "DockerSettings": { + "additionalProperties": false, + "properties": { + "EnableDockerAccess": { + "enum": [ + "ENABLED", + "DISABLED" + ], + "type": "string" + }, + "VpcOnlyTrustedAccounts": { + "insertionOrder": false, + "items": { + "maxLength": 12, + "minLength": 12, + "pattern": "^\\d+$", + "type": "string" + }, + "maxItems": 20, + "minItems": 0, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "DomainSettings": { + "additionalProperties": false, + "properties": { + "DockerSettings": { + "$ref": "#/definitions/DockerSettings" + }, + "RStudioServerProDomainSettings": { + "$ref": "#/definitions/RStudioServerProDomainSettings" + }, + "SecurityGroupIds": { + "format": "AWS::EC2::SecurityGroup.Ids", + "insertionOrder": false, + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "maxLength": 32, + "pattern": "[-0-9a-zA-Z]+", + "type": "string" + }, + "maxItems": 3, + "minItems": 1, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "EFSFileSystemConfig": { + "additionalProperties": false, + "properties": { + "FileSystemId": { + "maxLength": 21, + "minLength": 11, + "pattern": "^(fs-[0-9a-f]{8,})$", + "type": "string" + }, + "FileSystemPath": { + "maxLength": 256, + "minLength": 1, + "pattern": "^\\/\\S*$", + "type": "string" + } + }, + "required": [ + "FileSystemId" + ], + "type": "object" + }, + "JupyterLabAppSettings": { + "additionalProperties": false, + "properties": { + "CodeRepositories": { + "items": { + "$ref": "#/definitions/CodeRepository" + }, + "maxItems": 30, + "minItems": 0, + "type": "array", + "uniqueItems": false + }, + "CustomImages": { + "items": { + "$ref": "#/definitions/CustomImage" + }, + "maxItems": 200, + "minItems": 0, + "type": "array", + "uniqueItems": false + }, + "DefaultResourceSpec": { + "$ref": "#/definitions/ResourceSpec" + }, + "LifecycleConfigArns": { + "items": { + "$ref": "#/definitions/StudioLifecycleConfigArn" + }, + "maxItems": 30, + "minItems": 0, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "JupyterServerAppSettings": { + "additionalProperties": false, + "properties": { + "DefaultResourceSpec": { + "$ref": "#/definitions/ResourceSpec" + } + }, + "type": "object" + }, + "KernelGatewayAppSettings": { + "additionalProperties": false, + "properties": { + "CustomImages": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/CustomImage" + }, + "maxItems": 200, + "minItems": 0, + "type": "array", + "uniqueItems": false + }, + "DefaultResourceSpec": { + "$ref": "#/definitions/ResourceSpec" + } + }, + "type": "object" + }, + "MlTools": { + "enum": [ + "DataWrangler", + "FeatureStore", + "EmrClusters", + "AutoML", + "Experiments", + "Training", + "ModelEvaluation", + "Pipelines", + "Models", + "JumpStart", + "InferenceRecommender", + "Endpoints", + "Projects" + ], + "type": "string" + }, + "RSessionAppSettings": { + "additionalProperties": false, + "properties": { + "CustomImages": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/CustomImage" + }, + "maxItems": 200, + "minItems": 0, + "type": "array", + "uniqueItems": false + }, + "DefaultResourceSpec": { + "$ref": "#/definitions/ResourceSpec" + } + }, + "type": "object" + }, + "RStudioServerProAppSettings": { + "additionalProperties": false, + "properties": { + "AccessStatus": { + "enum": [ + "ENABLED", + "DISABLED" + ], + "type": "string" + }, + "UserGroup": { + "enum": [ + "R_STUDIO_ADMIN", + "R_STUDIO_USER" + ], + "type": "string" + } + }, + "type": "object" + }, + "RStudioServerProDomainSettings": { + "additionalProperties": false, + "properties": { + "DefaultResourceSpec": { + "$ref": "#/definitions/ResourceSpec" + }, + "DomainExecutionRoleArn": { + "maxLength": 2048, + "minLength": 20, + "pattern": "^arn:aws[a-z\\-]*:iam::\\d{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+$", + "type": "string" + }, + "RStudioConnectUrl": { + "pattern": "^(https:|http:|www\\.)\\S*", + "type": "string" + }, + "RStudioPackageManagerUrl": { + "pattern": "^(https:|http:|www\\.)\\S*", + "type": "string" + } + }, + "required": [ + "DomainExecutionRoleArn" + ], + "type": "object" + }, + "ResourceSpec": { + "additionalProperties": false, + "properties": { + "InstanceType": { + "enum": [ + "system", + "ml.t3.micro", + "ml.t3.small", + "ml.t3.medium", + "ml.t3.large", + "ml.t3.xlarge", + "ml.t3.2xlarge", + "ml.m5.large", + "ml.m5.xlarge", + "ml.m5.2xlarge", + "ml.m5.4xlarge", + "ml.m5.8xlarge", + "ml.m5.12xlarge", + "ml.m5.16xlarge", + "ml.m5.24xlarge", + "ml.c5.large", + "ml.c5.xlarge", + "ml.c5.2xlarge", + "ml.c5.4xlarge", + "ml.c5.9xlarge", + "ml.c5.12xlarge", + "ml.c5.18xlarge", + "ml.c5.24xlarge", + "ml.p3.2xlarge", + "ml.p3.8xlarge", + "ml.p3.16xlarge", + "ml.g4dn.xlarge", + "ml.g4dn.2xlarge", + "ml.g4dn.4xlarge", + "ml.g4dn.8xlarge", + "ml.g4dn.12xlarge", + "ml.g4dn.16xlarge", + "ml.r5.large", + "ml.r5.xlarge", + "ml.r5.2xlarge", + "ml.r5.4xlarge", + "ml.r5.8xlarge", + "ml.r5.12xlarge", + "ml.r5.16xlarge", + "ml.r5.24xlarge", + "ml.p3dn.24xlarge", + "ml.m5d.large", + "ml.m5d.xlarge", + "ml.m5d.2xlarge", + "ml.m5d.4xlarge", + "ml.m5d.8xlarge", + "ml.m5d.12xlarge", + "ml.m5d.16xlarge", + "ml.m5d.24xlarge", + "ml.g5.xlarge", + "ml.g5.2xlarge", + "ml.g5.4xlarge", + "ml.g5.8xlarge", + "ml.g5.12xlarge", + "ml.g5.16xlarge", + "ml.g5.24xlarge", + "ml.g5.48xlarge", + "ml.p4d.24xlarge", + "ml.p4de.24xlarge", + "ml.geospatial.interactive", + "ml.trn1.2xlarge", + "ml.trn1.32xlarge", + "ml.trn1n.32xlarge" + ], + "type": "string" + }, + "LifecycleConfigArn": { + "maxLength": 256, + "pattern": "arn:aws[a-z\\-]*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:studio-lifecycle-config/.*", + "type": "string" + }, + "SageMakerImageArn": { + "maxLength": 256, + "pattern": "^arn:aws(-[\\w]+)*:sagemaker:.+:[0-9]{12}:image/[a-z0-9]([-.]?[a-z0-9])*$", + "type": "string" + }, + "SageMakerImageVersionArn": { + "maxLength": 256, + "pattern": "^arn:aws(-[\\w]+)*:sagemaker:.+:[0-9]{12}:image-version/[a-z0-9]([-.]?[a-z0-9])*/[0-9]+$", + "type": "string" + } + }, + "type": "object" + }, + "SharingSettings": { + "additionalProperties": false, + "properties": { + "NotebookOutputOption": { + "enum": [ + "Allowed", + "Disabled" + ], + "type": "string" + }, + "S3KmsKeyId": { + "maxLength": 2048, + "pattern": ".*", + "type": "string" + }, + "S3OutputPath": { + "maxLength": 1024, + "pattern": "^(https|s3)://([^/]+)/?(.*)$", + "type": "string" + } + }, + "type": "object" + }, + "SpaceEbsVolumeSizeInGb": { + "maximum": 16384, + "minimum": 5, + "type": "integer" + }, + "StudioLifecycleConfigArn": { + "maxLength": 256, + "pattern": "arn:aws[a-z\\-]*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:studio-lifecycle-config/.*", + "type": "string" + }, + "StudioWebPortalSettings": { + "additionalProperties": false, + "properties": { + "HiddenAppTypes": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/AppType" + }, + "minItems": 0, + "type": "array", + "uniqueItems": true + }, + "HiddenMlTools": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/MlTools" + }, + "minItems": 0, + "type": "array", + "uniqueItems": true + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 128, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "UserSettings": { + "additionalProperties": false, + "properties": { + "CodeEditorAppSettings": { + "$ref": "#/definitions/CodeEditorAppSettings" + }, + "CustomFileSystemConfigs": { + "items": { + "$ref": "#/definitions/CustomFileSystemConfig" + }, + "maxItems": 2, + "minItems": 0, + "type": "array", + "uniqueItems": true + }, + "CustomPosixUserConfig": { + "$ref": "#/definitions/CustomPosixUserConfig" + }, + "DefaultLandingUri": { + "maxLength": 1023, + "type": "string" + }, + "ExecutionRole": { + "maxLength": 2048, + "minLength": 20, + "pattern": "^arn:aws[a-z\\-]*:iam::\\d{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+$", + "type": "string" + }, + "JupyterLabAppSettings": { + "$ref": "#/definitions/JupyterLabAppSettings" + }, + "JupyterServerAppSettings": { + "$ref": "#/definitions/JupyterServerAppSettings" + }, + "KernelGatewayAppSettings": { + "$ref": "#/definitions/KernelGatewayAppSettings" + }, + "RSessionAppSettings": { + "$ref": "#/definitions/RSessionAppSettings" + }, + "RStudioServerProAppSettings": { + "$ref": "#/definitions/RStudioServerProAppSettings" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "insertionOrder": false, + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "maxLength": 32, + "pattern": "[-0-9a-zA-Z]+", + "type": "string" + }, + "maxItems": 5, + "minItems": 0, + "type": "array", + "uniqueItems": false + }, + "SharingSettings": { + "$ref": "#/definitions/SharingSettings" + }, + "SpaceStorageSettings": { + "$ref": "#/definitions/DefaultSpaceStorageSettings" + }, + "StudioWebPortal": { + "enum": [ + "ENABLED", + "DISABLED" + ], + "type": "string" + }, + "StudioWebPortalSettings": { + "$ref": "#/definitions/StudioWebPortalSettings" + } + }, + "required": [ + "ExecutionRole" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "sagemaker:CreateApp", + "sagemaker:CreateDomain", + "sagemaker:DescribeDomain", + "sagemaker:DescribeImage", + "sagemaker:DescribeImageVersion", + "iam:CreateServiceLinkedRole", + "iam:PassRole", + "efs:CreateFileSystem", + "kms:CreateGrant", + "kms:Decrypt", + "kms:DescribeKey", + "kms:GenerateDataKeyWithoutPlainText" + ] + }, + "delete": { + "permissions": [ + "sagemaker:DeleteApp", + "sagemaker:DeleteDomain", + "sagemaker:DescribeDomain" + ] + }, + "list": { + "permissions": [ + "sagemaker:ListDomains" + ] + }, + "read": { + "permissions": [ + "sagemaker:DescribeDomain" + ] + }, + "update": { + "permissions": [ + "sagemaker:CreateApp", + "sagemaker:UpdateDomain", + "sagemaker:DescribeDomain", + "sagemaker:DescribeImage", + "sagemaker:DescribeImageVersion", + "iam:PassRole" + ] + } + }, + "primaryIdentifier": [ + "/properties/DomainId" + ], + "properties": { + "AppNetworkAccessType": { + "enum": [ + "PublicInternetOnly", + "VpcOnly" + ], + "type": "string" + }, + "AppSecurityGroupManagement": { + "enum": [ + "Service", + "Customer" + ], + "type": "string" + }, + "AuthMode": { + "enum": [ + "SSO", + "IAM" + ], + "type": "string" + }, + "DefaultSpaceSettings": { + "$ref": "#/definitions/DefaultSpaceSettings" + }, + "DefaultUserSettings": { + "$ref": "#/definitions/UserSettings" + }, + "DomainArn": { + "maxLength": 256, + "pattern": "arn:aws[a-z\\-]*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:domain/.*", + "type": "string" + }, + "DomainId": { + "maxLength": 63, + "pattern": "^d-(-*[a-z0-9])+", + "type": "string" + }, + "DomainName": { + "maxLength": 63, + "pattern": "^[a-zA-Z0-9](-*[a-zA-Z0-9]){0,62}", + "type": "string" + }, + "DomainSettings": { + "$ref": "#/definitions/DomainSettings" + }, + "HomeEfsFileSystemId": { + "maxLength": 32, + "type": "string" + }, + "KmsKeyId": { + "maxLength": 2048, + "pattern": ".*", + "type": "string" + }, + "SecurityGroupIdForDomainBoundary": { + "maxLength": 32, + "pattern": "[-0-9a-zA-Z]+", + "type": "string" + }, + "SingleSignOnApplicationArn": { + "pattern": "^arn:(aws|aws-us-gov|aws-cn|aws-iso|aws-iso-b):sso::[0-9]+:application/[a-zA-Z0-9-_.]+/apl-[a-zA-Z0-9]+$", + "type": "string" + }, + "SingleSignOnManagedApplicationInstanceId": { + "maxLength": 256, + "type": "string" + }, + "SubnetIds": { + "insertionOrder": false, + "items": { + "maxLength": 32, + "pattern": "[-0-9a-zA-Z]+", + "type": "string" + }, + "maxItems": 16, + "minItems": 1, + "type": "array", + "uniqueItems": false + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 50, + "minItems": 0, + "type": "array", + "uniqueItems": false + }, + "Url": { + "maxLength": 1024, + "type": "string" + }, + "VpcId": { + "format": "AWS::EC2::VPC.Id", + "maxLength": 32, + "pattern": "[-0-9a-zA-Z]+", + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/DomainArn", + "/properties/Url", + "/properties/DomainId", + "/properties/HomeEfsFileSystemId", + "/properties/SecurityGroupIdForDomainBoundary", + "/properties/SingleSignOnManagedApplicationInstanceId", + "/properties/SingleSignOnApplicationArn" + ], + "required": [ + "AuthMode", + "DefaultUserSettings", + "DomainName", + "SubnetIds", + "VpcId" + ], + "typeName": "AWS::SageMaker::Domain", + "writeOnlyProperties": [ + "/properties/Tags" + ] +} diff --git a/src/cfnlint/data/schemas/providers/me_south_1/aws-sagemaker-userprofile.json b/src/cfnlint/data/schemas/providers/me_south_1/aws-sagemaker-userprofile.json new file mode 100644 index 0000000000..c2c0daf9fe --- /dev/null +++ b/src/cfnlint/data/schemas/providers/me_south_1/aws-sagemaker-userprofile.json @@ -0,0 +1,592 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/DomainId", + "/properties/UserProfileName", + "/properties/SingleSignOnUserIdentifier", + "/properties/SingleSignOnUserValue", + "/properties/UserSettings/RStudioServerProAppSettings/AccessStatus", + "/properties/UserSettings/RStudioServerProAppSettings/UserGroup", + "/properties/Tags" + ], + "definitions": { + "AppType": { + "enum": [ + "JupyterServer", + "TensorBoard", + "RStudioServerPro", + "JupyterLab", + "CodeEditor", + "DetailedProfiler", + "Canvas" + ], + "type": "string" + }, + "CodeEditorAppSettings": { + "additionalProperties": false, + "properties": { + "CustomImages": { + "items": { + "$ref": "#/definitions/CustomImage" + }, + "maxItems": 30, + "minItems": 0, + "type": "array", + "uniqueItems": false + }, + "DefaultResourceSpec": { + "$ref": "#/definitions/ResourceSpec" + }, + "LifecycleConfigArns": { + "items": { + "$ref": "#/definitions/StudioLifecycleConfigArn" + }, + "maxItems": 30, + "minItems": 0, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "CodeRepository": { + "additionalProperties": false, + "properties": { + "RepositoryUrl": { + "maxLength": 256, + "pattern": "^https://([.\\-_a-zA-Z0-9]+/?){3,1016}$", + "type": "string" + } + }, + "required": [ + "RepositoryUrl" + ], + "type": "object" + }, + "CustomFileSystemConfig": { + "additionalProperties": false, + "properties": { + "EFSFileSystemConfig": { + "$ref": "#/definitions/EFSFileSystemConfig" + } + }, + "type": "object" + }, + "CustomImage": { + "additionalProperties": false, + "properties": { + "AppImageConfigName": { + "maxLength": 63, + "pattern": "^[a-zA-Z0-9](-*[a-zA-Z0-9]){0,62}", + "type": "string" + }, + "ImageName": { + "maxLength": 63, + "pattern": "^[a-zA-Z0-9]([-.]?[a-zA-Z0-9]){0,62}$", + "type": "string" + }, + "ImageVersionNumber": { + "minimum": 0, + "type": "integer" + } + }, + "required": [ + "AppImageConfigName", + "ImageName" + ], + "type": "object" + }, + "CustomPosixUserConfig": { + "additionalProperties": false, + "properties": { + "Gid": { + "maximum": 4000000, + "minimum": 1001, + "type": "integer" + }, + "Uid": { + "maximum": 4000000, + "minimum": 10000, + "type": "integer" + } + }, + "required": [ + "Uid", + "Gid" + ], + "type": "object" + }, + "DefaultEbsStorageSettings": { + "additionalProperties": false, + "properties": { + "DefaultEbsVolumeSizeInGb": { + "$ref": "#/definitions/SpaceEbsVolumeSizeInGb" + }, + "MaximumEbsVolumeSizeInGb": { + "$ref": "#/definitions/SpaceEbsVolumeSizeInGb" + } + }, + "required": [ + "DefaultEbsVolumeSizeInGb", + "MaximumEbsVolumeSizeInGb" + ], + "type": "object" + }, + "DefaultSpaceStorageSettings": { + "additionalProperties": false, + "properties": { + "DefaultEbsStorageSettings": { + "$ref": "#/definitions/DefaultEbsStorageSettings" + } + }, + "type": "object" + }, + "EFSFileSystemConfig": { + "additionalProperties": false, + "properties": { + "FileSystemId": { + "maxLength": 21, + "minLength": 11, + "pattern": "^(fs-[0-9a-f]{8,})$", + "type": "string" + }, + "FileSystemPath": { + "maxLength": 256, + "minLength": 1, + "pattern": "^\\/\\S*$", + "type": "string" + } + }, + "required": [ + "FileSystemId" + ], + "type": "object" + }, + "JupyterLabAppSettings": { + "additionalProperties": false, + "properties": { + "CodeRepositories": { + "items": { + "$ref": "#/definitions/CodeRepository" + }, + "maxItems": 30, + "minItems": 0, + "type": "array", + "uniqueItems": false + }, + "CustomImages": { + "items": { + "$ref": "#/definitions/CustomImage" + }, + "maxItems": 30, + "minItems": 0, + "type": "array", + "uniqueItems": false + }, + "DefaultResourceSpec": { + "$ref": "#/definitions/ResourceSpec" + }, + "LifecycleConfigArns": { + "items": { + "$ref": "#/definitions/StudioLifecycleConfigArn" + }, + "maxItems": 30, + "minItems": 0, + "type": "array", + "uniqueItems": false + } + }, + "type": "object" + }, + "JupyterServerAppSettings": { + "additionalProperties": false, + "properties": { + "DefaultResourceSpec": { + "$ref": "#/definitions/ResourceSpec" + } + }, + "type": "object" + }, + "KernelGatewayAppSettings": { + "additionalProperties": false, + "properties": { + "CustomImages": { + "items": { + "$ref": "#/definitions/CustomImage" + }, + "maxItems": 30, + "minItems": 0, + "type": "array", + "uniqueItems": false + }, + "DefaultResourceSpec": { + "$ref": "#/definitions/ResourceSpec" + } + }, + "type": "object" + }, + "MlTools": { + "enum": [ + "DataWrangler", + "FeatureStore", + "EmrClusters", + "AutoML", + "Experiments", + "Training", + "ModelEvaluation", + "Pipelines", + "Models", + "JumpStart", + "InferenceRecommender", + "Endpoints", + "Projects" + ], + "type": "string" + }, + "RStudioServerProAppSettings": { + "additionalProperties": false, + "properties": { + "AccessStatus": { + "enum": [ + "ENABLED", + "DISABLED" + ], + "type": "string" + }, + "UserGroup": { + "enum": [ + "R_STUDIO_ADMIN", + "R_STUDIO_USER" + ], + "type": "string" + } + }, + "type": "object" + }, + "ResourceSpec": { + "additionalProperties": false, + "properties": { + "InstanceType": { + "enum": [ + "system", + "ml.t3.micro", + "ml.t3.small", + "ml.t3.medium", + "ml.t3.large", + "ml.t3.xlarge", + "ml.t3.2xlarge", + "ml.m5.large", + "ml.m5.xlarge", + "ml.m5.2xlarge", + "ml.m5.4xlarge", + "ml.m5.8xlarge", + "ml.m5.12xlarge", + "ml.m5.16xlarge", + "ml.m5.24xlarge", + "ml.c5.large", + "ml.c5.xlarge", + "ml.c5.2xlarge", + "ml.c5.4xlarge", + "ml.c5.9xlarge", + "ml.c5.12xlarge", + "ml.c5.18xlarge", + "ml.c5.24xlarge", + "ml.p3.2xlarge", + "ml.p3.8xlarge", + "ml.p3.16xlarge", + "ml.g4dn.xlarge", + "ml.g4dn.2xlarge", + "ml.g4dn.4xlarge", + "ml.g4dn.8xlarge", + "ml.g4dn.12xlarge", + "ml.g4dn.16xlarge", + "ml.r5.large", + "ml.r5.xlarge", + "ml.r5.2xlarge", + "ml.r5.4xlarge", + "ml.r5.8xlarge", + "ml.r5.12xlarge", + "ml.r5.16xlarge", + "ml.r5.24xlarge", + "ml.p3dn.24xlarge", + "ml.m5d.large", + "ml.m5d.xlarge", + "ml.m5d.2xlarge", + "ml.m5d.4xlarge", + "ml.m5d.8xlarge", + "ml.m5d.12xlarge", + "ml.m5d.16xlarge", + "ml.m5d.24xlarge", + "ml.g5.xlarge", + "ml.g5.2xlarge", + "ml.g5.4xlarge", + "ml.g5.8xlarge", + "ml.g5.12xlarge", + "ml.g5.16xlarge", + "ml.g5.24xlarge", + "ml.g5.48xlarge", + "ml.p4d.24xlarge", + "ml.p4de.24xlarge", + "ml.geospatial.interactive", + "ml.trn1.2xlarge", + "ml.trn1.32xlarge", + "ml.trn1n.32xlarge" + ], + "type": "string" + }, + "SageMakerImageArn": { + "maxLength": 256, + "pattern": "^arn:aws(-[\\w]+)*:sagemaker:.+:[0-9]{12}:image/[a-z0-9]([-.]?[a-z0-9])*$", + "type": "string" + }, + "SageMakerImageVersionArn": { + "maxLength": 256, + "pattern": "^arn:aws(-[\\w]+)*:sagemaker:.+:[0-9]{12}:image-version/[a-z0-9]([-.]?[a-z0-9])*/[0-9]+$", + "type": "string" + } + }, + "type": "object" + }, + "SharingSettings": { + "additionalProperties": false, + "properties": { + "NotebookOutputOption": { + "enum": [ + "Allowed", + "Disabled" + ], + "type": "string" + }, + "S3KmsKeyId": { + "maxLength": 2048, + "pattern": ".*", + "type": "string" + }, + "S3OutputPath": { + "maxLength": 1024, + "pattern": "^(https|s3)://([^/]+)/?(.*)$", + "type": "string" + } + }, + "type": "object" + }, + "SpaceEbsVolumeSizeInGb": { + "maximum": 16384, + "minimum": 5, + "type": "integer" + }, + "StudioLifecycleConfigArn": { + "maxLength": 256, + "pattern": "arn:aws[a-z\\-]*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:studio-lifecycle-config/.*", + "type": "string" + }, + "StudioWebPortalSettings": { + "additionalProperties": false, + "properties": { + "HiddenAppTypes": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/AppType" + }, + "minItems": 0, + "type": "array", + "uniqueItems": true + }, + "HiddenMlTools": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/MlTools" + }, + "minItems": 0, + "type": "array", + "uniqueItems": true + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 128, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "UserSettings": { + "additionalProperties": false, + "properties": { + "CodeEditorAppSettings": { + "$ref": "#/definitions/CodeEditorAppSettings" + }, + "CustomFileSystemConfigs": { + "items": { + "$ref": "#/definitions/CustomFileSystemConfig" + }, + "maxItems": 2, + "minItems": 0, + "type": "array", + "uniqueItems": true + }, + "CustomPosixUserConfig": { + "$ref": "#/definitions/CustomPosixUserConfig" + }, + "DefaultLandingUri": { + "maxLength": 1023, + "type": "string" + }, + "ExecutionRole": { + "maxLength": 2048, + "minLength": 20, + "pattern": "^arn:aws[a-z\\-]*:iam::\\d{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+$", + "type": "string" + }, + "JupyterLabAppSettings": { + "$ref": "#/definitions/JupyterLabAppSettings" + }, + "JupyterServerAppSettings": { + "$ref": "#/definitions/JupyterServerAppSettings" + }, + "KernelGatewayAppSettings": { + "$ref": "#/definitions/KernelGatewayAppSettings" + }, + "RStudioServerProAppSettings": { + "$ref": "#/definitions/RStudioServerProAppSettings" + }, + "SecurityGroups": { + "format": "AWS::EC2::SecurityGroup.Ids", + "items": { + "format": "AWS::EC2::SecurityGroup.GroupId", + "maxLength": 32, + "pattern": "[-0-9a-zA-Z]+", + "type": "string" + }, + "maxItems": 5, + "minItems": 0, + "type": "array", + "uniqueItems": false + }, + "SharingSettings": { + "$ref": "#/definitions/SharingSettings" + }, + "SpaceStorageSettings": { + "$ref": "#/definitions/DefaultSpaceStorageSettings" + }, + "StudioWebPortal": { + "enum": [ + "ENABLED", + "DISABLED" + ], + "type": "string" + }, + "StudioWebPortalSettings": { + "$ref": "#/definitions/StudioWebPortalSettings" + } + }, + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "sagemaker:CreateUserProfile", + "sagemaker:DescribeUserProfile", + "sagemaker:DescribeImage", + "sagemaker:DescribeImageVersion", + "iam:PassRole" + ] + }, + "delete": { + "permissions": [ + "sagemaker:DeleteUserProfile", + "sagemaker:DescribeUserProfile" + ] + }, + "list": { + "permissions": [ + "sagemaker:ListUserProfiles" + ] + }, + "read": { + "permissions": [ + "sagemaker:DescribeUserProfile" + ] + }, + "update": { + "permissions": [ + "sagemaker:UpdateUserProfile", + "sagemaker:DescribeUserProfile", + "sagemaker:DescribeImage", + "sagemaker:DescribeImageVersion", + "iam:PassRole" + ] + } + }, + "primaryIdentifier": [ + "/properties/UserProfileName", + "/properties/DomainId" + ], + "properties": { + "DomainId": { + "maxLength": 63, + "minLength": 1, + "type": "string" + }, + "SingleSignOnUserIdentifier": { + "pattern": "UserName", + "type": "string" + }, + "SingleSignOnUserValue": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "Tags": { + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 50, + "minItems": 0, + "type": "array", + "uniqueItems": false + }, + "UserProfileArn": { + "maxLength": 256, + "pattern": "arn:aws[a-z\\-]*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:user-profile/.*", + "type": "string" + }, + "UserProfileName": { + "maxLength": 63, + "minLength": 1, + "type": "string" + }, + "UserSettings": { + "$ref": "#/definitions/UserSettings", + "maxItems": 50, + "minItems": 0, + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/UserProfileArn" + ], + "required": [ + "DomainId", + "UserProfileName" + ], + "typeName": "AWS::SageMaker::UserProfile", + "writeOnlyProperties": [ + "/properties/Tags" + ] +} diff --git a/src/cfnlint/data/schemas/providers/me_south_1/aws-sso-instance.json b/src/cfnlint/data/schemas/providers/me_south_1/aws-sso-instance.json new file mode 100644 index 0000000000..26c2ca063a --- /dev/null +++ b/src/cfnlint/data/schemas/providers/me_south_1/aws-sso-instance.json @@ -0,0 +1,125 @@ +{ + "additionalProperties": false, + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "[\\w+=,.@-]+", + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "pattern": "[\\w+=,.@-]+", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "sso:CreateInstance", + "sso:DescribeInstance", + "sso:TagResource", + "iam:CreateServiceLinkedRole", + "sso:TagInstance", + "sso:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "sso:DeleteInstance" + ] + }, + "list": { + "permissions": [ + "sso:ListInstances" + ] + }, + "read": { + "permissions": [ + "sso:DescribeInstance", + "sso:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "sso:UpdateInstance", + "sso:TagResource", + "sso:UntagResource", + "sso:ListTagsForResource", + "sso:TagInstance", + "sso:DescribeInstance" + ] + } + }, + "primaryIdentifier": [ + "/properties/InstanceArn" + ], + "properties": { + "IdentityStoreId": { + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-]*$", + "type": "string" + }, + "InstanceArn": { + "maxLength": 1224, + "minLength": 10, + "pattern": "^arn:(aws|aws-us-gov|aws-cn|aws-iso|aws-iso-b):sso:::instance/(sso)?ins-[a-zA-Z0-9-.]{16}$", + "type": "string" + }, + "Name": { + "maxLength": 32, + "minLength": 1, + "pattern": "^[\\w+=,.@-]+$", + "type": "string" + }, + "OwnerAccountId": { + "maxLength": 12, + "minLength": 12, + "pattern": "^\\d{12}?$", + "type": "string" + }, + "Status": { + "enum": [ + "CREATE_IN_PROGRESS", + "DELETE_IN_PROGRESS", + "ACTIVE" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 75, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/InstanceArn", + "/properties/OwnerAccountId", + "/properties/IdentityStoreId", + "/properties/Status" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sso/aws-sso-instance", + "tagging": { + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::SSO::Instance" +} diff --git a/src/cfnlint/data/schemas/providers/sa_east_1/__init__.py b/src/cfnlint/data/schemas/providers/sa_east_1/__init__.py index af7456b3b8..c52f546703 100644 --- a/src/cfnlint/data/schemas/providers/sa_east_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/sa_east_1/__init__.py @@ -1846,7 +1846,6 @@ "aws-sso-application.json", "aws-sso-applicationassignment.json", "aws-sso-assignment.json", - "aws-sso-instance.json", "aws-sso-instanceaccesscontrolattributeconfiguration.json", "aws-sso-permissionset.json", "aws-stepfunctions-activity.json", diff --git a/src/cfnlint/data/schemas/providers/sa_east_1/aws-sso-instance.json b/src/cfnlint/data/schemas/providers/sa_east_1/aws-sso-instance.json new file mode 100644 index 0000000000..26c2ca063a --- /dev/null +++ b/src/cfnlint/data/schemas/providers/sa_east_1/aws-sso-instance.json @@ -0,0 +1,125 @@ +{ + "additionalProperties": false, + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "[\\w+=,.@-]+", + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "pattern": "[\\w+=,.@-]+", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "sso:CreateInstance", + "sso:DescribeInstance", + "sso:TagResource", + "iam:CreateServiceLinkedRole", + "sso:TagInstance", + "sso:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "sso:DeleteInstance" + ] + }, + "list": { + "permissions": [ + "sso:ListInstances" + ] + }, + "read": { + "permissions": [ + "sso:DescribeInstance", + "sso:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "sso:UpdateInstance", + "sso:TagResource", + "sso:UntagResource", + "sso:ListTagsForResource", + "sso:TagInstance", + "sso:DescribeInstance" + ] + } + }, + "primaryIdentifier": [ + "/properties/InstanceArn" + ], + "properties": { + "IdentityStoreId": { + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-]*$", + "type": "string" + }, + "InstanceArn": { + "maxLength": 1224, + "minLength": 10, + "pattern": "^arn:(aws|aws-us-gov|aws-cn|aws-iso|aws-iso-b):sso:::instance/(sso)?ins-[a-zA-Z0-9-.]{16}$", + "type": "string" + }, + "Name": { + "maxLength": 32, + "minLength": 1, + "pattern": "^[\\w+=,.@-]+$", + "type": "string" + }, + "OwnerAccountId": { + "maxLength": 12, + "minLength": 12, + "pattern": "^\\d{12}?$", + "type": "string" + }, + "Status": { + "enum": [ + "CREATE_IN_PROGRESS", + "DELETE_IN_PROGRESS", + "ACTIVE" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 75, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/InstanceArn", + "/properties/OwnerAccountId", + "/properties/IdentityStoreId", + "/properties/Status" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sso/aws-sso-instance", + "tagging": { + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::SSO::Instance" +} diff --git a/src/cfnlint/data/schemas/providers/us_east_1/aws-cognito-userpooluicustomizationattachment.json b/src/cfnlint/data/schemas/providers/us_east_1/aws-cognito-userpooluicustomizationattachment.json index 009f1aea8c..ff8cea02ef 100644 --- a/src/cfnlint/data/schemas/providers/us_east_1/aws-cognito-userpooluicustomizationattachment.json +++ b/src/cfnlint/data/schemas/providers/us_east_1/aws-cognito-userpooluicustomizationattachment.json @@ -4,8 +4,36 @@ "/properties/UserPoolId", "/properties/ClientId" ], + "handlers": { + "create": { + "permissions": [ + "cognito-idp:SetUICustomization", + "cognito-idp:GetUICustomization" + ], + "timeoutInMinutes": 2 + }, + "delete": { + "permissions": [ + "cognito-idp:SetUICustomization", + "cognito-idp:GetUICustomization" + ], + "timeoutInMinutes": 2 + }, + "read": { + "permissions": [ + "cognito-idp:GetUICustomization" + ] + }, + "update": { + "permissions": [ + "cognito-idp:SetUICustomization" + ], + "timeoutInMinutes": 2 + } + }, "primaryIdentifier": [ - "/properties/Id" + "/properties/UserPoolId", + "/properties/ClientId" ], "properties": { "CSS": { @@ -14,19 +42,20 @@ "ClientId": { "type": "string" }, - "Id": { - "type": "string" - }, "UserPoolId": { "type": "string" } }, - "readOnlyProperties": [ - "/properties/Id" - ], "required": [ - "ClientId", - "UserPoolId" + "UserPoolId", + "ClientId" ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": false, + "tagUpdatable": false, + "taggable": false + }, "typeName": "AWS::Cognito::UserPoolUICustomizationAttachment" } diff --git a/src/cfnlint/data/schemas/providers/us_east_1/aws-sso-instance.json b/src/cfnlint/data/schemas/providers/us_east_1/aws-sso-instance.json index 26c2ca063a..bd637397ab 100644 --- a/src/cfnlint/data/schemas/providers/us_east_1/aws-sso-instance.json +++ b/src/cfnlint/data/schemas/providers/us_east_1/aws-sso-instance.json @@ -116,6 +116,7 @@ ], "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sso/aws-sso-instance", "tagging": { + "cloudFormationSystemTags": true, "tagOnCreate": true, "tagProperty": "/properties/Tags", "tagUpdatable": true, diff --git a/src/cfnlint/data/schemas/providers/us_east_2/__init__.py b/src/cfnlint/data/schemas/providers/us_east_2/__init__.py index 8cd0025580..f3a08dffca 100644 --- a/src/cfnlint/data/schemas/providers/us_east_2/__init__.py +++ b/src/cfnlint/data/schemas/providers/us_east_2/__init__.py @@ -1343,7 +1343,6 @@ "aws-cognito-userpoolidentityprovider.json", "aws-cognito-userpoolresourceserver.json", "aws-cognito-userpoolriskconfigurationattachment.json", - "aws-cognito-userpooluicustomizationattachment.json", "aws-cognito-userpooluser.json", "aws-cognito-userpoolusertogroupattachment.json", "aws-comprehend-documentclassifier.json", @@ -2158,7 +2157,6 @@ "aws-sso-application.json", "aws-sso-applicationassignment.json", "aws-sso-assignment.json", - "aws-sso-instance.json", "aws-sso-instanceaccesscontrolattributeconfiguration.json", "aws-sso-permissionset.json", "aws-stepfunctions-activity.json", diff --git a/src/cfnlint/data/schemas/providers/us_east_2/aws-cognito-userpooluicustomizationattachment.json b/src/cfnlint/data/schemas/providers/us_east_2/aws-cognito-userpooluicustomizationattachment.json new file mode 100644 index 0000000000..009f1aea8c --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_east_2/aws-cognito-userpooluicustomizationattachment.json @@ -0,0 +1,32 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/UserPoolId", + "/properties/ClientId" + ], + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "CSS": { + "type": "string" + }, + "ClientId": { + "type": "string" + }, + "Id": { + "type": "string" + }, + "UserPoolId": { + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Id" + ], + "required": [ + "ClientId", + "UserPoolId" + ], + "typeName": "AWS::Cognito::UserPoolUICustomizationAttachment" +} diff --git a/src/cfnlint/data/schemas/providers/us_east_2/aws-sso-instance.json b/src/cfnlint/data/schemas/providers/us_east_2/aws-sso-instance.json new file mode 100644 index 0000000000..26c2ca063a --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_east_2/aws-sso-instance.json @@ -0,0 +1,125 @@ +{ + "additionalProperties": false, + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "pattern": "[\\w+=,.@-]+", + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "pattern": "[\\w+=,.@-]+", + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "sso:CreateInstance", + "sso:DescribeInstance", + "sso:TagResource", + "iam:CreateServiceLinkedRole", + "sso:TagInstance", + "sso:ListTagsForResource" + ] + }, + "delete": { + "permissions": [ + "sso:DeleteInstance" + ] + }, + "list": { + "permissions": [ + "sso:ListInstances" + ] + }, + "read": { + "permissions": [ + "sso:DescribeInstance", + "sso:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "sso:UpdateInstance", + "sso:TagResource", + "sso:UntagResource", + "sso:ListTagsForResource", + "sso:TagInstance", + "sso:DescribeInstance" + ] + } + }, + "primaryIdentifier": [ + "/properties/InstanceArn" + ], + "properties": { + "IdentityStoreId": { + "maxLength": 64, + "minLength": 1, + "pattern": "^[a-zA-Z0-9-]*$", + "type": "string" + }, + "InstanceArn": { + "maxLength": 1224, + "minLength": 10, + "pattern": "^arn:(aws|aws-us-gov|aws-cn|aws-iso|aws-iso-b):sso:::instance/(sso)?ins-[a-zA-Z0-9-.]{16}$", + "type": "string" + }, + "Name": { + "maxLength": 32, + "minLength": 1, + "pattern": "^[\\w+=,.@-]+$", + "type": "string" + }, + "OwnerAccountId": { + "maxLength": 12, + "minLength": 12, + "pattern": "^\\d{12}?$", + "type": "string" + }, + "Status": { + "enum": [ + "CREATE_IN_PROGRESS", + "DELETE_IN_PROGRESS", + "ACTIVE" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 75, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/InstanceArn", + "/properties/OwnerAccountId", + "/properties/IdentityStoreId", + "/properties/Status" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-sso/aws-sso-instance", + "tagging": { + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::SSO::Instance" +} 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 a3990d4eb4..215a12204c 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 @@ -1012,6 +1012,7 @@ "aws-lakeformation-resource.json", "aws-lambda-alias.json", "aws-lambda-eventinvokeconfig.json", + "aws-lambda-function.json", "aws-lambda-permission.json", "aws-lambda-version.json", "aws-launchwizard-deployment.json", diff --git a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-lambda-function.json b/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-lambda-function.json deleted file mode 100644 index 39009ea83f..0000000000 --- a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-lambda-function.json +++ /dev/null @@ -1,559 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/FunctionName" - ], - "definitions": { - "Code": { - "additionalProperties": false, - "properties": { - "ImageUri": { - "type": "string" - }, - "S3Bucket": { - "maxLength": 63, - "minLength": 3, - "pattern": "^[0-9A-Za-z\\.\\-_]*(?