diff --git a/src/cfnlint/data/AdditionalSpecs/Policies.json b/src/cfnlint/data/AdditionalSpecs/Policies.json index d28c8860ca..f174426ef5 100644 --- a/src/cfnlint/data/AdditionalSpecs/Policies.json +++ b/src/cfnlint/data/AdditionalSpecs/Policies.json @@ -494,6 +494,19 @@ "aws:TagKeys" ] }, + "AWS App Studio": { + "ARNFormat": "arn:${Partition}:appstudio:${Region}:${Account}:${ResourceType}:${ResourcePath}", + "ARNRegex": "^arn:${Partition}:appstudio:.+:.+:.+", + "Actions": [ + "GetAccountStatus", + "GetEnablementJobStatus", + "StartEnablementJob", + "StartRollbackEnablementJob", + "StartTeamDeployment" + ], + "HasResource": false, + "StringPrefix": "appstudio" + }, "AWS App2Container": { "ARNFormat": "arn:${Partition}:a2c:${Region}:${Account}:${ResourceType}/${ResourceName}", "ARNRegex": "^arn:${Partition}:a2c:.+:.+:.+", @@ -4230,6 +4243,7 @@ "ListQueues", "ListTagsForResource", "PutPolicy", + "SearchJobs", "TagResource", "UntagResource", "UpdateJobTemplate", @@ -5224,6 +5238,8 @@ "DeleteImageSet", "GetDICOMImportJob", "GetDICOMInstance", + "GetDICOMInstanceFrames", + "GetDICOMInstanceMetadata", "GetDatastore", "GetImageFrame", "GetImageSet", @@ -7461,14 +7477,28 @@ ] }, "AWS License Manager Linux Subscriptions Manager": { + "ARNFormat": "arn:aws:license-manager-linux-subscriptions:${Region}:${Account}:${ResourceType}/${ResourceId}", + "ARNRegex": "^arn:aws:license-manager-linux-subscriptions:.+:.+:.+", "Actions": [ + "DeregisterSubscriptionProvider", + "GetRegisteredSubscriptionProvider", "GetServiceSettings", "ListLinuxSubscriptionInstances", "ListLinuxSubscriptions", + "ListRegisteredSubscriptionProviders", + "ListTagsForResource", + "RegisterSubscriptionProvider", + "TagResource", + "UntagResource", "UpdateServiceSettings" ], - "HasResource": false, - "StringPrefix": "license-manager-linux-subscriptions" + "HasResource": true, + "StringPrefix": "license-manager-linux-subscriptions", + "conditionKeys": [ + "aws:RequestTag/${TagKey}", + "aws:ResourceTag/${TagKey}", + "aws:TagKeys" + ] }, "AWS License Manager User Subscriptions": { "Actions": [ @@ -11649,6 +11679,9 @@ "CreateAgentAlias", "CreateDataSource", "CreateEvaluationJob", + "CreateFlow", + "CreateFlowAlias", + "CreateFlowVersion", "CreateFoundationModelAgreement", "CreateGuardrail", "CreateGuardrailVersion", @@ -11656,17 +11689,24 @@ "CreateModelCustomizationJob", "CreateModelEvaluationJob", "CreateModelInvocationJob", + "CreatePrompt", + "CreatePromptVersion", "CreateProvisionedModelThroughput", "DeleteAgent", "DeleteAgentActionGroup", "DeleteAgentAlias", + "DeleteAgentMemory", "DeleteAgentVersion", "DeleteCustomModel", "DeleteDataSource", + "DeleteFlow", + "DeleteFlowAlias", + "DeleteFlowVersion", "DeleteFoundationModelAgreement", "DeleteGuardrail", "DeleteKnowledgeBase", "DeleteModelInvocationLoggingConfiguration", + "DeletePrompt", "DeleteProvisionedModelThroughput", "DetectGeneratedContent", "DisassociateAgentKnowledgeBase", @@ -11674,10 +11714,14 @@ "GetAgentActionGroup", "GetAgentAlias", "GetAgentKnowledgeBase", + "GetAgentMemory", "GetAgentVersion", "GetCustomModel", "GetDataSource", "GetEvaluationJob", + "GetFlow", + "GetFlowAlias", + "GetFlowVersion", "GetFoundationModel", "GetFoundationModelAvailability", "GetGuardrail", @@ -11687,9 +11731,11 @@ "GetModelEvaluationJob", "GetModelInvocationJob", "GetModelInvocationLoggingConfiguration", + "GetPrompt", "GetProvisionedModelThroughput", "GetUseCaseForModelAccess", "InvokeAgent", + "InvokeFlow", "InvokeModel", "InvokeModelWithResponseStream", "ListAgentActionGroups", @@ -11700,6 +11746,9 @@ "ListCustomModels", "ListDataSources", "ListEvaluationJobs", + "ListFlowAliases", + "ListFlowVersions", + "ListFlows", "ListFoundationModelAgreementOffers", "ListFoundationModels", "ListGuardrails", @@ -11708,9 +11757,11 @@ "ListModelCustomizationJobs", "ListModelEvaluationJobs", "ListModelInvocationJobs", + "ListPrompts", "ListProvisionedModelThroughputs", "ListTagsForResource", "PrepareAgent", + "PrepareFlow", "PutFoundationModelEntitlement", "PutModelInvocationLoggingConfiguration", "PutUseCaseForModelAccess", @@ -11727,8 +11778,11 @@ "UpdateAgentAlias", "UpdateAgentKnowledgeBase", "UpdateDataSource", + "UpdateFlow", + "UpdateFlowAlias", "UpdateGuardrail", "UpdateKnowledgeBase", + "UpdatePrompt", "UpdateProvisionedModelThroughput" ], "HasResource": true, @@ -12274,6 +12328,7 @@ "UpdateCloudFrontOriginAccessIdentity", "UpdateContinuousDeploymentPolicy", "UpdateDistribution", + "UpdateDistributionWithStagingConfig", "UpdateFieldLevelEncryptionConfig", "UpdateFieldLevelEncryptionProfile", "UpdateFunction", @@ -16711,6 +16766,7 @@ "DeleteEncoderConfiguration", "DeletePlaybackKeyPair", "DeletePlaybackRestrictionPolicy", + "DeletePublicKey", "DeleteRecordingConfiguration", "DeleteStage", "DeleteStorageConfiguration", @@ -16722,6 +16778,7 @@ "GetParticipant", "GetPlaybackKeyPair", "GetPlaybackRestrictionPolicy", + "GetPublicKey", "GetRecordingConfiguration", "GetStage", "GetStageSession", @@ -16730,6 +16787,7 @@ "GetStreamKey", "GetStreamSession", "ImportPlaybackKeyPair", + "ImportPublicKey", "ListChannels", "ListCompositions", "ListEncoderConfigurations", @@ -16737,6 +16795,7 @@ "ListParticipants", "ListPlaybackKeyPairs", "ListPlaybackRestrictionPolicies", + "ListPublicKeys", "ListRecordingConfigurations", "ListStageSessions", "ListStages", @@ -19781,7 +19840,6 @@ "rds:EndpointType", "rds:ManageMasterUserPassword", "rds:MultiAz", - "rds:MultiTenant", "rds:Piops", "rds:StorageEncrypted", "rds:StorageSize", @@ -21202,6 +21260,7 @@ "CreateMonitoringSchedule", "CreateNotebookInstance", "CreateNotebookInstanceLifecycleConfig", + "CreateOptimizationJob", "CreatePipeline", "CreatePresignedDomainUrl", "CreatePresignedMlflowTrackingServerUrl", @@ -21261,6 +21320,7 @@ "DeleteMonitoringSchedule", "DeleteNotebookInstance", "DeleteNotebookInstanceLifecycleConfig", + "DeleteOptimization", "DeletePipeline", "DeleteProject", "DeleteRecord", @@ -21323,6 +21383,7 @@ "DescribeMonitoringSchedule", "DescribeNotebookInstance", "DescribeNotebookInstanceLifecycleConfig", + "DescribeOptimizationJob", "DescribePipeline", "DescribePipelineDefinitionForExecution", "DescribePipelineExecution", @@ -21413,6 +21474,7 @@ "ListMonitoringSchedules", "ListNotebookInstanceLifecycleConfigs", "ListNotebookInstances", + "ListOptimizationJobs", "ListPipelineExecutionSteps", "ListPipelineExecutions", "ListPipelineParametersForExecution", @@ -21468,6 +21530,7 @@ "StopMlflowTrackingServer", "StopMonitoringSchedule", "StopNotebookInstance", + "StopOptimizationJob", "StopPipelineExecution", "StopProcessingJob", "StopTrainingJob", diff --git a/src/cfnlint/data/DownloadsMetadata/123ba181485ae293d5bd09722af0c19d5a0d14c62111ff864923fc7b7960dda6.meta.json b/src/cfnlint/data/DownloadsMetadata/123ba181485ae293d5bd09722af0c19d5a0d14c62111ff864923fc7b7960dda6.meta.json index d8bc779aa4..3d90a555da 100644 --- a/src/cfnlint/data/DownloadsMetadata/123ba181485ae293d5bd09722af0c19d5a0d14c62111ff864923fc7b7960dda6.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/123ba181485ae293d5bd09722af0c19d5a0d14c62111ff864923fc7b7960dda6.meta.json @@ -1 +1 @@ -{"etag": "\"fca661173bec87b9931105a1e4837b58\"", "url": "https://schema.cloudformation.eu-south-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"cffefef14d086a601c159cd89d3bf9c8\"", "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 7e7c044655..ae9b767a39 100644 --- a/src/cfnlint/data/DownloadsMetadata/164e1bfc2823fbd49d8d0e7163ebf32b2b6653d7edfe98a64577daae0b481c38.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/164e1bfc2823fbd49d8d0e7163ebf32b2b6653d7edfe98a64577daae0b481c38.meta.json @@ -1 +1 @@ -{"etag": "\"44b238171f54205cc3cfb468130b1dcb\"", "url": "https://schema.cloudformation.cn-north-1.amazonaws.com.cn/CloudformationSchema.zip"} +{"etag": "\"55f676f5896e8379e84ff2c6199f17e8\"", "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 a667a52e76..b6af67321b 100644 --- a/src/cfnlint/data/DownloadsMetadata/18624fcc4a1c571691d10b2508e6be565e4752bbc10d9552de8df8f81348c42b.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/18624fcc4a1c571691d10b2508e6be565e4752bbc10d9552de8df8f81348c42b.meta.json @@ -1 +1 @@ -{"etag": "\"8bacb83d9b2956f042839e8288424f61\"", "url": "https://schema.cloudformation.us-gov-east-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"cee39839675b8978bd1d56646aa306f1\"", "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 9af3f753fd..4c4544dffb 100644 --- a/src/cfnlint/data/DownloadsMetadata/227d6e59c86482f7153466759080e65963a1bf4413531ad420ff60a5a0d7965d.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/227d6e59c86482f7153466759080e65963a1bf4413531ad420ff60a5a0d7965d.meta.json @@ -1 +1 @@ -{"etag": "\"cf08b6f95e54bd440e37d2eca78d0a17\"", "url": "https://schema.cloudformation.me-south-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"c69a9dfbd603f8a4982b96228a4f1e88\"", "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 56618eace5..eb8fb3a713 100644 --- a/src/cfnlint/data/DownloadsMetadata/23be708e675cb6098b08969e4dbbc3f54cfc32461d10e077e7e5de1fc25d8b8f.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/23be708e675cb6098b08969e4dbbc3f54cfc32461d10e077e7e5de1fc25d8b8f.meta.json @@ -1 +1 @@ -{"etag": "\"fe7b465559bf503c1bf2e9f37594d316\"", "url": "https://schema.cloudformation.us-gov-west-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"664947166f678e104d9a53587191cb93\"", "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 adfea6bd85..689ee7fff8 100644 --- a/src/cfnlint/data/DownloadsMetadata/26cf4521b683d3267844178a6bcd1d0ad3fe2e7838c23f6acd054944cb2b1618.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/26cf4521b683d3267844178a6bcd1d0ad3fe2e7838c23f6acd054944cb2b1618.meta.json @@ -1 +1 @@ -{"etag": "\"6219780f75f418e68cd84e355a3f493b\"", "url": "https://schema.cloudformation.me-central-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"2744be9038f03bf530943bb5ccd95b9a\"", "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 3b7d4acb7d..88e2fb62ce 100644 --- a/src/cfnlint/data/DownloadsMetadata/276cecfeb1ec5e608e2aaa06925a2da57e9907e4a512c10ddae70b98b4dada43.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/276cecfeb1ec5e608e2aaa06925a2da57e9907e4a512c10ddae70b98b4dada43.meta.json @@ -1 +1 @@ -{"etag": "\"cbfbefba6f56a517eff55af0fcb17208\"", "url": "https://schema.cloudformation.eu-west-2.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"39f0dc865275b8434acc92c47c12c842\"", "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 46c433ba59..95b4de8d69 100644 --- a/src/cfnlint/data/DownloadsMetadata/371e40c90b2e47c99f6e275e060ee83a3fbf0a0fb76625ba46dbe42abd34333c.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/371e40c90b2e47c99f6e275e060ee83a3fbf0a0fb76625ba46dbe42abd34333c.meta.json @@ -1 +1 @@ -{"etag": "\"b33dacbecbabf16880c10c9618f34b6c\"", "url": "https://schema.cloudformation.cn-northwest-1.amazonaws.com.cn/CloudformationSchema.zip"} +{"etag": "\"3353685ca908ceb18eaead223166c588\"", "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 2892b550fa..2d685967e5 100644 --- a/src/cfnlint/data/DownloadsMetadata/42155835f382d82337be3d2bf832bada376aa3fe15197e3bb0e9290ff8719b4e.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/42155835f382d82337be3d2bf832bada376aa3fe15197e3bb0e9290ff8719b4e.meta.json @@ -1 +1 @@ -{"etag": "\"49c50678af95826ceebdd6b225bc3465\"", "url": "https://schema.cloudformation.af-south-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"5f24cfa6fd01aaa3913d67d753518080\"", "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 4a2d29c547..8c4b62b35f 100644 --- a/src/cfnlint/data/DownloadsMetadata/42e9df95722b6524cd001503b6750b86f60a7b5acfc406ebb10d5748cbb8ed41.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/42e9df95722b6524cd001503b6750b86f60a7b5acfc406ebb10d5748cbb8ed41.meta.json @@ -1 +1 @@ -{"etag": "\"8f978d1d28e4fa0b444aac5992272500\"", "url": "https://schema.cloudformation.us-west-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"5fbe6da56fe7b9687c5ad5a21ef8538a\"", "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 d001552962..dd4b8b5b4f 100644 --- a/src/cfnlint/data/DownloadsMetadata/4fbb29b69678acdd32c5758ed43ead9bf35136af536e92a84ccbaf062c315066.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/4fbb29b69678acdd32c5758ed43ead9bf35136af536e92a84ccbaf062c315066.meta.json @@ -1 +1 @@ -{"etag": "\"2de27f61d596e949671623eec93ca984\"", "url": "https://schema.cloudformation.eu-central-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"7ca60bf7dbeff2644204427adc40fe42\"", "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 66933b6aaf..5f3843399c 100644 --- a/src/cfnlint/data/DownloadsMetadata/56584c7d00e444de640bef01fc2c630804470222e5e4c690bacef5312891581d.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/56584c7d00e444de640bef01fc2c630804470222e5e4c690bacef5312891581d.meta.json @@ -1 +1 @@ -{"etag": "\"bed0ddc94bdad72679213e7da587cd35\"", "url": "https://schema.cloudformation.ap-south-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"b72c560e4f56a786dbec577a9e725674\"", "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 44c8641900..2101baf5e8 100644 --- a/src/cfnlint/data/DownloadsMetadata/583721567eccd1d5855daa623819df1a646b563d773e34b020d0ddeab2fe195b.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/583721567eccd1d5855daa623819df1a646b563d773e34b020d0ddeab2fe195b.meta.json @@ -1 +1 @@ -{"etag": "\"0a7ead0f761e21c1d26fabfe4d0ab12c\"", "url": "https://schema.cloudformation.ap-southeast-4.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"f902c7e2b3f2e7c5d4bf9d1fe3f83ab2\"", "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 213b5060ce..9d189bfbe3 100644 --- a/src/cfnlint/data/DownloadsMetadata/6316ae24f21cb620947aa250bebbee69548d44cc32e246ec9d7742088a2c17f8.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/6316ae24f21cb620947aa250bebbee69548d44cc32e246ec9d7742088a2c17f8.meta.json @@ -1 +1 @@ -{"etag": "\"3388bdac1094b7ce5c686498980d7ae4\"", "url": "https://schema.cloudformation.us-east-2.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"4313cd5b8928196eacca6a40867156d7\"", "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 06b9d83097..97178043bc 100644 --- a/src/cfnlint/data/DownloadsMetadata/81e1cc73ff2daf7d1e1eca393c2d1fdd98ac34d4109512e0e0947ef752dcb9c9.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/81e1cc73ff2daf7d1e1eca393c2d1fdd98ac34d4109512e0e0947ef752dcb9c9.meta.json @@ -1 +1 @@ -{"etag": "\"9d55fdb052ec6c80816d6e110fe6c67e\"", "url": "https://schema.cloudformation.ap-southeast-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"7ac5a4b8e306962681fb208ffa430d50\"", "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 0a65a40e52..c7106cc826 100644 --- a/src/cfnlint/data/DownloadsMetadata/8adeabf0a09b37a8ed924aea799005947e4a4542365d35fd75466abcf306eeca.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/8adeabf0a09b37a8ed924aea799005947e4a4542365d35fd75466abcf306eeca.meta.json @@ -1 +1 @@ -{"etag": "\"edf94f0ce457cd9cf8d922df85e88e26\"", "url": "https://schema.cloudformation.ap-northeast-2.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"8c1c8d0440beb779976e75466f194dc0\"", "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 a728a64ffc..b6ea90f1dc 100644 --- a/src/cfnlint/data/DownloadsMetadata/8b8b0cee4df1ef0947a8289e8ec0c67869b7533eabab32ecfc0a00cb19e55a5f.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/8b8b0cee4df1ef0947a8289e8ec0c67869b7533eabab32ecfc0a00cb19e55a5f.meta.json @@ -1 +1 @@ -{"etag": "\"fd5b3262a2eab93279c1410341eae6f0\"", "url": "https://schema.cloudformation.ap-southeast-3.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"5370dd25eb2bb60db28344984a9f2646\"", "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 d0716354f6..c649a3f94a 100644 --- a/src/cfnlint/data/DownloadsMetadata/b1f069477cd577cde04dfe1b323c0bb0e783fe32b6bb6b13774c32fcca1d303a.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/b1f069477cd577cde04dfe1b323c0bb0e783fe32b6bb6b13774c32fcca1d303a.meta.json @@ -1 +1 @@ -{"etag": "\"b6d8e3218ab5eb827f0937652265540f\"", "url": "https://schema.cloudformation.ap-east-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"c7fc4b7c83e2167bba332e4a19da3b64\"", "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 5786e959bf..fe42c0f61f 100644 --- a/src/cfnlint/data/DownloadsMetadata/c7ada205073390b33b7593ef8f304b9705f2567698dfdfa979bf0ccdb68cb856.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/c7ada205073390b33b7593ef8f304b9705f2567698dfdfa979bf0ccdb68cb856.meta.json @@ -1 +1 @@ -{"etag": "\"a15034fae8ab865f90ef7ef2e2f5d3a9\"", "url": "https://schema.cloudformation.sa-east-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"ac9ced423809b3de671c00eea15e4d3b\"", "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 1511d3f044..3a9aee0685 100644 --- a/src/cfnlint/data/DownloadsMetadata/d24ce9a45a014b1ff04d479422ea956e92030ae5c03d7451980a15735e557edb.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/d24ce9a45a014b1ff04d479422ea956e92030ae5c03d7451980a15735e557edb.meta.json @@ -1 +1 @@ -{"etag": "\"85030c3fc55a02effd586262eb0b2f32\"", "url": "https://schema.cloudformation.ap-southeast-2.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"b344266a932e307d1f0c7b6a6d78ac20\"", "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 d6a7adec20..fa72a703ce 100644 --- a/src/cfnlint/data/DownloadsMetadata/d85e2e061cacfcffe4902adb1074a04e6bb7f975b606f8db57532faddfcdd8c8.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/d85e2e061cacfcffe4902adb1074a04e6bb7f975b606f8db57532faddfcdd8c8.meta.json @@ -1 +1 @@ -{"etag": "\"219c41d3925b7de5879a3e8bf4ef77e8\"", "url": "https://schema.cloudformation.ca-west-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"086babfb7ae9a3e6e9ee89df46102b85\"", "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 983e65e42b..aa7dc55a02 100644 --- a/src/cfnlint/data/DownloadsMetadata/d8e41d35f4f8922b66525dea2c66d72a73ff097c685cda0a63c08a6416dc58ed.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/d8e41d35f4f8922b66525dea2c66d72a73ff097c685cda0a63c08a6416dc58ed.meta.json @@ -1 +1 @@ -{"etag": "\"875dc5e03652215ba55290811e01ef74\"", "url": "https://schema.cloudformation.eu-central-2.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"8891207e8c8b50811609873053e6fbd9\"", "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 985ebbef53..5a65e6ce60 100644 --- a/src/cfnlint/data/DownloadsMetadata/dd98171253ebc36f5b78e247f3132b5f25c8d66a1f84939600616bab42579541.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/dd98171253ebc36f5b78e247f3132b5f25c8d66a1f84939600616bab42579541.meta.json @@ -1 +1 @@ -{"etag": "\"abcc9a4a47bf03454210b7cca7acceb7\"", "url": "https://schema.cloudformation.eu-north-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"f75506350f5ef65a8b28876639162955\"", "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 108a85734a..ef266a2724 100644 --- a/src/cfnlint/data/DownloadsMetadata/df4945435575c690a2651bb31e7a9b48972142778e1ff452383ede2ad4bac3d7.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/df4945435575c690a2651bb31e7a9b48972142778e1ff452383ede2ad4bac3d7.meta.json @@ -1 +1 @@ -{"etag": "\"6381af14034ca7a1403cf2ac0577eb6b\"", "url": "https://schema.cloudformation.eu-south-2.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"122a33af274ff1e6daa81cdc867741ae\"", "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 2fdedc0033..003673f71e 100644 --- a/src/cfnlint/data/DownloadsMetadata/e5301e07e25fa2c35d2c7e1f9dcf720826b315ef6f38515840537c02de23abe2.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/e5301e07e25fa2c35d2c7e1f9dcf720826b315ef6f38515840537c02de23abe2.meta.json @@ -1 +1 @@ -{"etag": "\"5f6aed5dc01eaa2491a91ec1b533215d\"", "url": "https://schema.cloudformation.ca-central-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"e201293dfc8891a9e6f94cfd380fc87e\"", "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 27c6445d2c..75d80b5cf6 100644 --- a/src/cfnlint/data/DownloadsMetadata/e8b3dacc1675b478e8c7392b51f41467cf908a34e6b4c3fb3e97e2b584f651ca.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/e8b3dacc1675b478e8c7392b51f41467cf908a34e6b4c3fb3e97e2b584f651ca.meta.json @@ -1 +1 @@ -{"etag": "\"8cc0ee67adf10e5e0675b1ea8b808995\"", "url": "https://schema.cloudformation.eu-west-3.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"a5a80d34f3750a454b76809972bcdaad\"", "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 9c7972bf7b..70f4efdbb5 100644 --- a/src/cfnlint/data/DownloadsMetadata/ea0f7b8f144feb225afe73a24dfdf993318c41c71c21b0a17d4f68d82c5aee21.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/ea0f7b8f144feb225afe73a24dfdf993318c41c71c21b0a17d4f68d82c5aee21.meta.json @@ -1 +1 @@ -{"etag": "\"82a2bf2383192b7e6092bdc8a70d6074\"", "url": "https://schema.cloudformation.ap-northeast-3.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"8016bf66e4c4779840d7496ff7f53ddb\"", "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 df5daa82e8..2598f780d1 100644 --- a/src/cfnlint/data/DownloadsMetadata/f1896c9151984eec294af1eddf64260f6cd7e4ced378cacdb93f76ed227b5c5d.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/f1896c9151984eec294af1eddf64260f6cd7e4ced378cacdb93f76ed227b5c5d.meta.json @@ -1 +1 @@ -{"etag": "\"497dfbf8ddf7a75cdfc9a55c5418b3b3\"", "url": "https://schema.cloudformation.us-west-2.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"c14d566af707d3737806b39fd042a1ff\"", "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 941daab94d..9177eae930 100644 --- a/src/cfnlint/data/DownloadsMetadata/f49718b210ea89ff182ae51cb7004366b9e2e4d5e38136a5be83b6a55e7a82a1.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/f49718b210ea89ff182ae51cb7004366b9e2e4d5e38136a5be83b6a55e7a82a1.meta.json @@ -1 +1 @@ -{"etag": "\"3407c45be9d672535e538a0799086e02\"", "url": "https://schema.cloudformation.ap-south-2.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"339cc8f1798e75cdc07510f0ccf8b027\"", "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 40e75daece..030041cda3 100644 --- a/src/cfnlint/data/DownloadsMetadata/f54eee6f8ad9619f41835b700369cdbb41c64a9c91b2fa5b4928c0d9b2f780b0.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/f54eee6f8ad9619f41835b700369cdbb41c64a9c91b2fa5b4928c0d9b2f780b0.meta.json @@ -1 +1 @@ -{"etag": "\"17cfbb043503a1368c1b3968e79d9c3f\"", "url": "https://schema.cloudformation.us-east-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"ef681c475d71cb930e40edfcbf3e74da\"", "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 9145a20063..ae3ca2a19c 100644 --- a/src/cfnlint/data/DownloadsMetadata/f6f35a459759d6c132fa2fe798cefbd5b2d398fe33547eed780b9b70f10eb4a2.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/f6f35a459759d6c132fa2fe798cefbd5b2d398fe33547eed780b9b70f10eb4a2.meta.json @@ -1 +1 @@ -{"etag": "\"7fe4a93bbfc36ce4d87c6849c218a89c\"", "url": "https://schema.cloudformation.il-central-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"e3f5554ebd96c86581c17edbcdb00a58\"", "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 52d71ef4a3..9cd03294aa 100644 --- a/src/cfnlint/data/DownloadsMetadata/fa657351d8e89c40ba6b82c4b1f5e1b5e50a1638ffe0a5dba0d8805c190a05f8.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/fa657351d8e89c40ba6b82c4b1f5e1b5e50a1638ffe0a5dba0d8805c190a05f8.meta.json @@ -1 +1 @@ -{"etag": "\"6b98a890ad1abfcfd5eec6e9150085fd\"", "url": "https://schema.cloudformation.eu-west-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"b4e78b503b1dc106f9afaac0f1729aa5\"", "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 36fc0fdf65..f3a4cc5416 100644 --- a/src/cfnlint/data/DownloadsMetadata/ff02b7d808c1c00053f09aa43a50addf3b69878d351cffd417dc9a457df808af.meta.json +++ b/src/cfnlint/data/DownloadsMetadata/ff02b7d808c1c00053f09aa43a50addf3b69878d351cffd417dc9a457df808af.meta.json @@ -1 +1 @@ -{"etag": "\"f9dc17365a5d3c547ed30cb9514215da\"", "url": "https://schema.cloudformation.ap-northeast-1.amazonaws.com/CloudformationSchema.zip"} +{"etag": "\"023e0cc1526592a354c93bfdab453e5f\"", "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 67cfac3381..6cc362a27f 100644 --- a/src/cfnlint/data/Serverless/ManagedPolicies.json +++ b/src/cfnlint/data/Serverless/ManagedPolicies.json @@ -1031,6 +1031,7 @@ "AppIntegrationsServiceLinkedRolePolicy": "arn:aws:iam::aws:policy/aws-service-role/AppIntegrationsServiceLinkedRolePolicy", "AppRunnerNetworkingServiceRolePolicy": "arn:aws:iam::aws:policy/aws-service-role/AppRunnerNetworkingServiceRolePolicy", "AppRunnerServiceRolePolicy": "arn:aws:iam::aws:policy/aws-service-role/AppRunnerServiceRolePolicy", + "AppStudioServiceRolePolicy": "arn:aws:iam::aws:policy/aws-service-role/AppStudioServiceRolePolicy", "ApplicationAutoScalingForAmazonAppStreamAccess": "arn:aws:iam::aws:policy/service-role/ApplicationAutoScalingForAmazonAppStreamAccess", "ApplicationDiscoveryServiceContinuousExportServiceRolePolicy": "arn:aws:iam::aws:policy/aws-service-role/ApplicationDiscoveryServiceContinuousExportServiceRolePolicy", "AutoScalingConsoleFullAccess": "arn:aws:iam::aws:policy/AutoScalingConsoleFullAccess", diff --git a/src/cfnlint/data/schemas/extensions/aws_ec2_instance/instancetype_enum.json b/src/cfnlint/data/schemas/extensions/aws_ec2_instance/instancetype_enum.json index 6573b69fad..bf5e16c908 100644 --- a/src/cfnlint/data/schemas/extensions/aws_ec2_instance/instancetype_enum.json +++ b/src/cfnlint/data/schemas/extensions/aws_ec2_instance/instancetype_enum.json @@ -717,6 +717,18 @@ "r7iz.metal-16xl", "r7iz.metal-32xl", "r7iz.xlarge", + "r8g.12xlarge", + "r8g.16xlarge", + "r8g.24xlarge", + "r8g.2xlarge", + "r8g.48xlarge", + "r8g.4xlarge", + "r8g.8xlarge", + "r8g.large", + "r8g.medium", + "r8g.metal-24xl", + "r8g.metal-48xl", + "r8g.xlarge", "t1.micro", "t2.2xlarge", "t2.large", @@ -1529,6 +1541,18 @@ "r7iz.metal-16xl", "r7iz.metal-32xl", "r7iz.xlarge", + "r8g.12xlarge", + "r8g.16xlarge", + "r8g.24xlarge", + "r8g.2xlarge", + "r8g.48xlarge", + "r8g.4xlarge", + "r8g.8xlarge", + "r8g.large", + "r8g.medium", + "r8g.metal-24xl", + "r8g.metal-48xl", + "r8g.xlarge", "t1.micro", "t2.2xlarge", "t2.large", @@ -2341,6 +2365,18 @@ "r7iz.metal-16xl", "r7iz.metal-32xl", "r7iz.xlarge", + "r8g.12xlarge", + "r8g.16xlarge", + "r8g.24xlarge", + "r8g.2xlarge", + "r8g.48xlarge", + "r8g.4xlarge", + "r8g.8xlarge", + "r8g.large", + "r8g.medium", + "r8g.metal-24xl", + "r8g.metal-48xl", + "r8g.xlarge", "t1.micro", "t2.2xlarge", "t2.large", @@ -3153,6 +3189,18 @@ "r7iz.metal-16xl", "r7iz.metal-32xl", "r7iz.xlarge", + "r8g.12xlarge", + "r8g.16xlarge", + "r8g.24xlarge", + "r8g.2xlarge", + "r8g.48xlarge", + "r8g.4xlarge", + "r8g.8xlarge", + "r8g.large", + "r8g.medium", + "r8g.metal-24xl", + "r8g.metal-48xl", + "r8g.xlarge", "t1.micro", "t2.2xlarge", "t2.large", @@ -3965,6 +4013,18 @@ "r7iz.metal-16xl", "r7iz.metal-32xl", "r7iz.xlarge", + "r8g.12xlarge", + "r8g.16xlarge", + "r8g.24xlarge", + "r8g.2xlarge", + "r8g.48xlarge", + "r8g.4xlarge", + "r8g.8xlarge", + "r8g.large", + "r8g.medium", + "r8g.metal-24xl", + "r8g.metal-48xl", + "r8g.xlarge", "t1.micro", "t2.2xlarge", "t2.large", @@ -4777,6 +4837,18 @@ "r7iz.metal-16xl", "r7iz.metal-32xl", "r7iz.xlarge", + "r8g.12xlarge", + "r8g.16xlarge", + "r8g.24xlarge", + "r8g.2xlarge", + "r8g.48xlarge", + "r8g.4xlarge", + "r8g.8xlarge", + "r8g.large", + "r8g.medium", + "r8g.metal-24xl", + "r8g.metal-48xl", + "r8g.xlarge", "t1.micro", "t2.2xlarge", "t2.large", @@ -5589,6 +5661,18 @@ "r7iz.metal-16xl", "r7iz.metal-32xl", "r7iz.xlarge", + "r8g.12xlarge", + "r8g.16xlarge", + "r8g.24xlarge", + "r8g.2xlarge", + "r8g.48xlarge", + "r8g.4xlarge", + "r8g.8xlarge", + "r8g.large", + "r8g.medium", + "r8g.metal-24xl", + "r8g.metal-48xl", + "r8g.xlarge", "t1.micro", "t2.2xlarge", "t2.large", @@ -6401,6 +6485,18 @@ "r7iz.metal-16xl", "r7iz.metal-32xl", "r7iz.xlarge", + "r8g.12xlarge", + "r8g.16xlarge", + "r8g.24xlarge", + "r8g.2xlarge", + "r8g.48xlarge", + "r8g.4xlarge", + "r8g.8xlarge", + "r8g.large", + "r8g.medium", + "r8g.metal-24xl", + "r8g.metal-48xl", + "r8g.xlarge", "t1.micro", "t2.2xlarge", "t2.large", @@ -7213,6 +7309,18 @@ "r7iz.metal-16xl", "r7iz.metal-32xl", "r7iz.xlarge", + "r8g.12xlarge", + "r8g.16xlarge", + "r8g.24xlarge", + "r8g.2xlarge", + "r8g.48xlarge", + "r8g.4xlarge", + "r8g.8xlarge", + "r8g.large", + "r8g.medium", + "r8g.metal-24xl", + "r8g.metal-48xl", + "r8g.xlarge", "t1.micro", "t2.2xlarge", "t2.large", @@ -8025,6 +8133,18 @@ "r7iz.metal-16xl", "r7iz.metal-32xl", "r7iz.xlarge", + "r8g.12xlarge", + "r8g.16xlarge", + "r8g.24xlarge", + "r8g.2xlarge", + "r8g.48xlarge", + "r8g.4xlarge", + "r8g.8xlarge", + "r8g.large", + "r8g.medium", + "r8g.metal-24xl", + "r8g.metal-48xl", + "r8g.xlarge", "t1.micro", "t2.2xlarge", "t2.large", @@ -8837,6 +8957,18 @@ "r7iz.metal-16xl", "r7iz.metal-32xl", "r7iz.xlarge", + "r8g.12xlarge", + "r8g.16xlarge", + "r8g.24xlarge", + "r8g.2xlarge", + "r8g.48xlarge", + "r8g.4xlarge", + "r8g.8xlarge", + "r8g.large", + "r8g.medium", + "r8g.metal-24xl", + "r8g.metal-48xl", + "r8g.xlarge", "t1.micro", "t2.2xlarge", "t2.large", @@ -9649,6 +9781,18 @@ "r7iz.metal-16xl", "r7iz.metal-32xl", "r7iz.xlarge", + "r8g.12xlarge", + "r8g.16xlarge", + "r8g.24xlarge", + "r8g.2xlarge", + "r8g.48xlarge", + "r8g.4xlarge", + "r8g.8xlarge", + "r8g.large", + "r8g.medium", + "r8g.metal-24xl", + "r8g.metal-48xl", + "r8g.xlarge", "t1.micro", "t2.2xlarge", "t2.large", @@ -10461,6 +10605,18 @@ "r7iz.metal-16xl", "r7iz.metal-32xl", "r7iz.xlarge", + "r8g.12xlarge", + "r8g.16xlarge", + "r8g.24xlarge", + "r8g.2xlarge", + "r8g.48xlarge", + "r8g.4xlarge", + "r8g.8xlarge", + "r8g.large", + "r8g.medium", + "r8g.metal-24xl", + "r8g.metal-48xl", + "r8g.xlarge", "t1.micro", "t2.2xlarge", "t2.large", @@ -11273,6 +11429,18 @@ "r7iz.metal-16xl", "r7iz.metal-32xl", "r7iz.xlarge", + "r8g.12xlarge", + "r8g.16xlarge", + "r8g.24xlarge", + "r8g.2xlarge", + "r8g.48xlarge", + "r8g.4xlarge", + "r8g.8xlarge", + "r8g.large", + "r8g.medium", + "r8g.metal-24xl", + "r8g.metal-48xl", + "r8g.xlarge", "t1.micro", "t2.2xlarge", "t2.large", @@ -12085,6 +12253,18 @@ "r7iz.metal-16xl", "r7iz.metal-32xl", "r7iz.xlarge", + "r8g.12xlarge", + "r8g.16xlarge", + "r8g.24xlarge", + "r8g.2xlarge", + "r8g.48xlarge", + "r8g.4xlarge", + "r8g.8xlarge", + "r8g.large", + "r8g.medium", + "r8g.metal-24xl", + "r8g.metal-48xl", + "r8g.xlarge", "t1.micro", "t2.2xlarge", "t2.large", @@ -12897,6 +13077,18 @@ "r7iz.metal-16xl", "r7iz.metal-32xl", "r7iz.xlarge", + "r8g.12xlarge", + "r8g.16xlarge", + "r8g.24xlarge", + "r8g.2xlarge", + "r8g.48xlarge", + "r8g.4xlarge", + "r8g.8xlarge", + "r8g.large", + "r8g.medium", + "r8g.metal-24xl", + "r8g.metal-48xl", + "r8g.xlarge", "t1.micro", "t2.2xlarge", "t2.large", @@ -13709,6 +13901,18 @@ "r7iz.metal-16xl", "r7iz.metal-32xl", "r7iz.xlarge", + "r8g.12xlarge", + "r8g.16xlarge", + "r8g.24xlarge", + "r8g.2xlarge", + "r8g.48xlarge", + "r8g.4xlarge", + "r8g.8xlarge", + "r8g.large", + "r8g.medium", + "r8g.metal-24xl", + "r8g.metal-48xl", + "r8g.xlarge", "t1.micro", "t2.2xlarge", "t2.large", @@ -14521,6 +14725,18 @@ "r7iz.metal-16xl", "r7iz.metal-32xl", "r7iz.xlarge", + "r8g.12xlarge", + "r8g.16xlarge", + "r8g.24xlarge", + "r8g.2xlarge", + "r8g.48xlarge", + "r8g.4xlarge", + "r8g.8xlarge", + "r8g.large", + "r8g.medium", + "r8g.metal-24xl", + "r8g.metal-48xl", + "r8g.xlarge", "t1.micro", "t2.2xlarge", "t2.large", @@ -15333,6 +15549,18 @@ "r7iz.metal-16xl", "r7iz.metal-32xl", "r7iz.xlarge", + "r8g.12xlarge", + "r8g.16xlarge", + "r8g.24xlarge", + "r8g.2xlarge", + "r8g.48xlarge", + "r8g.4xlarge", + "r8g.8xlarge", + "r8g.large", + "r8g.medium", + "r8g.metal-24xl", + "r8g.metal-48xl", + "r8g.xlarge", "t1.micro", "t2.2xlarge", "t2.large", @@ -16145,6 +16373,18 @@ "r7iz.metal-16xl", "r7iz.metal-32xl", "r7iz.xlarge", + "r8g.12xlarge", + "r8g.16xlarge", + "r8g.24xlarge", + "r8g.2xlarge", + "r8g.48xlarge", + "r8g.4xlarge", + "r8g.8xlarge", + "r8g.large", + "r8g.medium", + "r8g.metal-24xl", + "r8g.metal-48xl", + "r8g.xlarge", "t1.micro", "t2.2xlarge", "t2.large", @@ -16957,6 +17197,18 @@ "r7iz.metal-16xl", "r7iz.metal-32xl", "r7iz.xlarge", + "r8g.12xlarge", + "r8g.16xlarge", + "r8g.24xlarge", + "r8g.2xlarge", + "r8g.48xlarge", + "r8g.4xlarge", + "r8g.8xlarge", + "r8g.large", + "r8g.medium", + "r8g.metal-24xl", + "r8g.metal-48xl", + "r8g.xlarge", "t1.micro", "t2.2xlarge", "t2.large", @@ -17769,6 +18021,18 @@ "r7iz.metal-16xl", "r7iz.metal-32xl", "r7iz.xlarge", + "r8g.12xlarge", + "r8g.16xlarge", + "r8g.24xlarge", + "r8g.2xlarge", + "r8g.48xlarge", + "r8g.4xlarge", + "r8g.8xlarge", + "r8g.large", + "r8g.medium", + "r8g.metal-24xl", + "r8g.metal-48xl", + "r8g.xlarge", "t1.micro", "t2.2xlarge", "t2.large", @@ -18581,6 +18845,18 @@ "r7iz.metal-16xl", "r7iz.metal-32xl", "r7iz.xlarge", + "r8g.12xlarge", + "r8g.16xlarge", + "r8g.24xlarge", + "r8g.2xlarge", + "r8g.48xlarge", + "r8g.4xlarge", + "r8g.8xlarge", + "r8g.large", + "r8g.medium", + "r8g.metal-24xl", + "r8g.metal-48xl", + "r8g.xlarge", "t1.micro", "t2.2xlarge", "t2.large", @@ -19393,6 +19669,18 @@ "r7iz.metal-16xl", "r7iz.metal-32xl", "r7iz.xlarge", + "r8g.12xlarge", + "r8g.16xlarge", + "r8g.24xlarge", + "r8g.2xlarge", + "r8g.48xlarge", + "r8g.4xlarge", + "r8g.8xlarge", + "r8g.large", + "r8g.medium", + "r8g.metal-24xl", + "r8g.metal-48xl", + "r8g.xlarge", "t1.micro", "t2.2xlarge", "t2.large", @@ -20205,6 +20493,18 @@ "r7iz.metal-16xl", "r7iz.metal-32xl", "r7iz.xlarge", + "r8g.12xlarge", + "r8g.16xlarge", + "r8g.24xlarge", + "r8g.2xlarge", + "r8g.48xlarge", + "r8g.4xlarge", + "r8g.8xlarge", + "r8g.large", + "r8g.medium", + "r8g.metal-24xl", + "r8g.metal-48xl", + "r8g.xlarge", "t1.micro", "t2.2xlarge", "t2.large", @@ -21017,6 +21317,18 @@ "r7iz.metal-16xl", "r7iz.metal-32xl", "r7iz.xlarge", + "r8g.12xlarge", + "r8g.16xlarge", + "r8g.24xlarge", + "r8g.2xlarge", + "r8g.48xlarge", + "r8g.4xlarge", + "r8g.8xlarge", + "r8g.large", + "r8g.medium", + "r8g.metal-24xl", + "r8g.metal-48xl", + "r8g.xlarge", "t1.micro", "t2.2xlarge", "t2.large", @@ -21829,6 +22141,18 @@ "r7iz.metal-16xl", "r7iz.metal-32xl", "r7iz.xlarge", + "r8g.12xlarge", + "r8g.16xlarge", + "r8g.24xlarge", + "r8g.2xlarge", + "r8g.48xlarge", + "r8g.4xlarge", + "r8g.8xlarge", + "r8g.large", + "r8g.medium", + "r8g.metal-24xl", + "r8g.metal-48xl", + "r8g.xlarge", "t1.micro", "t2.2xlarge", "t2.large", @@ -22641,6 +22965,18 @@ "r7iz.metal-16xl", "r7iz.metal-32xl", "r7iz.xlarge", + "r8g.12xlarge", + "r8g.16xlarge", + "r8g.24xlarge", + "r8g.2xlarge", + "r8g.48xlarge", + "r8g.4xlarge", + "r8g.8xlarge", + "r8g.large", + "r8g.medium", + "r8g.metal-24xl", + "r8g.metal-48xl", + "r8g.xlarge", "t1.micro", "t2.2xlarge", "t2.large", @@ -23453,6 +23789,18 @@ "r7iz.metal-16xl", "r7iz.metal-32xl", "r7iz.xlarge", + "r8g.12xlarge", + "r8g.16xlarge", + "r8g.24xlarge", + "r8g.2xlarge", + "r8g.48xlarge", + "r8g.4xlarge", + "r8g.8xlarge", + "r8g.large", + "r8g.medium", + "r8g.metal-24xl", + "r8g.metal-48xl", + "r8g.xlarge", "t1.micro", "t2.2xlarge", "t2.large", @@ -24265,6 +24613,18 @@ "r7iz.metal-16xl", "r7iz.metal-32xl", "r7iz.xlarge", + "r8g.12xlarge", + "r8g.16xlarge", + "r8g.24xlarge", + "r8g.2xlarge", + "r8g.48xlarge", + "r8g.4xlarge", + "r8g.8xlarge", + "r8g.large", + "r8g.medium", + "r8g.metal-24xl", + "r8g.metal-48xl", + "r8g.xlarge", "t1.micro", "t2.2xlarge", "t2.large", @@ -25077,6 +25437,18 @@ "r7iz.metal-16xl", "r7iz.metal-32xl", "r7iz.xlarge", + "r8g.12xlarge", + "r8g.16xlarge", + "r8g.24xlarge", + "r8g.2xlarge", + "r8g.48xlarge", + "r8g.4xlarge", + "r8g.8xlarge", + "r8g.large", + "r8g.medium", + "r8g.metal-24xl", + "r8g.metal-48xl", + "r8g.xlarge", "t1.micro", "t2.2xlarge", "t2.large", @@ -25889,6 +26261,18 @@ "r7iz.metal-16xl", "r7iz.metal-32xl", "r7iz.xlarge", + "r8g.12xlarge", + "r8g.16xlarge", + "r8g.24xlarge", + "r8g.2xlarge", + "r8g.48xlarge", + "r8g.4xlarge", + "r8g.8xlarge", + "r8g.large", + "r8g.medium", + "r8g.metal-24xl", + "r8g.metal-48xl", + "r8g.xlarge", "t1.micro", "t2.2xlarge", "t2.large", @@ -26701,6 +27085,18 @@ "r7iz.metal-16xl", "r7iz.metal-32xl", "r7iz.xlarge", + "r8g.12xlarge", + "r8g.16xlarge", + "r8g.24xlarge", + "r8g.2xlarge", + "r8g.48xlarge", + "r8g.4xlarge", + "r8g.8xlarge", + "r8g.large", + "r8g.medium", + "r8g.metal-24xl", + "r8g.metal-48xl", + "r8g.xlarge", "t1.micro", "t2.2xlarge", "t2.large", diff --git a/src/cfnlint/data/schemas/extensions/aws_rds_dbinstance/dbinstanceclass_enum.json b/src/cfnlint/data/schemas/extensions/aws_rds_dbinstance/dbinstanceclass_enum.json index 977da2ad4f..60d0876303 100644 --- a/src/cfnlint/data/schemas/extensions/aws_rds_dbinstance/dbinstanceclass_enum.json +++ b/src/cfnlint/data/schemas/extensions/aws_rds_dbinstance/dbinstanceclass_enum.json @@ -91269,6 +91269,13 @@ "db.m6g.8xlarge", "db.m6g.large", "db.m6g.xlarge", + "db.m6gd.12xlarge", + "db.m6gd.16xlarge", + "db.m6gd.2xlarge", + "db.m6gd.4xlarge", + "db.m6gd.8xlarge", + "db.m6gd.large", + "db.m6gd.xlarge", "db.r4.16xlarge", "db.r4.2xlarge", "db.r4.4xlarge", @@ -91290,6 +91297,13 @@ "db.r6g.8xlarge", "db.r6g.large", "db.r6g.xlarge", + "db.r6gd.12xlarge", + "db.r6gd.16xlarge", + "db.r6gd.2xlarge", + "db.r6gd.4xlarge", + "db.r6gd.8xlarge", + "db.r6gd.large", + "db.r6gd.xlarge", "db.t2.2xlarge", "db.t2.large", "db.t2.medium", @@ -91351,6 +91365,13 @@ "db.m6g.8xlarge", "db.m6g.large", "db.m6g.xlarge", + "db.m6gd.12xlarge", + "db.m6gd.16xlarge", + "db.m6gd.2xlarge", + "db.m6gd.4xlarge", + "db.m6gd.8xlarge", + "db.m6gd.large", + "db.m6gd.xlarge", "db.r4.16xlarge", "db.r4.2xlarge", "db.r4.4xlarge", @@ -91372,6 +91393,13 @@ "db.r6g.8xlarge", "db.r6g.large", "db.r6g.xlarge", + "db.r6gd.12xlarge", + "db.r6gd.16xlarge", + "db.r6gd.2xlarge", + "db.r6gd.4xlarge", + "db.r6gd.8xlarge", + "db.r6gd.large", + "db.r6gd.xlarge", "db.t2.2xlarge", "db.t2.large", "db.t2.medium", @@ -91430,6 +91458,13 @@ "db.m6g.8xlarge", "db.m6g.large", "db.m6g.xlarge", + "db.m6gd.12xlarge", + "db.m6gd.16xlarge", + "db.m6gd.2xlarge", + "db.m6gd.4xlarge", + "db.m6gd.8xlarge", + "db.m6gd.large", + "db.m6gd.xlarge", "db.r4.16xlarge", "db.r4.2xlarge", "db.r4.4xlarge", @@ -91451,6 +91486,13 @@ "db.r6g.8xlarge", "db.r6g.large", "db.r6g.xlarge", + "db.r6gd.12xlarge", + "db.r6gd.16xlarge", + "db.r6gd.2xlarge", + "db.r6gd.4xlarge", + "db.r6gd.8xlarge", + "db.r6gd.large", + "db.r6gd.xlarge", "db.t2.2xlarge", "db.t2.large", "db.t2.medium", @@ -91512,6 +91554,13 @@ "db.m6g.8xlarge", "db.m6g.large", "db.m6g.xlarge", + "db.m6gd.12xlarge", + "db.m6gd.16xlarge", + "db.m6gd.2xlarge", + "db.m6gd.4xlarge", + "db.m6gd.8xlarge", + "db.m6gd.large", + "db.m6gd.xlarge", "db.r4.16xlarge", "db.r4.2xlarge", "db.r4.4xlarge", @@ -91533,6 +91582,13 @@ "db.r6g.8xlarge", "db.r6g.large", "db.r6g.xlarge", + "db.r6gd.12xlarge", + "db.r6gd.16xlarge", + "db.r6gd.2xlarge", + "db.r6gd.4xlarge", + "db.r6gd.8xlarge", + "db.r6gd.large", + "db.r6gd.xlarge", "db.t2.2xlarge", "db.t2.large", "db.t2.medium", @@ -91599,6 +91655,13 @@ "db.m6g.8xlarge", "db.m6g.large", "db.m6g.xlarge", + "db.m6gd.12xlarge", + "db.m6gd.16xlarge", + "db.m6gd.2xlarge", + "db.m6gd.4xlarge", + "db.m6gd.8xlarge", + "db.m6gd.large", + "db.m6gd.xlarge", "db.r4.16xlarge", "db.r4.2xlarge", "db.r4.4xlarge", @@ -91628,6 +91691,13 @@ "db.r6g.8xlarge", "db.r6g.large", "db.r6g.xlarge", + "db.r6gd.12xlarge", + "db.r6gd.16xlarge", + "db.r6gd.2xlarge", + "db.r6gd.4xlarge", + "db.r6gd.8xlarge", + "db.r6gd.large", + "db.r6gd.xlarge", "db.t2.2xlarge", "db.t2.large", "db.t2.medium", @@ -91697,6 +91767,13 @@ "db.m6g.8xlarge", "db.m6g.large", "db.m6g.xlarge", + "db.m6gd.12xlarge", + "db.m6gd.16xlarge", + "db.m6gd.2xlarge", + "db.m6gd.4xlarge", + "db.m6gd.8xlarge", + "db.m6gd.large", + "db.m6gd.xlarge", "db.r4.16xlarge", "db.r4.2xlarge", "db.r4.4xlarge", @@ -91726,6 +91803,13 @@ "db.r6g.8xlarge", "db.r6g.large", "db.r6g.xlarge", + "db.r6gd.12xlarge", + "db.r6gd.16xlarge", + "db.r6gd.2xlarge", + "db.r6gd.4xlarge", + "db.r6gd.8xlarge", + "db.r6gd.large", + "db.r6gd.xlarge", "db.t2.2xlarge", "db.t2.large", "db.t2.medium", @@ -92148,6 +92232,13 @@ "db.m6g.8xlarge", "db.m6g.large", "db.m6g.xlarge", + "db.m6gd.12xlarge", + "db.m6gd.16xlarge", + "db.m6gd.2xlarge", + "db.m6gd.4xlarge", + "db.m6gd.8xlarge", + "db.m6gd.large", + "db.m6gd.xlarge", "db.r4.16xlarge", "db.r4.2xlarge", "db.r4.4xlarge", @@ -92177,6 +92268,13 @@ "db.r6g.8xlarge", "db.r6g.large", "db.r6g.xlarge", + "db.r6gd.12xlarge", + "db.r6gd.16xlarge", + "db.r6gd.2xlarge", + "db.r6gd.4xlarge", + "db.r6gd.8xlarge", + "db.r6gd.large", + "db.r6gd.xlarge", "db.t2.2xlarge", "db.t2.large", "db.t2.medium", @@ -92246,6 +92344,13 @@ "db.m6g.8xlarge", "db.m6g.large", "db.m6g.xlarge", + "db.m6gd.12xlarge", + "db.m6gd.16xlarge", + "db.m6gd.2xlarge", + "db.m6gd.4xlarge", + "db.m6gd.8xlarge", + "db.m6gd.large", + "db.m6gd.xlarge", "db.r4.16xlarge", "db.r4.2xlarge", "db.r4.4xlarge", @@ -92275,6 +92380,13 @@ "db.r6g.8xlarge", "db.r6g.large", "db.r6g.xlarge", + "db.r6gd.12xlarge", + "db.r6gd.16xlarge", + "db.r6gd.2xlarge", + "db.r6gd.4xlarge", + "db.r6gd.8xlarge", + "db.r6gd.large", + "db.r6gd.xlarge", "db.t2.2xlarge", "db.t2.large", "db.t2.medium", @@ -92333,6 +92445,13 @@ "db.m6g.8xlarge", "db.m6g.large", "db.m6g.xlarge", + "db.m6gd.12xlarge", + "db.m6gd.16xlarge", + "db.m6gd.2xlarge", + "db.m6gd.4xlarge", + "db.m6gd.8xlarge", + "db.m6gd.large", + "db.m6gd.xlarge", "db.r4.16xlarge", "db.r4.2xlarge", "db.r4.4xlarge", @@ -92354,6 +92473,13 @@ "db.r6g.8xlarge", "db.r6g.large", "db.r6g.xlarge", + "db.r6gd.12xlarge", + "db.r6gd.16xlarge", + "db.r6gd.2xlarge", + "db.r6gd.4xlarge", + "db.r6gd.8xlarge", + "db.r6gd.large", + "db.r6gd.xlarge", "db.t2.2xlarge", "db.t2.large", "db.t2.medium", @@ -92415,6 +92541,13 @@ "db.m6g.8xlarge", "db.m6g.large", "db.m6g.xlarge", + "db.m6gd.12xlarge", + "db.m6gd.16xlarge", + "db.m6gd.2xlarge", + "db.m6gd.4xlarge", + "db.m6gd.8xlarge", + "db.m6gd.large", + "db.m6gd.xlarge", "db.r4.16xlarge", "db.r4.2xlarge", "db.r4.4xlarge", @@ -92436,6 +92569,13 @@ "db.r6g.8xlarge", "db.r6g.large", "db.r6g.xlarge", + "db.r6gd.12xlarge", + "db.r6gd.16xlarge", + "db.r6gd.2xlarge", + "db.r6gd.4xlarge", + "db.r6gd.8xlarge", + "db.r6gd.large", + "db.r6gd.xlarge", "db.t2.2xlarge", "db.t2.large", "db.t2.medium", @@ -92494,6 +92634,13 @@ "db.m6g.8xlarge", "db.m6g.large", "db.m6g.xlarge", + "db.m6gd.12xlarge", + "db.m6gd.16xlarge", + "db.m6gd.2xlarge", + "db.m6gd.4xlarge", + "db.m6gd.8xlarge", + "db.m6gd.large", + "db.m6gd.xlarge", "db.r4.16xlarge", "db.r4.2xlarge", "db.r4.4xlarge", @@ -92515,6 +92662,13 @@ "db.r6g.8xlarge", "db.r6g.large", "db.r6g.xlarge", + "db.r6gd.12xlarge", + "db.r6gd.16xlarge", + "db.r6gd.2xlarge", + "db.r6gd.4xlarge", + "db.r6gd.8xlarge", + "db.r6gd.large", + "db.r6gd.xlarge", "db.t2.2xlarge", "db.t2.large", "db.t2.medium", @@ -92576,6 +92730,13 @@ "db.m6g.8xlarge", "db.m6g.large", "db.m6g.xlarge", + "db.m6gd.12xlarge", + "db.m6gd.16xlarge", + "db.m6gd.2xlarge", + "db.m6gd.4xlarge", + "db.m6gd.8xlarge", + "db.m6gd.large", + "db.m6gd.xlarge", "db.r4.16xlarge", "db.r4.2xlarge", "db.r4.4xlarge", @@ -92597,6 +92758,13 @@ "db.r6g.8xlarge", "db.r6g.large", "db.r6g.xlarge", + "db.r6gd.12xlarge", + "db.r6gd.16xlarge", + "db.r6gd.2xlarge", + "db.r6gd.4xlarge", + "db.r6gd.8xlarge", + "db.r6gd.large", + "db.r6gd.xlarge", "db.t2.2xlarge", "db.t2.large", "db.t2.medium", @@ -93341,6 +93509,13 @@ "db.m6g.8xlarge", "db.m6g.large", "db.m6g.xlarge", + "db.m6gd.12xlarge", + "db.m6gd.16xlarge", + "db.m6gd.2xlarge", + "db.m6gd.4xlarge", + "db.m6gd.8xlarge", + "db.m6gd.large", + "db.m6gd.xlarge", "db.r3.2xlarge", "db.r3.4xlarge", "db.r3.8xlarge", @@ -93367,6 +93542,13 @@ "db.r6g.8xlarge", "db.r6g.large", "db.r6g.xlarge", + "db.r6gd.12xlarge", + "db.r6gd.16xlarge", + "db.r6gd.2xlarge", + "db.r6gd.4xlarge", + "db.r6gd.8xlarge", + "db.r6gd.large", + "db.r6gd.xlarge", "db.t2.2xlarge", "db.t2.large", "db.t2.medium", @@ -93438,6 +93620,13 @@ "db.m6g.8xlarge", "db.m6g.large", "db.m6g.xlarge", + "db.m6gd.12xlarge", + "db.m6gd.16xlarge", + "db.m6gd.2xlarge", + "db.m6gd.4xlarge", + "db.m6gd.8xlarge", + "db.m6gd.large", + "db.m6gd.xlarge", "db.r3.2xlarge", "db.r3.4xlarge", "db.r3.8xlarge", @@ -93464,6 +93653,13 @@ "db.r6g.8xlarge", "db.r6g.large", "db.r6g.xlarge", + "db.r6gd.12xlarge", + "db.r6gd.16xlarge", + "db.r6gd.2xlarge", + "db.r6gd.4xlarge", + "db.r6gd.8xlarge", + "db.r6gd.large", + "db.r6gd.xlarge", "db.t2.2xlarge", "db.t2.large", "db.t2.medium", @@ -93547,6 +93743,13 @@ "db.m6g.8xlarge", "db.m6g.large", "db.m6g.xlarge", + "db.m6gd.12xlarge", + "db.m6gd.16xlarge", + "db.m6gd.2xlarge", + "db.m6gd.4xlarge", + "db.m6gd.8xlarge", + "db.m6gd.large", + "db.m6gd.xlarge", "db.r3.2xlarge", "db.r3.4xlarge", "db.r3.8xlarge", @@ -93581,6 +93784,13 @@ "db.r6g.8xlarge", "db.r6g.large", "db.r6g.xlarge", + "db.r6gd.12xlarge", + "db.r6gd.16xlarge", + "db.r6gd.2xlarge", + "db.r6gd.4xlarge", + "db.r6gd.8xlarge", + "db.r6gd.large", + "db.r6gd.xlarge", "db.t1.micro", "db.t2.2xlarge", "db.t2.large", @@ -93668,6 +93878,13 @@ "db.m6g.8xlarge", "db.m6g.large", "db.m6g.xlarge", + "db.m6gd.12xlarge", + "db.m6gd.16xlarge", + "db.m6gd.2xlarge", + "db.m6gd.4xlarge", + "db.m6gd.8xlarge", + "db.m6gd.large", + "db.m6gd.xlarge", "db.r3.2xlarge", "db.r3.4xlarge", "db.r3.8xlarge", @@ -93702,6 +93919,13 @@ "db.r6g.8xlarge", "db.r6g.large", "db.r6g.xlarge", + "db.r6gd.12xlarge", + "db.r6gd.16xlarge", + "db.r6gd.2xlarge", + "db.r6gd.4xlarge", + "db.r6gd.8xlarge", + "db.r6gd.large", + "db.r6gd.xlarge", "db.t1.micro", "db.t2.2xlarge", "db.t2.large", @@ -93778,6 +94002,13 @@ "db.m6g.8xlarge", "db.m6g.large", "db.m6g.xlarge", + "db.m6gd.12xlarge", + "db.m6gd.16xlarge", + "db.m6gd.2xlarge", + "db.m6gd.4xlarge", + "db.m6gd.8xlarge", + "db.m6gd.large", + "db.m6gd.xlarge", "db.r3.2xlarge", "db.r3.4xlarge", "db.r3.8xlarge", @@ -93804,6 +94035,13 @@ "db.r6g.8xlarge", "db.r6g.large", "db.r6g.xlarge", + "db.r6gd.12xlarge", + "db.r6gd.16xlarge", + "db.r6gd.2xlarge", + "db.r6gd.4xlarge", + "db.r6gd.8xlarge", + "db.r6gd.large", + "db.r6gd.xlarge", "db.t1.micro", "db.t2.2xlarge", "db.t2.large", @@ -93883,6 +94121,13 @@ "db.m6g.8xlarge", "db.m6g.large", "db.m6g.xlarge", + "db.m6gd.12xlarge", + "db.m6gd.16xlarge", + "db.m6gd.2xlarge", + "db.m6gd.4xlarge", + "db.m6gd.8xlarge", + "db.m6gd.large", + "db.m6gd.xlarge", "db.r3.2xlarge", "db.r3.4xlarge", "db.r3.8xlarge", @@ -93909,6 +94154,13 @@ "db.r6g.8xlarge", "db.r6g.large", "db.r6g.xlarge", + "db.r6gd.12xlarge", + "db.r6gd.16xlarge", + "db.r6gd.2xlarge", + "db.r6gd.4xlarge", + "db.r6gd.8xlarge", + "db.r6gd.large", + "db.r6gd.xlarge", "db.t1.micro", "db.t2.2xlarge", "db.t2.large", @@ -94586,7 +94838,7 @@ "type": "string" }, "Engine": { - "const": "mysql" + "const": "mariadb" }, "LicenseModel": false }, @@ -94599,13 +94851,6 @@ "properties": { "DBInstanceClass": { "enum": [ - "db.m1.large", - "db.m1.medium", - "db.m1.small", - "db.m1.xlarge", - "db.m2.2xlarge", - "db.m2.4xlarge", - "db.m2.xlarge", "db.m3.2xlarge", "db.m3.large", "db.m3.medium", @@ -94631,6 +94876,13 @@ "db.m6g.8xlarge", "db.m6g.large", "db.m6g.xlarge", + "db.m6gd.12xlarge", + "db.m6gd.16xlarge", + "db.m6gd.2xlarge", + "db.m6gd.4xlarge", + "db.m6gd.8xlarge", + "db.m6gd.large", + "db.m6gd.xlarge", "db.r3.2xlarge", "db.r3.4xlarge", "db.r3.8xlarge", @@ -94657,8 +94909,13 @@ "db.r6g.8xlarge", "db.r6g.large", "db.r6g.xlarge", - "db.r6i.32xlarge", - "db.t1.micro", + "db.r6gd.12xlarge", + "db.r6gd.16xlarge", + "db.r6gd.2xlarge", + "db.r6gd.4xlarge", + "db.r6gd.8xlarge", + "db.r6gd.large", + "db.r6gd.xlarge", "db.t2.2xlarge", "db.t2.large", "db.t2.medium", @@ -94689,7 +94946,7 @@ "type": "string" }, "Engine": { - "const": "mysql" + "const": "mariadb" }, "LicenseModel": { "const": "general-public-license" @@ -94705,13 +94962,6 @@ "properties": { "DBInstanceClass": { "enum": [ - "db.m1.large", - "db.m1.medium", - "db.m1.small", - "db.m1.xlarge", - "db.m2.2xlarge", - "db.m2.4xlarge", - "db.m2.xlarge", "db.m3.2xlarge", "db.m3.large", "db.m3.medium", @@ -94737,6 +94987,13 @@ "db.m6g.8xlarge", "db.m6g.large", "db.m6g.xlarge", + "db.m6gd.12xlarge", + "db.m6gd.16xlarge", + "db.m6gd.2xlarge", + "db.m6gd.4xlarge", + "db.m6gd.8xlarge", + "db.m6gd.large", + "db.m6gd.xlarge", "db.r3.2xlarge", "db.r3.4xlarge", "db.r3.8xlarge", @@ -94763,8 +95020,13 @@ "db.r6g.8xlarge", "db.r6g.large", "db.r6g.xlarge", - "db.r6i.32xlarge", - "db.t1.micro", + "db.r6gd.12xlarge", + "db.r6gd.16xlarge", + "db.r6gd.2xlarge", + "db.r6gd.4xlarge", + "db.r6gd.8xlarge", + "db.r6gd.large", + "db.r6gd.xlarge", "db.t2.2xlarge", "db.t2.large", "db.t2.medium", @@ -94795,7 +95057,7 @@ "type": "string" }, "Engine": { - "const": "postgres" + "const": "mysql" }, "LicenseModel": false }, @@ -94833,14 +95095,6 @@ "db.m5.8xlarge", "db.m5.large", "db.m5.xlarge", - "db.m5d.12xlarge", - "db.m5d.16xlarge", - "db.m5d.24xlarge", - "db.m5d.2xlarge", - "db.m5d.4xlarge", - "db.m5d.8xlarge", - "db.m5d.large", - "db.m5d.xlarge", "db.m6g.12xlarge", "db.m6g.16xlarge", "db.m6g.2xlarge", @@ -94848,6 +95102,13 @@ "db.m6g.8xlarge", "db.m6g.large", "db.m6g.xlarge", + "db.m6gd.12xlarge", + "db.m6gd.16xlarge", + "db.m6gd.2xlarge", + "db.m6gd.4xlarge", + "db.m6gd.8xlarge", + "db.m6gd.large", + "db.m6gd.xlarge", "db.r3.2xlarge", "db.r3.4xlarge", "db.r3.8xlarge", @@ -94867,14 +95128,6 @@ "db.r5.8xlarge", "db.r5.large", "db.r5.xlarge", - "db.r5d.12xlarge", - "db.r5d.16xlarge", - "db.r5d.24xlarge", - "db.r5d.2xlarge", - "db.r5d.4xlarge", - "db.r5d.8xlarge", - "db.r5d.large", - "db.r5d.xlarge", "db.r6g.12xlarge", "db.r6g.16xlarge", "db.r6g.2xlarge", @@ -94882,6 +95135,14 @@ "db.r6g.8xlarge", "db.r6g.large", "db.r6g.xlarge", + "db.r6gd.12xlarge", + "db.r6gd.16xlarge", + "db.r6gd.2xlarge", + "db.r6gd.4xlarge", + "db.r6gd.8xlarge", + "db.r6gd.large", + "db.r6gd.xlarge", + "db.r6i.32xlarge", "db.t1.micro", "db.t2.2xlarge", "db.t2.large", @@ -94913,7 +95174,7 @@ "type": "string" }, "Engine": { - "const": "postgres" + "const": "mysql" }, "LicenseModel": { "const": "general-public-license" @@ -94954,14 +95215,6 @@ "db.m5.8xlarge", "db.m5.large", "db.m5.xlarge", - "db.m5d.12xlarge", - "db.m5d.16xlarge", - "db.m5d.24xlarge", - "db.m5d.2xlarge", - "db.m5d.4xlarge", - "db.m5d.8xlarge", - "db.m5d.large", - "db.m5d.xlarge", "db.m6g.12xlarge", "db.m6g.16xlarge", "db.m6g.2xlarge", @@ -94969,6 +95222,13 @@ "db.m6g.8xlarge", "db.m6g.large", "db.m6g.xlarge", + "db.m6gd.12xlarge", + "db.m6gd.16xlarge", + "db.m6gd.2xlarge", + "db.m6gd.4xlarge", + "db.m6gd.8xlarge", + "db.m6gd.large", + "db.m6gd.xlarge", "db.r3.2xlarge", "db.r3.4xlarge", "db.r3.8xlarge", @@ -94988,14 +95248,6 @@ "db.r5.8xlarge", "db.r5.large", "db.r5.xlarge", - "db.r5d.12xlarge", - "db.r5d.16xlarge", - "db.r5d.24xlarge", - "db.r5d.2xlarge", - "db.r5d.4xlarge", - "db.r5d.8xlarge", - "db.r5d.large", - "db.r5d.xlarge", "db.r6g.12xlarge", "db.r6g.16xlarge", "db.r6g.2xlarge", @@ -95003,6 +95255,14 @@ "db.r6g.8xlarge", "db.r6g.large", "db.r6g.xlarge", + "db.r6gd.12xlarge", + "db.r6gd.16xlarge", + "db.r6gd.2xlarge", + "db.r6gd.4xlarge", + "db.r6gd.8xlarge", + "db.r6gd.large", + "db.r6gd.xlarge", + "db.r6i.32xlarge", "db.t1.micro", "db.t2.2xlarge", "db.t2.large", @@ -95034,7 +95294,7 @@ "type": "string" }, "Engine": { - "const": "mariadb" + "const": "postgres" }, "LicenseModel": false }, @@ -95047,6 +95307,13 @@ "properties": { "DBInstanceClass": { "enum": [ + "db.m1.large", + "db.m1.medium", + "db.m1.small", + "db.m1.xlarge", + "db.m2.2xlarge", + "db.m2.4xlarge", + "db.m2.xlarge", "db.m3.2xlarge", "db.m3.large", "db.m3.medium", @@ -95065,6 +95332,14 @@ "db.m5.8xlarge", "db.m5.large", "db.m5.xlarge", + "db.m5d.12xlarge", + "db.m5d.16xlarge", + "db.m5d.24xlarge", + "db.m5d.2xlarge", + "db.m5d.4xlarge", + "db.m5d.8xlarge", + "db.m5d.large", + "db.m5d.xlarge", "db.m6g.12xlarge", "db.m6g.16xlarge", "db.m6g.2xlarge", @@ -95072,6 +95347,13 @@ "db.m6g.8xlarge", "db.m6g.large", "db.m6g.xlarge", + "db.m6gd.12xlarge", + "db.m6gd.16xlarge", + "db.m6gd.2xlarge", + "db.m6gd.4xlarge", + "db.m6gd.8xlarge", + "db.m6gd.large", + "db.m6gd.xlarge", "db.r3.2xlarge", "db.r3.4xlarge", "db.r3.8xlarge", @@ -95091,6 +95373,14 @@ "db.r5.8xlarge", "db.r5.large", "db.r5.xlarge", + "db.r5d.12xlarge", + "db.r5d.16xlarge", + "db.r5d.24xlarge", + "db.r5d.2xlarge", + "db.r5d.4xlarge", + "db.r5d.8xlarge", + "db.r5d.large", + "db.r5d.xlarge", "db.r6g.12xlarge", "db.r6g.16xlarge", "db.r6g.2xlarge", @@ -95098,6 +95388,14 @@ "db.r6g.8xlarge", "db.r6g.large", "db.r6g.xlarge", + "db.r6gd.12xlarge", + "db.r6gd.16xlarge", + "db.r6gd.2xlarge", + "db.r6gd.4xlarge", + "db.r6gd.8xlarge", + "db.r6gd.large", + "db.r6gd.xlarge", + "db.t1.micro", "db.t2.2xlarge", "db.t2.large", "db.t2.medium", @@ -95128,7 +95426,7 @@ "type": "string" }, "Engine": { - "const": "mariadb" + "const": "postgres" }, "LicenseModel": { "const": "general-public-license" @@ -95144,6 +95442,13 @@ "properties": { "DBInstanceClass": { "enum": [ + "db.m1.large", + "db.m1.medium", + "db.m1.small", + "db.m1.xlarge", + "db.m2.2xlarge", + "db.m2.4xlarge", + "db.m2.xlarge", "db.m3.2xlarge", "db.m3.large", "db.m3.medium", @@ -95162,6 +95467,14 @@ "db.m5.8xlarge", "db.m5.large", "db.m5.xlarge", + "db.m5d.12xlarge", + "db.m5d.16xlarge", + "db.m5d.24xlarge", + "db.m5d.2xlarge", + "db.m5d.4xlarge", + "db.m5d.8xlarge", + "db.m5d.large", + "db.m5d.xlarge", "db.m6g.12xlarge", "db.m6g.16xlarge", "db.m6g.2xlarge", @@ -95169,6 +95482,13 @@ "db.m6g.8xlarge", "db.m6g.large", "db.m6g.xlarge", + "db.m6gd.12xlarge", + "db.m6gd.16xlarge", + "db.m6gd.2xlarge", + "db.m6gd.4xlarge", + "db.m6gd.8xlarge", + "db.m6gd.large", + "db.m6gd.xlarge", "db.r3.2xlarge", "db.r3.4xlarge", "db.r3.8xlarge", @@ -95188,6 +95508,14 @@ "db.r5.8xlarge", "db.r5.large", "db.r5.xlarge", + "db.r5d.12xlarge", + "db.r5d.16xlarge", + "db.r5d.24xlarge", + "db.r5d.2xlarge", + "db.r5d.4xlarge", + "db.r5d.8xlarge", + "db.r5d.large", + "db.r5d.xlarge", "db.r6g.12xlarge", "db.r6g.16xlarge", "db.r6g.2xlarge", @@ -95195,6 +95523,14 @@ "db.r6g.8xlarge", "db.r6g.large", "db.r6g.xlarge", + "db.r6gd.12xlarge", + "db.r6gd.16xlarge", + "db.r6gd.2xlarge", + "db.r6gd.4xlarge", + "db.r6gd.8xlarge", + "db.r6gd.large", + "db.r6gd.xlarge", + "db.t1.micro", "db.t2.2xlarge", "db.t2.large", "db.t2.medium", 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 7f3e150cdc..e7481bc2f2 100644 --- a/src/cfnlint/data/schemas/providers/af_south_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/af_south_1/__init__.py @@ -1234,7 +1234,6 @@ "aws-iam-group.json", "aws-iam-grouppolicy.json", "aws-iam-instanceprofile.json", - "aws-iam-oidcprovider.json", "aws-iam-policy.json", "aws-iam-role.json", "aws-iam-rolepolicy.json", @@ -1308,7 +1307,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-mediatailor-channel.json", @@ -1439,7 +1437,6 @@ "aws-sagemaker-app.json", "aws-sagemaker-appimageconfig.json", "aws-sagemaker-coderepository.json", - "aws-sagemaker-domain.json", "aws-sagemaker-endpoint.json", "aws-sagemaker-endpointconfig.json", "aws-sagemaker-featuregroup.json", @@ -1455,7 +1452,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", @@ -1523,8 +1519,6 @@ "aws-sso-assignment.json", "aws-sso-instanceaccesscontrolattributeconfiguration.json", "aws-sso-permissionset.json", - "aws-stepfunctions-activity.json", - "aws-stepfunctions-statemachine.json", "aws-stepfunctions-statemachinealias.json", "aws-stepfunctions-statemachineversion.json", "aws-synthetics-canary.json", diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/aws-iam-oidcprovider.json b/src/cfnlint/data/schemas/providers/af_south_1/aws-iam-oidcprovider.json similarity index 98% rename from src/cfnlint/data/schemas/providers/eu_central_1/aws-iam-oidcprovider.json rename to src/cfnlint/data/schemas/providers/af_south_1/aws-iam-oidcprovider.json index fa37c736e1..1794a452ca 100644 --- a/src/cfnlint/data/schemas/providers/eu_central_1/aws-iam-oidcprovider.json +++ b/src/cfnlint/data/schemas/providers/af_south_1/aws-iam-oidcprovider.json @@ -107,6 +107,9 @@ "readOnlyProperties": [ "/properties/Arn" ], + "required": [ + "ThumbprintList" + ], "tagging": { "cloudFormationSystemTags": false, "tagOnCreate": true, diff --git a/src/cfnlint/data/schemas/providers/eu_west_1/aws-mediaconnect-flowsource.json b/src/cfnlint/data/schemas/providers/af_south_1/aws-mediaconnect-flowsource.json similarity index 98% rename from src/cfnlint/data/schemas/providers/eu_west_1/aws-mediaconnect-flowsource.json rename to src/cfnlint/data/schemas/providers/af_south_1/aws-mediaconnect-flowsource.json index d115d07de4..cf7d326061 100644 --- a/src/cfnlint/data/schemas/providers/eu_west_1/aws-mediaconnect-flowsource.json +++ b/src/cfnlint/data/schemas/providers/af_south_1/aws-mediaconnect-flowsource.json @@ -137,9 +137,11 @@ "type": "integer" }, "MaxLatency": { + "default": 2000, "type": "integer" }, "MinLatency": { + "default": 2000, "type": "integer" }, "Name": { diff --git a/src/cfnlint/data/schemas/providers/me_south_1/aws-sagemaker-domain.json b/src/cfnlint/data/schemas/providers/af_south_1/aws-sagemaker-domain.json similarity index 94% rename from src/cfnlint/data/schemas/providers/me_south_1/aws-sagemaker-domain.json rename to src/cfnlint/data/schemas/providers/af_south_1/aws-sagemaker-domain.json index 5cd4ea45fa..f6f11084f6 100644 --- a/src/cfnlint/data/schemas/providers/me_south_1/aws-sagemaker-domain.json +++ b/src/cfnlint/data/schemas/providers/af_south_1/aws-sagemaker-domain.json @@ -9,18 +9,6 @@ "/properties/Tags" ], "definitions": { - "AppType": { - "enum": [ - "JupyterServer", - "TensorBoard", - "RStudioServerPro", - "JupyterLab", - "CodeEditor", - "DetailedProfiler", - "Canvas" - ], - "type": "string" - }, "CodeEditorAppSettings": { "additionalProperties": false, "properties": { @@ -330,24 +318,6 @@ }, "type": "object" }, - "MlTools": { - "enum": [ - "DataWrangler", - "FeatureStore", - "EmrClusters", - "AutoML", - "Experiments", - "Training", - "ModelEvaluation", - "Pipelines", - "Models", - "JumpStart", - "InferenceRecommender", - "Endpoints", - "Projects" - ], - "type": "string" - }, "RSessionAppSettings": { "additionalProperties": false, "properties": { @@ -535,30 +505,6 @@ "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": { @@ -648,9 +594,6 @@ "DISABLED" ], "type": "string" - }, - "StudioWebPortalSettings": { - "$ref": "#/definitions/StudioWebPortalSettings" } }, "required": [ diff --git a/src/cfnlint/data/schemas/providers/ca_central_1/aws-sagemaker-userprofile.json b/src/cfnlint/data/schemas/providers/af_south_1/aws-sagemaker-userprofile.json similarity index 91% rename from src/cfnlint/data/schemas/providers/ca_central_1/aws-sagemaker-userprofile.json rename to src/cfnlint/data/schemas/providers/af_south_1/aws-sagemaker-userprofile.json index c2c0daf9fe..f7e1db12f6 100644 --- a/src/cfnlint/data/schemas/providers/ca_central_1/aws-sagemaker-userprofile.json +++ b/src/cfnlint/data/schemas/providers/af_south_1/aws-sagemaker-userprofile.json @@ -10,18 +10,6 @@ "/properties/Tags" ], "definitions": { - "AppType": { - "enum": [ - "JupyterServer", - "TensorBoard", - "RStudioServerPro", - "JupyterLab", - "CodeEditor", - "DetailedProfiler", - "Canvas" - ], - "type": "string" - }, "CodeEditorAppSettings": { "additionalProperties": false, "properties": { @@ -225,24 +213,6 @@ }, "type": "object" }, - "MlTools": { - "enum": [ - "DataWrangler", - "FeatureStore", - "EmrClusters", - "AutoML", - "Experiments", - "Training", - "ModelEvaluation", - "Pipelines", - "Models", - "JumpStart", - "InferenceRecommender", - "Endpoints", - "Projects" - ], - "type": "string" - }, "RStudioServerProAppSettings": { "additionalProperties": false, "properties": { @@ -380,30 +350,6 @@ "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": { @@ -489,9 +435,6 @@ "DISABLED" ], "type": "string" - }, - "StudioWebPortalSettings": { - "$ref": "#/definitions/StudioWebPortalSettings" } }, "type": "object" diff --git a/src/cfnlint/data/schemas/providers/af_south_1/aws-stepfunctions-activity.json b/src/cfnlint/data/schemas/providers/af_south_1/aws-stepfunctions-activity.json new file mode 100644 index 0000000000..7aaf191ed1 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/af_south_1/aws-stepfunctions-activity.json @@ -0,0 +1,98 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateActivity", + "states:TagResource" + ] + }, + "delete": { + "permissions": [ + "states:DescribeActivity", + "states:DeleteActivity" + ] + }, + "list": { + "permissions": [ + "states:ListActivities" + ] + }, + "read": { + "permissions": [ + "states:DescribeActivity", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:ListTagsForResource", + "states:TagResource", + "states:UntagResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "required": [ + "Name" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::Activity" +} diff --git a/src/cfnlint/data/schemas/providers/af_south_1/aws-stepfunctions-statemachine.json b/src/cfnlint/data/schemas/providers/af_south_1/aws-stepfunctions-statemachine.json new file mode 100644 index 0000000000..c8a1b0f42e --- /dev/null +++ b/src/cfnlint/data/schemas/providers/af_south_1/aws-stepfunctions-statemachine.json @@ -0,0 +1,256 @@ +{ + "additionalIdentifiers": [ + [ + "/properties/StateMachineName" + ] + ], + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/StateMachineName", + "/properties/StateMachineType" + ], + "definitions": { + "CloudWatchLogsLogGroup": { + "additionalProperties": false, + "properties": { + "LogGroupArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "Definition": { + "minProperties": 1, + "type": "object" + }, + "DefinitionSubstitutions": { + "additionalProperties": false, + "minProperties": 1, + "patternProperties": { + ".*": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "integer" + }, + { + "type": "boolean" + } + ] + } + }, + "type": "object" + }, + "LogDestination": { + "additionalProperties": false, + "properties": { + "CloudWatchLogsLogGroup": { + "$ref": "#/definitions/CloudWatchLogsLogGroup" + } + }, + "type": "object" + }, + "LoggingConfiguration": { + "additionalProperties": false, + "properties": { + "Destinations": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/LogDestination" + }, + "minItems": 1, + "type": "array" + }, + "IncludeExecutionData": { + "type": "boolean" + }, + "Level": { + "enum": [ + "ALL", + "ERROR", + "FATAL", + "OFF" + ], + "type": "string" + } + }, + "type": "object" + }, + "S3Location": { + "additionalProperties": false, + "properties": { + "Bucket": { + "type": "string" + }, + "Key": { + "type": "string" + }, + "Version": { + "type": "string" + } + }, + "required": [ + "Bucket", + "Key" + ], + "type": "object" + }, + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "TracingConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + } + }, + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateStateMachine", + "states:DescribeStateMachine", + "states:TagResource", + "iam:PassRole", + "s3:GetObject" + ] + }, + "delete": { + "permissions": [ + "states:DeleteStateMachine", + "states:DescribeStateMachine" + ] + }, + "list": { + "permissions": [ + "states:ListStateMachines" + ] + }, + "read": { + "permissions": [ + "states:DescribeStateMachine", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:UpdateStateMachine", + "states:TagResource", + "states:UntagResource", + "states:ListTagsForResource", + "iam:PassRole" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Definition": { + "$ref": "#/definitions/Definition" + }, + "DefinitionS3Location": { + "$ref": "#/definitions/S3Location" + }, + "DefinitionString": { + "maxLength": 1048576, + "minLength": 1, + "type": "string" + }, + "DefinitionSubstitutions": { + "$ref": "#/definitions/DefinitionSubstitutions" + }, + "LoggingConfiguration": { + "$ref": "#/definitions/LoggingConfiguration" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "RoleArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "StateMachineName": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "StateMachineRevisionId": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "StateMachineType": { + "enum": [ + "STANDARD", + "EXPRESS" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + }, + "TracingConfiguration": { + "$ref": "#/definitions/TracingConfiguration" + } + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/Name", + "/properties/StateMachineRevisionId" + ], + "required": [ + "RoleArn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::StateMachine", + "writeOnlyProperties": [ + "/properties/Definition", + "/properties/DefinitionS3Location", + "/properties/DefinitionSubstitutions" + ] +} 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 b809d9895b..8dfab0dfdd 100644 --- a/src/cfnlint/data/schemas/providers/ap_east_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_east_1/__init__.py @@ -163,6 +163,7 @@ "AWS::Cognito::IdentityPool", "AWS::Cognito::IdentityPoolPrincipalTag", "AWS::Cognito::IdentityPoolRoleAttachment", + "AWS::Cognito::LogDeliveryConfiguration", "AWS::Cognito::UserPool", "AWS::Cognito::UserPoolClient", "AWS::Cognito::UserPoolDomain", @@ -952,7 +953,14 @@ "aws-cognito-identitypool.json", "aws-cognito-identitypoolprincipaltag.json", "aws-cognito-identitypoolroleattachment.json", + "aws-cognito-logdeliveryconfiguration.json", + "aws-cognito-userpool.json", + "aws-cognito-userpoolclient.json", + "aws-cognito-userpoolgroup.json", "aws-cognito-userpoolidentityprovider.json", + "aws-cognito-userpoolriskconfigurationattachment.json", + "aws-cognito-userpooluser.json", + "aws-cognito-userpoolusertogroupattachment.json", "aws-config-aggregationauthorization.json", "aws-config-configrule.json", "aws-config-configurationaggregator.json", @@ -1497,10 +1505,9 @@ "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", - "aws-stepfunctions-statemachine.json", "aws-stepfunctions-statemachinealias.json", "aws-stepfunctions-statemachineversion.json", "aws-synthetics-canary.json", diff --git a/src/cfnlint/data/schemas/providers/ap_east_1/aws-cognito-userpool.json b/src/cfnlint/data/schemas/providers/ap_east_1/aws-cognito-userpool.json deleted file mode 100644 index ad6a681586..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_east_1/aws-cognito-userpool.json +++ /dev/null @@ -1,395 +0,0 @@ -{ - "additionalProperties": false, - "definitions": { - "AccountRecoverySetting": { - "additionalProperties": false, - "properties": { - "RecoveryMechanisms": { - "items": { - "$ref": "#/definitions/RecoveryOption" - }, - "type": "array", - "uniqueItems": false - } - }, - "type": "object" - }, - "AdminCreateUserConfig": { - "additionalProperties": false, - "properties": { - "AllowAdminCreateUserOnly": { - "type": "boolean" - }, - "InviteMessageTemplate": { - "$ref": "#/definitions/InviteMessageTemplate" - }, - "UnusedAccountValidityDays": { - "type": "integer" - } - }, - "type": "object" - }, - "DeviceConfiguration": { - "additionalProperties": false, - "properties": { - "ChallengeRequiredOnNewDevice": { - "type": "boolean" - }, - "DeviceOnlyRememberedOnUserPrompt": { - "type": "boolean" - } - }, - "type": "object" - }, - "EmailConfiguration": { - "additionalProperties": false, - "properties": { - "ConfigurationSet": { - "type": "string" - }, - "EmailSendingAccount": { - "type": "string" - }, - "From": { - "type": "string" - }, - "ReplyToEmailAddress": { - "type": "string" - }, - "SourceArn": { - "type": "string" - } - }, - "type": "object" - }, - "InviteMessageTemplate": { - "additionalProperties": false, - "properties": { - "EmailMessage": { - "type": "string" - }, - "EmailSubject": { - "type": "string" - }, - "SMSMessage": { - "type": "string" - } - }, - "type": "object" - }, - "LambdaConfig": { - "additionalProperties": false, - "properties": { - "CreateAuthChallenge": { - "type": "string" - }, - "CustomMessage": { - "type": "string" - }, - "DefineAuthChallenge": { - "type": "string" - }, - "PostAuthentication": { - "type": "string" - }, - "PostConfirmation": { - "type": "string" - }, - "PreAuthentication": { - "type": "string" - }, - "PreSignUp": { - "type": "string" - }, - "PreTokenGeneration": { - "type": "string" - }, - "UserMigration": { - "type": "string" - }, - "VerifyAuthChallengeResponse": { - "type": "string" - } - }, - "type": "object" - }, - "NumberAttributeConstraints": { - "additionalProperties": false, - "properties": { - "MaxValue": { - "type": "string" - }, - "MinValue": { - "type": "string" - } - }, - "type": "object" - }, - "PasswordPolicy": { - "additionalProperties": false, - "properties": { - "MinimumLength": { - "type": "integer" - }, - "RequireLowercase": { - "type": "boolean" - }, - "RequireNumbers": { - "type": "boolean" - }, - "RequireSymbols": { - "type": "boolean" - }, - "RequireUppercase": { - "type": "boolean" - }, - "TemporaryPasswordValidityDays": { - "type": "integer" - } - }, - "type": "object" - }, - "Policies": { - "additionalProperties": false, - "properties": { - "PasswordPolicy": { - "$ref": "#/definitions/PasswordPolicy" - } - }, - "type": "object" - }, - "RecoveryOption": { - "additionalProperties": false, - "properties": { - "Name": { - "type": "string" - }, - "Priority": { - "type": "integer" - } - }, - "type": "object" - }, - "SchemaAttribute": { - "additionalProperties": false, - "properties": { - "AttributeDataType": { - "type": "string" - }, - "DeveloperOnlyAttribute": { - "type": "boolean" - }, - "Mutable": { - "type": "boolean" - }, - "Name": { - "type": "string" - }, - "NumberAttributeConstraints": { - "$ref": "#/definitions/NumberAttributeConstraints" - }, - "Required": { - "type": "boolean" - }, - "StringAttributeConstraints": { - "$ref": "#/definitions/StringAttributeConstraints" - } - }, - "type": "object" - }, - "SmsConfiguration": { - "additionalProperties": false, - "properties": { - "ExternalId": { - "type": "string" - }, - "SnsCallerArn": { - "type": "string" - } - }, - "type": "object" - }, - "StringAttributeConstraints": { - "additionalProperties": false, - "properties": { - "MaxLength": { - "type": "string" - }, - "MinLength": { - "type": "string" - } - }, - "type": "object" - }, - "UserPoolAddOns": { - "additionalProperties": false, - "properties": { - "AdvancedSecurityMode": { - "type": "string" - } - }, - "type": "object" - }, - "UsernameConfiguration": { - "additionalProperties": false, - "properties": { - "CaseSensitive": { - "type": "boolean" - } - }, - "type": "object" - }, - "VerificationMessageTemplate": { - "additionalProperties": false, - "properties": { - "DefaultEmailOption": { - "type": "string" - }, - "EmailMessage": { - "type": "string" - }, - "EmailMessageByLink": { - "type": "string" - }, - "EmailSubject": { - "type": "string" - }, - "EmailSubjectByLink": { - "type": "string" - }, - "SmsMessage": { - "type": "string" - } - }, - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "AccountRecoverySetting": { - "$ref": "#/definitions/AccountRecoverySetting" - }, - "AdminCreateUserConfig": { - "$ref": "#/definitions/AdminCreateUserConfig" - }, - "AliasAttributes": { - "items": { - "enum": [ - "email", - "phone_number", - "preferred_username" - ], - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "Arn": { - "type": "string" - }, - "AutoVerifiedAttributes": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "DeviceConfiguration": { - "$ref": "#/definitions/DeviceConfiguration" - }, - "EmailConfiguration": { - "$ref": "#/definitions/EmailConfiguration" - }, - "EmailVerificationMessage": { - "type": "string" - }, - "EmailVerificationSubject": { - "type": "string" - }, - "EnabledMfas": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "Id": { - "type": "string" - }, - "LambdaConfig": { - "$ref": "#/definitions/LambdaConfig" - }, - "MfaConfiguration": { - "enum": [ - "OFF", - "ON", - "OPTIONAL" - ], - "type": "string" - }, - "Policies": { - "$ref": "#/definitions/Policies" - }, - "ProviderName": { - "type": "string" - }, - "ProviderURL": { - "type": "string" - }, - "Schema": { - "items": { - "$ref": "#/definitions/SchemaAttribute" - }, - "type": "array", - "uniqueItems": false - }, - "SmsAuthenticationMessage": { - "type": "string" - }, - "SmsConfiguration": { - "$ref": "#/definitions/SmsConfiguration" - }, - "SmsVerificationMessage": { - "type": "string" - }, - "UserPoolAddOns": { - "$ref": "#/definitions/UserPoolAddOns" - }, - "UserPoolName": { - "type": "string" - }, - "UserPoolTags": { - "format": "json", - "type": [ - "object", - "string" - ] - }, - "UsernameAttributes": { - "items": { - "enum": [ - "email", - "phone_number" - ], - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "UsernameConfiguration": { - "$ref": "#/definitions/UsernameConfiguration" - }, - "VerificationMessageTemplate": { - "$ref": "#/definitions/VerificationMessageTemplate" - } - }, - "readOnlyProperties": [ - "/properties/Id", - "/properties/Arn", - "/properties/ProviderName", - "/properties/ProviderURL" - ], - "typeName": "AWS::Cognito::UserPool" -} diff --git a/src/cfnlint/data/schemas/providers/ap_east_1/aws-cognito-userpoolclient.json b/src/cfnlint/data/schemas/providers/ap_east_1/aws-cognito-userpoolclient.json deleted file mode 100644 index ab5534da43..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_east_1/aws-cognito-userpoolclient.json +++ /dev/null @@ -1,166 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/UserPoolId", - "/properties/GenerateSecret" - ], - "definitions": { - "AnalyticsConfiguration": { - "additionalProperties": false, - "properties": { - "ApplicationId": { - "type": "string" - }, - "ExternalId": { - "type": "string" - }, - "RoleArn": { - "type": "string" - }, - "UserDataShared": { - "type": "boolean" - } - }, - "type": "object" - }, - "TokenValidityUnits": { - "additionalProperties": false, - "properties": { - "AccessToken": { - "type": "string" - }, - "IdToken": { - "type": "string" - }, - "RefreshToken": { - "type": "string" - } - }, - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "AccessTokenValidity": { - "type": "integer" - }, - "AllowedOAuthFlows": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "AllowedOAuthFlowsUserPoolClient": { - "type": "boolean" - }, - "AllowedOAuthScopes": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "AnalyticsConfiguration": { - "$ref": "#/definitions/AnalyticsConfiguration" - }, - "CallbackURLs": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "ClientName": { - "type": "string" - }, - "ClientSecret": { - "type": "string" - }, - "DefaultRedirectURI": { - "type": "string" - }, - "ExplicitAuthFlows": { - "items": { - "enum": [ - "ADMIN_NO_SRP_AUTH", - "ALLOW_ADMIN_USER_PASSWORD_AUTH", - "ALLOW_CUSTOM_AUTH", - "ALLOW_REFRESH_TOKEN_AUTH", - "ALLOW_USER_PASSWORD_AUTH", - "ALLOW_USER_SRP_AUTH", - "CUSTOM_AUTH_FLOW_ONLY", - "USER_PASSWORD_AUTH" - ], - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "GenerateSecret": { - "type": "boolean" - }, - "Id": { - "type": "string" - }, - "IdTokenValidity": { - "type": "integer" - }, - "LogoutURLs": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "Name": { - "type": "string" - }, - "PreventUserExistenceErrors": { - "type": "string" - }, - "ReadAttributes": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "RefreshTokenValidity": { - "maximum": 3650, - "minimum": 0, - "type": "integer" - }, - "SupportedIdentityProviders": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "TokenValidityUnits": { - "$ref": "#/definitions/TokenValidityUnits" - }, - "UserPoolId": { - "type": "string" - }, - "WriteAttributes": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - } - }, - "readOnlyProperties": [ - "/properties/Id", - "/properties/Name", - "/properties/ClientSecret" - ], - "required": [ - "UserPoolId" - ], - "typeName": "AWS::Cognito::UserPoolClient" -} diff --git a/src/cfnlint/data/schemas/providers/ap_east_1/aws-cognito-userpoolgroup.json b/src/cfnlint/data/schemas/providers/ap_east_1/aws-cognito-userpoolgroup.json deleted file mode 100644 index 045cd8e244..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_east_1/aws-cognito-userpoolgroup.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/GroupName", - "/properties/UserPoolId" - ], - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "Description": { - "type": "string" - }, - "GroupName": { - "type": "string" - }, - "Id": { - "type": "string" - }, - "Precedence": { - "type": "number" - }, - "RoleArn": { - "type": "string" - }, - "UserPoolId": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "UserPoolId" - ], - "typeName": "AWS::Cognito::UserPoolGroup" -} diff --git a/src/cfnlint/data/schemas/providers/ap_east_1/aws-cognito-userpoolriskconfigurationattachment.json b/src/cfnlint/data/schemas/providers/ap_east_1/aws-cognito-userpoolriskconfigurationattachment.json deleted file mode 100644 index 3647784062..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_east_1/aws-cognito-userpoolriskconfigurationattachment.json +++ /dev/null @@ -1,182 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/UserPoolId", - "/properties/ClientId" - ], - "definitions": { - "AccountTakeoverActionType": { - "additionalProperties": false, - "properties": { - "EventAction": { - "type": "string" - }, - "Notify": { - "type": "boolean" - } - }, - "required": [ - "Notify", - "EventAction" - ], - "type": "object" - }, - "AccountTakeoverActionsType": { - "additionalProperties": false, - "properties": { - "HighAction": { - "$ref": "#/definitions/AccountTakeoverActionType" - }, - "LowAction": { - "$ref": "#/definitions/AccountTakeoverActionType" - }, - "MediumAction": { - "$ref": "#/definitions/AccountTakeoverActionType" - } - }, - "type": "object" - }, - "AccountTakeoverRiskConfigurationType": { - "additionalProperties": false, - "properties": { - "Actions": { - "$ref": "#/definitions/AccountTakeoverActionsType" - }, - "NotifyConfiguration": { - "$ref": "#/definitions/NotifyConfigurationType" - } - }, - "required": [ - "Actions" - ], - "type": "object" - }, - "CompromisedCredentialsActionsType": { - "additionalProperties": false, - "properties": { - "EventAction": { - "type": "string" - } - }, - "required": [ - "EventAction" - ], - "type": "object" - }, - "CompromisedCredentialsRiskConfigurationType": { - "additionalProperties": false, - "properties": { - "Actions": { - "$ref": "#/definitions/CompromisedCredentialsActionsType" - }, - "EventFilter": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - } - }, - "required": [ - "Actions" - ], - "type": "object" - }, - "NotifyConfigurationType": { - "additionalProperties": false, - "properties": { - "BlockEmail": { - "$ref": "#/definitions/NotifyEmailType" - }, - "From": { - "type": "string" - }, - "MfaEmail": { - "$ref": "#/definitions/NotifyEmailType" - }, - "NoActionEmail": { - "$ref": "#/definitions/NotifyEmailType" - }, - "ReplyTo": { - "type": "string" - }, - "SourceArn": { - "type": "string" - } - }, - "required": [ - "SourceArn" - ], - "type": "object" - }, - "NotifyEmailType": { - "additionalProperties": false, - "properties": { - "HtmlBody": { - "type": "string" - }, - "Subject": { - "type": "string" - }, - "TextBody": { - "type": "string" - } - }, - "required": [ - "Subject" - ], - "type": "object" - }, - "RiskExceptionConfigurationType": { - "additionalProperties": false, - "properties": { - "BlockedIPRangeList": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "SkippedIPRangeList": { - "items": { - "type": "string" - }, - "type": "array", - "uniqueItems": false - } - }, - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "AccountTakeoverRiskConfiguration": { - "$ref": "#/definitions/AccountTakeoverRiskConfigurationType" - }, - "ClientId": { - "type": "string" - }, - "CompromisedCredentialsRiskConfiguration": { - "$ref": "#/definitions/CompromisedCredentialsRiskConfigurationType" - }, - "Id": { - "type": "string" - }, - "RiskExceptionConfiguration": { - "$ref": "#/definitions/RiskExceptionConfigurationType" - }, - "UserPoolId": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "UserPoolId", - "ClientId" - ], - "typeName": "AWS::Cognito::UserPoolRiskConfigurationAttachment" -} diff --git a/src/cfnlint/data/schemas/providers/ap_east_1/aws-cognito-userpooluser.json b/src/cfnlint/data/schemas/providers/ap_east_1/aws-cognito-userpooluser.json deleted file mode 100644 index 4f48fd800f..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_east_1/aws-cognito-userpooluser.json +++ /dev/null @@ -1,90 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/ClientMetadata", - "/properties/ValidationData", - "/properties/UserPoolId", - "/properties/MessageAction", - "/properties/ForceAliasCreation", - "/properties/DesiredDeliveryMediums", - "/properties/UserAttributes", - "/properties/Username" - ], - "definitions": { - "AttributeType": { - "additionalProperties": false, - "properties": { - "Name": { - "type": "string" - }, - "Value": { - "type": "string" - } - }, - "type": "object" - } - }, - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "ClientMetadata": { - "format": "json", - "type": [ - "object", - "string" - ] - }, - "DesiredDeliveryMediums": { - "items": { - "enum": [ - "EMAIL", - "SMS" - ], - "type": "string" - }, - "type": "array", - "uniqueItems": false - }, - "ForceAliasCreation": { - "type": "boolean" - }, - "Id": { - "type": "string" - }, - "MessageAction": { - "enum": [ - "RESEND", - "SUPPRESS" - ], - "type": "string" - }, - "UserAttributes": { - "items": { - "$ref": "#/definitions/AttributeType" - }, - "type": "array", - "uniqueItems": false - }, - "UserPoolId": { - "type": "string" - }, - "Username": { - "type": "string" - }, - "ValidationData": { - "items": { - "$ref": "#/definitions/AttributeType" - }, - "type": "array", - "uniqueItems": false - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "UserPoolId" - ], - "typeName": "AWS::Cognito::UserPoolUser" -} diff --git a/src/cfnlint/data/schemas/providers/ap_east_1/aws-cognito-userpoolusertogroupattachment.json b/src/cfnlint/data/schemas/providers/ap_east_1/aws-cognito-userpoolusertogroupattachment.json deleted file mode 100644 index 036f8bcc8a..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_east_1/aws-cognito-userpoolusertogroupattachment.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/GroupName", - "/properties/UserPoolId", - "/properties/Username" - ], - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "GroupName": { - "type": "string" - }, - "Id": { - "type": "string" - }, - "UserPoolId": { - "type": "string" - }, - "Username": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "GroupName", - "UserPoolId", - "Username" - ], - "typeName": "AWS::Cognito::UserPoolUserToGroupAttachment" -} 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 deleted file mode 100644 index 26c2ca063a..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_east_1/aws-sso-instance.json +++ /dev/null @@ -1,125 +0,0 @@ -{ - "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_east_1/aws-stepfunctions-activity.json b/src/cfnlint/data/schemas/providers/ap_east_1/aws-stepfunctions-activity.json new file mode 100644 index 0000000000..7aaf191ed1 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_east_1/aws-stepfunctions-activity.json @@ -0,0 +1,98 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateActivity", + "states:TagResource" + ] + }, + "delete": { + "permissions": [ + "states:DescribeActivity", + "states:DeleteActivity" + ] + }, + "list": { + "permissions": [ + "states:ListActivities" + ] + }, + "read": { + "permissions": [ + "states:DescribeActivity", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:ListTagsForResource", + "states:TagResource", + "states:UntagResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "required": [ + "Name" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::Activity" +} diff --git a/src/cfnlint/data/schemas/providers/ap_east_1/aws-stepfunctions-statemachine.json b/src/cfnlint/data/schemas/providers/ap_east_1/aws-stepfunctions-statemachine.json new file mode 100644 index 0000000000..c8a1b0f42e --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_east_1/aws-stepfunctions-statemachine.json @@ -0,0 +1,256 @@ +{ + "additionalIdentifiers": [ + [ + "/properties/StateMachineName" + ] + ], + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/StateMachineName", + "/properties/StateMachineType" + ], + "definitions": { + "CloudWatchLogsLogGroup": { + "additionalProperties": false, + "properties": { + "LogGroupArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "Definition": { + "minProperties": 1, + "type": "object" + }, + "DefinitionSubstitutions": { + "additionalProperties": false, + "minProperties": 1, + "patternProperties": { + ".*": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "integer" + }, + { + "type": "boolean" + } + ] + } + }, + "type": "object" + }, + "LogDestination": { + "additionalProperties": false, + "properties": { + "CloudWatchLogsLogGroup": { + "$ref": "#/definitions/CloudWatchLogsLogGroup" + } + }, + "type": "object" + }, + "LoggingConfiguration": { + "additionalProperties": false, + "properties": { + "Destinations": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/LogDestination" + }, + "minItems": 1, + "type": "array" + }, + "IncludeExecutionData": { + "type": "boolean" + }, + "Level": { + "enum": [ + "ALL", + "ERROR", + "FATAL", + "OFF" + ], + "type": "string" + } + }, + "type": "object" + }, + "S3Location": { + "additionalProperties": false, + "properties": { + "Bucket": { + "type": "string" + }, + "Key": { + "type": "string" + }, + "Version": { + "type": "string" + } + }, + "required": [ + "Bucket", + "Key" + ], + "type": "object" + }, + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "TracingConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + } + }, + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateStateMachine", + "states:DescribeStateMachine", + "states:TagResource", + "iam:PassRole", + "s3:GetObject" + ] + }, + "delete": { + "permissions": [ + "states:DeleteStateMachine", + "states:DescribeStateMachine" + ] + }, + "list": { + "permissions": [ + "states:ListStateMachines" + ] + }, + "read": { + "permissions": [ + "states:DescribeStateMachine", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:UpdateStateMachine", + "states:TagResource", + "states:UntagResource", + "states:ListTagsForResource", + "iam:PassRole" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Definition": { + "$ref": "#/definitions/Definition" + }, + "DefinitionS3Location": { + "$ref": "#/definitions/S3Location" + }, + "DefinitionString": { + "maxLength": 1048576, + "minLength": 1, + "type": "string" + }, + "DefinitionSubstitutions": { + "$ref": "#/definitions/DefinitionSubstitutions" + }, + "LoggingConfiguration": { + "$ref": "#/definitions/LoggingConfiguration" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "RoleArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "StateMachineName": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "StateMachineRevisionId": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "StateMachineType": { + "enum": [ + "STANDARD", + "EXPRESS" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + }, + "TracingConfiguration": { + "$ref": "#/definitions/TracingConfiguration" + } + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/Name", + "/properties/StateMachineRevisionId" + ], + "required": [ + "RoleArn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::StateMachine", + "writeOnlyProperties": [ + "/properties/Definition", + "/properties/DefinitionS3Location", + "/properties/DefinitionSubstitutions" + ] +} 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 a19a7a1c33..ad9046c959 100644 --- a/src/cfnlint/data/schemas/providers/ap_northeast_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_northeast_1/__init__.py @@ -1484,7 +1484,6 @@ "aws-connect-view.json", "aws-connect-viewversion.json", "aws-controltower-enabledbaseline.json", - "aws-controltower-enabledcontrol.json", "aws-controltower-landingzone.json", "aws-customerprofiles-calculatedattributedefinition.json", "aws-customerprofiles-domain.json", @@ -2336,6 +2335,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_northeast_1/aws-controltower-enabledcontrol.json b/src/cfnlint/data/schemas/providers/ap_northeast_1/aws-controltower-enabledcontrol.json new file mode 100644 index 0000000000..8f0be9c61f --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_northeast_1/aws-controltower-enabledcontrol.json @@ -0,0 +1,185 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/TargetIdentifier", + "/properties/ControlIdentifier" + ], + "definitions": { + "EnabledControlParameter": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "insertionOrder": false, + "items": { + "type": [ + "string", + "number", + "object", + "boolean" + ] + }, + "minItems": 1, + "type": [ + "array", + "string", + "number", + "object", + "boolean" + ] + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "controltower:ListEnabledControls", + "controltower:GetEnabledControl", + "controltower:GetControlOperation", + "controltower:EnableControl", + "controltower:TagResource", + "organizations:UpdatePolicy", + "organizations:CreatePolicy", + "organizations:AttachPolicy", + "organizations:DetachPolicy", + "organizations:ListPoliciesForTarget", + "organizations:ListTargetsForPolicy", + "organizations:DescribePolicy" + ], + "timeoutInMinutes": 720 + }, + "delete": { + "permissions": [ + "controltower:ListEnabledControls", + "controltower:GetEnabledControl", + "controltower:GetControlOperation", + "controltower:DisableControl", + "organizations:UpdatePolicy", + "organizations:DeletePolicy", + "organizations:CreatePolicy", + "organizations:AttachPolicy", + "organizations:DetachPolicy", + "organizations:ListPoliciesForTarget", + "organizations:ListTargetsForPolicy", + "organizations:DescribePolicy" + ], + "timeoutInMinutes": 720 + }, + "list": { + "handlerSchema": { + "properties": { + "TargetIdentifier": { + "$ref": "resource-schema.json#/properties/TargetIdentifier" + } + }, + "required": [ + "TargetIdentifier" + ] + }, + "permissions": [ + "controltower:ListEnabledControls" + ] + }, + "read": { + "permissions": [ + "controltower:ListEnabledControls", + "controltower:GetEnabledControl", + "controltower:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "controltower:ListEnabledControls", + "controltower:GetEnabledControl", + "controltower:GetControlOperation", + "controltower:UpdateEnabledControl", + "controltower:UntagResource", + "controltower:TagResource", + "organizations:UpdatePolicy", + "organizations:CreatePolicy", + "organizations:AttachPolicy", + "organizations:DetachPolicy", + "organizations:ListPoliciesForTarget", + "organizations:ListTargetsForPolicy", + "organizations:DescribePolicy" + ], + "timeoutInMinutes": 720 + } + }, + "primaryIdentifier": [ + "/properties/TargetIdentifier", + "/properties/ControlIdentifier" + ], + "properties": { + "ControlIdentifier": { + "maxLength": 2048, + "minLength": 20, + "pattern": "^arn:aws[0-9a-zA-Z_\\-:\\/]+$", + "type": "string" + }, + "Parameters": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/EnabledControlParameter" + }, + "minItems": 1, + "type": "array" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 50, + "minItems": 1, + "type": "array" + }, + "TargetIdentifier": { + "maxLength": 2048, + "minLength": 20, + "pattern": "^arn:aws[0-9a-zA-Z_\\-:\\/]+$", + "type": "string" + } + }, + "required": [ + "TargetIdentifier", + "ControlIdentifier" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-controltower", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ControlTower::EnabledControl" +} diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_1/aws-sso-instance.json b/src/cfnlint/data/schemas/providers/ap_northeast_1/aws-sso-instance.json deleted file mode 100644 index 26c2ca063a..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_northeast_1/aws-sso-instance.json +++ /dev/null @@ -1,125 +0,0 @@ -{ - "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 62814f0be9..23a54b351d 100644 --- a/src/cfnlint/data/schemas/providers/ap_northeast_2/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_northeast_2/__init__.py @@ -1301,6 +1301,7 @@ "aws-codedeploy-deploymentconfig.json", "aws-codedeploy-deploymentgroup.json", "aws-codepipeline-customactiontype.json", + "aws-codepipeline-pipeline.json", "aws-codepipeline-webhook.json", "aws-codestar-githubrepository.json", "aws-codestarconnections-connection.json", @@ -1655,7 +1656,6 @@ "aws-iam-group.json", "aws-iam-grouppolicy.json", "aws-iam-instanceprofile.json", - "aws-iam-oidcprovider.json", "aws-iam-policy.json", "aws-iam-role.json", "aws-iam-rolepolicy.json", @@ -1817,7 +1817,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", @@ -2123,10 +2122,9 @@ "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", - "aws-stepfunctions-statemachine.json", "aws-stepfunctions-statemachinealias.json", "aws-stepfunctions-statemachineversion.json", "aws-synthetics-canary.json", diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-codepipeline-pipeline.json b/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-codepipeline-pipeline.json deleted file mode 100644 index 925fbfe118..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_northeast_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_northeast_2/aws-iam-oidcprovider.json b/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-iam-oidcprovider.json new file mode 100644 index 0000000000..1794a452ca --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-iam-oidcprovider.json @@ -0,0 +1,120 @@ +{ + "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" + ], + "required": [ + "ThumbprintList" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::IAM::OIDCProvider" +} diff --git a/src/cfnlint/data/schemas/providers/us_west_1/aws-mediaconnect-flowsource.json b/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-mediaconnect-flowsource.json similarity index 98% rename from src/cfnlint/data/schemas/providers/us_west_1/aws-mediaconnect-flowsource.json rename to src/cfnlint/data/schemas/providers/ap_northeast_2/aws-mediaconnect-flowsource.json index d115d07de4..cf7d326061 100644 --- a/src/cfnlint/data/schemas/providers/us_west_1/aws-mediaconnect-flowsource.json +++ b/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-mediaconnect-flowsource.json @@ -137,9 +137,11 @@ "type": "integer" }, "MaxLatency": { + "default": 2000, "type": "integer" }, "MinLatency": { + "default": 2000, "type": "integer" }, "Name": { 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 deleted file mode 100644 index 26c2ca063a..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-sso-instance.json +++ /dev/null @@ -1,125 +0,0 @@ -{ - "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/aws-stepfunctions-activity.json b/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-stepfunctions-activity.json new file mode 100644 index 0000000000..7aaf191ed1 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-stepfunctions-activity.json @@ -0,0 +1,98 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateActivity", + "states:TagResource" + ] + }, + "delete": { + "permissions": [ + "states:DescribeActivity", + "states:DeleteActivity" + ] + }, + "list": { + "permissions": [ + "states:ListActivities" + ] + }, + "read": { + "permissions": [ + "states:DescribeActivity", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:ListTagsForResource", + "states:TagResource", + "states:UntagResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "required": [ + "Name" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::Activity" +} diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-stepfunctions-statemachine.json b/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-stepfunctions-statemachine.json new file mode 100644 index 0000000000..c8a1b0f42e --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_northeast_2/aws-stepfunctions-statemachine.json @@ -0,0 +1,256 @@ +{ + "additionalIdentifiers": [ + [ + "/properties/StateMachineName" + ] + ], + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/StateMachineName", + "/properties/StateMachineType" + ], + "definitions": { + "CloudWatchLogsLogGroup": { + "additionalProperties": false, + "properties": { + "LogGroupArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "Definition": { + "minProperties": 1, + "type": "object" + }, + "DefinitionSubstitutions": { + "additionalProperties": false, + "minProperties": 1, + "patternProperties": { + ".*": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "integer" + }, + { + "type": "boolean" + } + ] + } + }, + "type": "object" + }, + "LogDestination": { + "additionalProperties": false, + "properties": { + "CloudWatchLogsLogGroup": { + "$ref": "#/definitions/CloudWatchLogsLogGroup" + } + }, + "type": "object" + }, + "LoggingConfiguration": { + "additionalProperties": false, + "properties": { + "Destinations": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/LogDestination" + }, + "minItems": 1, + "type": "array" + }, + "IncludeExecutionData": { + "type": "boolean" + }, + "Level": { + "enum": [ + "ALL", + "ERROR", + "FATAL", + "OFF" + ], + "type": "string" + } + }, + "type": "object" + }, + "S3Location": { + "additionalProperties": false, + "properties": { + "Bucket": { + "type": "string" + }, + "Key": { + "type": "string" + }, + "Version": { + "type": "string" + } + }, + "required": [ + "Bucket", + "Key" + ], + "type": "object" + }, + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "TracingConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + } + }, + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateStateMachine", + "states:DescribeStateMachine", + "states:TagResource", + "iam:PassRole", + "s3:GetObject" + ] + }, + "delete": { + "permissions": [ + "states:DeleteStateMachine", + "states:DescribeStateMachine" + ] + }, + "list": { + "permissions": [ + "states:ListStateMachines" + ] + }, + "read": { + "permissions": [ + "states:DescribeStateMachine", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:UpdateStateMachine", + "states:TagResource", + "states:UntagResource", + "states:ListTagsForResource", + "iam:PassRole" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Definition": { + "$ref": "#/definitions/Definition" + }, + "DefinitionS3Location": { + "$ref": "#/definitions/S3Location" + }, + "DefinitionString": { + "maxLength": 1048576, + "minLength": 1, + "type": "string" + }, + "DefinitionSubstitutions": { + "$ref": "#/definitions/DefinitionSubstitutions" + }, + "LoggingConfiguration": { + "$ref": "#/definitions/LoggingConfiguration" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "RoleArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "StateMachineName": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "StateMachineRevisionId": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "StateMachineType": { + "enum": [ + "STANDARD", + "EXPRESS" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + }, + "TracingConfiguration": { + "$ref": "#/definitions/TracingConfiguration" + } + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/Name", + "/properties/StateMachineRevisionId" + ], + "required": [ + "RoleArn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::StateMachine", + "writeOnlyProperties": [ + "/properties/Definition", + "/properties/DefinitionS3Location", + "/properties/DefinitionSubstitutions" + ] +} 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 6d2faf0181..994ad7c023 100644 --- a/src/cfnlint/data/schemas/providers/ap_northeast_3/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_northeast_3/__init__.py @@ -473,6 +473,7 @@ "AWS::MSK::ClusterPolicy", "AWS::MSK::Configuration", "AWS::MSK::VpcConnection", + "AWS::MWAA::Environment", "AWS::Macie::CustomDataIdentifier", "AWS::Macie::FindingsFilter", "AWS::Macie::Session", @@ -921,6 +922,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-config-aggregationauthorization.json", @@ -1141,7 +1143,6 @@ "aws-iam-group.json", "aws-iam-grouppolicy.json", "aws-iam-instanceprofile.json", - "aws-iam-oidcprovider.json", "aws-iam-policy.json", "aws-iam-role.json", "aws-iam-rolepolicy.json", @@ -1214,7 +1215,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-medialive-multiplex.json", @@ -1240,6 +1240,7 @@ "aws-msk-clusterpolicy.json", "aws-msk-configuration.json", "aws-msk-vpcconnection.json", + "aws-mwaa-environment.json", "aws-neptune-dbcluster.json", "aws-neptune-dbsubnetgroup.json", "aws-neptune-eventsubscription.json", @@ -1449,10 +1450,9 @@ "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", - "aws-stepfunctions-statemachine.json", "aws-stepfunctions-statemachinealias.json", "aws-stepfunctions-statemachineversion.json", "aws-synthetics-canary.json", diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-cognito-userpooluicustomizationattachment.json b/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-cognito-userpooluicustomizationattachment.json deleted file mode 100644 index 98baaf1ea2..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-cognito-userpooluicustomizationattachment.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "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": [ - "UserPoolId", - "ClientId" - ], - "typeName": "AWS::Cognito::UserPoolUICustomizationAttachment" -} diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-iam-oidcprovider.json b/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-iam-oidcprovider.json new file mode 100644 index 0000000000..1794a452ca --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-iam-oidcprovider.json @@ -0,0 +1,120 @@ +{ + "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" + ], + "required": [ + "ThumbprintList" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::IAM::OIDCProvider" +} diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-mediaconnect-flowsource.json b/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-mediaconnect-flowsource.json new file mode 100644 index 0000000000..cf7d326061 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-mediaconnect-flowsource.json @@ -0,0 +1,200 @@ +{ + "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": { + "default": 2000, + "type": "integer" + }, + "MinLatency": { + "default": 2000, + "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/ap_northeast_3/aws-sso-instance.json b/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-sso-instance.json deleted file mode 100644 index 26c2ca063a..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-sso-instance.json +++ /dev/null @@ -1,125 +0,0 @@ -{ - "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/aws-stepfunctions-activity.json b/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-stepfunctions-activity.json new file mode 100644 index 0000000000..7aaf191ed1 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-stepfunctions-activity.json @@ -0,0 +1,98 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateActivity", + "states:TagResource" + ] + }, + "delete": { + "permissions": [ + "states:DescribeActivity", + "states:DeleteActivity" + ] + }, + "list": { + "permissions": [ + "states:ListActivities" + ] + }, + "read": { + "permissions": [ + "states:DescribeActivity", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:ListTagsForResource", + "states:TagResource", + "states:UntagResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "required": [ + "Name" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::Activity" +} diff --git a/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-stepfunctions-statemachine.json b/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-stepfunctions-statemachine.json new file mode 100644 index 0000000000..c8a1b0f42e --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_northeast_3/aws-stepfunctions-statemachine.json @@ -0,0 +1,256 @@ +{ + "additionalIdentifiers": [ + [ + "/properties/StateMachineName" + ] + ], + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/StateMachineName", + "/properties/StateMachineType" + ], + "definitions": { + "CloudWatchLogsLogGroup": { + "additionalProperties": false, + "properties": { + "LogGroupArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "Definition": { + "minProperties": 1, + "type": "object" + }, + "DefinitionSubstitutions": { + "additionalProperties": false, + "minProperties": 1, + "patternProperties": { + ".*": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "integer" + }, + { + "type": "boolean" + } + ] + } + }, + "type": "object" + }, + "LogDestination": { + "additionalProperties": false, + "properties": { + "CloudWatchLogsLogGroup": { + "$ref": "#/definitions/CloudWatchLogsLogGroup" + } + }, + "type": "object" + }, + "LoggingConfiguration": { + "additionalProperties": false, + "properties": { + "Destinations": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/LogDestination" + }, + "minItems": 1, + "type": "array" + }, + "IncludeExecutionData": { + "type": "boolean" + }, + "Level": { + "enum": [ + "ALL", + "ERROR", + "FATAL", + "OFF" + ], + "type": "string" + } + }, + "type": "object" + }, + "S3Location": { + "additionalProperties": false, + "properties": { + "Bucket": { + "type": "string" + }, + "Key": { + "type": "string" + }, + "Version": { + "type": "string" + } + }, + "required": [ + "Bucket", + "Key" + ], + "type": "object" + }, + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "TracingConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + } + }, + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateStateMachine", + "states:DescribeStateMachine", + "states:TagResource", + "iam:PassRole", + "s3:GetObject" + ] + }, + "delete": { + "permissions": [ + "states:DeleteStateMachine", + "states:DescribeStateMachine" + ] + }, + "list": { + "permissions": [ + "states:ListStateMachines" + ] + }, + "read": { + "permissions": [ + "states:DescribeStateMachine", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:UpdateStateMachine", + "states:TagResource", + "states:UntagResource", + "states:ListTagsForResource", + "iam:PassRole" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Definition": { + "$ref": "#/definitions/Definition" + }, + "DefinitionS3Location": { + "$ref": "#/definitions/S3Location" + }, + "DefinitionString": { + "maxLength": 1048576, + "minLength": 1, + "type": "string" + }, + "DefinitionSubstitutions": { + "$ref": "#/definitions/DefinitionSubstitutions" + }, + "LoggingConfiguration": { + "$ref": "#/definitions/LoggingConfiguration" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "RoleArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "StateMachineName": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "StateMachineRevisionId": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "StateMachineType": { + "enum": [ + "STANDARD", + "EXPRESS" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + }, + "TracingConfiguration": { + "$ref": "#/definitions/TracingConfiguration" + } + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/Name", + "/properties/StateMachineRevisionId" + ], + "required": [ + "RoleArn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::StateMachine", + "writeOnlyProperties": [ + "/properties/Definition", + "/properties/DefinitionS3Location", + "/properties/DefinitionSubstitutions" + ] +} 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 aa2adec428..2425a40ee7 100644 --- a/src/cfnlint/data/schemas/providers/ap_south_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_south_1/__init__.py @@ -1330,6 +1330,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", @@ -2133,8 +2134,6 @@ "aws-sso-assignment.json", "aws-sso-instanceaccesscontrolattributeconfiguration.json", "aws-sso-permissionset.json", - "aws-stepfunctions-activity.json", - "aws-stepfunctions-statemachine.json", "aws-stepfunctions-statemachinealias.json", "aws-stepfunctions-statemachineversion.json", "aws-synthetics-canary.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 deleted file mode 100644 index 009f1aea8c..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_south_1/aws-cognito-userpooluicustomizationattachment.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "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-stepfunctions-activity.json b/src/cfnlint/data/schemas/providers/ap_south_1/aws-stepfunctions-activity.json new file mode 100644 index 0000000000..7aaf191ed1 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_south_1/aws-stepfunctions-activity.json @@ -0,0 +1,98 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateActivity", + "states:TagResource" + ] + }, + "delete": { + "permissions": [ + "states:DescribeActivity", + "states:DeleteActivity" + ] + }, + "list": { + "permissions": [ + "states:ListActivities" + ] + }, + "read": { + "permissions": [ + "states:DescribeActivity", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:ListTagsForResource", + "states:TagResource", + "states:UntagResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "required": [ + "Name" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::Activity" +} diff --git a/src/cfnlint/data/schemas/providers/ap_south_1/aws-stepfunctions-statemachine.json b/src/cfnlint/data/schemas/providers/ap_south_1/aws-stepfunctions-statemachine.json new file mode 100644 index 0000000000..c8a1b0f42e --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_south_1/aws-stepfunctions-statemachine.json @@ -0,0 +1,256 @@ +{ + "additionalIdentifiers": [ + [ + "/properties/StateMachineName" + ] + ], + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/StateMachineName", + "/properties/StateMachineType" + ], + "definitions": { + "CloudWatchLogsLogGroup": { + "additionalProperties": false, + "properties": { + "LogGroupArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "Definition": { + "minProperties": 1, + "type": "object" + }, + "DefinitionSubstitutions": { + "additionalProperties": false, + "minProperties": 1, + "patternProperties": { + ".*": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "integer" + }, + { + "type": "boolean" + } + ] + } + }, + "type": "object" + }, + "LogDestination": { + "additionalProperties": false, + "properties": { + "CloudWatchLogsLogGroup": { + "$ref": "#/definitions/CloudWatchLogsLogGroup" + } + }, + "type": "object" + }, + "LoggingConfiguration": { + "additionalProperties": false, + "properties": { + "Destinations": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/LogDestination" + }, + "minItems": 1, + "type": "array" + }, + "IncludeExecutionData": { + "type": "boolean" + }, + "Level": { + "enum": [ + "ALL", + "ERROR", + "FATAL", + "OFF" + ], + "type": "string" + } + }, + "type": "object" + }, + "S3Location": { + "additionalProperties": false, + "properties": { + "Bucket": { + "type": "string" + }, + "Key": { + "type": "string" + }, + "Version": { + "type": "string" + } + }, + "required": [ + "Bucket", + "Key" + ], + "type": "object" + }, + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "TracingConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + } + }, + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateStateMachine", + "states:DescribeStateMachine", + "states:TagResource", + "iam:PassRole", + "s3:GetObject" + ] + }, + "delete": { + "permissions": [ + "states:DeleteStateMachine", + "states:DescribeStateMachine" + ] + }, + "list": { + "permissions": [ + "states:ListStateMachines" + ] + }, + "read": { + "permissions": [ + "states:DescribeStateMachine", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:UpdateStateMachine", + "states:TagResource", + "states:UntagResource", + "states:ListTagsForResource", + "iam:PassRole" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Definition": { + "$ref": "#/definitions/Definition" + }, + "DefinitionS3Location": { + "$ref": "#/definitions/S3Location" + }, + "DefinitionString": { + "maxLength": 1048576, + "minLength": 1, + "type": "string" + }, + "DefinitionSubstitutions": { + "$ref": "#/definitions/DefinitionSubstitutions" + }, + "LoggingConfiguration": { + "$ref": "#/definitions/LoggingConfiguration" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "RoleArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "StateMachineName": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "StateMachineRevisionId": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "StateMachineType": { + "enum": [ + "STANDARD", + "EXPRESS" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + }, + "TracingConfiguration": { + "$ref": "#/definitions/TracingConfiguration" + } + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/Name", + "/properties/StateMachineRevisionId" + ], + "required": [ + "RoleArn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::StateMachine", + "writeOnlyProperties": [ + "/properties/Definition", + "/properties/DefinitionS3Location", + "/properties/DefinitionSubstitutions" + ] +} 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 f938f7c0a2..1cf1783229 100644 --- a/src/cfnlint/data/schemas/providers/ap_south_2/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_south_2/__init__.py @@ -420,6 +420,7 @@ "AWS::MSK::ClusterPolicy", "AWS::MSK::Configuration", "AWS::MSK::VpcConnection", + "AWS::MWAA::Environment", "AWS::MediaConnect::Flow", "AWS::MediaConnect::FlowEntitlement", "AWS::MediaConnect::FlowOutput", @@ -918,7 +919,6 @@ "aws-guardduty-threatintelset.json", "aws-iam-group.json", "aws-iam-grouppolicy.json", - "aws-iam-oidcprovider.json", "aws-iam-policy.json", "aws-iam-role.json", "aws-iam-rolepolicy.json", @@ -990,6 +990,7 @@ "aws-msk-clusterpolicy.json", "aws-msk-configuration.json", "aws-msk-vpcconnection.json", + "aws-mwaa-environment.json", "aws-networkfirewall-firewall.json", "aws-networkfirewall-firewallpolicy.json", "aws-networkfirewall-loggingconfiguration.json", @@ -1128,8 +1129,6 @@ "aws-sso-assignment.json", "aws-sso-instanceaccesscontrolattributeconfiguration.json", "aws-sso-permissionset.json", - "aws-stepfunctions-activity.json", - "aws-stepfunctions-statemachine.json", "aws-stepfunctions-statemachinealias.json", "aws-stepfunctions-statemachineversion.json", "aws-synthetics-canary.json", diff --git a/src/cfnlint/data/schemas/providers/ap_south_2/aws-iam-oidcprovider.json b/src/cfnlint/data/schemas/providers/ap_south_2/aws-iam-oidcprovider.json new file mode 100644 index 0000000000..1794a452ca --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_south_2/aws-iam-oidcprovider.json @@ -0,0 +1,120 @@ +{ + "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" + ], + "required": [ + "ThumbprintList" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::IAM::OIDCProvider" +} diff --git a/src/cfnlint/data/schemas/providers/ap_south_2/aws-stepfunctions-activity.json b/src/cfnlint/data/schemas/providers/ap_south_2/aws-stepfunctions-activity.json new file mode 100644 index 0000000000..7aaf191ed1 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_south_2/aws-stepfunctions-activity.json @@ -0,0 +1,98 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateActivity", + "states:TagResource" + ] + }, + "delete": { + "permissions": [ + "states:DescribeActivity", + "states:DeleteActivity" + ] + }, + "list": { + "permissions": [ + "states:ListActivities" + ] + }, + "read": { + "permissions": [ + "states:DescribeActivity", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:ListTagsForResource", + "states:TagResource", + "states:UntagResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "required": [ + "Name" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::Activity" +} diff --git a/src/cfnlint/data/schemas/providers/ap_south_2/aws-stepfunctions-statemachine.json b/src/cfnlint/data/schemas/providers/ap_south_2/aws-stepfunctions-statemachine.json new file mode 100644 index 0000000000..c8a1b0f42e --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_south_2/aws-stepfunctions-statemachine.json @@ -0,0 +1,256 @@ +{ + "additionalIdentifiers": [ + [ + "/properties/StateMachineName" + ] + ], + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/StateMachineName", + "/properties/StateMachineType" + ], + "definitions": { + "CloudWatchLogsLogGroup": { + "additionalProperties": false, + "properties": { + "LogGroupArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "Definition": { + "minProperties": 1, + "type": "object" + }, + "DefinitionSubstitutions": { + "additionalProperties": false, + "minProperties": 1, + "patternProperties": { + ".*": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "integer" + }, + { + "type": "boolean" + } + ] + } + }, + "type": "object" + }, + "LogDestination": { + "additionalProperties": false, + "properties": { + "CloudWatchLogsLogGroup": { + "$ref": "#/definitions/CloudWatchLogsLogGroup" + } + }, + "type": "object" + }, + "LoggingConfiguration": { + "additionalProperties": false, + "properties": { + "Destinations": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/LogDestination" + }, + "minItems": 1, + "type": "array" + }, + "IncludeExecutionData": { + "type": "boolean" + }, + "Level": { + "enum": [ + "ALL", + "ERROR", + "FATAL", + "OFF" + ], + "type": "string" + } + }, + "type": "object" + }, + "S3Location": { + "additionalProperties": false, + "properties": { + "Bucket": { + "type": "string" + }, + "Key": { + "type": "string" + }, + "Version": { + "type": "string" + } + }, + "required": [ + "Bucket", + "Key" + ], + "type": "object" + }, + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "TracingConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + } + }, + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateStateMachine", + "states:DescribeStateMachine", + "states:TagResource", + "iam:PassRole", + "s3:GetObject" + ] + }, + "delete": { + "permissions": [ + "states:DeleteStateMachine", + "states:DescribeStateMachine" + ] + }, + "list": { + "permissions": [ + "states:ListStateMachines" + ] + }, + "read": { + "permissions": [ + "states:DescribeStateMachine", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:UpdateStateMachine", + "states:TagResource", + "states:UntagResource", + "states:ListTagsForResource", + "iam:PassRole" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Definition": { + "$ref": "#/definitions/Definition" + }, + "DefinitionS3Location": { + "$ref": "#/definitions/S3Location" + }, + "DefinitionString": { + "maxLength": 1048576, + "minLength": 1, + "type": "string" + }, + "DefinitionSubstitutions": { + "$ref": "#/definitions/DefinitionSubstitutions" + }, + "LoggingConfiguration": { + "$ref": "#/definitions/LoggingConfiguration" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "RoleArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "StateMachineName": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "StateMachineRevisionId": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "StateMachineType": { + "enum": [ + "STANDARD", + "EXPRESS" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + }, + "TracingConfiguration": { + "$ref": "#/definitions/TracingConfiguration" + } + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/Name", + "/properties/StateMachineRevisionId" + ], + "required": [ + "RoleArn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::StateMachine", + "writeOnlyProperties": [ + "/properties/Definition", + "/properties/DefinitionS3Location", + "/properties/DefinitionSubstitutions" + ] +} 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 2b563a78de..725adda6a3 100644 --- a/src/cfnlint/data/schemas/providers/ap_southeast_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_southeast_1/__init__.py @@ -2273,8 +2273,6 @@ "aws-sso-assignment.json", "aws-sso-instanceaccesscontrolattributeconfiguration.json", "aws-sso-permissionset.json", - "aws-stepfunctions-activity.json", - "aws-stepfunctions-statemachine.json", "aws-stepfunctions-statemachinealias.json", "aws-stepfunctions-statemachineversion.json", "aws-supportapp-accountalias.json", diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_1/aws-stepfunctions-activity.json b/src/cfnlint/data/schemas/providers/ap_southeast_1/aws-stepfunctions-activity.json new file mode 100644 index 0000000000..7aaf191ed1 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_1/aws-stepfunctions-activity.json @@ -0,0 +1,98 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateActivity", + "states:TagResource" + ] + }, + "delete": { + "permissions": [ + "states:DescribeActivity", + "states:DeleteActivity" + ] + }, + "list": { + "permissions": [ + "states:ListActivities" + ] + }, + "read": { + "permissions": [ + "states:DescribeActivity", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:ListTagsForResource", + "states:TagResource", + "states:UntagResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "required": [ + "Name" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::Activity" +} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_1/aws-stepfunctions-statemachine.json b/src/cfnlint/data/schemas/providers/ap_southeast_1/aws-stepfunctions-statemachine.json new file mode 100644 index 0000000000..c8a1b0f42e --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_1/aws-stepfunctions-statemachine.json @@ -0,0 +1,256 @@ +{ + "additionalIdentifiers": [ + [ + "/properties/StateMachineName" + ] + ], + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/StateMachineName", + "/properties/StateMachineType" + ], + "definitions": { + "CloudWatchLogsLogGroup": { + "additionalProperties": false, + "properties": { + "LogGroupArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "Definition": { + "minProperties": 1, + "type": "object" + }, + "DefinitionSubstitutions": { + "additionalProperties": false, + "minProperties": 1, + "patternProperties": { + ".*": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "integer" + }, + { + "type": "boolean" + } + ] + } + }, + "type": "object" + }, + "LogDestination": { + "additionalProperties": false, + "properties": { + "CloudWatchLogsLogGroup": { + "$ref": "#/definitions/CloudWatchLogsLogGroup" + } + }, + "type": "object" + }, + "LoggingConfiguration": { + "additionalProperties": false, + "properties": { + "Destinations": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/LogDestination" + }, + "minItems": 1, + "type": "array" + }, + "IncludeExecutionData": { + "type": "boolean" + }, + "Level": { + "enum": [ + "ALL", + "ERROR", + "FATAL", + "OFF" + ], + "type": "string" + } + }, + "type": "object" + }, + "S3Location": { + "additionalProperties": false, + "properties": { + "Bucket": { + "type": "string" + }, + "Key": { + "type": "string" + }, + "Version": { + "type": "string" + } + }, + "required": [ + "Bucket", + "Key" + ], + "type": "object" + }, + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "TracingConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + } + }, + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateStateMachine", + "states:DescribeStateMachine", + "states:TagResource", + "iam:PassRole", + "s3:GetObject" + ] + }, + "delete": { + "permissions": [ + "states:DeleteStateMachine", + "states:DescribeStateMachine" + ] + }, + "list": { + "permissions": [ + "states:ListStateMachines" + ] + }, + "read": { + "permissions": [ + "states:DescribeStateMachine", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:UpdateStateMachine", + "states:TagResource", + "states:UntagResource", + "states:ListTagsForResource", + "iam:PassRole" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Definition": { + "$ref": "#/definitions/Definition" + }, + "DefinitionS3Location": { + "$ref": "#/definitions/S3Location" + }, + "DefinitionString": { + "maxLength": 1048576, + "minLength": 1, + "type": "string" + }, + "DefinitionSubstitutions": { + "$ref": "#/definitions/DefinitionSubstitutions" + }, + "LoggingConfiguration": { + "$ref": "#/definitions/LoggingConfiguration" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "RoleArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "StateMachineName": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "StateMachineRevisionId": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "StateMachineType": { + "enum": [ + "STANDARD", + "EXPRESS" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + }, + "TracingConfiguration": { + "$ref": "#/definitions/TracingConfiguration" + } + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/Name", + "/properties/StateMachineRevisionId" + ], + "required": [ + "RoleArn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::StateMachine", + "writeOnlyProperties": [ + "/properties/Definition", + "/properties/DefinitionS3Location", + "/properties/DefinitionSubstitutions" + ] +} 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 1070f4346b..36a235fd9c 100644 --- a/src/cfnlint/data/schemas/providers/ap_southeast_2/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_southeast_2/__init__.py @@ -1441,6 +1441,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", @@ -2322,8 +2323,6 @@ "aws-sso-instance.json", "aws-sso-instanceaccesscontrolattributeconfiguration.json", "aws-sso-permissionset.json", - "aws-stepfunctions-activity.json", - "aws-stepfunctions-statemachine.json", "aws-stepfunctions-statemachinealias.json", "aws-stepfunctions-statemachineversion.json", "aws-synthetics-canary.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 deleted file mode 100644 index 009f1aea8c..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-cognito-userpooluicustomizationattachment.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "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_2/aws-stepfunctions-activity.json b/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-stepfunctions-activity.json new file mode 100644 index 0000000000..7aaf191ed1 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-stepfunctions-activity.json @@ -0,0 +1,98 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateActivity", + "states:TagResource" + ] + }, + "delete": { + "permissions": [ + "states:DescribeActivity", + "states:DeleteActivity" + ] + }, + "list": { + "permissions": [ + "states:ListActivities" + ] + }, + "read": { + "permissions": [ + "states:DescribeActivity", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:ListTagsForResource", + "states:TagResource", + "states:UntagResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "required": [ + "Name" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::Activity" +} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-stepfunctions-statemachine.json b/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-stepfunctions-statemachine.json new file mode 100644 index 0000000000..c8a1b0f42e --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_2/aws-stepfunctions-statemachine.json @@ -0,0 +1,256 @@ +{ + "additionalIdentifiers": [ + [ + "/properties/StateMachineName" + ] + ], + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/StateMachineName", + "/properties/StateMachineType" + ], + "definitions": { + "CloudWatchLogsLogGroup": { + "additionalProperties": false, + "properties": { + "LogGroupArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "Definition": { + "minProperties": 1, + "type": "object" + }, + "DefinitionSubstitutions": { + "additionalProperties": false, + "minProperties": 1, + "patternProperties": { + ".*": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "integer" + }, + { + "type": "boolean" + } + ] + } + }, + "type": "object" + }, + "LogDestination": { + "additionalProperties": false, + "properties": { + "CloudWatchLogsLogGroup": { + "$ref": "#/definitions/CloudWatchLogsLogGroup" + } + }, + "type": "object" + }, + "LoggingConfiguration": { + "additionalProperties": false, + "properties": { + "Destinations": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/LogDestination" + }, + "minItems": 1, + "type": "array" + }, + "IncludeExecutionData": { + "type": "boolean" + }, + "Level": { + "enum": [ + "ALL", + "ERROR", + "FATAL", + "OFF" + ], + "type": "string" + } + }, + "type": "object" + }, + "S3Location": { + "additionalProperties": false, + "properties": { + "Bucket": { + "type": "string" + }, + "Key": { + "type": "string" + }, + "Version": { + "type": "string" + } + }, + "required": [ + "Bucket", + "Key" + ], + "type": "object" + }, + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "TracingConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + } + }, + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateStateMachine", + "states:DescribeStateMachine", + "states:TagResource", + "iam:PassRole", + "s3:GetObject" + ] + }, + "delete": { + "permissions": [ + "states:DeleteStateMachine", + "states:DescribeStateMachine" + ] + }, + "list": { + "permissions": [ + "states:ListStateMachines" + ] + }, + "read": { + "permissions": [ + "states:DescribeStateMachine", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:UpdateStateMachine", + "states:TagResource", + "states:UntagResource", + "states:ListTagsForResource", + "iam:PassRole" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Definition": { + "$ref": "#/definitions/Definition" + }, + "DefinitionS3Location": { + "$ref": "#/definitions/S3Location" + }, + "DefinitionString": { + "maxLength": 1048576, + "minLength": 1, + "type": "string" + }, + "DefinitionSubstitutions": { + "$ref": "#/definitions/DefinitionSubstitutions" + }, + "LoggingConfiguration": { + "$ref": "#/definitions/LoggingConfiguration" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "RoleArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "StateMachineName": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "StateMachineRevisionId": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "StateMachineType": { + "enum": [ + "STANDARD", + "EXPRESS" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + }, + "TracingConfiguration": { + "$ref": "#/definitions/TracingConfiguration" + } + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/Name", + "/properties/StateMachineRevisionId" + ], + "required": [ + "RoleArn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::StateMachine", + "writeOnlyProperties": [ + "/properties/Definition", + "/properties/DefinitionS3Location", + "/properties/DefinitionSubstitutions" + ] +} 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 db6e576b1f..e55c45e4fe 100644 --- a/src/cfnlint/data/schemas/providers/ap_southeast_3/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_southeast_3/__init__.py @@ -419,6 +419,7 @@ "AWS::MSK::ClusterPolicy", "AWS::MSK::Configuration", "AWS::MSK::VpcConnection", + "AWS::MWAA::Environment", "AWS::NetworkFirewall::Firewall", "AWS::NetworkFirewall::FirewallPolicy", "AWS::NetworkFirewall::LoggingConfiguration", @@ -750,6 +751,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", @@ -941,7 +943,6 @@ "aws-iam-group.json", "aws-iam-grouppolicy.json", "aws-iam-instanceprofile.json", - "aws-iam-oidcprovider.json", "aws-iam-policy.json", "aws-iam-role.json", "aws-iam-rolepolicy.json", @@ -1010,6 +1011,7 @@ "aws-msk-clusterpolicy.json", "aws-msk-configuration.json", "aws-msk-vpcconnection.json", + "aws-mwaa-environment.json", "aws-networkfirewall-firewall.json", "aws-networkfirewall-firewallpolicy.json", "aws-networkfirewall-loggingconfiguration.json", @@ -1187,8 +1189,6 @@ "aws-sso-assignment.json", "aws-sso-instanceaccesscontrolattributeconfiguration.json", "aws-sso-permissionset.json", - "aws-stepfunctions-activity.json", - "aws-stepfunctions-statemachine.json", "aws-stepfunctions-statemachinealias.json", "aws-stepfunctions-statemachineversion.json", "aws-synthetics-canary.json", diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-codepipeline-pipeline.json b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-codepipeline-pipeline.json deleted file mode 100644 index 925fbfe118..0000000000 --- a/src/cfnlint/data/schemas/providers/ap_southeast_3/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_3/aws-iam-oidcprovider.json b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-iam-oidcprovider.json new file mode 100644 index 0000000000..1794a452ca --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-iam-oidcprovider.json @@ -0,0 +1,120 @@ +{ + "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" + ], + "required": [ + "ThumbprintList" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::IAM::OIDCProvider" +} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-stepfunctions-activity.json b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-stepfunctions-activity.json new file mode 100644 index 0000000000..7aaf191ed1 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-stepfunctions-activity.json @@ -0,0 +1,98 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateActivity", + "states:TagResource" + ] + }, + "delete": { + "permissions": [ + "states:DescribeActivity", + "states:DeleteActivity" + ] + }, + "list": { + "permissions": [ + "states:ListActivities" + ] + }, + "read": { + "permissions": [ + "states:DescribeActivity", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:ListTagsForResource", + "states:TagResource", + "states:UntagResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "required": [ + "Name" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::Activity" +} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-stepfunctions-statemachine.json b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-stepfunctions-statemachine.json new file mode 100644 index 0000000000..c8a1b0f42e --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_3/aws-stepfunctions-statemachine.json @@ -0,0 +1,256 @@ +{ + "additionalIdentifiers": [ + [ + "/properties/StateMachineName" + ] + ], + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/StateMachineName", + "/properties/StateMachineType" + ], + "definitions": { + "CloudWatchLogsLogGroup": { + "additionalProperties": false, + "properties": { + "LogGroupArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "Definition": { + "minProperties": 1, + "type": "object" + }, + "DefinitionSubstitutions": { + "additionalProperties": false, + "minProperties": 1, + "patternProperties": { + ".*": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "integer" + }, + { + "type": "boolean" + } + ] + } + }, + "type": "object" + }, + "LogDestination": { + "additionalProperties": false, + "properties": { + "CloudWatchLogsLogGroup": { + "$ref": "#/definitions/CloudWatchLogsLogGroup" + } + }, + "type": "object" + }, + "LoggingConfiguration": { + "additionalProperties": false, + "properties": { + "Destinations": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/LogDestination" + }, + "minItems": 1, + "type": "array" + }, + "IncludeExecutionData": { + "type": "boolean" + }, + "Level": { + "enum": [ + "ALL", + "ERROR", + "FATAL", + "OFF" + ], + "type": "string" + } + }, + "type": "object" + }, + "S3Location": { + "additionalProperties": false, + "properties": { + "Bucket": { + "type": "string" + }, + "Key": { + "type": "string" + }, + "Version": { + "type": "string" + } + }, + "required": [ + "Bucket", + "Key" + ], + "type": "object" + }, + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "TracingConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + } + }, + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateStateMachine", + "states:DescribeStateMachine", + "states:TagResource", + "iam:PassRole", + "s3:GetObject" + ] + }, + "delete": { + "permissions": [ + "states:DeleteStateMachine", + "states:DescribeStateMachine" + ] + }, + "list": { + "permissions": [ + "states:ListStateMachines" + ] + }, + "read": { + "permissions": [ + "states:DescribeStateMachine", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:UpdateStateMachine", + "states:TagResource", + "states:UntagResource", + "states:ListTagsForResource", + "iam:PassRole" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Definition": { + "$ref": "#/definitions/Definition" + }, + "DefinitionS3Location": { + "$ref": "#/definitions/S3Location" + }, + "DefinitionString": { + "maxLength": 1048576, + "minLength": 1, + "type": "string" + }, + "DefinitionSubstitutions": { + "$ref": "#/definitions/DefinitionSubstitutions" + }, + "LoggingConfiguration": { + "$ref": "#/definitions/LoggingConfiguration" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "RoleArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "StateMachineName": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "StateMachineRevisionId": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "StateMachineType": { + "enum": [ + "STANDARD", + "EXPRESS" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + }, + "TracingConfiguration": { + "$ref": "#/definitions/TracingConfiguration" + } + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/Name", + "/properties/StateMachineRevisionId" + ], + "required": [ + "RoleArn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::StateMachine", + "writeOnlyProperties": [ + "/properties/Definition", + "/properties/DefinitionS3Location", + "/properties/DefinitionSubstitutions" + ] +} 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 f4d40e1d19..c7fa799460 100644 --- a/src/cfnlint/data/schemas/providers/ap_southeast_4/__init__.py +++ b/src/cfnlint/data/schemas/providers/ap_southeast_4/__init__.py @@ -266,6 +266,8 @@ "AWS::ElastiCache::SecurityGroup", "AWS::ElastiCache::SecurityGroupIngress", "AWS::ElastiCache::SubnetGroup", + "AWS::ElastiCache::User", + "AWS::ElastiCache::UserGroup", "AWS::ElasticBeanstalk::Application", "AWS::ElasticBeanstalk::ApplicationVersion", "AWS::ElasticBeanstalk::ConfigurationTemplate", @@ -391,6 +393,7 @@ "AWS::MSK::ClusterPolicy", "AWS::MSK::Configuration", "AWS::MSK::VpcConnection", + "AWS::MWAA::Environment", "AWS::MediaConnect::Flow", "AWS::MediaConnect::FlowEntitlement", "AWS::MediaConnect::FlowOutput", @@ -809,6 +812,8 @@ "aws-elasticache-replicationgroup.json", "aws-elasticache-securitygroup.json", "aws-elasticache-securitygroupingress.json", + "aws-elasticache-user.json", + "aws-elasticache-usergroup.json", "aws-elasticloadbalancing-loadbalancer.json", "aws-elasticloadbalancingv2-listener.json", "aws-elasticloadbalancingv2-listenercertificate.json", @@ -861,7 +866,6 @@ "aws-guardduty-threatintelset.json", "aws-iam-group.json", "aws-iam-grouppolicy.json", - "aws-iam-oidcprovider.json", "aws-iam-policy.json", "aws-iam-role.json", "aws-iam-rolepolicy.json", @@ -945,6 +949,7 @@ "aws-msk-clusterpolicy.json", "aws-msk-configuration.json", "aws-msk-vpcconnection.json", + "aws-mwaa-environment.json", "aws-networkfirewall-firewall.json", "aws-networkfirewall-firewallpolicy.json", "aws-networkfirewall-loggingconfiguration.json", @@ -1079,8 +1084,6 @@ "aws-sso-assignment.json", "aws-sso-instanceaccesscontrolattributeconfiguration.json", "aws-sso-permissionset.json", - "aws-stepfunctions-activity.json", - "aws-stepfunctions-statemachine.json", "aws-stepfunctions-statemachinealias.json", "aws-stepfunctions-statemachineversion.json", "aws-synthetics-canary.json", diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-iam-oidcprovider.json b/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-iam-oidcprovider.json new file mode 100644 index 0000000000..1794a452ca --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-iam-oidcprovider.json @@ -0,0 +1,120 @@ +{ + "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" + ], + "required": [ + "ThumbprintList" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::IAM::OIDCProvider" +} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-stepfunctions-activity.json b/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-stepfunctions-activity.json new file mode 100644 index 0000000000..7aaf191ed1 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-stepfunctions-activity.json @@ -0,0 +1,98 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateActivity", + "states:TagResource" + ] + }, + "delete": { + "permissions": [ + "states:DescribeActivity", + "states:DeleteActivity" + ] + }, + "list": { + "permissions": [ + "states:ListActivities" + ] + }, + "read": { + "permissions": [ + "states:DescribeActivity", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:ListTagsForResource", + "states:TagResource", + "states:UntagResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "required": [ + "Name" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::Activity" +} diff --git a/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-stepfunctions-statemachine.json b/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-stepfunctions-statemachine.json new file mode 100644 index 0000000000..c8a1b0f42e --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ap_southeast_4/aws-stepfunctions-statemachine.json @@ -0,0 +1,256 @@ +{ + "additionalIdentifiers": [ + [ + "/properties/StateMachineName" + ] + ], + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/StateMachineName", + "/properties/StateMachineType" + ], + "definitions": { + "CloudWatchLogsLogGroup": { + "additionalProperties": false, + "properties": { + "LogGroupArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "Definition": { + "minProperties": 1, + "type": "object" + }, + "DefinitionSubstitutions": { + "additionalProperties": false, + "minProperties": 1, + "patternProperties": { + ".*": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "integer" + }, + { + "type": "boolean" + } + ] + } + }, + "type": "object" + }, + "LogDestination": { + "additionalProperties": false, + "properties": { + "CloudWatchLogsLogGroup": { + "$ref": "#/definitions/CloudWatchLogsLogGroup" + } + }, + "type": "object" + }, + "LoggingConfiguration": { + "additionalProperties": false, + "properties": { + "Destinations": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/LogDestination" + }, + "minItems": 1, + "type": "array" + }, + "IncludeExecutionData": { + "type": "boolean" + }, + "Level": { + "enum": [ + "ALL", + "ERROR", + "FATAL", + "OFF" + ], + "type": "string" + } + }, + "type": "object" + }, + "S3Location": { + "additionalProperties": false, + "properties": { + "Bucket": { + "type": "string" + }, + "Key": { + "type": "string" + }, + "Version": { + "type": "string" + } + }, + "required": [ + "Bucket", + "Key" + ], + "type": "object" + }, + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "TracingConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + } + }, + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateStateMachine", + "states:DescribeStateMachine", + "states:TagResource", + "iam:PassRole", + "s3:GetObject" + ] + }, + "delete": { + "permissions": [ + "states:DeleteStateMachine", + "states:DescribeStateMachine" + ] + }, + "list": { + "permissions": [ + "states:ListStateMachines" + ] + }, + "read": { + "permissions": [ + "states:DescribeStateMachine", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:UpdateStateMachine", + "states:TagResource", + "states:UntagResource", + "states:ListTagsForResource", + "iam:PassRole" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Definition": { + "$ref": "#/definitions/Definition" + }, + "DefinitionS3Location": { + "$ref": "#/definitions/S3Location" + }, + "DefinitionString": { + "maxLength": 1048576, + "minLength": 1, + "type": "string" + }, + "DefinitionSubstitutions": { + "$ref": "#/definitions/DefinitionSubstitutions" + }, + "LoggingConfiguration": { + "$ref": "#/definitions/LoggingConfiguration" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "RoleArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "StateMachineName": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "StateMachineRevisionId": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "StateMachineType": { + "enum": [ + "STANDARD", + "EXPRESS" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + }, + "TracingConfiguration": { + "$ref": "#/definitions/TracingConfiguration" + } + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/Name", + "/properties/StateMachineRevisionId" + ], + "required": [ + "RoleArn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::StateMachine", + "writeOnlyProperties": [ + "/properties/Definition", + "/properties/DefinitionS3Location", + "/properties/DefinitionSubstitutions" + ] +} 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 2d4dace933..b27889c079 100644 --- a/src/cfnlint/data/schemas/providers/ca_central_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/ca_central_1/__init__.py @@ -1282,6 +1282,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", @@ -1592,7 +1593,6 @@ "aws-iam-group.json", "aws-iam-grouppolicy.json", "aws-iam-instanceprofile.json", - "aws-iam-oidcprovider.json", "aws-iam-policy.json", "aws-iam-role.json", "aws-iam-rolepolicy.json", @@ -1739,7 +1739,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", @@ -1951,6 +1950,7 @@ "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", @@ -1971,6 +1971,7 @@ "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", @@ -2059,10 +2060,9 @@ "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", - "aws-stepfunctions-statemachine.json", "aws-stepfunctions-statemachinealias.json", "aws-stepfunctions-statemachineversion.json", "aws-supportapp-accountalias.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 deleted file mode 100644 index 009f1aea8c..0000000000 --- a/src/cfnlint/data/schemas/providers/ca_central_1/aws-cognito-userpooluicustomizationattachment.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "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-iam-oidcprovider.json b/src/cfnlint/data/schemas/providers/ca_central_1/aws-iam-oidcprovider.json new file mode 100644 index 0000000000..1794a452ca --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ca_central_1/aws-iam-oidcprovider.json @@ -0,0 +1,120 @@ +{ + "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" + ], + "required": [ + "ThumbprintList" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::IAM::OIDCProvider" +} diff --git a/src/cfnlint/data/schemas/providers/ca_central_1/aws-mediaconnect-flowsource.json b/src/cfnlint/data/schemas/providers/ca_central_1/aws-mediaconnect-flowsource.json new file mode 100644 index 0000000000..cf7d326061 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ca_central_1/aws-mediaconnect-flowsource.json @@ -0,0 +1,200 @@ +{ + "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": { + "default": 2000, + "type": "integer" + }, + "MinLatency": { + "default": 2000, + "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/ca_central_1/aws-sso-instance.json b/src/cfnlint/data/schemas/providers/ca_central_1/aws-sso-instance.json deleted file mode 100644 index 26c2ca063a..0000000000 --- a/src/cfnlint/data/schemas/providers/ca_central_1/aws-sso-instance.json +++ /dev/null @@ -1,125 +0,0 @@ -{ - "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_central_1/aws-stepfunctions-activity.json b/src/cfnlint/data/schemas/providers/ca_central_1/aws-stepfunctions-activity.json new file mode 100644 index 0000000000..7aaf191ed1 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ca_central_1/aws-stepfunctions-activity.json @@ -0,0 +1,98 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateActivity", + "states:TagResource" + ] + }, + "delete": { + "permissions": [ + "states:DescribeActivity", + "states:DeleteActivity" + ] + }, + "list": { + "permissions": [ + "states:ListActivities" + ] + }, + "read": { + "permissions": [ + "states:DescribeActivity", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:ListTagsForResource", + "states:TagResource", + "states:UntagResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "required": [ + "Name" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::Activity" +} diff --git a/src/cfnlint/data/schemas/providers/ca_central_1/aws-stepfunctions-statemachine.json b/src/cfnlint/data/schemas/providers/ca_central_1/aws-stepfunctions-statemachine.json new file mode 100644 index 0000000000..c8a1b0f42e --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ca_central_1/aws-stepfunctions-statemachine.json @@ -0,0 +1,256 @@ +{ + "additionalIdentifiers": [ + [ + "/properties/StateMachineName" + ] + ], + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/StateMachineName", + "/properties/StateMachineType" + ], + "definitions": { + "CloudWatchLogsLogGroup": { + "additionalProperties": false, + "properties": { + "LogGroupArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "Definition": { + "minProperties": 1, + "type": "object" + }, + "DefinitionSubstitutions": { + "additionalProperties": false, + "minProperties": 1, + "patternProperties": { + ".*": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "integer" + }, + { + "type": "boolean" + } + ] + } + }, + "type": "object" + }, + "LogDestination": { + "additionalProperties": false, + "properties": { + "CloudWatchLogsLogGroup": { + "$ref": "#/definitions/CloudWatchLogsLogGroup" + } + }, + "type": "object" + }, + "LoggingConfiguration": { + "additionalProperties": false, + "properties": { + "Destinations": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/LogDestination" + }, + "minItems": 1, + "type": "array" + }, + "IncludeExecutionData": { + "type": "boolean" + }, + "Level": { + "enum": [ + "ALL", + "ERROR", + "FATAL", + "OFF" + ], + "type": "string" + } + }, + "type": "object" + }, + "S3Location": { + "additionalProperties": false, + "properties": { + "Bucket": { + "type": "string" + }, + "Key": { + "type": "string" + }, + "Version": { + "type": "string" + } + }, + "required": [ + "Bucket", + "Key" + ], + "type": "object" + }, + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "TracingConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + } + }, + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateStateMachine", + "states:DescribeStateMachine", + "states:TagResource", + "iam:PassRole", + "s3:GetObject" + ] + }, + "delete": { + "permissions": [ + "states:DeleteStateMachine", + "states:DescribeStateMachine" + ] + }, + "list": { + "permissions": [ + "states:ListStateMachines" + ] + }, + "read": { + "permissions": [ + "states:DescribeStateMachine", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:UpdateStateMachine", + "states:TagResource", + "states:UntagResource", + "states:ListTagsForResource", + "iam:PassRole" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Definition": { + "$ref": "#/definitions/Definition" + }, + "DefinitionS3Location": { + "$ref": "#/definitions/S3Location" + }, + "DefinitionString": { + "maxLength": 1048576, + "minLength": 1, + "type": "string" + }, + "DefinitionSubstitutions": { + "$ref": "#/definitions/DefinitionSubstitutions" + }, + "LoggingConfiguration": { + "$ref": "#/definitions/LoggingConfiguration" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "RoleArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "StateMachineName": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "StateMachineRevisionId": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "StateMachineType": { + "enum": [ + "STANDARD", + "EXPRESS" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + }, + "TracingConfiguration": { + "$ref": "#/definitions/TracingConfiguration" + } + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/Name", + "/properties/StateMachineRevisionId" + ], + "required": [ + "RoleArn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::StateMachine", + "writeOnlyProperties": [ + "/properties/Definition", + "/properties/DefinitionS3Location", + "/properties/DefinitionSubstitutions" + ] +} 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 d572a35d0d..9a881d8544 100644 --- a/src/cfnlint/data/schemas/providers/ca_west_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/ca_west_1/__init__.py @@ -377,6 +377,7 @@ "AWS::MSK::ClusterPolicy", "AWS::MSK::Configuration", "AWS::MSK::VpcConnection", + "AWS::MWAA::Environment", "AWS::NetworkFirewall::Firewall", "AWS::NetworkFirewall::FirewallPolicy", "AWS::NetworkFirewall::LoggingConfiguration", @@ -467,6 +468,7 @@ "AWS::SSM::Parameter", "AWS::SSM::PatchBaseline", "AWS::SSM::ResourceDataSync", + "AWS::SSO::Instance", "AWS::SageMaker::ModelCard", "AWS::SecretsManager::ResourcePolicy", "AWS::SecretsManager::RotationSchedule", @@ -671,6 +673,7 @@ "aws-ec2-prefixlist.json", "aws-ec2-route.json", "aws-ec2-routetable.json", + "aws-ec2-securitygroup.json", "aws-ec2-securitygroupegress.json", "aws-ec2-securitygroupingress.json", "aws-ec2-snapshotblockpublicaccess.json", @@ -770,7 +773,6 @@ "aws-guardduty-threatintelset.json", "aws-iam-grouppolicy.json", "aws-iam-managedpolicy.json", - "aws-iam-oidcprovider.json", "aws-iam-rolepolicy.json", "aws-iam-samlprovider.json", "aws-iam-servercertificate.json", @@ -823,6 +825,7 @@ "aws-msk-clusterpolicy.json", "aws-msk-configuration.json", "aws-msk-vpcconnection.json", + "aws-mwaa-environment.json", "aws-networkfirewall-firewall.json", "aws-networkfirewall-firewallpolicy.json", "aws-networkfirewall-loggingconfiguration.json", @@ -932,8 +935,7 @@ "aws-ssm-parameter.json", "aws-ssm-patchbaseline.json", "aws-ssm-resourcedatasync.json", - "aws-stepfunctions-activity.json", - "aws-stepfunctions-statemachine.json", + "aws-sso-instance.json", "aws-stepfunctions-statemachinealias.json", "aws-stepfunctions-statemachineversion.json", "aws-synthetics-canary.json", diff --git a/src/cfnlint/data/schemas/providers/ca_west_1/aws-iam-oidcprovider.json b/src/cfnlint/data/schemas/providers/ca_west_1/aws-iam-oidcprovider.json new file mode 100644 index 0000000000..1794a452ca --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ca_west_1/aws-iam-oidcprovider.json @@ -0,0 +1,120 @@ +{ + "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" + ], + "required": [ + "ThumbprintList" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::IAM::OIDCProvider" +} diff --git a/src/cfnlint/data/schemas/providers/ca_west_1/aws-stepfunctions-activity.json b/src/cfnlint/data/schemas/providers/ca_west_1/aws-stepfunctions-activity.json new file mode 100644 index 0000000000..7aaf191ed1 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ca_west_1/aws-stepfunctions-activity.json @@ -0,0 +1,98 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateActivity", + "states:TagResource" + ] + }, + "delete": { + "permissions": [ + "states:DescribeActivity", + "states:DeleteActivity" + ] + }, + "list": { + "permissions": [ + "states:ListActivities" + ] + }, + "read": { + "permissions": [ + "states:DescribeActivity", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:ListTagsForResource", + "states:TagResource", + "states:UntagResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "required": [ + "Name" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::Activity" +} diff --git a/src/cfnlint/data/schemas/providers/ca_west_1/aws-stepfunctions-statemachine.json b/src/cfnlint/data/schemas/providers/ca_west_1/aws-stepfunctions-statemachine.json new file mode 100644 index 0000000000..c8a1b0f42e --- /dev/null +++ b/src/cfnlint/data/schemas/providers/ca_west_1/aws-stepfunctions-statemachine.json @@ -0,0 +1,256 @@ +{ + "additionalIdentifiers": [ + [ + "/properties/StateMachineName" + ] + ], + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/StateMachineName", + "/properties/StateMachineType" + ], + "definitions": { + "CloudWatchLogsLogGroup": { + "additionalProperties": false, + "properties": { + "LogGroupArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "Definition": { + "minProperties": 1, + "type": "object" + }, + "DefinitionSubstitutions": { + "additionalProperties": false, + "minProperties": 1, + "patternProperties": { + ".*": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "integer" + }, + { + "type": "boolean" + } + ] + } + }, + "type": "object" + }, + "LogDestination": { + "additionalProperties": false, + "properties": { + "CloudWatchLogsLogGroup": { + "$ref": "#/definitions/CloudWatchLogsLogGroup" + } + }, + "type": "object" + }, + "LoggingConfiguration": { + "additionalProperties": false, + "properties": { + "Destinations": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/LogDestination" + }, + "minItems": 1, + "type": "array" + }, + "IncludeExecutionData": { + "type": "boolean" + }, + "Level": { + "enum": [ + "ALL", + "ERROR", + "FATAL", + "OFF" + ], + "type": "string" + } + }, + "type": "object" + }, + "S3Location": { + "additionalProperties": false, + "properties": { + "Bucket": { + "type": "string" + }, + "Key": { + "type": "string" + }, + "Version": { + "type": "string" + } + }, + "required": [ + "Bucket", + "Key" + ], + "type": "object" + }, + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "TracingConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + } + }, + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateStateMachine", + "states:DescribeStateMachine", + "states:TagResource", + "iam:PassRole", + "s3:GetObject" + ] + }, + "delete": { + "permissions": [ + "states:DeleteStateMachine", + "states:DescribeStateMachine" + ] + }, + "list": { + "permissions": [ + "states:ListStateMachines" + ] + }, + "read": { + "permissions": [ + "states:DescribeStateMachine", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:UpdateStateMachine", + "states:TagResource", + "states:UntagResource", + "states:ListTagsForResource", + "iam:PassRole" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Definition": { + "$ref": "#/definitions/Definition" + }, + "DefinitionS3Location": { + "$ref": "#/definitions/S3Location" + }, + "DefinitionString": { + "maxLength": 1048576, + "minLength": 1, + "type": "string" + }, + "DefinitionSubstitutions": { + "$ref": "#/definitions/DefinitionSubstitutions" + }, + "LoggingConfiguration": { + "$ref": "#/definitions/LoggingConfiguration" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "RoleArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "StateMachineName": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "StateMachineRevisionId": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "StateMachineType": { + "enum": [ + "STANDARD", + "EXPRESS" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + }, + "TracingConfiguration": { + "$ref": "#/definitions/TracingConfiguration" + } + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/Name", + "/properties/StateMachineRevisionId" + ], + "required": [ + "RoleArn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::StateMachine", + "writeOnlyProperties": [ + "/properties/Definition", + "/properties/DefinitionS3Location", + "/properties/DefinitionSubstitutions" + ] +} 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 57f1f737ec..c4e580deed 100644 --- a/src/cfnlint/data/schemas/providers/cn_north_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/cn_north_1/__init__.py @@ -194,6 +194,7 @@ "AWS::EC2::IPAM", "AWS::EC2::IPAMAllocation", "AWS::EC2::IPAMPoolCidr", + "AWS::EC2::IPAMResourceDiscovery", "AWS::EC2::IPAMResourceDiscoveryAssociation", "AWS::EC2::IPAMScope", "AWS::EC2::Instance", @@ -884,6 +885,7 @@ "aws-ec2-ipam.json", "aws-ec2-ipamallocation.json", "aws-ec2-ipampoolcidr.json", + "aws-ec2-ipamresourcediscovery.json", "aws-ec2-ipamresourcediscoveryassociation.json", "aws-ec2-ipamscope.json", "aws-ec2-keypair.json", @@ -1129,7 +1131,6 @@ "aws-lakeformation-principalpermissions.json", "aws-lakeformation-tag.json", "aws-lakeformation-tagassociation.json", - "aws-lambda-alias.json", "aws-lambda-eventinvokeconfig.json", "aws-lambda-eventsourcemapping.json", "aws-lambda-function.json", @@ -1245,7 +1246,6 @@ "aws-sagemaker-app.json", "aws-sagemaker-appimageconfig.json", "aws-sagemaker-coderepository.json", - "aws-sagemaker-domain.json", "aws-sagemaker-endpoint.json", "aws-sagemaker-endpointconfig.json", "aws-sagemaker-featuregroup.json", @@ -1259,7 +1259,6 @@ "aws-sagemaker-notebookinstancelifecycleconfig.json", "aws-sagemaker-pipeline.json", "aws-sagemaker-project.json", - "aws-sagemaker-userprofile.json", "aws-sagemaker-workteam.json", "aws-sdb-domain.json", "aws-secretsmanager-resourcepolicy.json", @@ -1307,10 +1306,9 @@ "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", - "aws-stepfunctions-statemachine.json", "aws-stepfunctions-statemachinealias.json", "aws-stepfunctions-statemachineversion.json", "aws-synthetics-canary.json", diff --git a/src/cfnlint/data/schemas/providers/cn_north_1/aws-lambda-alias.json b/src/cfnlint/data/schemas/providers/cn_north_1/aws-lambda-alias.json new file mode 100644 index 0000000000..e952d8b59e --- /dev/null +++ b/src/cfnlint/data/schemas/providers/cn_north_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/us_east_2/aws-sagemaker-domain.json b/src/cfnlint/data/schemas/providers/cn_north_1/aws-sagemaker-domain.json similarity index 94% rename from src/cfnlint/data/schemas/providers/us_east_2/aws-sagemaker-domain.json rename to src/cfnlint/data/schemas/providers/cn_north_1/aws-sagemaker-domain.json index 5cd4ea45fa..f6f11084f6 100644 --- a/src/cfnlint/data/schemas/providers/us_east_2/aws-sagemaker-domain.json +++ b/src/cfnlint/data/schemas/providers/cn_north_1/aws-sagemaker-domain.json @@ -9,18 +9,6 @@ "/properties/Tags" ], "definitions": { - "AppType": { - "enum": [ - "JupyterServer", - "TensorBoard", - "RStudioServerPro", - "JupyterLab", - "CodeEditor", - "DetailedProfiler", - "Canvas" - ], - "type": "string" - }, "CodeEditorAppSettings": { "additionalProperties": false, "properties": { @@ -330,24 +318,6 @@ }, "type": "object" }, - "MlTools": { - "enum": [ - "DataWrangler", - "FeatureStore", - "EmrClusters", - "AutoML", - "Experiments", - "Training", - "ModelEvaluation", - "Pipelines", - "Models", - "JumpStart", - "InferenceRecommender", - "Endpoints", - "Projects" - ], - "type": "string" - }, "RSessionAppSettings": { "additionalProperties": false, "properties": { @@ -535,30 +505,6 @@ "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": { @@ -648,9 +594,6 @@ "DISABLED" ], "type": "string" - }, - "StudioWebPortalSettings": { - "$ref": "#/definitions/StudioWebPortalSettings" } }, "required": [ diff --git a/src/cfnlint/data/schemas/providers/us_east_2/aws-sagemaker-userprofile.json b/src/cfnlint/data/schemas/providers/cn_north_1/aws-sagemaker-userprofile.json similarity index 91% rename from src/cfnlint/data/schemas/providers/us_east_2/aws-sagemaker-userprofile.json rename to src/cfnlint/data/schemas/providers/cn_north_1/aws-sagemaker-userprofile.json index c2c0daf9fe..f7e1db12f6 100644 --- a/src/cfnlint/data/schemas/providers/us_east_2/aws-sagemaker-userprofile.json +++ b/src/cfnlint/data/schemas/providers/cn_north_1/aws-sagemaker-userprofile.json @@ -10,18 +10,6 @@ "/properties/Tags" ], "definitions": { - "AppType": { - "enum": [ - "JupyterServer", - "TensorBoard", - "RStudioServerPro", - "JupyterLab", - "CodeEditor", - "DetailedProfiler", - "Canvas" - ], - "type": "string" - }, "CodeEditorAppSettings": { "additionalProperties": false, "properties": { @@ -225,24 +213,6 @@ }, "type": "object" }, - "MlTools": { - "enum": [ - "DataWrangler", - "FeatureStore", - "EmrClusters", - "AutoML", - "Experiments", - "Training", - "ModelEvaluation", - "Pipelines", - "Models", - "JumpStart", - "InferenceRecommender", - "Endpoints", - "Projects" - ], - "type": "string" - }, "RStudioServerProAppSettings": { "additionalProperties": false, "properties": { @@ -380,30 +350,6 @@ "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": { @@ -489,9 +435,6 @@ "DISABLED" ], "type": "string" - }, - "StudioWebPortalSettings": { - "$ref": "#/definitions/StudioWebPortalSettings" } }, "type": "object" 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 deleted file mode 100644 index 26c2ca063a..0000000000 --- a/src/cfnlint/data/schemas/providers/cn_north_1/aws-sso-instance.json +++ /dev/null @@ -1,125 +0,0 @@ -{ - "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_north_1/aws-stepfunctions-activity.json b/src/cfnlint/data/schemas/providers/cn_north_1/aws-stepfunctions-activity.json new file mode 100644 index 0000000000..7aaf191ed1 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/cn_north_1/aws-stepfunctions-activity.json @@ -0,0 +1,98 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateActivity", + "states:TagResource" + ] + }, + "delete": { + "permissions": [ + "states:DescribeActivity", + "states:DeleteActivity" + ] + }, + "list": { + "permissions": [ + "states:ListActivities" + ] + }, + "read": { + "permissions": [ + "states:DescribeActivity", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:ListTagsForResource", + "states:TagResource", + "states:UntagResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "required": [ + "Name" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::Activity" +} diff --git a/src/cfnlint/data/schemas/providers/cn_north_1/aws-stepfunctions-statemachine.json b/src/cfnlint/data/schemas/providers/cn_north_1/aws-stepfunctions-statemachine.json new file mode 100644 index 0000000000..c8a1b0f42e --- /dev/null +++ b/src/cfnlint/data/schemas/providers/cn_north_1/aws-stepfunctions-statemachine.json @@ -0,0 +1,256 @@ +{ + "additionalIdentifiers": [ + [ + "/properties/StateMachineName" + ] + ], + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/StateMachineName", + "/properties/StateMachineType" + ], + "definitions": { + "CloudWatchLogsLogGroup": { + "additionalProperties": false, + "properties": { + "LogGroupArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "Definition": { + "minProperties": 1, + "type": "object" + }, + "DefinitionSubstitutions": { + "additionalProperties": false, + "minProperties": 1, + "patternProperties": { + ".*": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "integer" + }, + { + "type": "boolean" + } + ] + } + }, + "type": "object" + }, + "LogDestination": { + "additionalProperties": false, + "properties": { + "CloudWatchLogsLogGroup": { + "$ref": "#/definitions/CloudWatchLogsLogGroup" + } + }, + "type": "object" + }, + "LoggingConfiguration": { + "additionalProperties": false, + "properties": { + "Destinations": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/LogDestination" + }, + "minItems": 1, + "type": "array" + }, + "IncludeExecutionData": { + "type": "boolean" + }, + "Level": { + "enum": [ + "ALL", + "ERROR", + "FATAL", + "OFF" + ], + "type": "string" + } + }, + "type": "object" + }, + "S3Location": { + "additionalProperties": false, + "properties": { + "Bucket": { + "type": "string" + }, + "Key": { + "type": "string" + }, + "Version": { + "type": "string" + } + }, + "required": [ + "Bucket", + "Key" + ], + "type": "object" + }, + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "TracingConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + } + }, + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateStateMachine", + "states:DescribeStateMachine", + "states:TagResource", + "iam:PassRole", + "s3:GetObject" + ] + }, + "delete": { + "permissions": [ + "states:DeleteStateMachine", + "states:DescribeStateMachine" + ] + }, + "list": { + "permissions": [ + "states:ListStateMachines" + ] + }, + "read": { + "permissions": [ + "states:DescribeStateMachine", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:UpdateStateMachine", + "states:TagResource", + "states:UntagResource", + "states:ListTagsForResource", + "iam:PassRole" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Definition": { + "$ref": "#/definitions/Definition" + }, + "DefinitionS3Location": { + "$ref": "#/definitions/S3Location" + }, + "DefinitionString": { + "maxLength": 1048576, + "minLength": 1, + "type": "string" + }, + "DefinitionSubstitutions": { + "$ref": "#/definitions/DefinitionSubstitutions" + }, + "LoggingConfiguration": { + "$ref": "#/definitions/LoggingConfiguration" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "RoleArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "StateMachineName": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "StateMachineRevisionId": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "StateMachineType": { + "enum": [ + "STANDARD", + "EXPRESS" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + }, + "TracingConfiguration": { + "$ref": "#/definitions/TracingConfiguration" + } + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/Name", + "/properties/StateMachineRevisionId" + ], + "required": [ + "RoleArn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::StateMachine", + "writeOnlyProperties": [ + "/properties/Definition", + "/properties/DefinitionS3Location", + "/properties/DefinitionSubstitutions" + ] +} 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 614a1a14d4..6917dd6de0 100644 --- a/src/cfnlint/data/schemas/providers/cn_northwest_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/cn_northwest_1/__init__.py @@ -196,6 +196,7 @@ "AWS::EC2::FlowLog", "AWS::EC2::GatewayRouteTableAssociation", "AWS::EC2::Host", + "AWS::EC2::IPAMResourceDiscoveryAssociation", "AWS::EC2::Instance", "AWS::EC2::InstanceConnectEndpoint", "AWS::EC2::InternetGateway", @@ -776,6 +777,7 @@ "aws-codedeploy-deploymentconfig.json", "aws-codedeploy-deploymentgroup.json", "aws-codepipeline-customactiontype.json", + "aws-codepipeline-pipeline.json", "aws-config-aggregationauthorization.json", "aws-config-configrule.json", "aws-config-configurationaggregator.json", @@ -831,6 +833,7 @@ "aws-ec2-instance.json", "aws-ec2-instanceconnectendpoint.json", "aws-ec2-internetgateway.json", + "aws-ec2-ipamresourcediscoveryassociation.json", "aws-ec2-keypair.json", "aws-ec2-launchtemplate.json", "aws-ec2-natgateway.json", @@ -975,7 +978,6 @@ "aws-iam-group.json", "aws-iam-grouppolicy.json", "aws-iam-instanceprofile.json", - "aws-iam-oidcprovider.json", "aws-iam-policy.json", "aws-iam-role.json", "aws-iam-rolepolicy.json", @@ -1200,10 +1202,9 @@ "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", - "aws-stepfunctions-statemachine.json", "aws-stepfunctions-statemachinealias.json", "aws-stepfunctions-statemachineversion.json", "aws-synthetics-canary.json", diff --git a/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-codepipeline-pipeline.json b/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-codepipeline-pipeline.json deleted file mode 100644 index 925fbfe118..0000000000 --- a/src/cfnlint/data/schemas/providers/cn_northwest_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/cn_northwest_1/aws-iam-oidcprovider.json b/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-iam-oidcprovider.json new file mode 100644 index 0000000000..1794a452ca --- /dev/null +++ b/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-iam-oidcprovider.json @@ -0,0 +1,120 @@ +{ + "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" + ], + "required": [ + "ThumbprintList" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::IAM::OIDCProvider" +} 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 deleted file mode 100644 index 26c2ca063a..0000000000 --- a/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-sso-instance.json +++ /dev/null @@ -1,125 +0,0 @@ -{ - "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/aws-stepfunctions-activity.json b/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-stepfunctions-activity.json new file mode 100644 index 0000000000..7aaf191ed1 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-stepfunctions-activity.json @@ -0,0 +1,98 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateActivity", + "states:TagResource" + ] + }, + "delete": { + "permissions": [ + "states:DescribeActivity", + "states:DeleteActivity" + ] + }, + "list": { + "permissions": [ + "states:ListActivities" + ] + }, + "read": { + "permissions": [ + "states:DescribeActivity", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:ListTagsForResource", + "states:TagResource", + "states:UntagResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "required": [ + "Name" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::Activity" +} diff --git a/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-stepfunctions-statemachine.json b/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-stepfunctions-statemachine.json new file mode 100644 index 0000000000..c8a1b0f42e --- /dev/null +++ b/src/cfnlint/data/schemas/providers/cn_northwest_1/aws-stepfunctions-statemachine.json @@ -0,0 +1,256 @@ +{ + "additionalIdentifiers": [ + [ + "/properties/StateMachineName" + ] + ], + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/StateMachineName", + "/properties/StateMachineType" + ], + "definitions": { + "CloudWatchLogsLogGroup": { + "additionalProperties": false, + "properties": { + "LogGroupArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "Definition": { + "minProperties": 1, + "type": "object" + }, + "DefinitionSubstitutions": { + "additionalProperties": false, + "minProperties": 1, + "patternProperties": { + ".*": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "integer" + }, + { + "type": "boolean" + } + ] + } + }, + "type": "object" + }, + "LogDestination": { + "additionalProperties": false, + "properties": { + "CloudWatchLogsLogGroup": { + "$ref": "#/definitions/CloudWatchLogsLogGroup" + } + }, + "type": "object" + }, + "LoggingConfiguration": { + "additionalProperties": false, + "properties": { + "Destinations": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/LogDestination" + }, + "minItems": 1, + "type": "array" + }, + "IncludeExecutionData": { + "type": "boolean" + }, + "Level": { + "enum": [ + "ALL", + "ERROR", + "FATAL", + "OFF" + ], + "type": "string" + } + }, + "type": "object" + }, + "S3Location": { + "additionalProperties": false, + "properties": { + "Bucket": { + "type": "string" + }, + "Key": { + "type": "string" + }, + "Version": { + "type": "string" + } + }, + "required": [ + "Bucket", + "Key" + ], + "type": "object" + }, + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "TracingConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + } + }, + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateStateMachine", + "states:DescribeStateMachine", + "states:TagResource", + "iam:PassRole", + "s3:GetObject" + ] + }, + "delete": { + "permissions": [ + "states:DeleteStateMachine", + "states:DescribeStateMachine" + ] + }, + "list": { + "permissions": [ + "states:ListStateMachines" + ] + }, + "read": { + "permissions": [ + "states:DescribeStateMachine", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:UpdateStateMachine", + "states:TagResource", + "states:UntagResource", + "states:ListTagsForResource", + "iam:PassRole" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Definition": { + "$ref": "#/definitions/Definition" + }, + "DefinitionS3Location": { + "$ref": "#/definitions/S3Location" + }, + "DefinitionString": { + "maxLength": 1048576, + "minLength": 1, + "type": "string" + }, + "DefinitionSubstitutions": { + "$ref": "#/definitions/DefinitionSubstitutions" + }, + "LoggingConfiguration": { + "$ref": "#/definitions/LoggingConfiguration" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "RoleArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "StateMachineName": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "StateMachineRevisionId": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "StateMachineType": { + "enum": [ + "STANDARD", + "EXPRESS" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + }, + "TracingConfiguration": { + "$ref": "#/definitions/TracingConfiguration" + } + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/Name", + "/properties/StateMachineRevisionId" + ], + "required": [ + "RoleArn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::StateMachine", + "writeOnlyProperties": [ + "/properties/Definition", + "/properties/DefinitionS3Location", + "/properties/DefinitionSubstitutions" + ] +} 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 732e42ae6c..72928de10e 100644 --- a/src/cfnlint/data/schemas/providers/eu_central_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/eu_central_1/__init__.py @@ -1498,7 +1498,6 @@ "aws-connect-viewversion.json", "aws-connectcampaigns-campaign.json", "aws-controltower-enabledbaseline.json", - "aws-controltower-enabledcontrol.json", "aws-controltower-landingzone.json", "aws-customerprofiles-calculatedattributedefinition.json", "aws-customerprofiles-domain.json", @@ -1620,7 +1619,6 @@ "aws-ec2-prefixlist.json", "aws-ec2-route.json", "aws-ec2-routetable.json", - "aws-ec2-securitygroup.json", "aws-ec2-securitygroupegress.json", "aws-ec2-securitygroupingress.json", "aws-ec2-snapshotblockpublicaccess.json", @@ -1659,7 +1657,6 @@ "aws-ec2-vpcendpointservicepermissions.json", "aws-ec2-vpcgatewayattachment.json", "aws-ec2-vpcpeeringconnection.json", - "aws-ec2-vpnconnection.json", "aws-ec2-vpnconnectionroute.json", "aws-ec2-vpngateway.json", "aws-ec2-vpngatewayroutepropagation.json", @@ -1816,6 +1813,7 @@ "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", @@ -2001,7 +1999,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", @@ -2093,7 +2090,6 @@ "aws-opsworks-volume.json", "aws-opsworkscm-server.json", "aws-organizations-account.json", - "aws-organizations-organization.json", "aws-organizations-organizationalunit.json", "aws-organizations-policy.json", "aws-organizations-resourcepolicy.json", @@ -2147,7 +2143,6 @@ "aws-ram-permission.json", "aws-ram-resourceshare.json", "aws-rds-customdbengineversion.json", - "aws-rds-dbcluster.json", "aws-rds-dbclusterparametergroup.json", "aws-rds-dbinstance.json", "aws-rds-dbparametergroup.json", @@ -2356,6 +2351,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/eu_central_1/aws-controltower-enabledcontrol.json b/src/cfnlint/data/schemas/providers/eu_central_1/aws-controltower-enabledcontrol.json new file mode 100644 index 0000000000..8f0be9c61f --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_1/aws-controltower-enabledcontrol.json @@ -0,0 +1,185 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/TargetIdentifier", + "/properties/ControlIdentifier" + ], + "definitions": { + "EnabledControlParameter": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "insertionOrder": false, + "items": { + "type": [ + "string", + "number", + "object", + "boolean" + ] + }, + "minItems": 1, + "type": [ + "array", + "string", + "number", + "object", + "boolean" + ] + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "controltower:ListEnabledControls", + "controltower:GetEnabledControl", + "controltower:GetControlOperation", + "controltower:EnableControl", + "controltower:TagResource", + "organizations:UpdatePolicy", + "organizations:CreatePolicy", + "organizations:AttachPolicy", + "organizations:DetachPolicy", + "organizations:ListPoliciesForTarget", + "organizations:ListTargetsForPolicy", + "organizations:DescribePolicy" + ], + "timeoutInMinutes": 720 + }, + "delete": { + "permissions": [ + "controltower:ListEnabledControls", + "controltower:GetEnabledControl", + "controltower:GetControlOperation", + "controltower:DisableControl", + "organizations:UpdatePolicy", + "organizations:DeletePolicy", + "organizations:CreatePolicy", + "organizations:AttachPolicy", + "organizations:DetachPolicy", + "organizations:ListPoliciesForTarget", + "organizations:ListTargetsForPolicy", + "organizations:DescribePolicy" + ], + "timeoutInMinutes": 720 + }, + "list": { + "handlerSchema": { + "properties": { + "TargetIdentifier": { + "$ref": "resource-schema.json#/properties/TargetIdentifier" + } + }, + "required": [ + "TargetIdentifier" + ] + }, + "permissions": [ + "controltower:ListEnabledControls" + ] + }, + "read": { + "permissions": [ + "controltower:ListEnabledControls", + "controltower:GetEnabledControl", + "controltower:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "controltower:ListEnabledControls", + "controltower:GetEnabledControl", + "controltower:GetControlOperation", + "controltower:UpdateEnabledControl", + "controltower:UntagResource", + "controltower:TagResource", + "organizations:UpdatePolicy", + "organizations:CreatePolicy", + "organizations:AttachPolicy", + "organizations:DetachPolicy", + "organizations:ListPoliciesForTarget", + "organizations:ListTargetsForPolicy", + "organizations:DescribePolicy" + ], + "timeoutInMinutes": 720 + } + }, + "primaryIdentifier": [ + "/properties/TargetIdentifier", + "/properties/ControlIdentifier" + ], + "properties": { + "ControlIdentifier": { + "maxLength": 2048, + "minLength": 20, + "pattern": "^arn:aws[0-9a-zA-Z_\\-:\\/]+$", + "type": "string" + }, + "Parameters": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/EnabledControlParameter" + }, + "minItems": 1, + "type": "array" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 50, + "minItems": 1, + "type": "array" + }, + "TargetIdentifier": { + "maxLength": 2048, + "minLength": 20, + "pattern": "^arn:aws[0-9a-zA-Z_\\-:\\/]+$", + "type": "string" + } + }, + "required": [ + "TargetIdentifier", + "ControlIdentifier" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-controltower", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ControlTower::EnabledControl" +} diff --git a/src/cfnlint/data/schemas/providers/ca_west_1/aws-ec2-securitygroup.json b/src/cfnlint/data/schemas/providers/eu_central_1/aws-ec2-securitygroup.json similarity index 75% rename from src/cfnlint/data/schemas/providers/ca_west_1/aws-ec2-securitygroup.json rename to src/cfnlint/data/schemas/providers/eu_central_1/aws-ec2-securitygroup.json index 181f1f171b..8ab5cdc451 100644 --- a/src/cfnlint/data/schemas/providers/ca_west_1/aws-ec2-securitygroup.json +++ b/src/cfnlint/data/schemas/providers/eu_central_1/aws-ec2-securitygroup.json @@ -33,9 +33,6 @@ "IpProtocol": { "type": "string" }, - "SourceSecurityGroupId": { - "type": "string" - }, "ToPort": { "minimum": -1, "type": "integer" @@ -137,6 +134,7 @@ }, "delete": { "permissions": [ + "ec2:DescribeSecurityGroups", "ec2:DeleteSecurityGroup", "ec2:DescribeInstances" ] @@ -213,6 +211,14 @@ "type": "string" } }, + "propertyTransform": { + "/properties/SecurityGroupEgress/*/FromPort": "($mapVal := $lookup({'1': 'icmp','6': 'tcp','17': 'udp','58': 'icmpv6'}, IpProtocol);$ipProtocol := $mapVal ? $mapVal : $lowercase(IpProtocol);$ipProtocol in ['imcp', 'tcp', 'udp', 'imcp'] ? FromPort : -1)", + "/properties/SecurityGroupEgress/*/IpProtocol": "($mapVal := $lookup({'1': 'icmp','6': 'tcp','17': 'udp','58': 'icmpv6'}, IpProtocol);$mapVal ? $mapVal : $lowercase(IpProtocol))", + "/properties/SecurityGroupEgress/*/ToPort": "($mapVal := $lookup({'1': 'icmp','6': 'tcp','17': 'udp','58': 'icmpv6'}, IpProtocol);$ipProtocol := $mapVal ? $mapVal : $lowercase(IpProtocol);$ipProtocol in ['imcp', 'tcp', 'udp', 'imcp'] ? ToPort : -1)", + "/properties/SecurityGroupIngress/*/FromPort": "($mapVal := $lookup({'1': 'icmp','6': 'tcp','17': 'udp','58': 'icmpv6'}, IpProtocol);$ipProtocol := $mapVal ? $mapVal : $lowercase(IpProtocol);$ipProtocol in ['imcp', 'tcp', 'udp', 'imcp'] ? FromPort : -1)", + "/properties/SecurityGroupIngress/*/IpProtocol": "($mapVal := $lookup({'1': 'icmp','6': 'tcp','17': 'udp','58': 'icmpv6'}, IpProtocol);$mapVal ? $mapVal : $lowercase(IpProtocol))", + "/properties/SecurityGroupIngress/*/ToPort": "($mapVal := $lookup({'1': 'icmp','6': 'tcp','17': 'udp','58': 'icmpv6'}, IpProtocol);$ipProtocol := $mapVal ? $mapVal : $lowercase(IpProtocol);$ipProtocol in ['imcp', 'tcp', 'udp', 'imcp'] ? ToPort : -1)" + }, "readOnlyProperties": [ "/properties/Id", "/properties/GroupId" diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/aws-ec2-vpnconnection.json b/src/cfnlint/data/schemas/providers/eu_central_1/aws-ec2-vpnconnection.json new file mode 100644 index 0000000000..769330c57d --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_1/aws-ec2-vpnconnection.json @@ -0,0 +1,128 @@ +{ + "$schema": "https://raw.githubusercontent.com/aws-cloudformation/cloudformation-resource-schema/blob/master/src/main/resources/schema/provider.definition.schema.v1.json", + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Type", + "/properties/CustomerGatewayId", + "/properties/VpnGatewayId", + "/properties/TransitGatewayId", + "/properties/VpnTunnelOptionsSpecifications", + "/properties/StaticRoutesOnly" + ], + "definitions": { + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "type": "string" + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + }, + "VpnTunnelOptionsSpecification": { + "additionalProperties": false, + "properties": { + "PreSharedKey": { + "type": "string" + }, + "TunnelInsideCidr": { + "type": "string" + } + }, + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "ec2:DescribeVpnConnections", + "ec2:CreateVpnConnection", + "ec2:CreateTags" + ] + }, + "delete": { + "permissions": [ + "ec2:DescribeVpnConnections", + "ec2:DeleteVpnConnection" + ] + }, + "list": { + "permissions": [ + "ec2:DescribeVpnConnections" + ] + }, + "read": { + "permissions": [ + "ec2:DescribeVpnConnections" + ] + }, + "update": { + "permissions": [ + "ec2:DescribeVpnConnections", + "ec2:CreateTags", + "ec2:DeleteTags" + ] + } + }, + "primaryIdentifier": [ + "/properties/VpnConnectionId" + ], + "properties": { + "CustomerGatewayId": { + "type": "string" + }, + "StaticRoutesOnly": { + "type": "boolean" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "type": "array", + "uniqueItems": false + }, + "TransitGatewayId": { + "type": "string" + }, + "Type": { + "type": "string" + }, + "VpnConnectionId": { + "type": "string" + }, + "VpnGatewayId": { + "type": "string" + }, + "VpnTunnelOptionsSpecifications": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/VpnTunnelOptionsSpecification" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/VpnConnectionId" + ], + "required": [ + "Type", + "CustomerGatewayId" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::EC2::VPNConnection" +} diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/aws-mediaconnect-flowsource.json b/src/cfnlint/data/schemas/providers/eu_central_1/aws-mediaconnect-flowsource.json new file mode 100644 index 0000000000..cf7d326061 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_1/aws-mediaconnect-flowsource.json @@ -0,0 +1,200 @@ +{ + "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": { + "default": 2000, + "type": "integer" + }, + "MinLatency": { + "default": 2000, + "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_central_1/aws-organizations-organization.json b/src/cfnlint/data/schemas/providers/eu_central_1/aws-organizations-organization.json new file mode 100644 index 0000000000..844033a13a --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_1/aws-organizations-organization.json @@ -0,0 +1,88 @@ +{ + "additionalProperties": false, + "handlers": { + "create": { + "permissions": [ + "organizations:CreateOrganization", + "organizations:DescribeOrganization", + "iam:CreateServiceLinkedRole", + "organizations:ListRoots" + ] + }, + "delete": { + "permissions": [ + "organizations:DeleteOrganization", + "organizations:DescribeOrganization" + ] + }, + "list": { + "permissions": [ + "organizations:DescribeOrganization" + ] + }, + "read": { + "permissions": [ + "organizations:DescribeOrganization", + "organizations:ListRoots" + ] + }, + "update": { + "permissions": [ + "organizations:DescribeOrganization" + ] + } + }, + "primaryIdentifier": [ + "/properties/Id" + ], + "properties": { + "Arn": { + "pattern": "^arn:aws.*:organizations::\\d{12}:organization\\/o-[a-z0-9]{10,32}", + "type": "string" + }, + "FeatureSet": { + "default": "ALL", + "enum": [ + "ALL", + "CONSOLIDATED_BILLING" + ], + "type": "string" + }, + "Id": { + "pattern": "^o-[a-z0-9]{10,32}$", + "type": "string" + }, + "ManagementAccountArn": { + "pattern": "^arn:aws.*:organizations::\\d{12}:account\\/o-[a-z0-9]{10,32}\\/\\d{12}", + "type": "string" + }, + "ManagementAccountEmail": { + "maxLength": 64, + "minLength": 6, + "pattern": "[^\\s@]+@[^\\s@]+\\.[^\\s@]+", + "type": "string" + }, + "ManagementAccountId": { + "pattern": "^\\d{12}$", + "type": "string" + }, + "RootId": { + "maxLength": 64, + "pattern": "^r-[0-9a-z]{4,32}$", + "type": "string" + } + }, + "readOnlyProperties": [ + "/properties/Id", + "/properties/Arn", + "/properties/ManagementAccountArn", + "/properties/ManagementAccountId", + "/properties/ManagementAccountEmail", + "/properties/RootId" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-organizations.git", + "tagging": { + "taggable": false + }, + "typeName": "AWS::Organizations::Organization" +} diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/aws-rds-dbcluster.json b/src/cfnlint/data/schemas/providers/eu_central_1/aws-rds-dbcluster.json new file mode 100644 index 0000000000..fc8608c49b --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_1/aws-rds-dbcluster.json @@ -0,0 +1,469 @@ +{ + "additionalProperties": false, + "conditionalCreateOnlyProperties": [ + "/properties/Engine", + "/properties/GlobalClusterIdentifier", + "/properties/MasterUsername" + ], + "createOnlyProperties": [ + "/properties/AvailabilityZones", + "/properties/DBClusterIdentifier", + "/properties/DBSubnetGroupName", + "/properties/DBSystemId", + "/properties/DatabaseName", + "/properties/EngineMode", + "/properties/KmsKeyId", + "/properties/PubliclyAccessible", + "/properties/RestoreToTime", + "/properties/RestoreType", + "/properties/SnapshotIdentifier", + "/properties/SourceDBClusterIdentifier", + "/properties/SourceRegion", + "/properties/StorageEncrypted", + "/properties/UseLatestRestorableTime" + ], + "definitions": { + "DBClusterRole": { + "additionalProperties": false, + "properties": { + "FeatureName": { + "type": "string" + }, + "RoleArn": { + "type": "string" + } + }, + "required": [ + "RoleArn" + ], + "type": "object" + }, + "Endpoint": { + "additionalProperties": false, + "properties": { + "Address": { + "type": "string" + }, + "Port": { + "type": "string" + } + }, + "type": "object" + }, + "MasterUserSecret": { + "additionalProperties": false, + "properties": { + "KmsKeyId": { + "type": "string" + }, + "SecretArn": { + "type": "string" + } + }, + "type": "object" + }, + "ReadEndpoint": { + "additionalProperties": false, + "properties": { + "Address": { + "type": "string" + } + }, + "type": "object" + }, + "ScalingConfiguration": { + "additionalProperties": false, + "properties": { + "AutoPause": { + "type": "boolean" + }, + "MaxCapacity": { + "type": "integer" + }, + "MinCapacity": { + "type": "integer" + }, + "SecondsBeforeTimeout": { + "type": "integer" + }, + "SecondsUntilAutoPause": { + "type": "integer" + }, + "TimeoutAction": { + "type": "string" + } + }, + "type": "object" + }, + "ServerlessV2ScalingConfiguration": { + "additionalProperties": false, + "properties": { + "MaxCapacity": { + "type": "number" + }, + "MinCapacity": { + "type": "number" + } + }, + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "iam:CreateServiceLinkedRole", + "iam:PassRole", + "rds:AddRoleToDBCluster", + "rds:AddTagsToResource", + "rds:CreateDBCluster", + "rds:CreateDBInstance", + "rds:DescribeDBClusters", + "rds:DescribeDBClusterSnapshots", + "rds:DescribeDBSnapshots", + "rds:DescribeEvents", + "rds:EnableHttpEndpoint", + "rds:ModifyDBCluster", + "rds:RestoreDBClusterFromSnapshot", + "rds:RestoreDBClusterToPointInTime", + "secretsmanager:CreateSecret", + "secretsmanager:TagResource" + ], + "timeoutInMinutes": 2160 + }, + "delete": { + "permissions": [ + "rds:CreateDBClusterSnapshot", + "rds:DeleteDBCluster", + "rds:DeleteDBInstance", + "rds:DescribeDBClusters", + "rds:DescribeGlobalClusters", + "rds:RemoveFromGlobalCluster" + ] + }, + "list": { + "permissions": [ + "rds:DescribeDBClusters" + ] + }, + "read": { + "permissions": [ + "rds:DescribeDBClusters" + ] + }, + "update": { + "permissions": [ + "ec2:DescribeSecurityGroups", + "iam:PassRole", + "rds:AddRoleToDBCluster", + "rds:AddTagsToResource", + "rds:DescribeDBClusters", + "rds:DescribeDBSubnetGroups", + "rds:DescribeEvents", + "rds:DescribeGlobalClusters", + "rds:DisableHttpEndpoint", + "rds:EnableHttpEndpoint", + "rds:ModifyDBCluster", + "rds:ModifyDBInstance", + "rds:RemoveFromGlobalCluster", + "rds:RemoveRoleFromDBCluster", + "rds:RemoveTagsFromResource", + "secretsmanager:CreateSecret", + "secretsmanager:TagResource" + ], + "timeoutInMinutes": 2160 + } + }, + "primaryIdentifier": [ + "/properties/DBClusterIdentifier" + ], + "properties": { + "AllocatedStorage": { + "type": "integer" + }, + "AssociatedRoles": { + "items": { + "$ref": "#/definitions/DBClusterRole" + }, + "type": "array", + "uniqueItems": true + }, + "AutoMinorVersionUpgrade": { + "type": "boolean" + }, + "AvailabilityZones": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "BacktrackWindow": { + "minimum": 0, + "type": "integer" + }, + "BackupRetentionPeriod": { + "default": 1, + "maximum": 35, + "minimum": 1, + "type": "integer" + }, + "CopyTagsToSnapshot": { + "type": "boolean" + }, + "DBClusterArn": { + "type": "string" + }, + "DBClusterIdentifier": { + "maxLength": 63, + "minLength": 1, + "pattern": "^[a-zA-Z]{1}(?:-?[a-zA-Z0-9]){0,62}$", + "type": "string" + }, + "DBClusterInstanceClass": { + "type": "string" + }, + "DBClusterParameterGroupName": { + "default": "default.aurora5.6", + "type": "string" + }, + "DBClusterResourceId": { + "type": "string" + }, + "DBInstanceParameterGroupName": { + "type": "string" + }, + "DBSubnetGroupName": { + "type": "string" + }, + "DBSystemId": { + "type": "string" + }, + "DatabaseName": { + "type": "string" + }, + "DeletionProtection": { + "type": "boolean" + }, + "Domain": { + "type": "string" + }, + "DomainIAMRoleName": { + "type": "string" + }, + "EnableCloudwatchLogsExports": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": true + }, + "EnableGlobalWriteForwarding": { + "type": "boolean" + }, + "EnableHttpEndpoint": { + "type": "boolean" + }, + "EnableIAMDatabaseAuthentication": { + "type": "boolean" + }, + "EnableLocalWriteForwarding": { + "type": "boolean" + }, + "Endpoint": { + "$ref": "#/definitions/Endpoint" + }, + "Engine": { + "type": "string" + }, + "EngineLifecycleSupport": { + "type": "string" + }, + "EngineMode": { + "type": "string" + }, + "EngineVersion": { + "type": "string" + }, + "GlobalClusterIdentifier": { + "maxLength": 63, + "minLength": 0, + "pattern": "^$|^[a-zA-Z]{1}(?:-?[a-zA-Z0-9]){0,62}$", + "type": "string" + }, + "Iops": { + "type": "integer" + }, + "KmsKeyId": { + "type": "string" + }, + "ManageMasterUserPassword": { + "type": "boolean" + }, + "MasterUserPassword": { + "type": "string" + }, + "MasterUserSecret": { + "$ref": "#/definitions/MasterUserSecret" + }, + "MasterUsername": { + "minLength": 1, + "pattern": "^[a-zA-Z]{1}[a-zA-Z0-9_]*$", + "type": "string" + }, + "MonitoringInterval": { + "default": 0, + "type": "integer" + }, + "MonitoringRoleArn": { + "type": "string" + }, + "NetworkType": { + "type": "string" + }, + "PerformanceInsightsEnabled": { + "type": "boolean" + }, + "PerformanceInsightsKmsKeyId": { + "type": "string" + }, + "PerformanceInsightsRetentionPeriod": { + "type": "integer" + }, + "Port": { + "type": "integer" + }, + "PreferredBackupWindow": { + "type": "string" + }, + "PreferredMaintenanceWindow": { + "type": "string" + }, + "PubliclyAccessible": { + "type": "boolean" + }, + "ReadEndpoint": { + "$ref": "#/definitions/ReadEndpoint" + }, + "ReplicationSourceIdentifier": { + "type": "string" + }, + "RestoreToTime": { + "type": "string" + }, + "RestoreType": { + "default": "full-copy", + "type": "string" + }, + "ScalingConfiguration": { + "$ref": "#/definitions/ScalingConfiguration" + }, + "ServerlessV2ScalingConfiguration": { + "$ref": "#/definitions/ServerlessV2ScalingConfiguration" + }, + "SnapshotIdentifier": { + "type": "string" + }, + "SourceDBClusterIdentifier": { + "type": "string" + }, + "SourceRegion": { + "type": "string" + }, + "StorageEncrypted": { + "type": "boolean" + }, + "StorageThroughput": { + "type": "integer" + }, + "StorageType": { + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 50, + "type": "array", + "uniqueItems": true + }, + "UseLatestRestorableTime": { + "type": "boolean" + }, + "VpcSecurityGroupIds": { + "items": { + "type": "string" + }, + "type": "array", + "uniqueItems": true + } + }, + "propertyTransform": { + "/properties/DBClusterIdentifier": "$lowercase(DBClusterIdentifier)", + "/properties/DBClusterParameterGroupName": "$lowercase(DBClusterParameterGroupName)", + "/properties/DBSubnetGroupName": "$lowercase(DBSubnetGroupName)", + "/properties/EnableHttpEndpoint": "$lowercase($string(EngineMode)) = 'serverless' ? EnableHttpEndpoint : ($lowercase($string(Engine)) = 'aurora-postgresql' ? EnableHttpEndpoint : false )", + "/properties/Engine": "$lowercase(Engine)", + "/properties/EngineVersion": "$join([$string(EngineVersion), \".*\"])", + "/properties/KmsKeyId": "$join([\"arn:(aws)[-]{0,1}[a-z]{0,2}[-]{0,1}[a-z]{0,3}:kms:[a-z]{2}[-]{1}[a-z]{3,10}[-]{0,1}[a-z]{0,10}[-]{1}[1-3]{1}:[0-9]{12}[:]{1}key\\/\", KmsKeyId])", + "/properties/MasterUserSecret/KmsKeyId": "$join([\"arn:(aws)[-]{0,1}[a-z]{0,2}[-]{0,1}[a-z]{0,3}:kms:[a-z]{2}[-]{1}[a-z]{3,10}[-]{0,1}[a-z]{0,10}[-]{1}[1-3]{1}:[0-9]{12}[:]{1}key\\/\", MasterUserSecret.KmsKeyId])", + "/properties/NetworkType": "$lowercase(NetworkType)", + "/properties/PerformanceInsightsKmsKeyId": "$join([\"arn:(aws)[-]{0,1}[a-z]{0,2}[-]{0,1}[a-z]{0,3}:kms:[a-z]{2}[-]{1}[a-z]{3,10}[-]{0,1}[a-z]{0,10}[-]{1}[1-3]{1}:[0-9]{12}[:]{1}key\\/\", PerformanceInsightsKmsKeyId])", + "/properties/PreferredMaintenanceWindow": "$lowercase(PreferredMaintenanceWindow)", + "/properties/SnapshotIdentifier": "$lowercase(SnapshotIdentifier)", + "/properties/SourceDBClusterIdentifier": "$lowercase(SourceDBClusterIdentifier)", + "/properties/StorageType": "$lowercase(StorageType)" + }, + "readOnlyProperties": [ + "/properties/DBClusterArn", + "/properties/DBClusterResourceId", + "/properties/Endpoint", + "/properties/Endpoint/Address", + "/properties/Endpoint/Port", + "/properties/ReadEndpoint/Address", + "/properties/MasterUserSecret/SecretArn", + "/properties/StorageThroughput" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-rds", + "tagging": { + "cloudFormationSystemTags": true, + "permissions": [ + "rds:AddTagsToResource", + "rds:RemoveTagsFromResource" + ], + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::RDS::DBCluster", + "writeOnlyProperties": [ + "/properties/DBInstanceParameterGroupName", + "/properties/MasterUserPassword", + "/properties/RestoreToTime", + "/properties/RestoreType", + "/properties/SnapshotIdentifier", + "/properties/SourceDBClusterIdentifier", + "/properties/SourceRegion", + "/properties/UseLatestRestorableTime" + ] +} diff --git a/src/cfnlint/data/schemas/providers/eu_central_1/aws-sso-instance.json b/src/cfnlint/data/schemas/providers/eu_central_1/aws-sso-instance.json deleted file mode 100644 index 26c2ca063a..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_central_1/aws-sso-instance.json +++ /dev/null @@ -1,125 +0,0 @@ -{ - "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 646705daf6..a7d8fcf5d5 100644 --- a/src/cfnlint/data/schemas/providers/eu_central_2/__init__.py +++ b/src/cfnlint/data/schemas/providers/eu_central_2/__init__.py @@ -401,6 +401,7 @@ "AWS::MSK::ClusterPolicy", "AWS::MSK::Configuration", "AWS::MSK::VpcConnection", + "AWS::MWAA::Environment", "AWS::NetworkFirewall::Firewall", "AWS::NetworkFirewall::FirewallPolicy", "AWS::NetworkFirewall::LoggingConfiguration", @@ -687,6 +688,7 @@ "aws-codedeploy-application.json", "aws-codedeploy-deploymentconfig.json", "aws-codedeploy-deploymentgroup.json", + "aws-codepipeline-pipeline.json", "aws-codepipeline-webhook.json", "aws-cognito-identitypool.json", "aws-cognito-identitypoolprincipaltag.json", @@ -873,7 +875,6 @@ "aws-iam-group.json", "aws-iam-grouppolicy.json", "aws-iam-instanceprofile.json", - "aws-iam-oidcprovider.json", "aws-iam-policy.json", "aws-iam-role.json", "aws-iam-rolepolicy.json", @@ -934,6 +935,7 @@ "aws-msk-clusterpolicy.json", "aws-msk-configuration.json", "aws-msk-vpcconnection.json", + "aws-mwaa-environment.json", "aws-networkfirewall-firewall.json", "aws-networkfirewall-firewallpolicy.json", "aws-networkfirewall-loggingconfiguration.json", @@ -1073,10 +1075,9 @@ "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", - "aws-stepfunctions-statemachine.json", "aws-stepfunctions-statemachinealias.json", "aws-stepfunctions-statemachineversion.json", "aws-synthetics-canary.json", diff --git a/src/cfnlint/data/schemas/providers/eu_central_2/aws-codepipeline-pipeline.json b/src/cfnlint/data/schemas/providers/eu_central_2/aws-codepipeline-pipeline.json deleted file mode 100644 index 2b41420f66..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_central_2/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/eu_central_2/aws-iam-oidcprovider.json b/src/cfnlint/data/schemas/providers/eu_central_2/aws-iam-oidcprovider.json new file mode 100644 index 0000000000..1794a452ca --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_2/aws-iam-oidcprovider.json @@ -0,0 +1,120 @@ +{ + "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" + ], + "required": [ + "ThumbprintList" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::IAM::OIDCProvider" +} 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 deleted file mode 100644 index 26c2ca063a..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_central_2/aws-sso-instance.json +++ /dev/null @@ -1,125 +0,0 @@ -{ - "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/aws-stepfunctions-activity.json b/src/cfnlint/data/schemas/providers/eu_central_2/aws-stepfunctions-activity.json new file mode 100644 index 0000000000..7aaf191ed1 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_2/aws-stepfunctions-activity.json @@ -0,0 +1,98 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateActivity", + "states:TagResource" + ] + }, + "delete": { + "permissions": [ + "states:DescribeActivity", + "states:DeleteActivity" + ] + }, + "list": { + "permissions": [ + "states:ListActivities" + ] + }, + "read": { + "permissions": [ + "states:DescribeActivity", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:ListTagsForResource", + "states:TagResource", + "states:UntagResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "required": [ + "Name" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::Activity" +} diff --git a/src/cfnlint/data/schemas/providers/eu_central_2/aws-stepfunctions-statemachine.json b/src/cfnlint/data/schemas/providers/eu_central_2/aws-stepfunctions-statemachine.json new file mode 100644 index 0000000000..c8a1b0f42e --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_central_2/aws-stepfunctions-statemachine.json @@ -0,0 +1,256 @@ +{ + "additionalIdentifiers": [ + [ + "/properties/StateMachineName" + ] + ], + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/StateMachineName", + "/properties/StateMachineType" + ], + "definitions": { + "CloudWatchLogsLogGroup": { + "additionalProperties": false, + "properties": { + "LogGroupArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "Definition": { + "minProperties": 1, + "type": "object" + }, + "DefinitionSubstitutions": { + "additionalProperties": false, + "minProperties": 1, + "patternProperties": { + ".*": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "integer" + }, + { + "type": "boolean" + } + ] + } + }, + "type": "object" + }, + "LogDestination": { + "additionalProperties": false, + "properties": { + "CloudWatchLogsLogGroup": { + "$ref": "#/definitions/CloudWatchLogsLogGroup" + } + }, + "type": "object" + }, + "LoggingConfiguration": { + "additionalProperties": false, + "properties": { + "Destinations": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/LogDestination" + }, + "minItems": 1, + "type": "array" + }, + "IncludeExecutionData": { + "type": "boolean" + }, + "Level": { + "enum": [ + "ALL", + "ERROR", + "FATAL", + "OFF" + ], + "type": "string" + } + }, + "type": "object" + }, + "S3Location": { + "additionalProperties": false, + "properties": { + "Bucket": { + "type": "string" + }, + "Key": { + "type": "string" + }, + "Version": { + "type": "string" + } + }, + "required": [ + "Bucket", + "Key" + ], + "type": "object" + }, + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "TracingConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + } + }, + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateStateMachine", + "states:DescribeStateMachine", + "states:TagResource", + "iam:PassRole", + "s3:GetObject" + ] + }, + "delete": { + "permissions": [ + "states:DeleteStateMachine", + "states:DescribeStateMachine" + ] + }, + "list": { + "permissions": [ + "states:ListStateMachines" + ] + }, + "read": { + "permissions": [ + "states:DescribeStateMachine", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:UpdateStateMachine", + "states:TagResource", + "states:UntagResource", + "states:ListTagsForResource", + "iam:PassRole" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Definition": { + "$ref": "#/definitions/Definition" + }, + "DefinitionS3Location": { + "$ref": "#/definitions/S3Location" + }, + "DefinitionString": { + "maxLength": 1048576, + "minLength": 1, + "type": "string" + }, + "DefinitionSubstitutions": { + "$ref": "#/definitions/DefinitionSubstitutions" + }, + "LoggingConfiguration": { + "$ref": "#/definitions/LoggingConfiguration" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "RoleArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "StateMachineName": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "StateMachineRevisionId": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "StateMachineType": { + "enum": [ + "STANDARD", + "EXPRESS" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + }, + "TracingConfiguration": { + "$ref": "#/definitions/TracingConfiguration" + } + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/Name", + "/properties/StateMachineRevisionId" + ], + "required": [ + "RoleArn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::StateMachine", + "writeOnlyProperties": [ + "/properties/Definition", + "/properties/DefinitionS3Location", + "/properties/DefinitionSubstitutions" + ] +} 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 a8238cd66c..98c244d87d 100644 --- a/src/cfnlint/data/schemas/providers/eu_north_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/eu_north_1/__init__.py @@ -1425,7 +1425,6 @@ "aws-iam-group.json", "aws-iam-grouppolicy.json", "aws-iam-instanceprofile.json", - "aws-iam-oidcprovider.json", "aws-iam-policy.json", "aws-iam-role.json", "aws-iam-rolepolicy.json", @@ -1557,7 +1556,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", @@ -1837,10 +1835,9 @@ "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", - "aws-stepfunctions-statemachine.json", "aws-stepfunctions-statemachinealias.json", "aws-stepfunctions-statemachineversion.json", "aws-synthetics-canary.json", diff --git a/src/cfnlint/data/schemas/providers/eu_north_1/aws-iam-oidcprovider.json b/src/cfnlint/data/schemas/providers/eu_north_1/aws-iam-oidcprovider.json new file mode 100644 index 0000000000..1794a452ca --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_north_1/aws-iam-oidcprovider.json @@ -0,0 +1,120 @@ +{ + "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" + ], + "required": [ + "ThumbprintList" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::IAM::OIDCProvider" +} diff --git a/src/cfnlint/data/schemas/providers/eu_north_1/aws-mediaconnect-flowsource.json b/src/cfnlint/data/schemas/providers/eu_north_1/aws-mediaconnect-flowsource.json new file mode 100644 index 0000000000..cf7d326061 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_north_1/aws-mediaconnect-flowsource.json @@ -0,0 +1,200 @@ +{ + "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": { + "default": 2000, + "type": "integer" + }, + "MinLatency": { + "default": 2000, + "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_north_1/aws-sso-instance.json b/src/cfnlint/data/schemas/providers/eu_north_1/aws-sso-instance.json deleted file mode 100644 index 26c2ca063a..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_north_1/aws-sso-instance.json +++ /dev/null @@ -1,125 +0,0 @@ -{ - "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/aws-stepfunctions-activity.json b/src/cfnlint/data/schemas/providers/eu_north_1/aws-stepfunctions-activity.json new file mode 100644 index 0000000000..7aaf191ed1 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_north_1/aws-stepfunctions-activity.json @@ -0,0 +1,98 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateActivity", + "states:TagResource" + ] + }, + "delete": { + "permissions": [ + "states:DescribeActivity", + "states:DeleteActivity" + ] + }, + "list": { + "permissions": [ + "states:ListActivities" + ] + }, + "read": { + "permissions": [ + "states:DescribeActivity", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:ListTagsForResource", + "states:TagResource", + "states:UntagResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "required": [ + "Name" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::Activity" +} diff --git a/src/cfnlint/data/schemas/providers/eu_north_1/aws-stepfunctions-statemachine.json b/src/cfnlint/data/schemas/providers/eu_north_1/aws-stepfunctions-statemachine.json new file mode 100644 index 0000000000..c8a1b0f42e --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_north_1/aws-stepfunctions-statemachine.json @@ -0,0 +1,256 @@ +{ + "additionalIdentifiers": [ + [ + "/properties/StateMachineName" + ] + ], + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/StateMachineName", + "/properties/StateMachineType" + ], + "definitions": { + "CloudWatchLogsLogGroup": { + "additionalProperties": false, + "properties": { + "LogGroupArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "Definition": { + "minProperties": 1, + "type": "object" + }, + "DefinitionSubstitutions": { + "additionalProperties": false, + "minProperties": 1, + "patternProperties": { + ".*": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "integer" + }, + { + "type": "boolean" + } + ] + } + }, + "type": "object" + }, + "LogDestination": { + "additionalProperties": false, + "properties": { + "CloudWatchLogsLogGroup": { + "$ref": "#/definitions/CloudWatchLogsLogGroup" + } + }, + "type": "object" + }, + "LoggingConfiguration": { + "additionalProperties": false, + "properties": { + "Destinations": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/LogDestination" + }, + "minItems": 1, + "type": "array" + }, + "IncludeExecutionData": { + "type": "boolean" + }, + "Level": { + "enum": [ + "ALL", + "ERROR", + "FATAL", + "OFF" + ], + "type": "string" + } + }, + "type": "object" + }, + "S3Location": { + "additionalProperties": false, + "properties": { + "Bucket": { + "type": "string" + }, + "Key": { + "type": "string" + }, + "Version": { + "type": "string" + } + }, + "required": [ + "Bucket", + "Key" + ], + "type": "object" + }, + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "TracingConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + } + }, + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateStateMachine", + "states:DescribeStateMachine", + "states:TagResource", + "iam:PassRole", + "s3:GetObject" + ] + }, + "delete": { + "permissions": [ + "states:DeleteStateMachine", + "states:DescribeStateMachine" + ] + }, + "list": { + "permissions": [ + "states:ListStateMachines" + ] + }, + "read": { + "permissions": [ + "states:DescribeStateMachine", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:UpdateStateMachine", + "states:TagResource", + "states:UntagResource", + "states:ListTagsForResource", + "iam:PassRole" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Definition": { + "$ref": "#/definitions/Definition" + }, + "DefinitionS3Location": { + "$ref": "#/definitions/S3Location" + }, + "DefinitionString": { + "maxLength": 1048576, + "minLength": 1, + "type": "string" + }, + "DefinitionSubstitutions": { + "$ref": "#/definitions/DefinitionSubstitutions" + }, + "LoggingConfiguration": { + "$ref": "#/definitions/LoggingConfiguration" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "RoleArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "StateMachineName": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "StateMachineRevisionId": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "StateMachineType": { + "enum": [ + "STANDARD", + "EXPRESS" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + }, + "TracingConfiguration": { + "$ref": "#/definitions/TracingConfiguration" + } + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/Name", + "/properties/StateMachineRevisionId" + ], + "required": [ + "RoleArn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::StateMachine", + "writeOnlyProperties": [ + "/properties/Definition", + "/properties/DefinitionS3Location", + "/properties/DefinitionSubstitutions" + ] +} 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 27cd85e305..682dba7c3e 100644 --- a/src/cfnlint/data/schemas/providers/eu_south_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/eu_south_1/__init__.py @@ -928,6 +928,7 @@ "aws-codedeploy-deploymentconfig.json", "aws-codedeploy-deploymentgroup.json", "aws-codepipeline-customactiontype.json", + "aws-codepipeline-pipeline.json", "aws-codepipeline-webhook.json", "aws-codestarconnections-connection.json", "aws-codestarconnections-repositorylink.json", @@ -1181,7 +1182,6 @@ "aws-iam-group.json", "aws-iam-grouppolicy.json", "aws-iam-instanceprofile.json", - "aws-iam-oidcprovider.json", "aws-iam-policy.json", "aws-iam-role.json", "aws-iam-rolepolicy.json", @@ -1449,10 +1449,9 @@ "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", - "aws-stepfunctions-statemachine.json", "aws-stepfunctions-statemachinealias.json", "aws-stepfunctions-statemachineversion.json", "aws-synthetics-canary.json", diff --git a/src/cfnlint/data/schemas/providers/eu_south_1/aws-codepipeline-pipeline.json b/src/cfnlint/data/schemas/providers/eu_south_1/aws-codepipeline-pipeline.json deleted file mode 100644 index 925fbfe118..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_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/eu_south_1/aws-iam-oidcprovider.json b/src/cfnlint/data/schemas/providers/eu_south_1/aws-iam-oidcprovider.json new file mode 100644 index 0000000000..1794a452ca --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_south_1/aws-iam-oidcprovider.json @@ -0,0 +1,120 @@ +{ + "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" + ], + "required": [ + "ThumbprintList" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::IAM::OIDCProvider" +} 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 deleted file mode 100644 index 26c2ca063a..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_south_1/aws-sso-instance.json +++ /dev/null @@ -1,125 +0,0 @@ -{ - "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/aws-stepfunctions-activity.json b/src/cfnlint/data/schemas/providers/eu_south_1/aws-stepfunctions-activity.json new file mode 100644 index 0000000000..7aaf191ed1 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_south_1/aws-stepfunctions-activity.json @@ -0,0 +1,98 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateActivity", + "states:TagResource" + ] + }, + "delete": { + "permissions": [ + "states:DescribeActivity", + "states:DeleteActivity" + ] + }, + "list": { + "permissions": [ + "states:ListActivities" + ] + }, + "read": { + "permissions": [ + "states:DescribeActivity", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:ListTagsForResource", + "states:TagResource", + "states:UntagResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "required": [ + "Name" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::Activity" +} diff --git a/src/cfnlint/data/schemas/providers/eu_south_1/aws-stepfunctions-statemachine.json b/src/cfnlint/data/schemas/providers/eu_south_1/aws-stepfunctions-statemachine.json new file mode 100644 index 0000000000..c8a1b0f42e --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_south_1/aws-stepfunctions-statemachine.json @@ -0,0 +1,256 @@ +{ + "additionalIdentifiers": [ + [ + "/properties/StateMachineName" + ] + ], + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/StateMachineName", + "/properties/StateMachineType" + ], + "definitions": { + "CloudWatchLogsLogGroup": { + "additionalProperties": false, + "properties": { + "LogGroupArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "Definition": { + "minProperties": 1, + "type": "object" + }, + "DefinitionSubstitutions": { + "additionalProperties": false, + "minProperties": 1, + "patternProperties": { + ".*": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "integer" + }, + { + "type": "boolean" + } + ] + } + }, + "type": "object" + }, + "LogDestination": { + "additionalProperties": false, + "properties": { + "CloudWatchLogsLogGroup": { + "$ref": "#/definitions/CloudWatchLogsLogGroup" + } + }, + "type": "object" + }, + "LoggingConfiguration": { + "additionalProperties": false, + "properties": { + "Destinations": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/LogDestination" + }, + "minItems": 1, + "type": "array" + }, + "IncludeExecutionData": { + "type": "boolean" + }, + "Level": { + "enum": [ + "ALL", + "ERROR", + "FATAL", + "OFF" + ], + "type": "string" + } + }, + "type": "object" + }, + "S3Location": { + "additionalProperties": false, + "properties": { + "Bucket": { + "type": "string" + }, + "Key": { + "type": "string" + }, + "Version": { + "type": "string" + } + }, + "required": [ + "Bucket", + "Key" + ], + "type": "object" + }, + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "TracingConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + } + }, + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateStateMachine", + "states:DescribeStateMachine", + "states:TagResource", + "iam:PassRole", + "s3:GetObject" + ] + }, + "delete": { + "permissions": [ + "states:DeleteStateMachine", + "states:DescribeStateMachine" + ] + }, + "list": { + "permissions": [ + "states:ListStateMachines" + ] + }, + "read": { + "permissions": [ + "states:DescribeStateMachine", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:UpdateStateMachine", + "states:TagResource", + "states:UntagResource", + "states:ListTagsForResource", + "iam:PassRole" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Definition": { + "$ref": "#/definitions/Definition" + }, + "DefinitionS3Location": { + "$ref": "#/definitions/S3Location" + }, + "DefinitionString": { + "maxLength": 1048576, + "minLength": 1, + "type": "string" + }, + "DefinitionSubstitutions": { + "$ref": "#/definitions/DefinitionSubstitutions" + }, + "LoggingConfiguration": { + "$ref": "#/definitions/LoggingConfiguration" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "RoleArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "StateMachineName": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "StateMachineRevisionId": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "StateMachineType": { + "enum": [ + "STANDARD", + "EXPRESS" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + }, + "TracingConfiguration": { + "$ref": "#/definitions/TracingConfiguration" + } + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/Name", + "/properties/StateMachineRevisionId" + ], + "required": [ + "RoleArn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::StateMachine", + "writeOnlyProperties": [ + "/properties/Definition", + "/properties/DefinitionS3Location", + "/properties/DefinitionSubstitutions" + ] +} diff --git a/src/cfnlint/data/schemas/providers/eu_south_2/__init__.py b/src/cfnlint/data/schemas/providers/eu_south_2/__init__.py index 5e7d7ccf88..04ee2ef416 100644 --- a/src/cfnlint/data/schemas/providers/eu_south_2/__init__.py +++ b/src/cfnlint/data/schemas/providers/eu_south_2/__init__.py @@ -403,6 +403,7 @@ "AWS::MSK::ClusterPolicy", "AWS::MSK::Configuration", "AWS::MSK::VpcConnection", + "AWS::MWAA::Environment", "AWS::NetworkFirewall::Firewall", "AWS::NetworkFirewall::FirewallPolicy", "AWS::NetworkFirewall::LoggingConfiguration", @@ -879,7 +880,6 @@ "aws-guardduty-threatintelset.json", "aws-iam-group.json", "aws-iam-grouppolicy.json", - "aws-iam-oidcprovider.json", "aws-iam-policy.json", "aws-iam-role.json", "aws-iam-rolepolicy.json", @@ -942,6 +942,7 @@ "aws-msk-clusterpolicy.json", "aws-msk-configuration.json", "aws-msk-vpcconnection.json", + "aws-mwaa-environment.json", "aws-networkfirewall-firewall.json", "aws-networkfirewall-firewallpolicy.json", "aws-networkfirewall-loggingconfiguration.json", @@ -1025,7 +1026,6 @@ "aws-s3objectlambda-accesspointpolicy.json", "aws-sagemaker-app.json", "aws-sagemaker-appimageconfig.json", - "aws-sagemaker-domain.json", "aws-sagemaker-featuregroup.json", "aws-sagemaker-image.json", "aws-sagemaker-imageversion.json", @@ -1034,7 +1034,6 @@ "aws-sagemaker-modelpackagegroup.json", "aws-sagemaker-pipeline.json", "aws-sagemaker-project.json", - "aws-sagemaker-userprofile.json", "aws-scheduler-schedule.json", "aws-scheduler-schedulegroup.json", "aws-sdb-domain.json", @@ -1086,8 +1085,6 @@ "aws-sso-assignment.json", "aws-sso-instanceaccesscontrolattributeconfiguration.json", "aws-sso-permissionset.json", - "aws-stepfunctions-activity.json", - "aws-stepfunctions-statemachine.json", "aws-stepfunctions-statemachinealias.json", "aws-stepfunctions-statemachineversion.json", "aws-synthetics-canary.json", diff --git a/src/cfnlint/data/schemas/providers/eu_south_2/aws-iam-oidcprovider.json b/src/cfnlint/data/schemas/providers/eu_south_2/aws-iam-oidcprovider.json new file mode 100644 index 0000000000..1794a452ca --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_south_2/aws-iam-oidcprovider.json @@ -0,0 +1,120 @@ +{ + "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" + ], + "required": [ + "ThumbprintList" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::IAM::OIDCProvider" +} diff --git a/src/cfnlint/data/schemas/providers/ca_central_1/aws-sagemaker-domain.json b/src/cfnlint/data/schemas/providers/eu_south_2/aws-sagemaker-domain.json similarity index 94% rename from src/cfnlint/data/schemas/providers/ca_central_1/aws-sagemaker-domain.json rename to src/cfnlint/data/schemas/providers/eu_south_2/aws-sagemaker-domain.json index 5cd4ea45fa..f6f11084f6 100644 --- a/src/cfnlint/data/schemas/providers/ca_central_1/aws-sagemaker-domain.json +++ b/src/cfnlint/data/schemas/providers/eu_south_2/aws-sagemaker-domain.json @@ -9,18 +9,6 @@ "/properties/Tags" ], "definitions": { - "AppType": { - "enum": [ - "JupyterServer", - "TensorBoard", - "RStudioServerPro", - "JupyterLab", - "CodeEditor", - "DetailedProfiler", - "Canvas" - ], - "type": "string" - }, "CodeEditorAppSettings": { "additionalProperties": false, "properties": { @@ -330,24 +318,6 @@ }, "type": "object" }, - "MlTools": { - "enum": [ - "DataWrangler", - "FeatureStore", - "EmrClusters", - "AutoML", - "Experiments", - "Training", - "ModelEvaluation", - "Pipelines", - "Models", - "JumpStart", - "InferenceRecommender", - "Endpoints", - "Projects" - ], - "type": "string" - }, "RSessionAppSettings": { "additionalProperties": false, "properties": { @@ -535,30 +505,6 @@ "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": { @@ -648,9 +594,6 @@ "DISABLED" ], "type": "string" - }, - "StudioWebPortalSettings": { - "$ref": "#/definitions/StudioWebPortalSettings" } }, "required": [ diff --git a/src/cfnlint/data/schemas/providers/me_south_1/aws-sagemaker-userprofile.json b/src/cfnlint/data/schemas/providers/eu_south_2/aws-sagemaker-userprofile.json similarity index 91% rename from src/cfnlint/data/schemas/providers/me_south_1/aws-sagemaker-userprofile.json rename to src/cfnlint/data/schemas/providers/eu_south_2/aws-sagemaker-userprofile.json index c2c0daf9fe..f7e1db12f6 100644 --- a/src/cfnlint/data/schemas/providers/me_south_1/aws-sagemaker-userprofile.json +++ b/src/cfnlint/data/schemas/providers/eu_south_2/aws-sagemaker-userprofile.json @@ -10,18 +10,6 @@ "/properties/Tags" ], "definitions": { - "AppType": { - "enum": [ - "JupyterServer", - "TensorBoard", - "RStudioServerPro", - "JupyterLab", - "CodeEditor", - "DetailedProfiler", - "Canvas" - ], - "type": "string" - }, "CodeEditorAppSettings": { "additionalProperties": false, "properties": { @@ -225,24 +213,6 @@ }, "type": "object" }, - "MlTools": { - "enum": [ - "DataWrangler", - "FeatureStore", - "EmrClusters", - "AutoML", - "Experiments", - "Training", - "ModelEvaluation", - "Pipelines", - "Models", - "JumpStart", - "InferenceRecommender", - "Endpoints", - "Projects" - ], - "type": "string" - }, "RStudioServerProAppSettings": { "additionalProperties": false, "properties": { @@ -380,30 +350,6 @@ "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": { @@ -489,9 +435,6 @@ "DISABLED" ], "type": "string" - }, - "StudioWebPortalSettings": { - "$ref": "#/definitions/StudioWebPortalSettings" } }, "type": "object" diff --git a/src/cfnlint/data/schemas/providers/eu_south_2/aws-stepfunctions-activity.json b/src/cfnlint/data/schemas/providers/eu_south_2/aws-stepfunctions-activity.json new file mode 100644 index 0000000000..7aaf191ed1 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_south_2/aws-stepfunctions-activity.json @@ -0,0 +1,98 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateActivity", + "states:TagResource" + ] + }, + "delete": { + "permissions": [ + "states:DescribeActivity", + "states:DeleteActivity" + ] + }, + "list": { + "permissions": [ + "states:ListActivities" + ] + }, + "read": { + "permissions": [ + "states:DescribeActivity", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:ListTagsForResource", + "states:TagResource", + "states:UntagResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "required": [ + "Name" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::Activity" +} diff --git a/src/cfnlint/data/schemas/providers/eu_south_2/aws-stepfunctions-statemachine.json b/src/cfnlint/data/schemas/providers/eu_south_2/aws-stepfunctions-statemachine.json new file mode 100644 index 0000000000..c8a1b0f42e --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_south_2/aws-stepfunctions-statemachine.json @@ -0,0 +1,256 @@ +{ + "additionalIdentifiers": [ + [ + "/properties/StateMachineName" + ] + ], + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/StateMachineName", + "/properties/StateMachineType" + ], + "definitions": { + "CloudWatchLogsLogGroup": { + "additionalProperties": false, + "properties": { + "LogGroupArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "Definition": { + "minProperties": 1, + "type": "object" + }, + "DefinitionSubstitutions": { + "additionalProperties": false, + "minProperties": 1, + "patternProperties": { + ".*": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "integer" + }, + { + "type": "boolean" + } + ] + } + }, + "type": "object" + }, + "LogDestination": { + "additionalProperties": false, + "properties": { + "CloudWatchLogsLogGroup": { + "$ref": "#/definitions/CloudWatchLogsLogGroup" + } + }, + "type": "object" + }, + "LoggingConfiguration": { + "additionalProperties": false, + "properties": { + "Destinations": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/LogDestination" + }, + "minItems": 1, + "type": "array" + }, + "IncludeExecutionData": { + "type": "boolean" + }, + "Level": { + "enum": [ + "ALL", + "ERROR", + "FATAL", + "OFF" + ], + "type": "string" + } + }, + "type": "object" + }, + "S3Location": { + "additionalProperties": false, + "properties": { + "Bucket": { + "type": "string" + }, + "Key": { + "type": "string" + }, + "Version": { + "type": "string" + } + }, + "required": [ + "Bucket", + "Key" + ], + "type": "object" + }, + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "TracingConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + } + }, + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateStateMachine", + "states:DescribeStateMachine", + "states:TagResource", + "iam:PassRole", + "s3:GetObject" + ] + }, + "delete": { + "permissions": [ + "states:DeleteStateMachine", + "states:DescribeStateMachine" + ] + }, + "list": { + "permissions": [ + "states:ListStateMachines" + ] + }, + "read": { + "permissions": [ + "states:DescribeStateMachine", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:UpdateStateMachine", + "states:TagResource", + "states:UntagResource", + "states:ListTagsForResource", + "iam:PassRole" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Definition": { + "$ref": "#/definitions/Definition" + }, + "DefinitionS3Location": { + "$ref": "#/definitions/S3Location" + }, + "DefinitionString": { + "maxLength": 1048576, + "minLength": 1, + "type": "string" + }, + "DefinitionSubstitutions": { + "$ref": "#/definitions/DefinitionSubstitutions" + }, + "LoggingConfiguration": { + "$ref": "#/definitions/LoggingConfiguration" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "RoleArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "StateMachineName": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "StateMachineRevisionId": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "StateMachineType": { + "enum": [ + "STANDARD", + "EXPRESS" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + }, + "TracingConfiguration": { + "$ref": "#/definitions/TracingConfiguration" + } + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/Name", + "/properties/StateMachineRevisionId" + ], + "required": [ + "RoleArn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::StateMachine", + "writeOnlyProperties": [ + "/properties/Definition", + "/properties/DefinitionS3Location", + "/properties/DefinitionSubstitutions" + ] +} 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 9b673e3029..a6527856f0 100644 --- a/src/cfnlint/data/schemas/providers/eu_west_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/eu_west_1/__init__.py @@ -1449,7 +1449,6 @@ "aws-config-remediationconfiguration.json", "aws-config-storedquery.json", "aws-controltower-enabledbaseline.json", - "aws-controltower-enabledcontrol.json", "aws-controltower-landingzone.json", "aws-databrew-dataset.json", "aws-databrew-job.json", @@ -1966,6 +1965,7 @@ "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,6 +2325,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/eu_west_1/aws-controltower-enabledcontrol.json b/src/cfnlint/data/schemas/providers/eu_west_1/aws-controltower-enabledcontrol.json new file mode 100644 index 0000000000..8f0be9c61f --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_west_1/aws-controltower-enabledcontrol.json @@ -0,0 +1,185 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/TargetIdentifier", + "/properties/ControlIdentifier" + ], + "definitions": { + "EnabledControlParameter": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "insertionOrder": false, + "items": { + "type": [ + "string", + "number", + "object", + "boolean" + ] + }, + "minItems": 1, + "type": [ + "array", + "string", + "number", + "object", + "boolean" + ] + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "controltower:ListEnabledControls", + "controltower:GetEnabledControl", + "controltower:GetControlOperation", + "controltower:EnableControl", + "controltower:TagResource", + "organizations:UpdatePolicy", + "organizations:CreatePolicy", + "organizations:AttachPolicy", + "organizations:DetachPolicy", + "organizations:ListPoliciesForTarget", + "organizations:ListTargetsForPolicy", + "organizations:DescribePolicy" + ], + "timeoutInMinutes": 720 + }, + "delete": { + "permissions": [ + "controltower:ListEnabledControls", + "controltower:GetEnabledControl", + "controltower:GetControlOperation", + "controltower:DisableControl", + "organizations:UpdatePolicy", + "organizations:DeletePolicy", + "organizations:CreatePolicy", + "organizations:AttachPolicy", + "organizations:DetachPolicy", + "organizations:ListPoliciesForTarget", + "organizations:ListTargetsForPolicy", + "organizations:DescribePolicy" + ], + "timeoutInMinutes": 720 + }, + "list": { + "handlerSchema": { + "properties": { + "TargetIdentifier": { + "$ref": "resource-schema.json#/properties/TargetIdentifier" + } + }, + "required": [ + "TargetIdentifier" + ] + }, + "permissions": [ + "controltower:ListEnabledControls" + ] + }, + "read": { + "permissions": [ + "controltower:ListEnabledControls", + "controltower:GetEnabledControl", + "controltower:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "controltower:ListEnabledControls", + "controltower:GetEnabledControl", + "controltower:GetControlOperation", + "controltower:UpdateEnabledControl", + "controltower:UntagResource", + "controltower:TagResource", + "organizations:UpdatePolicy", + "organizations:CreatePolicy", + "organizations:AttachPolicy", + "organizations:DetachPolicy", + "organizations:ListPoliciesForTarget", + "organizations:ListTargetsForPolicy", + "organizations:DescribePolicy" + ], + "timeoutInMinutes": 720 + } + }, + "primaryIdentifier": [ + "/properties/TargetIdentifier", + "/properties/ControlIdentifier" + ], + "properties": { + "ControlIdentifier": { + "maxLength": 2048, + "minLength": 20, + "pattern": "^arn:aws[0-9a-zA-Z_\\-:\\/]+$", + "type": "string" + }, + "Parameters": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/EnabledControlParameter" + }, + "minItems": 1, + "type": "array" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 50, + "minItems": 1, + "type": "array" + }, + "TargetIdentifier": { + "maxLength": 2048, + "minLength": 20, + "pattern": "^arn:aws[0-9a-zA-Z_\\-:\\/]+$", + "type": "string" + } + }, + "required": [ + "TargetIdentifier", + "ControlIdentifier" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-controltower", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ControlTower::EnabledControl" +} diff --git a/src/cfnlint/data/schemas/providers/eu_west_1/aws-sso-instance.json b/src/cfnlint/data/schemas/providers/eu_west_1/aws-sso-instance.json deleted file mode 100644 index 26c2ca063a..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_west_1/aws-sso-instance.json +++ /dev/null @@ -1,125 +0,0 @@ -{ - "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 eccadcf9ea..76054cc9bd 100644 --- a/src/cfnlint/data/schemas/providers/eu_west_2/__init__.py +++ b/src/cfnlint/data/schemas/providers/eu_west_2/__init__.py @@ -1344,6 +1344,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", @@ -2149,10 +2150,9 @@ "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", - "aws-stepfunctions-statemachine.json", "aws-stepfunctions-statemachinealias.json", "aws-stepfunctions-statemachineversion.json", "aws-supportapp-accountalias.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 deleted file mode 100644 index 009f1aea8c..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_west_2/aws-cognito-userpooluicustomizationattachment.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "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 deleted file mode 100644 index 26c2ca063a..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_west_2/aws-sso-instance.json +++ /dev/null @@ -1,125 +0,0 @@ -{ - "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/aws-stepfunctions-activity.json b/src/cfnlint/data/schemas/providers/eu_west_2/aws-stepfunctions-activity.json new file mode 100644 index 0000000000..7aaf191ed1 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_west_2/aws-stepfunctions-activity.json @@ -0,0 +1,98 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateActivity", + "states:TagResource" + ] + }, + "delete": { + "permissions": [ + "states:DescribeActivity", + "states:DeleteActivity" + ] + }, + "list": { + "permissions": [ + "states:ListActivities" + ] + }, + "read": { + "permissions": [ + "states:DescribeActivity", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:ListTagsForResource", + "states:TagResource", + "states:UntagResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "required": [ + "Name" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::Activity" +} diff --git a/src/cfnlint/data/schemas/providers/eu_west_2/aws-stepfunctions-statemachine.json b/src/cfnlint/data/schemas/providers/eu_west_2/aws-stepfunctions-statemachine.json new file mode 100644 index 0000000000..c8a1b0f42e --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_west_2/aws-stepfunctions-statemachine.json @@ -0,0 +1,256 @@ +{ + "additionalIdentifiers": [ + [ + "/properties/StateMachineName" + ] + ], + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/StateMachineName", + "/properties/StateMachineType" + ], + "definitions": { + "CloudWatchLogsLogGroup": { + "additionalProperties": false, + "properties": { + "LogGroupArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "Definition": { + "minProperties": 1, + "type": "object" + }, + "DefinitionSubstitutions": { + "additionalProperties": false, + "minProperties": 1, + "patternProperties": { + ".*": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "integer" + }, + { + "type": "boolean" + } + ] + } + }, + "type": "object" + }, + "LogDestination": { + "additionalProperties": false, + "properties": { + "CloudWatchLogsLogGroup": { + "$ref": "#/definitions/CloudWatchLogsLogGroup" + } + }, + "type": "object" + }, + "LoggingConfiguration": { + "additionalProperties": false, + "properties": { + "Destinations": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/LogDestination" + }, + "minItems": 1, + "type": "array" + }, + "IncludeExecutionData": { + "type": "boolean" + }, + "Level": { + "enum": [ + "ALL", + "ERROR", + "FATAL", + "OFF" + ], + "type": "string" + } + }, + "type": "object" + }, + "S3Location": { + "additionalProperties": false, + "properties": { + "Bucket": { + "type": "string" + }, + "Key": { + "type": "string" + }, + "Version": { + "type": "string" + } + }, + "required": [ + "Bucket", + "Key" + ], + "type": "object" + }, + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "TracingConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + } + }, + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateStateMachine", + "states:DescribeStateMachine", + "states:TagResource", + "iam:PassRole", + "s3:GetObject" + ] + }, + "delete": { + "permissions": [ + "states:DeleteStateMachine", + "states:DescribeStateMachine" + ] + }, + "list": { + "permissions": [ + "states:ListStateMachines" + ] + }, + "read": { + "permissions": [ + "states:DescribeStateMachine", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:UpdateStateMachine", + "states:TagResource", + "states:UntagResource", + "states:ListTagsForResource", + "iam:PassRole" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Definition": { + "$ref": "#/definitions/Definition" + }, + "DefinitionS3Location": { + "$ref": "#/definitions/S3Location" + }, + "DefinitionString": { + "maxLength": 1048576, + "minLength": 1, + "type": "string" + }, + "DefinitionSubstitutions": { + "$ref": "#/definitions/DefinitionSubstitutions" + }, + "LoggingConfiguration": { + "$ref": "#/definitions/LoggingConfiguration" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "RoleArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "StateMachineName": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "StateMachineRevisionId": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "StateMachineType": { + "enum": [ + "STANDARD", + "EXPRESS" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + }, + "TracingConfiguration": { + "$ref": "#/definitions/TracingConfiguration" + } + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/Name", + "/properties/StateMachineRevisionId" + ], + "required": [ + "RoleArn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::StateMachine", + "writeOnlyProperties": [ + "/properties/Definition", + "/properties/DefinitionS3Location", + "/properties/DefinitionSubstitutions" + ] +} 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 5c759638e4..33e27fc95a 100644 --- a/src/cfnlint/data/schemas/providers/eu_west_3/__init__.py +++ b/src/cfnlint/data/schemas/providers/eu_west_3/__init__.py @@ -1136,6 +1136,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-config-aggregationauthorization.json", @@ -1389,7 +1390,6 @@ "aws-iam-group.json", "aws-iam-grouppolicy.json", "aws-iam-instanceprofile.json", - "aws-iam-oidcprovider.json", "aws-iam-policy.json", "aws-iam-role.json", "aws-iam-rolepolicy.json", @@ -1787,10 +1787,9 @@ "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", - "aws-stepfunctions-statemachine.json", "aws-stepfunctions-statemachinealias.json", "aws-stepfunctions-statemachineversion.json", "aws-synthetics-canary.json", diff --git a/src/cfnlint/data/schemas/providers/eu_west_3/aws-cognito-userpooluicustomizationattachment.json b/src/cfnlint/data/schemas/providers/eu_west_3/aws-cognito-userpooluicustomizationattachment.json deleted file mode 100644 index 98baaf1ea2..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_west_3/aws-cognito-userpooluicustomizationattachment.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "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": [ - "UserPoolId", - "ClientId" - ], - "typeName": "AWS::Cognito::UserPoolUICustomizationAttachment" -} diff --git a/src/cfnlint/data/schemas/providers/eu_west_3/aws-iam-oidcprovider.json b/src/cfnlint/data/schemas/providers/eu_west_3/aws-iam-oidcprovider.json new file mode 100644 index 0000000000..1794a452ca --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_west_3/aws-iam-oidcprovider.json @@ -0,0 +1,120 @@ +{ + "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" + ], + "required": [ + "ThumbprintList" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::IAM::OIDCProvider" +} 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 deleted file mode 100644 index 26c2ca063a..0000000000 --- a/src/cfnlint/data/schemas/providers/eu_west_3/aws-sso-instance.json +++ /dev/null @@ -1,125 +0,0 @@ -{ - "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/aws-stepfunctions-activity.json b/src/cfnlint/data/schemas/providers/eu_west_3/aws-stepfunctions-activity.json new file mode 100644 index 0000000000..7aaf191ed1 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_west_3/aws-stepfunctions-activity.json @@ -0,0 +1,98 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateActivity", + "states:TagResource" + ] + }, + "delete": { + "permissions": [ + "states:DescribeActivity", + "states:DeleteActivity" + ] + }, + "list": { + "permissions": [ + "states:ListActivities" + ] + }, + "read": { + "permissions": [ + "states:DescribeActivity", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:ListTagsForResource", + "states:TagResource", + "states:UntagResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "required": [ + "Name" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::Activity" +} diff --git a/src/cfnlint/data/schemas/providers/eu_west_3/aws-stepfunctions-statemachine.json b/src/cfnlint/data/schemas/providers/eu_west_3/aws-stepfunctions-statemachine.json new file mode 100644 index 0000000000..c8a1b0f42e --- /dev/null +++ b/src/cfnlint/data/schemas/providers/eu_west_3/aws-stepfunctions-statemachine.json @@ -0,0 +1,256 @@ +{ + "additionalIdentifiers": [ + [ + "/properties/StateMachineName" + ] + ], + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/StateMachineName", + "/properties/StateMachineType" + ], + "definitions": { + "CloudWatchLogsLogGroup": { + "additionalProperties": false, + "properties": { + "LogGroupArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "Definition": { + "minProperties": 1, + "type": "object" + }, + "DefinitionSubstitutions": { + "additionalProperties": false, + "minProperties": 1, + "patternProperties": { + ".*": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "integer" + }, + { + "type": "boolean" + } + ] + } + }, + "type": "object" + }, + "LogDestination": { + "additionalProperties": false, + "properties": { + "CloudWatchLogsLogGroup": { + "$ref": "#/definitions/CloudWatchLogsLogGroup" + } + }, + "type": "object" + }, + "LoggingConfiguration": { + "additionalProperties": false, + "properties": { + "Destinations": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/LogDestination" + }, + "minItems": 1, + "type": "array" + }, + "IncludeExecutionData": { + "type": "boolean" + }, + "Level": { + "enum": [ + "ALL", + "ERROR", + "FATAL", + "OFF" + ], + "type": "string" + } + }, + "type": "object" + }, + "S3Location": { + "additionalProperties": false, + "properties": { + "Bucket": { + "type": "string" + }, + "Key": { + "type": "string" + }, + "Version": { + "type": "string" + } + }, + "required": [ + "Bucket", + "Key" + ], + "type": "object" + }, + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "TracingConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + } + }, + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateStateMachine", + "states:DescribeStateMachine", + "states:TagResource", + "iam:PassRole", + "s3:GetObject" + ] + }, + "delete": { + "permissions": [ + "states:DeleteStateMachine", + "states:DescribeStateMachine" + ] + }, + "list": { + "permissions": [ + "states:ListStateMachines" + ] + }, + "read": { + "permissions": [ + "states:DescribeStateMachine", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:UpdateStateMachine", + "states:TagResource", + "states:UntagResource", + "states:ListTagsForResource", + "iam:PassRole" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Definition": { + "$ref": "#/definitions/Definition" + }, + "DefinitionS3Location": { + "$ref": "#/definitions/S3Location" + }, + "DefinitionString": { + "maxLength": 1048576, + "minLength": 1, + "type": "string" + }, + "DefinitionSubstitutions": { + "$ref": "#/definitions/DefinitionSubstitutions" + }, + "LoggingConfiguration": { + "$ref": "#/definitions/LoggingConfiguration" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "RoleArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "StateMachineName": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "StateMachineRevisionId": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "StateMachineType": { + "enum": [ + "STANDARD", + "EXPRESS" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + }, + "TracingConfiguration": { + "$ref": "#/definitions/TracingConfiguration" + } + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/Name", + "/properties/StateMachineRevisionId" + ], + "required": [ + "RoleArn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::StateMachine", + "writeOnlyProperties": [ + "/properties/Definition", + "/properties/DefinitionS3Location", + "/properties/DefinitionSubstitutions" + ] +} 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 455c9e4e9d..63ec2f1d3f 100644 --- a/src/cfnlint/data/schemas/providers/il_central_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/il_central_1/__init__.py @@ -429,6 +429,7 @@ "AWS::MSK::ClusterPolicy", "AWS::MSK::Configuration", "AWS::MSK::VpcConnection", + "AWS::MWAA::Environment", "AWS::Macie::AllowList", "AWS::Macie::CustomDataIdentifier", "AWS::Macie::FindingsFilter", @@ -756,6 +757,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", @@ -954,7 +956,6 @@ "aws-guardduty-member.json", "aws-guardduty-threatintelset.json", "aws-iam-group.json", - "aws-iam-oidcprovider.json", "aws-iam-role.json", "aws-iam-rolepolicy.json", "aws-iam-samlprovider.json", @@ -1013,6 +1014,7 @@ "aws-msk-clusterpolicy.json", "aws-msk-configuration.json", "aws-msk-vpcconnection.json", + "aws-mwaa-environment.json", "aws-neptune-dbsubnetgroup.json", "aws-neptune-eventsubscription.json", "aws-networkfirewall-firewall.json", @@ -1178,8 +1180,6 @@ "aws-sso-assignment.json", "aws-sso-instanceaccesscontrolattributeconfiguration.json", "aws-sso-permissionset.json", - "aws-stepfunctions-activity.json", - "aws-stepfunctions-statemachine.json", "aws-stepfunctions-statemachinealias.json", "aws-stepfunctions-statemachineversion.json", "aws-synthetics-canary.json", diff --git a/src/cfnlint/data/schemas/providers/il_central_1/aws-codepipeline-pipeline.json b/src/cfnlint/data/schemas/providers/il_central_1/aws-codepipeline-pipeline.json deleted file mode 100644 index 925fbfe118..0000000000 --- a/src/cfnlint/data/schemas/providers/il_central_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/il_central_1/aws-iam-oidcprovider.json b/src/cfnlint/data/schemas/providers/il_central_1/aws-iam-oidcprovider.json new file mode 100644 index 0000000000..1794a452ca --- /dev/null +++ b/src/cfnlint/data/schemas/providers/il_central_1/aws-iam-oidcprovider.json @@ -0,0 +1,120 @@ +{ + "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" + ], + "required": [ + "ThumbprintList" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::IAM::OIDCProvider" +} diff --git a/src/cfnlint/data/schemas/providers/il_central_1/aws-stepfunctions-activity.json b/src/cfnlint/data/schemas/providers/il_central_1/aws-stepfunctions-activity.json new file mode 100644 index 0000000000..7aaf191ed1 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/il_central_1/aws-stepfunctions-activity.json @@ -0,0 +1,98 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateActivity", + "states:TagResource" + ] + }, + "delete": { + "permissions": [ + "states:DescribeActivity", + "states:DeleteActivity" + ] + }, + "list": { + "permissions": [ + "states:ListActivities" + ] + }, + "read": { + "permissions": [ + "states:DescribeActivity", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:ListTagsForResource", + "states:TagResource", + "states:UntagResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "required": [ + "Name" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::Activity" +} diff --git a/src/cfnlint/data/schemas/providers/il_central_1/aws-stepfunctions-statemachine.json b/src/cfnlint/data/schemas/providers/il_central_1/aws-stepfunctions-statemachine.json new file mode 100644 index 0000000000..c8a1b0f42e --- /dev/null +++ b/src/cfnlint/data/schemas/providers/il_central_1/aws-stepfunctions-statemachine.json @@ -0,0 +1,256 @@ +{ + "additionalIdentifiers": [ + [ + "/properties/StateMachineName" + ] + ], + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/StateMachineName", + "/properties/StateMachineType" + ], + "definitions": { + "CloudWatchLogsLogGroup": { + "additionalProperties": false, + "properties": { + "LogGroupArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "Definition": { + "minProperties": 1, + "type": "object" + }, + "DefinitionSubstitutions": { + "additionalProperties": false, + "minProperties": 1, + "patternProperties": { + ".*": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "integer" + }, + { + "type": "boolean" + } + ] + } + }, + "type": "object" + }, + "LogDestination": { + "additionalProperties": false, + "properties": { + "CloudWatchLogsLogGroup": { + "$ref": "#/definitions/CloudWatchLogsLogGroup" + } + }, + "type": "object" + }, + "LoggingConfiguration": { + "additionalProperties": false, + "properties": { + "Destinations": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/LogDestination" + }, + "minItems": 1, + "type": "array" + }, + "IncludeExecutionData": { + "type": "boolean" + }, + "Level": { + "enum": [ + "ALL", + "ERROR", + "FATAL", + "OFF" + ], + "type": "string" + } + }, + "type": "object" + }, + "S3Location": { + "additionalProperties": false, + "properties": { + "Bucket": { + "type": "string" + }, + "Key": { + "type": "string" + }, + "Version": { + "type": "string" + } + }, + "required": [ + "Bucket", + "Key" + ], + "type": "object" + }, + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "TracingConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + } + }, + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateStateMachine", + "states:DescribeStateMachine", + "states:TagResource", + "iam:PassRole", + "s3:GetObject" + ] + }, + "delete": { + "permissions": [ + "states:DeleteStateMachine", + "states:DescribeStateMachine" + ] + }, + "list": { + "permissions": [ + "states:ListStateMachines" + ] + }, + "read": { + "permissions": [ + "states:DescribeStateMachine", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:UpdateStateMachine", + "states:TagResource", + "states:UntagResource", + "states:ListTagsForResource", + "iam:PassRole" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Definition": { + "$ref": "#/definitions/Definition" + }, + "DefinitionS3Location": { + "$ref": "#/definitions/S3Location" + }, + "DefinitionString": { + "maxLength": 1048576, + "minLength": 1, + "type": "string" + }, + "DefinitionSubstitutions": { + "$ref": "#/definitions/DefinitionSubstitutions" + }, + "LoggingConfiguration": { + "$ref": "#/definitions/LoggingConfiguration" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "RoleArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "StateMachineName": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "StateMachineRevisionId": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "StateMachineType": { + "enum": [ + "STANDARD", + "EXPRESS" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + }, + "TracingConfiguration": { + "$ref": "#/definitions/TracingConfiguration" + } + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/Name", + "/properties/StateMachineRevisionId" + ], + "required": [ + "RoleArn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::StateMachine", + "writeOnlyProperties": [ + "/properties/Definition", + "/properties/DefinitionS3Location", + "/properties/DefinitionSubstitutions" + ] +} 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 7622ceca14..ce60c28a89 100644 --- a/src/cfnlint/data/schemas/providers/me_central_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/me_central_1/__init__.py @@ -444,6 +444,7 @@ "AWS::MSK::ClusterPolicy", "AWS::MSK::Configuration", "AWS::MSK::VpcConnection", + "AWS::MWAA::Environment", "AWS::MediaConnect::Flow", "AWS::MediaConnect::FlowEntitlement", "AWS::MediaConnect::FlowOutput", @@ -974,7 +975,6 @@ "aws-iam-group.json", "aws-iam-grouppolicy.json", "aws-iam-instanceprofile.json", - "aws-iam-oidcprovider.json", "aws-iam-policy.json", "aws-iam-role.json", "aws-iam-rolepolicy.json", @@ -1072,6 +1072,7 @@ "aws-msk-clusterpolicy.json", "aws-msk-configuration.json", "aws-msk-vpcconnection.json", + "aws-mwaa-environment.json", "aws-neptune-dbcluster.json", "aws-neptune-dbsubnetgroup.json", "aws-neptune-eventsubscription.json", @@ -1223,10 +1224,9 @@ "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", - "aws-stepfunctions-statemachine.json", "aws-stepfunctions-statemachinealias.json", "aws-stepfunctions-statemachineversion.json", "aws-synthetics-canary.json", diff --git a/src/cfnlint/data/schemas/providers/me_central_1/aws-iam-oidcprovider.json b/src/cfnlint/data/schemas/providers/me_central_1/aws-iam-oidcprovider.json new file mode 100644 index 0000000000..1794a452ca --- /dev/null +++ b/src/cfnlint/data/schemas/providers/me_central_1/aws-iam-oidcprovider.json @@ -0,0 +1,120 @@ +{ + "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" + ], + "required": [ + "ThumbprintList" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::IAM::OIDCProvider" +} 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 deleted file mode 100644 index 26c2ca063a..0000000000 --- a/src/cfnlint/data/schemas/providers/me_central_1/aws-sso-instance.json +++ /dev/null @@ -1,125 +0,0 @@ -{ - "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/aws-stepfunctions-activity.json b/src/cfnlint/data/schemas/providers/me_central_1/aws-stepfunctions-activity.json new file mode 100644 index 0000000000..7aaf191ed1 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/me_central_1/aws-stepfunctions-activity.json @@ -0,0 +1,98 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateActivity", + "states:TagResource" + ] + }, + "delete": { + "permissions": [ + "states:DescribeActivity", + "states:DeleteActivity" + ] + }, + "list": { + "permissions": [ + "states:ListActivities" + ] + }, + "read": { + "permissions": [ + "states:DescribeActivity", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:ListTagsForResource", + "states:TagResource", + "states:UntagResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "required": [ + "Name" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::Activity" +} diff --git a/src/cfnlint/data/schemas/providers/me_central_1/aws-stepfunctions-statemachine.json b/src/cfnlint/data/schemas/providers/me_central_1/aws-stepfunctions-statemachine.json new file mode 100644 index 0000000000..c8a1b0f42e --- /dev/null +++ b/src/cfnlint/data/schemas/providers/me_central_1/aws-stepfunctions-statemachine.json @@ -0,0 +1,256 @@ +{ + "additionalIdentifiers": [ + [ + "/properties/StateMachineName" + ] + ], + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/StateMachineName", + "/properties/StateMachineType" + ], + "definitions": { + "CloudWatchLogsLogGroup": { + "additionalProperties": false, + "properties": { + "LogGroupArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "Definition": { + "minProperties": 1, + "type": "object" + }, + "DefinitionSubstitutions": { + "additionalProperties": false, + "minProperties": 1, + "patternProperties": { + ".*": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "integer" + }, + { + "type": "boolean" + } + ] + } + }, + "type": "object" + }, + "LogDestination": { + "additionalProperties": false, + "properties": { + "CloudWatchLogsLogGroup": { + "$ref": "#/definitions/CloudWatchLogsLogGroup" + } + }, + "type": "object" + }, + "LoggingConfiguration": { + "additionalProperties": false, + "properties": { + "Destinations": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/LogDestination" + }, + "minItems": 1, + "type": "array" + }, + "IncludeExecutionData": { + "type": "boolean" + }, + "Level": { + "enum": [ + "ALL", + "ERROR", + "FATAL", + "OFF" + ], + "type": "string" + } + }, + "type": "object" + }, + "S3Location": { + "additionalProperties": false, + "properties": { + "Bucket": { + "type": "string" + }, + "Key": { + "type": "string" + }, + "Version": { + "type": "string" + } + }, + "required": [ + "Bucket", + "Key" + ], + "type": "object" + }, + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "TracingConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + } + }, + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateStateMachine", + "states:DescribeStateMachine", + "states:TagResource", + "iam:PassRole", + "s3:GetObject" + ] + }, + "delete": { + "permissions": [ + "states:DeleteStateMachine", + "states:DescribeStateMachine" + ] + }, + "list": { + "permissions": [ + "states:ListStateMachines" + ] + }, + "read": { + "permissions": [ + "states:DescribeStateMachine", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:UpdateStateMachine", + "states:TagResource", + "states:UntagResource", + "states:ListTagsForResource", + "iam:PassRole" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Definition": { + "$ref": "#/definitions/Definition" + }, + "DefinitionS3Location": { + "$ref": "#/definitions/S3Location" + }, + "DefinitionString": { + "maxLength": 1048576, + "minLength": 1, + "type": "string" + }, + "DefinitionSubstitutions": { + "$ref": "#/definitions/DefinitionSubstitutions" + }, + "LoggingConfiguration": { + "$ref": "#/definitions/LoggingConfiguration" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "RoleArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "StateMachineName": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "StateMachineRevisionId": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "StateMachineType": { + "enum": [ + "STANDARD", + "EXPRESS" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + }, + "TracingConfiguration": { + "$ref": "#/definitions/TracingConfiguration" + } + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/Name", + "/properties/StateMachineRevisionId" + ], + "required": [ + "RoleArn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::StateMachine", + "writeOnlyProperties": [ + "/properties/Definition", + "/properties/DefinitionS3Location", + "/properties/DefinitionSubstitutions" + ] +} 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 a69f34ec5f..30f61c5674 100644 --- a/src/cfnlint/data/schemas/providers/me_south_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/me_south_1/__init__.py @@ -1187,7 +1187,6 @@ "aws-iam-group.json", "aws-iam-grouppolicy.json", "aws-iam-instanceprofile.json", - "aws-iam-oidcprovider.json", "aws-iam-policy.json", "aws-iam-role.json", "aws-iam-rolepolicy.json", @@ -1403,6 +1402,7 @@ "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,6 +1422,7 @@ "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", @@ -1489,8 +1490,6 @@ "aws-sso-assignment.json", "aws-sso-instanceaccesscontrolattributeconfiguration.json", "aws-sso-permissionset.json", - "aws-stepfunctions-activity.json", - "aws-stepfunctions-statemachine.json", "aws-stepfunctions-statemachinealias.json", "aws-stepfunctions-statemachineversion.json", "aws-synthetics-canary.json", diff --git a/src/cfnlint/data/schemas/providers/me_south_1/aws-iam-oidcprovider.json b/src/cfnlint/data/schemas/providers/me_south_1/aws-iam-oidcprovider.json new file mode 100644 index 0000000000..1794a452ca --- /dev/null +++ b/src/cfnlint/data/schemas/providers/me_south_1/aws-iam-oidcprovider.json @@ -0,0 +1,120 @@ +{ + "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" + ], + "required": [ + "ThumbprintList" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::IAM::OIDCProvider" +} diff --git a/src/cfnlint/data/schemas/providers/me_south_1/aws-stepfunctions-activity.json b/src/cfnlint/data/schemas/providers/me_south_1/aws-stepfunctions-activity.json new file mode 100644 index 0000000000..7aaf191ed1 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/me_south_1/aws-stepfunctions-activity.json @@ -0,0 +1,98 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateActivity", + "states:TagResource" + ] + }, + "delete": { + "permissions": [ + "states:DescribeActivity", + "states:DeleteActivity" + ] + }, + "list": { + "permissions": [ + "states:ListActivities" + ] + }, + "read": { + "permissions": [ + "states:DescribeActivity", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:ListTagsForResource", + "states:TagResource", + "states:UntagResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "required": [ + "Name" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::Activity" +} diff --git a/src/cfnlint/data/schemas/providers/me_south_1/aws-stepfunctions-statemachine.json b/src/cfnlint/data/schemas/providers/me_south_1/aws-stepfunctions-statemachine.json new file mode 100644 index 0000000000..c8a1b0f42e --- /dev/null +++ b/src/cfnlint/data/schemas/providers/me_south_1/aws-stepfunctions-statemachine.json @@ -0,0 +1,256 @@ +{ + "additionalIdentifiers": [ + [ + "/properties/StateMachineName" + ] + ], + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/StateMachineName", + "/properties/StateMachineType" + ], + "definitions": { + "CloudWatchLogsLogGroup": { + "additionalProperties": false, + "properties": { + "LogGroupArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "Definition": { + "minProperties": 1, + "type": "object" + }, + "DefinitionSubstitutions": { + "additionalProperties": false, + "minProperties": 1, + "patternProperties": { + ".*": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "integer" + }, + { + "type": "boolean" + } + ] + } + }, + "type": "object" + }, + "LogDestination": { + "additionalProperties": false, + "properties": { + "CloudWatchLogsLogGroup": { + "$ref": "#/definitions/CloudWatchLogsLogGroup" + } + }, + "type": "object" + }, + "LoggingConfiguration": { + "additionalProperties": false, + "properties": { + "Destinations": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/LogDestination" + }, + "minItems": 1, + "type": "array" + }, + "IncludeExecutionData": { + "type": "boolean" + }, + "Level": { + "enum": [ + "ALL", + "ERROR", + "FATAL", + "OFF" + ], + "type": "string" + } + }, + "type": "object" + }, + "S3Location": { + "additionalProperties": false, + "properties": { + "Bucket": { + "type": "string" + }, + "Key": { + "type": "string" + }, + "Version": { + "type": "string" + } + }, + "required": [ + "Bucket", + "Key" + ], + "type": "object" + }, + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "TracingConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + } + }, + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateStateMachine", + "states:DescribeStateMachine", + "states:TagResource", + "iam:PassRole", + "s3:GetObject" + ] + }, + "delete": { + "permissions": [ + "states:DeleteStateMachine", + "states:DescribeStateMachine" + ] + }, + "list": { + "permissions": [ + "states:ListStateMachines" + ] + }, + "read": { + "permissions": [ + "states:DescribeStateMachine", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:UpdateStateMachine", + "states:TagResource", + "states:UntagResource", + "states:ListTagsForResource", + "iam:PassRole" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Definition": { + "$ref": "#/definitions/Definition" + }, + "DefinitionS3Location": { + "$ref": "#/definitions/S3Location" + }, + "DefinitionString": { + "maxLength": 1048576, + "minLength": 1, + "type": "string" + }, + "DefinitionSubstitutions": { + "$ref": "#/definitions/DefinitionSubstitutions" + }, + "LoggingConfiguration": { + "$ref": "#/definitions/LoggingConfiguration" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "RoleArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "StateMachineName": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "StateMachineRevisionId": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "StateMachineType": { + "enum": [ + "STANDARD", + "EXPRESS" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + }, + "TracingConfiguration": { + "$ref": "#/definitions/TracingConfiguration" + } + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/Name", + "/properties/StateMachineRevisionId" + ], + "required": [ + "RoleArn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::StateMachine", + "writeOnlyProperties": [ + "/properties/Definition", + "/properties/DefinitionS3Location", + "/properties/DefinitionSubstitutions" + ] +} 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 c52f546703..8a62d0d557 100644 --- a/src/cfnlint/data/schemas/providers/sa_east_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/sa_east_1/__init__.py @@ -1166,6 +1166,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-config-aggregationauthorization.json", @@ -1846,6 +1847,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/sa_east_1/aws-cognito-userpooluicustomizationattachment.json b/src/cfnlint/data/schemas/providers/sa_east_1/aws-cognito-userpooluicustomizationattachment.json deleted file mode 100644 index 98baaf1ea2..0000000000 --- a/src/cfnlint/data/schemas/providers/sa_east_1/aws-cognito-userpooluicustomizationattachment.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "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": [ - "UserPoolId", - "ClientId" - ], - "typeName": "AWS::Cognito::UserPoolUICustomizationAttachment" -} 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 deleted file mode 100644 index 26c2ca063a..0000000000 --- a/src/cfnlint/data/schemas/providers/sa_east_1/aws-sso-instance.json +++ /dev/null @@ -1,125 +0,0 @@ -{ - "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-iam-oidcprovider.json b/src/cfnlint/data/schemas/providers/us_east_1/aws-iam-oidcprovider.json index 1794a452ca..fa37c736e1 100644 --- a/src/cfnlint/data/schemas/providers/us_east_1/aws-iam-oidcprovider.json +++ b/src/cfnlint/data/schemas/providers/us_east_1/aws-iam-oidcprovider.json @@ -107,9 +107,6 @@ "readOnlyProperties": [ "/properties/Arn" ], - "required": [ - "ThumbprintList" - ], "tagging": { "cloudFormationSystemTags": false, "tagOnCreate": true, diff --git a/src/cfnlint/data/schemas/providers/us_east_1/aws-mediaconnect-flowsource.json b/src/cfnlint/data/schemas/providers/us_east_1/aws-mediaconnect-flowsource.json index cf7d326061..d115d07de4 100644 --- a/src/cfnlint/data/schemas/providers/us_east_1/aws-mediaconnect-flowsource.json +++ b/src/cfnlint/data/schemas/providers/us_east_1/aws-mediaconnect-flowsource.json @@ -137,11 +137,9 @@ "type": "integer" }, "MaxLatency": { - "default": 2000, "type": "integer" }, "MinLatency": { - "default": 2000, "type": "integer" }, "Name": { diff --git a/src/cfnlint/data/schemas/providers/us_east_1/aws-sagemaker-domain.json b/src/cfnlint/data/schemas/providers/us_east_1/aws-sagemaker-domain.json index f6f11084f6..5cd4ea45fa 100644 --- a/src/cfnlint/data/schemas/providers/us_east_1/aws-sagemaker-domain.json +++ b/src/cfnlint/data/schemas/providers/us_east_1/aws-sagemaker-domain.json @@ -9,6 +9,18 @@ "/properties/Tags" ], "definitions": { + "AppType": { + "enum": [ + "JupyterServer", + "TensorBoard", + "RStudioServerPro", + "JupyterLab", + "CodeEditor", + "DetailedProfiler", + "Canvas" + ], + "type": "string" + }, "CodeEditorAppSettings": { "additionalProperties": false, "properties": { @@ -318,6 +330,24 @@ }, "type": "object" }, + "MlTools": { + "enum": [ + "DataWrangler", + "FeatureStore", + "EmrClusters", + "AutoML", + "Experiments", + "Training", + "ModelEvaluation", + "Pipelines", + "Models", + "JumpStart", + "InferenceRecommender", + "Endpoints", + "Projects" + ], + "type": "string" + }, "RSessionAppSettings": { "additionalProperties": false, "properties": { @@ -505,6 +535,30 @@ "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": { @@ -594,6 +648,9 @@ "DISABLED" ], "type": "string" + }, + "StudioWebPortalSettings": { + "$ref": "#/definitions/StudioWebPortalSettings" } }, "required": [ diff --git a/src/cfnlint/data/schemas/providers/us_east_1/aws-sagemaker-userprofile.json b/src/cfnlint/data/schemas/providers/us_east_1/aws-sagemaker-userprofile.json index f7e1db12f6..c2c0daf9fe 100644 --- a/src/cfnlint/data/schemas/providers/us_east_1/aws-sagemaker-userprofile.json +++ b/src/cfnlint/data/schemas/providers/us_east_1/aws-sagemaker-userprofile.json @@ -10,6 +10,18 @@ "/properties/Tags" ], "definitions": { + "AppType": { + "enum": [ + "JupyterServer", + "TensorBoard", + "RStudioServerPro", + "JupyterLab", + "CodeEditor", + "DetailedProfiler", + "Canvas" + ], + "type": "string" + }, "CodeEditorAppSettings": { "additionalProperties": false, "properties": { @@ -213,6 +225,24 @@ }, "type": "object" }, + "MlTools": { + "enum": [ + "DataWrangler", + "FeatureStore", + "EmrClusters", + "AutoML", + "Experiments", + "Training", + "ModelEvaluation", + "Pipelines", + "Models", + "JumpStart", + "InferenceRecommender", + "Endpoints", + "Projects" + ], + "type": "string" + }, "RStudioServerProAppSettings": { "additionalProperties": false, "properties": { @@ -350,6 +380,30 @@ "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": { @@ -435,6 +489,9 @@ "DISABLED" ], "type": "string" + }, + "StudioWebPortalSettings": { + "$ref": "#/definitions/StudioWebPortalSettings" } }, "type": "object" diff --git a/src/cfnlint/data/schemas/providers/us_east_1/aws-stepfunctions-activity.json b/src/cfnlint/data/schemas/providers/us_east_1/aws-stepfunctions-activity.json index 7aaf191ed1..bef2b2f085 100644 --- a/src/cfnlint/data/schemas/providers/us_east_1/aws-stepfunctions-activity.json +++ b/src/cfnlint/data/schemas/providers/us_east_1/aws-stepfunctions-activity.json @@ -1,9 +1,36 @@ { "additionalProperties": false, "createOnlyProperties": [ - "/properties/Name" + "/properties/Name", + "/properties/EncryptionConfiguration" ], "definitions": { + "EncryptionConfiguration": { + "additionalProperties": false, + "properties": { + "KmsDataKeyReusePeriodSeconds": { + "maximum": 900, + "minimum": 60, + "type": "integer" + }, + "KmsKeyId": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Type": { + "enum": [ + "CUSTOMER_MANAGED_KMS_KEY", + "AWS_OWNED_KEY" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, "TagsEntry": { "additionalProperties": false, "properties": { @@ -29,7 +56,8 @@ "create": { "permissions": [ "states:CreateActivity", - "states:TagResource" + "states:TagResource", + "kms:DescribeKey" ] }, "delete": { @@ -66,6 +94,9 @@ "minLength": 1, "type": "string" }, + "EncryptionConfiguration": { + "$ref": "#/definitions/EncryptionConfiguration" + }, "Name": { "maxLength": 80, "minLength": 1, diff --git a/src/cfnlint/data/schemas/providers/us_east_1/aws-stepfunctions-statemachine.json b/src/cfnlint/data/schemas/providers/us_east_1/aws-stepfunctions-statemachine.json index c8a1b0f42e..aa93e804d1 100644 --- a/src/cfnlint/data/schemas/providers/us_east_1/aws-stepfunctions-statemachine.json +++ b/src/cfnlint/data/schemas/providers/us_east_1/aws-stepfunctions-statemachine.json @@ -45,6 +45,32 @@ }, "type": "object" }, + "EncryptionConfiguration": { + "additionalProperties": false, + "properties": { + "KmsDataKeyReusePeriodSeconds": { + "maximum": 900, + "minimum": 60, + "type": "integer" + }, + "KmsKeyId": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Type": { + "enum": [ + "CUSTOMER_MANAGED_KMS_KEY", + "AWS_OWNED_KEY" + ], + "type": "string" + } + }, + "required": [ + "Type" + ], + "type": "object" + }, "LogDestination": { "additionalProperties": false, "properties": { @@ -136,7 +162,9 @@ "states:DescribeStateMachine", "states:TagResource", "iam:PassRole", - "s3:GetObject" + "s3:GetObject", + "kms:DescribeKey", + "kms:GenerateDataKey" ] }, "delete": { @@ -153,7 +181,8 @@ "read": { "permissions": [ "states:DescribeStateMachine", - "states:ListTagsForResource" + "states:ListTagsForResource", + "kms:Decrypt" ] }, "update": { @@ -162,7 +191,9 @@ "states:TagResource", "states:UntagResource", "states:ListTagsForResource", - "iam:PassRole" + "iam:PassRole", + "kms:DescribeKey", + "kms:GenerateDataKey" ] } }, @@ -189,6 +220,9 @@ "DefinitionSubstitutions": { "$ref": "#/definitions/DefinitionSubstitutions" }, + "EncryptionConfiguration": { + "$ref": "#/definitions/EncryptionConfiguration" + }, "LoggingConfiguration": { "$ref": "#/definitions/LoggingConfiguration" }, 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 f3a08dffca..3388ed60c9 100644 --- a/src/cfnlint/data/schemas/providers/us_east_2/__init__.py +++ b/src/cfnlint/data/schemas/providers/us_east_2/__init__.py @@ -1343,6 +1343,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", @@ -1839,7 +1840,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", @@ -2048,6 +2048,7 @@ "aws-sagemaker-dataqualityjobdefinition.json", "aws-sagemaker-device.json", "aws-sagemaker-devicefleet.json", + "aws-sagemaker-domain.json", "aws-sagemaker-endpoint.json", "aws-sagemaker-endpointconfig.json", "aws-sagemaker-featuregroup.json", @@ -2068,6 +2069,7 @@ "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", @@ -2157,10 +2159,9 @@ "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", - "aws-stepfunctions-statemachine.json", "aws-stepfunctions-statemachinealias.json", "aws-stepfunctions-statemachineversion.json", "aws-supportapp-accountalias.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 deleted file mode 100644 index 009f1aea8c..0000000000 --- a/src/cfnlint/data/schemas/providers/us_east_2/aws-cognito-userpooluicustomizationattachment.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "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-mediaconnect-flowsource.json b/src/cfnlint/data/schemas/providers/us_east_2/aws-mediaconnect-flowsource.json new file mode 100644 index 0000000000..cf7d326061 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_east_2/aws-mediaconnect-flowsource.json @@ -0,0 +1,200 @@ +{ + "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": { + "default": 2000, + "type": "integer" + }, + "MinLatency": { + "default": 2000, + "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/us_east_2/aws-sso-instance.json b/src/cfnlint/data/schemas/providers/us_east_2/aws-sso-instance.json deleted file mode 100644 index 26c2ca063a..0000000000 --- a/src/cfnlint/data/schemas/providers/us_east_2/aws-sso-instance.json +++ /dev/null @@ -1,125 +0,0 @@ -{ - "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_2/aws-stepfunctions-activity.json b/src/cfnlint/data/schemas/providers/us_east_2/aws-stepfunctions-activity.json new file mode 100644 index 0000000000..7aaf191ed1 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_east_2/aws-stepfunctions-activity.json @@ -0,0 +1,98 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateActivity", + "states:TagResource" + ] + }, + "delete": { + "permissions": [ + "states:DescribeActivity", + "states:DeleteActivity" + ] + }, + "list": { + "permissions": [ + "states:ListActivities" + ] + }, + "read": { + "permissions": [ + "states:DescribeActivity", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:ListTagsForResource", + "states:TagResource", + "states:UntagResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "required": [ + "Name" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::Activity" +} diff --git a/src/cfnlint/data/schemas/providers/us_east_2/aws-stepfunctions-statemachine.json b/src/cfnlint/data/schemas/providers/us_east_2/aws-stepfunctions-statemachine.json new file mode 100644 index 0000000000..c8a1b0f42e --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_east_2/aws-stepfunctions-statemachine.json @@ -0,0 +1,256 @@ +{ + "additionalIdentifiers": [ + [ + "/properties/StateMachineName" + ] + ], + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/StateMachineName", + "/properties/StateMachineType" + ], + "definitions": { + "CloudWatchLogsLogGroup": { + "additionalProperties": false, + "properties": { + "LogGroupArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "type": "object" + }, + "Definition": { + "minProperties": 1, + "type": "object" + }, + "DefinitionSubstitutions": { + "additionalProperties": false, + "minProperties": 1, + "patternProperties": { + ".*": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "integer" + }, + { + "type": "boolean" + } + ] + } + }, + "type": "object" + }, + "LogDestination": { + "additionalProperties": false, + "properties": { + "CloudWatchLogsLogGroup": { + "$ref": "#/definitions/CloudWatchLogsLogGroup" + } + }, + "type": "object" + }, + "LoggingConfiguration": { + "additionalProperties": false, + "properties": { + "Destinations": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/LogDestination" + }, + "minItems": 1, + "type": "array" + }, + "IncludeExecutionData": { + "type": "boolean" + }, + "Level": { + "enum": [ + "ALL", + "ERROR", + "FATAL", + "OFF" + ], + "type": "string" + } + }, + "type": "object" + }, + "S3Location": { + "additionalProperties": false, + "properties": { + "Bucket": { + "type": "string" + }, + "Key": { + "type": "string" + }, + "Version": { + "type": "string" + } + }, + "required": [ + "Bucket", + "Key" + ], + "type": "object" + }, + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + }, + "TracingConfiguration": { + "additionalProperties": false, + "properties": { + "Enabled": { + "type": "boolean" + } + }, + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateStateMachine", + "states:DescribeStateMachine", + "states:TagResource", + "iam:PassRole", + "s3:GetObject" + ] + }, + "delete": { + "permissions": [ + "states:DeleteStateMachine", + "states:DescribeStateMachine" + ] + }, + "list": { + "permissions": [ + "states:ListStateMachines" + ] + }, + "read": { + "permissions": [ + "states:DescribeStateMachine", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:UpdateStateMachine", + "states:TagResource", + "states:UntagResource", + "states:ListTagsForResource", + "iam:PassRole" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Definition": { + "$ref": "#/definitions/Definition" + }, + "DefinitionS3Location": { + "$ref": "#/definitions/S3Location" + }, + "DefinitionString": { + "maxLength": 1048576, + "minLength": 1, + "type": "string" + }, + "DefinitionSubstitutions": { + "$ref": "#/definitions/DefinitionSubstitutions" + }, + "LoggingConfiguration": { + "$ref": "#/definitions/LoggingConfiguration" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "RoleArn": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "StateMachineName": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "StateMachineRevisionId": { + "maxLength": 256, + "minLength": 1, + "type": "string" + }, + "StateMachineType": { + "enum": [ + "STANDARD", + "EXPRESS" + ], + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + }, + "TracingConfiguration": { + "$ref": "#/definitions/TracingConfiguration" + } + }, + "readOnlyProperties": [ + "/properties/Arn", + "/properties/Name", + "/properties/StateMachineRevisionId" + ], + "required": [ + "RoleArn" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::StateMachine", + "writeOnlyProperties": [ + "/properties/Definition", + "/properties/DefinitionS3Location", + "/properties/DefinitionSubstitutions" + ] +} 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 215a12204c..8e047e7e2d 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 @@ -578,6 +578,7 @@ "AWS::SSO::Application", "AWS::SSO::ApplicationAssignment", "AWS::SSO::Assignment", + "AWS::SSO::Instance", "AWS::SSO::InstanceAccessControlAttributeConfiguration", "AWS::SSO::PermissionSet", "AWS::SageMaker::App", @@ -751,6 +752,7 @@ "aws-cloudformation-moduleversion.json", "aws-cloudformation-resourcedefaultversion.json", "aws-cloudformation-resourceversion.json", + "aws-cloudformation-stackset.json", "aws-cloudformation-waitcondition.json", "aws-cloudformation-waitconditionhandle.json", "aws-cloudtrail-trail.json", @@ -848,6 +850,7 @@ "aws-ec2-snapshotblockpublicaccess.json", "aws-ec2-spotfleet.json", "aws-ec2-subnet.json", + "aws-ec2-subnetcidrblock.json", "aws-ec2-subnetnetworkaclassociation.json", "aws-ec2-subnetroutetableassociation.json", "aws-ec2-trafficmirrorfilter.json", @@ -950,7 +953,6 @@ "aws-guardduty-threatintelset.json", "aws-iam-accesskey.json", "aws-iam-grouppolicy.json", - "aws-iam-oidcprovider.json", "aws-iam-role.json", "aws-iam-rolepolicy.json", "aws-iam-samlprovider.json", @@ -1172,9 +1174,9 @@ "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", "aws-stepfunctions-statemachineversion.json", "aws-synthetics-canary.json", "aws-synthetics-group.json", diff --git a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-cloudformation-stackset.json b/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-cloudformation-stackset.json deleted file mode 100644 index 41ddc52ae0..0000000000 --- a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-cloudformation-stackset.json +++ /dev/null @@ -1,379 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/PermissionModel", - "/properties/StackSetName" - ], - "definitions": { - "Account": { - "pattern": "^[0-9]{12}$", - "type": "string" - }, - "Active": { - "type": "boolean" - }, - "AutoDeployment": { - "additionalProperties": false, - "properties": { - "Enabled": { - "type": "boolean" - }, - "RetainStacksOnAccountRemoval": { - "type": "boolean" - } - }, - "type": "object" - }, - "Capability": { - "enum": [ - "CAPABILITY_IAM", - "CAPABILITY_NAMED_IAM", - "CAPABILITY_AUTO_EXPAND" - ], - "type": "string" - }, - "DeploymentTargets": { - "additionalProperties": false, - "properties": { - "AccountFilterType": { - "enum": [ - "NONE", - "UNION", - "INTERSECTION", - "DIFFERENCE" - ], - "type": "string" - }, - "Accounts": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Account" - }, - "minItems": 1, - "type": "array", - "uniqueItems": true - }, - "AccountsUrl": { - "maxLength": 5120, - "minLength": 1, - "pattern": "(s3://|http(s?)://).+", - "type": "string" - }, - "OrganizationalUnitIds": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/OrganizationalUnitId" - }, - "minItems": 1, - "type": "array", - "uniqueItems": true - } - }, - "type": "object" - }, - "OperationPreferences": { - "additionalProperties": false, - "properties": { - "FailureToleranceCount": { - "minimum": 0, - "type": "integer" - }, - "FailureTolerancePercentage": { - "maximum": 100, - "minimum": 0, - "type": "integer" - }, - "MaxConcurrentCount": { - "minimum": 1, - "type": "integer" - }, - "MaxConcurrentPercentage": { - "maximum": 100, - "minimum": 0, - "type": "integer" - }, - "RegionConcurrencyType": { - "$ref": "#/definitions/RegionConcurrencyType" - }, - "RegionOrder": { - "items": { - "$ref": "#/definitions/Region" - }, - "type": "array" - } - }, - "type": "object" - }, - "OrganizationalUnitId": { - "pattern": "^(ou-[a-z0-9]{4,32}-[a-z0-9]{8,32}|r-[a-z0-9]{4,32})$", - "type": "string" - }, - "Parameter": { - "additionalProperties": false, - "properties": { - "ParameterKey": { - "type": "string" - }, - "ParameterValue": { - "type": "string" - } - }, - "required": [ - "ParameterKey", - "ParameterValue" - ], - "type": "object" - }, - "Region": { - "pattern": "^[a-zA-Z0-9-]{1,128}$", - "type": "string" - }, - "RegionConcurrencyType": { - "enum": [ - "SEQUENTIAL", - "PARALLEL" - ], - "type": "string" - }, - "StackInstances": { - "additionalProperties": false, - "properties": { - "DeploymentTargets": { - "$ref": "#/definitions/DeploymentTargets" - }, - "ParameterOverrides": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Parameter" - }, - "type": "array", - "uniqueItems": true - }, - "Regions": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Region" - }, - "minItems": 1, - "type": "array", - "uniqueItems": true - } - }, - "required": [ - "DeploymentTargets", - "Regions" - ], - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "pattern": "^(?!aws:.*)[a-zA-Z0-9\\s\\:\\_\\.\\/\\=\\+\\-]+$", - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "cloudformation:GetTemplateSummary", - "cloudformation:CreateStackSet", - "cloudformation:CreateStackInstances", - "cloudformation:DescribeStackSetOperation", - "cloudformation:ListStackSetOperationResults", - "cloudformation:TagResource", - "iam:PassRole" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "cloudformation:DeleteStackSet", - "cloudformation:DeleteStackInstances", - "cloudformation:DescribeStackSet", - "cloudformation:DescribeStackSetOperation", - "cloudformation:ListStackSetOperationResults", - "cloudformation:UntagResource" - ], - "timeoutInMinutes": 2160 - }, - "list": { - "permissions": [ - "cloudformation:ListStackSets", - "cloudformation:DescribeStackSet", - "cloudformation:ListStackInstances", - "cloudformation:DescribeStackInstance" - ] - }, - "read": { - "permissions": [ - "cloudformation:DescribeStackSet", - "cloudformation:ListStackInstances", - "cloudformation:DescribeStackInstance" - ] - }, - "update": { - "permissions": [ - "cloudformation:GetTemplateSummary", - "cloudformation:UpdateStackSet", - "cloudformation:CreateStackInstances", - "cloudformation:DeleteStackInstances", - "cloudformation:UpdateStackInstances", - "cloudformation:DescribeStackSet", - "cloudformation:DescribeStackSetOperation", - "cloudformation:ListStackSetOperationResults", - "cloudformation:TagResource", - "cloudformation:UntagResource", - "iam:PassRole" - ], - "timeoutInMinutes": 2160 - } - }, - "oneOf": [ - { - "required": [ - "TemplateURL" - ] - }, - { - "required": [ - "TemplateBody" - ] - } - ], - "primaryIdentifier": [ - "/properties/StackSetId" - ], - "properties": { - "AdministrationRoleARN": { - "maxLength": 2048, - "minLength": 20, - "type": "string" - }, - "AutoDeployment": { - "$ref": "#/definitions/AutoDeployment" - }, - "CallAs": { - "enum": [ - "SELF", - "DELEGATED_ADMIN" - ], - "type": "string" - }, - "Capabilities": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Capability" - }, - "type": "array", - "uniqueItems": true - }, - "Description": { - "maxLength": 1024, - "minLength": 1, - "type": "string" - }, - "ExecutionRoleName": { - "maxLength": 64, - "minLength": 1, - "type": "string" - }, - "ManagedExecution": { - "additionalProperties": false, - "properties": { - "Active": { - "$ref": "#/definitions/Active" - } - }, - "type": "object" - }, - "OperationPreferences": { - "$ref": "#/definitions/OperationPreferences" - }, - "Parameters": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Parameter" - }, - "type": "array", - "uniqueItems": true - }, - "PermissionModel": { - "enum": [ - "SELF_MANAGED", - "SERVICE_MANAGED" - ], - "type": "string" - }, - "StackInstancesGroup": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/StackInstances" - }, - "type": "array", - "uniqueItems": true - }, - "StackSetId": { - "type": "string" - }, - "StackSetName": { - "maxLength": 128, - "pattern": "^[a-zA-Z][a-zA-Z0-9\\-]{0,127}$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 50, - "type": "array", - "uniqueItems": true - }, - "TemplateBody": { - "maxLength": 51200, - "minLength": 1, - "type": "string" - }, - "TemplateURL": { - "maxLength": 5120, - "minLength": 1, - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/StackSetId" - ], - "required": [ - "StackSetName", - "PermissionModel" - ], - "resourceLink": { - "mappings": { - "StackSetId": "/StackSetId" - }, - "templateUri": "/cloudformation/home?region=${awsRegion}#/stacksets/${StackSetId}" - }, - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-cloudformation.git", - "typeName": "AWS::CloudFormation::StackSet", - "writeOnlyProperties": [ - "/properties/TemplateURL", - "/properties/OperationPreferences", - "/properties/StackInstancesGroup", - "/properties/CallAs" - ] -} diff --git a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-ec2-subnetcidrblock.json b/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-ec2-subnetcidrblock.json deleted file mode 100644 index bc482f9dbc..0000000000 --- a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-ec2-subnetcidrblock.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Ipv6CidrBlock", - "/properties/SubnetId" - ], - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "Id": { - "type": "string" - }, - "Ipv6CidrBlock": { - "type": "string" - }, - "SubnetId": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "Ipv6CidrBlock", - "SubnetId" - ], - "typeName": "AWS::EC2::SubnetCidrBlock" -} diff --git a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-iam-oidcprovider.json b/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-iam-oidcprovider.json new file mode 100644 index 0000000000..1794a452ca --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-iam-oidcprovider.json @@ -0,0 +1,120 @@ +{ + "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" + ], + "required": [ + "ThumbprintList" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::IAM::OIDCProvider" +} diff --git a/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-stepfunctions-activity.json b/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-stepfunctions-activity.json new file mode 100644 index 0000000000..7aaf191ed1 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_gov_east_1/aws-stepfunctions-activity.json @@ -0,0 +1,98 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateActivity", + "states:TagResource" + ] + }, + "delete": { + "permissions": [ + "states:DescribeActivity", + "states:DeleteActivity" + ] + }, + "list": { + "permissions": [ + "states:ListActivities" + ] + }, + "read": { + "permissions": [ + "states:DescribeActivity", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:ListTagsForResource", + "states:TagResource", + "states:UntagResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "required": [ + "Name" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::Activity" +} diff --git a/src/cfnlint/data/schemas/providers/us_gov_west_1/__init__.py b/src/cfnlint/data/schemas/providers/us_gov_west_1/__init__.py index 7caf783d1e..729ec0d726 100644 --- a/src/cfnlint/data/schemas/providers/us_gov_west_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/us_gov_west_1/__init__.py @@ -871,6 +871,7 @@ "aws-cloudformation-moduleversion.json", "aws-cloudformation-resourcedefaultversion.json", "aws-cloudformation-resourceversion.json", + "aws-cloudformation-stackset.json", "aws-cloudformation-waitcondition.json", "aws-cloudformation-waitconditionhandle.json", "aws-cloudtrail-trail.json", @@ -1004,6 +1005,7 @@ "aws-ec2-snapshotblockpublicaccess.json", "aws-ec2-spotfleet.json", "aws-ec2-subnet.json", + "aws-ec2-subnetcidrblock.json", "aws-ec2-subnetnetworkaclassociation.json", "aws-ec2-subnetroutetableassociation.json", "aws-ec2-trafficmirrorfilter.json", @@ -1117,7 +1119,6 @@ "aws-guardduty-threatintelset.json", "aws-iam-accesskey.json", "aws-iam-grouppolicy.json", - "aws-iam-oidcprovider.json", "aws-iam-role.json", "aws-iam-rolepolicy.json", "aws-iam-samlprovider.json", @@ -1400,7 +1401,6 @@ "aws-sso-assignment.json", "aws-sso-instanceaccesscontrolattributeconfiguration.json", "aws-sso-permissionset.json", - "aws-stepfunctions-activity.json", "aws-stepfunctions-statemachineversion.json", "aws-synthetics-canary.json", "aws-synthetics-group.json", diff --git a/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-cloudformation-stackset.json b/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-cloudformation-stackset.json deleted file mode 100644 index 41ddc52ae0..0000000000 --- a/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-cloudformation-stackset.json +++ /dev/null @@ -1,379 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/PermissionModel", - "/properties/StackSetName" - ], - "definitions": { - "Account": { - "pattern": "^[0-9]{12}$", - "type": "string" - }, - "Active": { - "type": "boolean" - }, - "AutoDeployment": { - "additionalProperties": false, - "properties": { - "Enabled": { - "type": "boolean" - }, - "RetainStacksOnAccountRemoval": { - "type": "boolean" - } - }, - "type": "object" - }, - "Capability": { - "enum": [ - "CAPABILITY_IAM", - "CAPABILITY_NAMED_IAM", - "CAPABILITY_AUTO_EXPAND" - ], - "type": "string" - }, - "DeploymentTargets": { - "additionalProperties": false, - "properties": { - "AccountFilterType": { - "enum": [ - "NONE", - "UNION", - "INTERSECTION", - "DIFFERENCE" - ], - "type": "string" - }, - "Accounts": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Account" - }, - "minItems": 1, - "type": "array", - "uniqueItems": true - }, - "AccountsUrl": { - "maxLength": 5120, - "minLength": 1, - "pattern": "(s3://|http(s?)://).+", - "type": "string" - }, - "OrganizationalUnitIds": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/OrganizationalUnitId" - }, - "minItems": 1, - "type": "array", - "uniqueItems": true - } - }, - "type": "object" - }, - "OperationPreferences": { - "additionalProperties": false, - "properties": { - "FailureToleranceCount": { - "minimum": 0, - "type": "integer" - }, - "FailureTolerancePercentage": { - "maximum": 100, - "minimum": 0, - "type": "integer" - }, - "MaxConcurrentCount": { - "minimum": 1, - "type": "integer" - }, - "MaxConcurrentPercentage": { - "maximum": 100, - "minimum": 0, - "type": "integer" - }, - "RegionConcurrencyType": { - "$ref": "#/definitions/RegionConcurrencyType" - }, - "RegionOrder": { - "items": { - "$ref": "#/definitions/Region" - }, - "type": "array" - } - }, - "type": "object" - }, - "OrganizationalUnitId": { - "pattern": "^(ou-[a-z0-9]{4,32}-[a-z0-9]{8,32}|r-[a-z0-9]{4,32})$", - "type": "string" - }, - "Parameter": { - "additionalProperties": false, - "properties": { - "ParameterKey": { - "type": "string" - }, - "ParameterValue": { - "type": "string" - } - }, - "required": [ - "ParameterKey", - "ParameterValue" - ], - "type": "object" - }, - "Region": { - "pattern": "^[a-zA-Z0-9-]{1,128}$", - "type": "string" - }, - "RegionConcurrencyType": { - "enum": [ - "SEQUENTIAL", - "PARALLEL" - ], - "type": "string" - }, - "StackInstances": { - "additionalProperties": false, - "properties": { - "DeploymentTargets": { - "$ref": "#/definitions/DeploymentTargets" - }, - "ParameterOverrides": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Parameter" - }, - "type": "array", - "uniqueItems": true - }, - "Regions": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Region" - }, - "minItems": 1, - "type": "array", - "uniqueItems": true - } - }, - "required": [ - "DeploymentTargets", - "Regions" - ], - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "pattern": "^(?!aws:.*)[a-zA-Z0-9\\s\\:\\_\\.\\/\\=\\+\\-]+$", - "type": "string" - }, - "Value": { - "maxLength": 256, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "cloudformation:GetTemplateSummary", - "cloudformation:CreateStackSet", - "cloudformation:CreateStackInstances", - "cloudformation:DescribeStackSetOperation", - "cloudformation:ListStackSetOperationResults", - "cloudformation:TagResource", - "iam:PassRole" - ], - "timeoutInMinutes": 2160 - }, - "delete": { - "permissions": [ - "cloudformation:DeleteStackSet", - "cloudformation:DeleteStackInstances", - "cloudformation:DescribeStackSet", - "cloudformation:DescribeStackSetOperation", - "cloudformation:ListStackSetOperationResults", - "cloudformation:UntagResource" - ], - "timeoutInMinutes": 2160 - }, - "list": { - "permissions": [ - "cloudformation:ListStackSets", - "cloudformation:DescribeStackSet", - "cloudformation:ListStackInstances", - "cloudformation:DescribeStackInstance" - ] - }, - "read": { - "permissions": [ - "cloudformation:DescribeStackSet", - "cloudformation:ListStackInstances", - "cloudformation:DescribeStackInstance" - ] - }, - "update": { - "permissions": [ - "cloudformation:GetTemplateSummary", - "cloudformation:UpdateStackSet", - "cloudformation:CreateStackInstances", - "cloudformation:DeleteStackInstances", - "cloudformation:UpdateStackInstances", - "cloudformation:DescribeStackSet", - "cloudformation:DescribeStackSetOperation", - "cloudformation:ListStackSetOperationResults", - "cloudformation:TagResource", - "cloudformation:UntagResource", - "iam:PassRole" - ], - "timeoutInMinutes": 2160 - } - }, - "oneOf": [ - { - "required": [ - "TemplateURL" - ] - }, - { - "required": [ - "TemplateBody" - ] - } - ], - "primaryIdentifier": [ - "/properties/StackSetId" - ], - "properties": { - "AdministrationRoleARN": { - "maxLength": 2048, - "minLength": 20, - "type": "string" - }, - "AutoDeployment": { - "$ref": "#/definitions/AutoDeployment" - }, - "CallAs": { - "enum": [ - "SELF", - "DELEGATED_ADMIN" - ], - "type": "string" - }, - "Capabilities": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Capability" - }, - "type": "array", - "uniqueItems": true - }, - "Description": { - "maxLength": 1024, - "minLength": 1, - "type": "string" - }, - "ExecutionRoleName": { - "maxLength": 64, - "minLength": 1, - "type": "string" - }, - "ManagedExecution": { - "additionalProperties": false, - "properties": { - "Active": { - "$ref": "#/definitions/Active" - } - }, - "type": "object" - }, - "OperationPreferences": { - "$ref": "#/definitions/OperationPreferences" - }, - "Parameters": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Parameter" - }, - "type": "array", - "uniqueItems": true - }, - "PermissionModel": { - "enum": [ - "SELF_MANAGED", - "SERVICE_MANAGED" - ], - "type": "string" - }, - "StackInstancesGroup": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/StackInstances" - }, - "type": "array", - "uniqueItems": true - }, - "StackSetId": { - "type": "string" - }, - "StackSetName": { - "maxLength": 128, - "pattern": "^[a-zA-Z][a-zA-Z0-9\\-]{0,127}$", - "type": "string" - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 50, - "type": "array", - "uniqueItems": true - }, - "TemplateBody": { - "maxLength": 51200, - "minLength": 1, - "type": "string" - }, - "TemplateURL": { - "maxLength": 5120, - "minLength": 1, - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/StackSetId" - ], - "required": [ - "StackSetName", - "PermissionModel" - ], - "resourceLink": { - "mappings": { - "StackSetId": "/StackSetId" - }, - "templateUri": "/cloudformation/home?region=${awsRegion}#/stacksets/${StackSetId}" - }, - "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-cloudformation.git", - "typeName": "AWS::CloudFormation::StackSet", - "writeOnlyProperties": [ - "/properties/TemplateURL", - "/properties/OperationPreferences", - "/properties/StackInstancesGroup", - "/properties/CallAs" - ] -} diff --git a/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-ec2-subnetcidrblock.json b/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-ec2-subnetcidrblock.json deleted file mode 100644 index bc482f9dbc..0000000000 --- a/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-ec2-subnetcidrblock.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/Ipv6CidrBlock", - "/properties/SubnetId" - ], - "primaryIdentifier": [ - "/properties/Id" - ], - "properties": { - "Id": { - "type": "string" - }, - "Ipv6CidrBlock": { - "type": "string" - }, - "SubnetId": { - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/Id" - ], - "required": [ - "Ipv6CidrBlock", - "SubnetId" - ], - "typeName": "AWS::EC2::SubnetCidrBlock" -} diff --git a/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-iam-oidcprovider.json b/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-iam-oidcprovider.json new file mode 100644 index 0000000000..1794a452ca --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-iam-oidcprovider.json @@ -0,0 +1,120 @@ +{ + "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" + ], + "required": [ + "ThumbprintList" + ], + "tagging": { + "cloudFormationSystemTags": false, + "tagOnCreate": true, + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::IAM::OIDCProvider" +} diff --git a/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-stepfunctions-activity.json b/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-stepfunctions-activity.json new file mode 100644 index 0000000000..7aaf191ed1 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_gov_west_1/aws-stepfunctions-activity.json @@ -0,0 +1,98 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/Name" + ], + "definitions": { + "TagsEntry": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 1, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "states:CreateActivity", + "states:TagResource" + ] + }, + "delete": { + "permissions": [ + "states:DescribeActivity", + "states:DeleteActivity" + ] + }, + "list": { + "permissions": [ + "states:ListActivities" + ] + }, + "read": { + "permissions": [ + "states:DescribeActivity", + "states:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "states:ListTagsForResource", + "states:TagResource", + "states:UntagResource" + ] + } + }, + "primaryIdentifier": [ + "/properties/Arn" + ], + "properties": { + "Arn": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "Name": { + "maxLength": 80, + "minLength": 1, + "type": "string" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/TagsEntry" + }, + "type": "array", + "uniqueItems": false + } + }, + "readOnlyProperties": [ + "/properties/Arn" + ], + "required": [ + "Name" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-stepfunctions.git", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::StepFunctions::Activity" +} diff --git a/src/cfnlint/data/schemas/providers/us_west_1/__init__.py b/src/cfnlint/data/schemas/providers/us_west_1/__init__.py index 13c4323460..33797fa9a9 100644 --- a/src/cfnlint/data/schemas/providers/us_west_1/__init__.py +++ b/src/cfnlint/data/schemas/providers/us_west_1/__init__.py @@ -1110,6 +1110,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-config-aggregationauthorization.json", @@ -1490,6 +1491,7 @@ "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", @@ -1749,6 +1751,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/us_west_1/aws-cognito-userpooluicustomizationattachment.json b/src/cfnlint/data/schemas/providers/us_west_1/aws-cognito-userpooluicustomizationattachment.json deleted file mode 100644 index 98baaf1ea2..0000000000 --- a/src/cfnlint/data/schemas/providers/us_west_1/aws-cognito-userpooluicustomizationattachment.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "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": [ - "UserPoolId", - "ClientId" - ], - "typeName": "AWS::Cognito::UserPoolUICustomizationAttachment" -} diff --git a/src/cfnlint/data/schemas/providers/us_west_1/aws-sso-instance.json b/src/cfnlint/data/schemas/providers/us_west_1/aws-sso-instance.json deleted file mode 100644 index 26c2ca063a..0000000000 --- a/src/cfnlint/data/schemas/providers/us_west_1/aws-sso-instance.json +++ /dev/null @@ -1,125 +0,0 @@ -{ - "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_west_2/__init__.py b/src/cfnlint/data/schemas/providers/us_west_2/__init__.py index 993bba63e8..289523d3bc 100644 --- a/src/cfnlint/data/schemas/providers/us_west_2/__init__.py +++ b/src/cfnlint/data/schemas/providers/us_west_2/__init__.py @@ -1546,7 +1546,6 @@ "aws-connect-viewversion.json", "aws-connectcampaigns-campaign.json", "aws-controltower-enabledbaseline.json", - "aws-controltower-enabledcontrol.json", "aws-controltower-landingzone.json", "aws-customerprofiles-calculatedattributedefinition.json", "aws-customerprofiles-domain.json", @@ -2005,7 +2004,6 @@ "aws-lakeformation-resource.json", "aws-lakeformation-tag.json", "aws-lakeformation-tagassociation.json", - "aws-lambda-alias.json", "aws-lambda-codesigningconfig.json", "aws-lambda-eventinvokeconfig.json", "aws-lambda-eventsourcemapping.json", @@ -2066,7 +2064,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", @@ -2326,6 +2323,7 @@ "aws-sagemaker-dataqualityjobdefinition.json", "aws-sagemaker-device.json", "aws-sagemaker-devicefleet.json", + "aws-sagemaker-domain.json", "aws-sagemaker-endpoint.json", "aws-sagemaker-endpointconfig.json", "aws-sagemaker-featuregroup.json", @@ -2346,6 +2344,7 @@ "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", @@ -2443,6 +2442,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/us_west_2/aws-controltower-enabledcontrol.json b/src/cfnlint/data/schemas/providers/us_west_2/aws-controltower-enabledcontrol.json new file mode 100644 index 0000000000..8f0be9c61f --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_west_2/aws-controltower-enabledcontrol.json @@ -0,0 +1,185 @@ +{ + "additionalProperties": false, + "createOnlyProperties": [ + "/properties/TargetIdentifier", + "/properties/ControlIdentifier" + ], + "definitions": { + "EnabledControlParameter": { + "additionalProperties": false, + "properties": { + "Key": { + "type": "string" + }, + "Value": { + "insertionOrder": false, + "items": { + "type": [ + "string", + "number", + "object", + "boolean" + ] + }, + "minItems": 1, + "type": [ + "array", + "string", + "number", + "object", + "boolean" + ] + } + }, + "required": [ + "Value", + "Key" + ], + "type": "object" + }, + "Tag": { + "additionalProperties": false, + "properties": { + "Key": { + "maxLength": 128, + "minLength": 1, + "type": "string" + }, + "Value": { + "maxLength": 256, + "minLength": 0, + "type": "string" + } + }, + "required": [ + "Key", + "Value" + ], + "type": "object" + } + }, + "handlers": { + "create": { + "permissions": [ + "controltower:ListEnabledControls", + "controltower:GetEnabledControl", + "controltower:GetControlOperation", + "controltower:EnableControl", + "controltower:TagResource", + "organizations:UpdatePolicy", + "organizations:CreatePolicy", + "organizations:AttachPolicy", + "organizations:DetachPolicy", + "organizations:ListPoliciesForTarget", + "organizations:ListTargetsForPolicy", + "organizations:DescribePolicy" + ], + "timeoutInMinutes": 720 + }, + "delete": { + "permissions": [ + "controltower:ListEnabledControls", + "controltower:GetEnabledControl", + "controltower:GetControlOperation", + "controltower:DisableControl", + "organizations:UpdatePolicy", + "organizations:DeletePolicy", + "organizations:CreatePolicy", + "organizations:AttachPolicy", + "organizations:DetachPolicy", + "organizations:ListPoliciesForTarget", + "organizations:ListTargetsForPolicy", + "organizations:DescribePolicy" + ], + "timeoutInMinutes": 720 + }, + "list": { + "handlerSchema": { + "properties": { + "TargetIdentifier": { + "$ref": "resource-schema.json#/properties/TargetIdentifier" + } + }, + "required": [ + "TargetIdentifier" + ] + }, + "permissions": [ + "controltower:ListEnabledControls" + ] + }, + "read": { + "permissions": [ + "controltower:ListEnabledControls", + "controltower:GetEnabledControl", + "controltower:ListTagsForResource" + ] + }, + "update": { + "permissions": [ + "controltower:ListEnabledControls", + "controltower:GetEnabledControl", + "controltower:GetControlOperation", + "controltower:UpdateEnabledControl", + "controltower:UntagResource", + "controltower:TagResource", + "organizations:UpdatePolicy", + "organizations:CreatePolicy", + "organizations:AttachPolicy", + "organizations:DetachPolicy", + "organizations:ListPoliciesForTarget", + "organizations:ListTargetsForPolicy", + "organizations:DescribePolicy" + ], + "timeoutInMinutes": 720 + } + }, + "primaryIdentifier": [ + "/properties/TargetIdentifier", + "/properties/ControlIdentifier" + ], + "properties": { + "ControlIdentifier": { + "maxLength": 2048, + "minLength": 20, + "pattern": "^arn:aws[0-9a-zA-Z_\\-:\\/]+$", + "type": "string" + }, + "Parameters": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/EnabledControlParameter" + }, + "minItems": 1, + "type": "array" + }, + "Tags": { + "insertionOrder": false, + "items": { + "$ref": "#/definitions/Tag" + }, + "maxItems": 50, + "minItems": 1, + "type": "array" + }, + "TargetIdentifier": { + "maxLength": 2048, + "minLength": 20, + "pattern": "^arn:aws[0-9a-zA-Z_\\-:\\/]+$", + "type": "string" + } + }, + "required": [ + "TargetIdentifier", + "ControlIdentifier" + ], + "sourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-controltower", + "tagging": { + "cloudFormationSystemTags": true, + "tagOnCreate": true, + "tagProperty": "/properties/Tags", + "tagUpdatable": true, + "taggable": true + }, + "typeName": "AWS::ControlTower::EnabledControl" +} diff --git a/src/cfnlint/data/schemas/providers/us_west_2/aws-lambda-alias.json b/src/cfnlint/data/schemas/providers/us_west_2/aws-lambda-alias.json new file mode 100644 index 0000000000..e952d8b59e --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_west_2/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/us_west_2/aws-mediaconnect-flowsource.json b/src/cfnlint/data/schemas/providers/us_west_2/aws-mediaconnect-flowsource.json new file mode 100644 index 0000000000..cf7d326061 --- /dev/null +++ b/src/cfnlint/data/schemas/providers/us_west_2/aws-mediaconnect-flowsource.json @@ -0,0 +1,200 @@ +{ + "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": { + "default": 2000, + "type": "integer" + }, + "MinLatency": { + "default": 2000, + "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/us_west_2/aws-sagemaker-domain.json b/src/cfnlint/data/schemas/providers/us_west_2/aws-sagemaker-domain.json deleted file mode 100644 index 5cd4ea45fa..0000000000 --- a/src/cfnlint/data/schemas/providers/us_west_2/aws-sagemaker-domain.json +++ /dev/null @@ -1,831 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/AuthMode", - "/properties/DomainName", - "/properties/DomainSettings/RStudioServerProDomainSettings/DefaultResourceSpec", - "/properties/KmsKeyId", - "/properties/VpcId", - "/properties/Tags" - ], - "definitions": { - "AppType": { - "enum": [ - "JupyterServer", - "TensorBoard", - "RStudioServerPro", - "JupyterLab", - "CodeEditor", - "DetailedProfiler", - "Canvas" - ], - "type": "string" - }, - "CodeEditorAppSettings": { - "additionalProperties": false, - "properties": { - "CustomImages": { - "items": { - "$ref": "#/definitions/CustomImage" - }, - "maxItems": 200, - "minItems": 0, - "type": "array", - "uniqueItems": false - }, - "DefaultResourceSpec": { - "$ref": "#/definitions/ResourceSpec" - }, - "LifecycleConfigArns": { - "items": { - "$ref": "#/definitions/StudioLifecycleConfigArn" - }, - "maxItems": 30, - "minItems": 0, - "type": "array", - "uniqueItems": false - } - }, - "type": "object" - }, - "CodeRepository": { - "additionalProperties": false, - "properties": { - "RepositoryUrl": { - "maxLength": 256, - "pattern": "^https://([.\\-_a-zA-Z0-9]+/?){3,1016}$", - "type": "string" - } - }, - "required": [ - "RepositoryUrl" - ], - "type": "object" - }, - "CustomFileSystemConfig": { - "additionalProperties": false, - "properties": { - "EFSFileSystemConfig": { - "$ref": "#/definitions/EFSFileSystemConfig" - } - }, - "type": "object" - }, - "CustomImage": { - "additionalProperties": false, - "properties": { - "AppImageConfigName": { - "maxLength": 63, - "pattern": "^[a-zA-Z0-9](-*[a-zA-Z0-9]){0,62}", - "type": "string" - }, - "ImageName": { - "maxLength": 63, - "pattern": "^[a-zA-Z0-9]([-.]?[a-zA-Z0-9]){0,62}$", - "type": "string" - }, - "ImageVersionNumber": { - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "AppImageConfigName", - "ImageName" - ], - "type": "object" - }, - "CustomPosixUserConfig": { - "additionalProperties": false, - "properties": { - "Gid": { - "maximum": 4000000, - "minimum": 1001, - "type": "integer" - }, - "Uid": { - "maximum": 4000000, - "minimum": 10000, - "type": "integer" - } - }, - "required": [ - "Uid", - "Gid" - ], - "type": "object" - }, - "DefaultEbsStorageSettings": { - "additionalProperties": false, - "properties": { - "DefaultEbsVolumeSizeInGb": { - "$ref": "#/definitions/SpaceEbsVolumeSizeInGb" - }, - "MaximumEbsVolumeSizeInGb": { - "$ref": "#/definitions/SpaceEbsVolumeSizeInGb" - } - }, - "required": [ - "DefaultEbsVolumeSizeInGb", - "MaximumEbsVolumeSizeInGb" - ], - "type": "object" - }, - "DefaultSpaceSettings": { - "additionalProperties": false, - "properties": { - "CustomFileSystemConfigs": { - "items": { - "$ref": "#/definitions/CustomFileSystemConfig" - }, - "maxItems": 2, - "minItems": 0, - "type": "array", - "uniqueItems": true - }, - "CustomPosixUserConfig": { - "$ref": "#/definitions/CustomPosixUserConfig" - }, - "ExecutionRole": { - "maxLength": 2048, - "minLength": 20, - "pattern": "^arn:aws[a-z\\-]*:iam::\\d{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+$", - "type": "string" - }, - "JupyterLabAppSettings": { - "$ref": "#/definitions/JupyterLabAppSettings" - }, - "JupyterServerAppSettings": { - "$ref": "#/definitions/JupyterServerAppSettings" - }, - "KernelGatewayAppSettings": { - "$ref": "#/definitions/KernelGatewayAppSettings" - }, - "SecurityGroups": { - "format": "AWS::EC2::SecurityGroup.Ids", - "insertionOrder": false, - "items": { - "format": "AWS::EC2::SecurityGroup.GroupId", - "maxLength": 32, - "pattern": "[-0-9a-zA-Z]+", - "type": "string" - }, - "maxItems": 5, - "minItems": 0, - "type": "array", - "uniqueItems": false - }, - "SpaceStorageSettings": { - "$ref": "#/definitions/DefaultSpaceStorageSettings" - } - }, - "required": [ - "ExecutionRole" - ], - "type": "object" - }, - "DefaultSpaceStorageSettings": { - "additionalProperties": false, - "properties": { - "DefaultEbsStorageSettings": { - "$ref": "#/definitions/DefaultEbsStorageSettings" - } - }, - "type": "object" - }, - "DockerSettings": { - "additionalProperties": false, - "properties": { - "EnableDockerAccess": { - "enum": [ - "ENABLED", - "DISABLED" - ], - "type": "string" - }, - "VpcOnlyTrustedAccounts": { - "insertionOrder": false, - "items": { - "maxLength": 12, - "minLength": 12, - "pattern": "^\\d+$", - "type": "string" - }, - "maxItems": 20, - "minItems": 0, - "type": "array", - "uniqueItems": false - } - }, - "type": "object" - }, - "DomainSettings": { - "additionalProperties": false, - "properties": { - "DockerSettings": { - "$ref": "#/definitions/DockerSettings" - }, - "RStudioServerProDomainSettings": { - "$ref": "#/definitions/RStudioServerProDomainSettings" - }, - "SecurityGroupIds": { - "format": "AWS::EC2::SecurityGroup.Ids", - "insertionOrder": false, - "items": { - "format": "AWS::EC2::SecurityGroup.GroupId", - "maxLength": 32, - "pattern": "[-0-9a-zA-Z]+", - "type": "string" - }, - "maxItems": 3, - "minItems": 1, - "type": "array", - "uniqueItems": false - } - }, - "type": "object" - }, - "EFSFileSystemConfig": { - "additionalProperties": false, - "properties": { - "FileSystemId": { - "maxLength": 21, - "minLength": 11, - "pattern": "^(fs-[0-9a-f]{8,})$", - "type": "string" - }, - "FileSystemPath": { - "maxLength": 256, - "minLength": 1, - "pattern": "^\\/\\S*$", - "type": "string" - } - }, - "required": [ - "FileSystemId" - ], - "type": "object" - }, - "JupyterLabAppSettings": { - "additionalProperties": false, - "properties": { - "CodeRepositories": { - "items": { - "$ref": "#/definitions/CodeRepository" - }, - "maxItems": 30, - "minItems": 0, - "type": "array", - "uniqueItems": false - }, - "CustomImages": { - "items": { - "$ref": "#/definitions/CustomImage" - }, - "maxItems": 200, - "minItems": 0, - "type": "array", - "uniqueItems": false - }, - "DefaultResourceSpec": { - "$ref": "#/definitions/ResourceSpec" - }, - "LifecycleConfigArns": { - "items": { - "$ref": "#/definitions/StudioLifecycleConfigArn" - }, - "maxItems": 30, - "minItems": 0, - "type": "array", - "uniqueItems": false - } - }, - "type": "object" - }, - "JupyterServerAppSettings": { - "additionalProperties": false, - "properties": { - "DefaultResourceSpec": { - "$ref": "#/definitions/ResourceSpec" - } - }, - "type": "object" - }, - "KernelGatewayAppSettings": { - "additionalProperties": false, - "properties": { - "CustomImages": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/CustomImage" - }, - "maxItems": 200, - "minItems": 0, - "type": "array", - "uniqueItems": false - }, - "DefaultResourceSpec": { - "$ref": "#/definitions/ResourceSpec" - } - }, - "type": "object" - }, - "MlTools": { - "enum": [ - "DataWrangler", - "FeatureStore", - "EmrClusters", - "AutoML", - "Experiments", - "Training", - "ModelEvaluation", - "Pipelines", - "Models", - "JumpStart", - "InferenceRecommender", - "Endpoints", - "Projects" - ], - "type": "string" - }, - "RSessionAppSettings": { - "additionalProperties": false, - "properties": { - "CustomImages": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/CustomImage" - }, - "maxItems": 200, - "minItems": 0, - "type": "array", - "uniqueItems": false - }, - "DefaultResourceSpec": { - "$ref": "#/definitions/ResourceSpec" - } - }, - "type": "object" - }, - "RStudioServerProAppSettings": { - "additionalProperties": false, - "properties": { - "AccessStatus": { - "enum": [ - "ENABLED", - "DISABLED" - ], - "type": "string" - }, - "UserGroup": { - "enum": [ - "R_STUDIO_ADMIN", - "R_STUDIO_USER" - ], - "type": "string" - } - }, - "type": "object" - }, - "RStudioServerProDomainSettings": { - "additionalProperties": false, - "properties": { - "DefaultResourceSpec": { - "$ref": "#/definitions/ResourceSpec" - }, - "DomainExecutionRoleArn": { - "maxLength": 2048, - "minLength": 20, - "pattern": "^arn:aws[a-z\\-]*:iam::\\d{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+$", - "type": "string" - }, - "RStudioConnectUrl": { - "pattern": "^(https:|http:|www\\.)\\S*", - "type": "string" - }, - "RStudioPackageManagerUrl": { - "pattern": "^(https:|http:|www\\.)\\S*", - "type": "string" - } - }, - "required": [ - "DomainExecutionRoleArn" - ], - "type": "object" - }, - "ResourceSpec": { - "additionalProperties": false, - "properties": { - "InstanceType": { - "enum": [ - "system", - "ml.t3.micro", - "ml.t3.small", - "ml.t3.medium", - "ml.t3.large", - "ml.t3.xlarge", - "ml.t3.2xlarge", - "ml.m5.large", - "ml.m5.xlarge", - "ml.m5.2xlarge", - "ml.m5.4xlarge", - "ml.m5.8xlarge", - "ml.m5.12xlarge", - "ml.m5.16xlarge", - "ml.m5.24xlarge", - "ml.c5.large", - "ml.c5.xlarge", - "ml.c5.2xlarge", - "ml.c5.4xlarge", - "ml.c5.9xlarge", - "ml.c5.12xlarge", - "ml.c5.18xlarge", - "ml.c5.24xlarge", - "ml.p3.2xlarge", - "ml.p3.8xlarge", - "ml.p3.16xlarge", - "ml.g4dn.xlarge", - "ml.g4dn.2xlarge", - "ml.g4dn.4xlarge", - "ml.g4dn.8xlarge", - "ml.g4dn.12xlarge", - "ml.g4dn.16xlarge", - "ml.r5.large", - "ml.r5.xlarge", - "ml.r5.2xlarge", - "ml.r5.4xlarge", - "ml.r5.8xlarge", - "ml.r5.12xlarge", - "ml.r5.16xlarge", - "ml.r5.24xlarge", - "ml.p3dn.24xlarge", - "ml.m5d.large", - "ml.m5d.xlarge", - "ml.m5d.2xlarge", - "ml.m5d.4xlarge", - "ml.m5d.8xlarge", - "ml.m5d.12xlarge", - "ml.m5d.16xlarge", - "ml.m5d.24xlarge", - "ml.g5.xlarge", - "ml.g5.2xlarge", - "ml.g5.4xlarge", - "ml.g5.8xlarge", - "ml.g5.12xlarge", - "ml.g5.16xlarge", - "ml.g5.24xlarge", - "ml.g5.48xlarge", - "ml.p4d.24xlarge", - "ml.p4de.24xlarge", - "ml.geospatial.interactive", - "ml.trn1.2xlarge", - "ml.trn1.32xlarge", - "ml.trn1n.32xlarge" - ], - "type": "string" - }, - "LifecycleConfigArn": { - "maxLength": 256, - "pattern": "arn:aws[a-z\\-]*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:studio-lifecycle-config/.*", - "type": "string" - }, - "SageMakerImageArn": { - "maxLength": 256, - "pattern": "^arn:aws(-[\\w]+)*:sagemaker:.+:[0-9]{12}:image/[a-z0-9]([-.]?[a-z0-9])*$", - "type": "string" - }, - "SageMakerImageVersionArn": { - "maxLength": 256, - "pattern": "^arn:aws(-[\\w]+)*:sagemaker:.+:[0-9]{12}:image-version/[a-z0-9]([-.]?[a-z0-9])*/[0-9]+$", - "type": "string" - } - }, - "type": "object" - }, - "SharingSettings": { - "additionalProperties": false, - "properties": { - "NotebookOutputOption": { - "enum": [ - "Allowed", - "Disabled" - ], - "type": "string" - }, - "S3KmsKeyId": { - "maxLength": 2048, - "pattern": ".*", - "type": "string" - }, - "S3OutputPath": { - "maxLength": 1024, - "pattern": "^(https|s3)://([^/]+)/?(.*)$", - "type": "string" - } - }, - "type": "object" - }, - "SpaceEbsVolumeSizeInGb": { - "maximum": 16384, - "minimum": 5, - "type": "integer" - }, - "StudioLifecycleConfigArn": { - "maxLength": 256, - "pattern": "arn:aws[a-z\\-]*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:studio-lifecycle-config/.*", - "type": "string" - }, - "StudioWebPortalSettings": { - "additionalProperties": false, - "properties": { - "HiddenAppTypes": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/AppType" - }, - "minItems": 0, - "type": "array", - "uniqueItems": true - }, - "HiddenMlTools": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/MlTools" - }, - "minItems": 0, - "type": "array", - "uniqueItems": true - } - }, - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 128, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - }, - "UserSettings": { - "additionalProperties": false, - "properties": { - "CodeEditorAppSettings": { - "$ref": "#/definitions/CodeEditorAppSettings" - }, - "CustomFileSystemConfigs": { - "items": { - "$ref": "#/definitions/CustomFileSystemConfig" - }, - "maxItems": 2, - "minItems": 0, - "type": "array", - "uniqueItems": true - }, - "CustomPosixUserConfig": { - "$ref": "#/definitions/CustomPosixUserConfig" - }, - "DefaultLandingUri": { - "maxLength": 1023, - "type": "string" - }, - "ExecutionRole": { - "maxLength": 2048, - "minLength": 20, - "pattern": "^arn:aws[a-z\\-]*:iam::\\d{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+$", - "type": "string" - }, - "JupyterLabAppSettings": { - "$ref": "#/definitions/JupyterLabAppSettings" - }, - "JupyterServerAppSettings": { - "$ref": "#/definitions/JupyterServerAppSettings" - }, - "KernelGatewayAppSettings": { - "$ref": "#/definitions/KernelGatewayAppSettings" - }, - "RSessionAppSettings": { - "$ref": "#/definitions/RSessionAppSettings" - }, - "RStudioServerProAppSettings": { - "$ref": "#/definitions/RStudioServerProAppSettings" - }, - "SecurityGroups": { - "format": "AWS::EC2::SecurityGroup.Ids", - "insertionOrder": false, - "items": { - "format": "AWS::EC2::SecurityGroup.GroupId", - "maxLength": 32, - "pattern": "[-0-9a-zA-Z]+", - "type": "string" - }, - "maxItems": 5, - "minItems": 0, - "type": "array", - "uniqueItems": false - }, - "SharingSettings": { - "$ref": "#/definitions/SharingSettings" - }, - "SpaceStorageSettings": { - "$ref": "#/definitions/DefaultSpaceStorageSettings" - }, - "StudioWebPortal": { - "enum": [ - "ENABLED", - "DISABLED" - ], - "type": "string" - }, - "StudioWebPortalSettings": { - "$ref": "#/definitions/StudioWebPortalSettings" - } - }, - "required": [ - "ExecutionRole" - ], - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "sagemaker:CreateApp", - "sagemaker:CreateDomain", - "sagemaker:DescribeDomain", - "sagemaker:DescribeImage", - "sagemaker:DescribeImageVersion", - "iam:CreateServiceLinkedRole", - "iam:PassRole", - "efs:CreateFileSystem", - "kms:CreateGrant", - "kms:Decrypt", - "kms:DescribeKey", - "kms:GenerateDataKeyWithoutPlainText" - ] - }, - "delete": { - "permissions": [ - "sagemaker:DeleteApp", - "sagemaker:DeleteDomain", - "sagemaker:DescribeDomain" - ] - }, - "list": { - "permissions": [ - "sagemaker:ListDomains" - ] - }, - "read": { - "permissions": [ - "sagemaker:DescribeDomain" - ] - }, - "update": { - "permissions": [ - "sagemaker:CreateApp", - "sagemaker:UpdateDomain", - "sagemaker:DescribeDomain", - "sagemaker:DescribeImage", - "sagemaker:DescribeImageVersion", - "iam:PassRole" - ] - } - }, - "primaryIdentifier": [ - "/properties/DomainId" - ], - "properties": { - "AppNetworkAccessType": { - "enum": [ - "PublicInternetOnly", - "VpcOnly" - ], - "type": "string" - }, - "AppSecurityGroupManagement": { - "enum": [ - "Service", - "Customer" - ], - "type": "string" - }, - "AuthMode": { - "enum": [ - "SSO", - "IAM" - ], - "type": "string" - }, - "DefaultSpaceSettings": { - "$ref": "#/definitions/DefaultSpaceSettings" - }, - "DefaultUserSettings": { - "$ref": "#/definitions/UserSettings" - }, - "DomainArn": { - "maxLength": 256, - "pattern": "arn:aws[a-z\\-]*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:domain/.*", - "type": "string" - }, - "DomainId": { - "maxLength": 63, - "pattern": "^d-(-*[a-z0-9])+", - "type": "string" - }, - "DomainName": { - "maxLength": 63, - "pattern": "^[a-zA-Z0-9](-*[a-zA-Z0-9]){0,62}", - "type": "string" - }, - "DomainSettings": { - "$ref": "#/definitions/DomainSettings" - }, - "HomeEfsFileSystemId": { - "maxLength": 32, - "type": "string" - }, - "KmsKeyId": { - "maxLength": 2048, - "pattern": ".*", - "type": "string" - }, - "SecurityGroupIdForDomainBoundary": { - "maxLength": 32, - "pattern": "[-0-9a-zA-Z]+", - "type": "string" - }, - "SingleSignOnApplicationArn": { - "pattern": "^arn:(aws|aws-us-gov|aws-cn|aws-iso|aws-iso-b):sso::[0-9]+:application/[a-zA-Z0-9-_.]+/apl-[a-zA-Z0-9]+$", - "type": "string" - }, - "SingleSignOnManagedApplicationInstanceId": { - "maxLength": 256, - "type": "string" - }, - "SubnetIds": { - "insertionOrder": false, - "items": { - "maxLength": 32, - "pattern": "[-0-9a-zA-Z]+", - "type": "string" - }, - "maxItems": 16, - "minItems": 1, - "type": "array", - "uniqueItems": false - }, - "Tags": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 50, - "minItems": 0, - "type": "array", - "uniqueItems": false - }, - "Url": { - "maxLength": 1024, - "type": "string" - }, - "VpcId": { - "format": "AWS::EC2::VPC.Id", - "maxLength": 32, - "pattern": "[-0-9a-zA-Z]+", - "type": "string" - } - }, - "readOnlyProperties": [ - "/properties/DomainArn", - "/properties/Url", - "/properties/DomainId", - "/properties/HomeEfsFileSystemId", - "/properties/SecurityGroupIdForDomainBoundary", - "/properties/SingleSignOnManagedApplicationInstanceId", - "/properties/SingleSignOnApplicationArn" - ], - "required": [ - "AuthMode", - "DefaultUserSettings", - "DomainName", - "SubnetIds", - "VpcId" - ], - "typeName": "AWS::SageMaker::Domain", - "writeOnlyProperties": [ - "/properties/Tags" - ] -} diff --git a/src/cfnlint/data/schemas/providers/us_west_2/aws-sagemaker-userprofile.json b/src/cfnlint/data/schemas/providers/us_west_2/aws-sagemaker-userprofile.json deleted file mode 100644 index c2c0daf9fe..0000000000 --- a/src/cfnlint/data/schemas/providers/us_west_2/aws-sagemaker-userprofile.json +++ /dev/null @@ -1,592 +0,0 @@ -{ - "additionalProperties": false, - "createOnlyProperties": [ - "/properties/DomainId", - "/properties/UserProfileName", - "/properties/SingleSignOnUserIdentifier", - "/properties/SingleSignOnUserValue", - "/properties/UserSettings/RStudioServerProAppSettings/AccessStatus", - "/properties/UserSettings/RStudioServerProAppSettings/UserGroup", - "/properties/Tags" - ], - "definitions": { - "AppType": { - "enum": [ - "JupyterServer", - "TensorBoard", - "RStudioServerPro", - "JupyterLab", - "CodeEditor", - "DetailedProfiler", - "Canvas" - ], - "type": "string" - }, - "CodeEditorAppSettings": { - "additionalProperties": false, - "properties": { - "CustomImages": { - "items": { - "$ref": "#/definitions/CustomImage" - }, - "maxItems": 30, - "minItems": 0, - "type": "array", - "uniqueItems": false - }, - "DefaultResourceSpec": { - "$ref": "#/definitions/ResourceSpec" - }, - "LifecycleConfigArns": { - "items": { - "$ref": "#/definitions/StudioLifecycleConfigArn" - }, - "maxItems": 30, - "minItems": 0, - "type": "array", - "uniqueItems": false - } - }, - "type": "object" - }, - "CodeRepository": { - "additionalProperties": false, - "properties": { - "RepositoryUrl": { - "maxLength": 256, - "pattern": "^https://([.\\-_a-zA-Z0-9]+/?){3,1016}$", - "type": "string" - } - }, - "required": [ - "RepositoryUrl" - ], - "type": "object" - }, - "CustomFileSystemConfig": { - "additionalProperties": false, - "properties": { - "EFSFileSystemConfig": { - "$ref": "#/definitions/EFSFileSystemConfig" - } - }, - "type": "object" - }, - "CustomImage": { - "additionalProperties": false, - "properties": { - "AppImageConfigName": { - "maxLength": 63, - "pattern": "^[a-zA-Z0-9](-*[a-zA-Z0-9]){0,62}", - "type": "string" - }, - "ImageName": { - "maxLength": 63, - "pattern": "^[a-zA-Z0-9]([-.]?[a-zA-Z0-9]){0,62}$", - "type": "string" - }, - "ImageVersionNumber": { - "minimum": 0, - "type": "integer" - } - }, - "required": [ - "AppImageConfigName", - "ImageName" - ], - "type": "object" - }, - "CustomPosixUserConfig": { - "additionalProperties": false, - "properties": { - "Gid": { - "maximum": 4000000, - "minimum": 1001, - "type": "integer" - }, - "Uid": { - "maximum": 4000000, - "minimum": 10000, - "type": "integer" - } - }, - "required": [ - "Uid", - "Gid" - ], - "type": "object" - }, - "DefaultEbsStorageSettings": { - "additionalProperties": false, - "properties": { - "DefaultEbsVolumeSizeInGb": { - "$ref": "#/definitions/SpaceEbsVolumeSizeInGb" - }, - "MaximumEbsVolumeSizeInGb": { - "$ref": "#/definitions/SpaceEbsVolumeSizeInGb" - } - }, - "required": [ - "DefaultEbsVolumeSizeInGb", - "MaximumEbsVolumeSizeInGb" - ], - "type": "object" - }, - "DefaultSpaceStorageSettings": { - "additionalProperties": false, - "properties": { - "DefaultEbsStorageSettings": { - "$ref": "#/definitions/DefaultEbsStorageSettings" - } - }, - "type": "object" - }, - "EFSFileSystemConfig": { - "additionalProperties": false, - "properties": { - "FileSystemId": { - "maxLength": 21, - "minLength": 11, - "pattern": "^(fs-[0-9a-f]{8,})$", - "type": "string" - }, - "FileSystemPath": { - "maxLength": 256, - "minLength": 1, - "pattern": "^\\/\\S*$", - "type": "string" - } - }, - "required": [ - "FileSystemId" - ], - "type": "object" - }, - "JupyterLabAppSettings": { - "additionalProperties": false, - "properties": { - "CodeRepositories": { - "items": { - "$ref": "#/definitions/CodeRepository" - }, - "maxItems": 30, - "minItems": 0, - "type": "array", - "uniqueItems": false - }, - "CustomImages": { - "items": { - "$ref": "#/definitions/CustomImage" - }, - "maxItems": 30, - "minItems": 0, - "type": "array", - "uniqueItems": false - }, - "DefaultResourceSpec": { - "$ref": "#/definitions/ResourceSpec" - }, - "LifecycleConfigArns": { - "items": { - "$ref": "#/definitions/StudioLifecycleConfigArn" - }, - "maxItems": 30, - "minItems": 0, - "type": "array", - "uniqueItems": false - } - }, - "type": "object" - }, - "JupyterServerAppSettings": { - "additionalProperties": false, - "properties": { - "DefaultResourceSpec": { - "$ref": "#/definitions/ResourceSpec" - } - }, - "type": "object" - }, - "KernelGatewayAppSettings": { - "additionalProperties": false, - "properties": { - "CustomImages": { - "items": { - "$ref": "#/definitions/CustomImage" - }, - "maxItems": 30, - "minItems": 0, - "type": "array", - "uniqueItems": false - }, - "DefaultResourceSpec": { - "$ref": "#/definitions/ResourceSpec" - } - }, - "type": "object" - }, - "MlTools": { - "enum": [ - "DataWrangler", - "FeatureStore", - "EmrClusters", - "AutoML", - "Experiments", - "Training", - "ModelEvaluation", - "Pipelines", - "Models", - "JumpStart", - "InferenceRecommender", - "Endpoints", - "Projects" - ], - "type": "string" - }, - "RStudioServerProAppSettings": { - "additionalProperties": false, - "properties": { - "AccessStatus": { - "enum": [ - "ENABLED", - "DISABLED" - ], - "type": "string" - }, - "UserGroup": { - "enum": [ - "R_STUDIO_ADMIN", - "R_STUDIO_USER" - ], - "type": "string" - } - }, - "type": "object" - }, - "ResourceSpec": { - "additionalProperties": false, - "properties": { - "InstanceType": { - "enum": [ - "system", - "ml.t3.micro", - "ml.t3.small", - "ml.t3.medium", - "ml.t3.large", - "ml.t3.xlarge", - "ml.t3.2xlarge", - "ml.m5.large", - "ml.m5.xlarge", - "ml.m5.2xlarge", - "ml.m5.4xlarge", - "ml.m5.8xlarge", - "ml.m5.12xlarge", - "ml.m5.16xlarge", - "ml.m5.24xlarge", - "ml.c5.large", - "ml.c5.xlarge", - "ml.c5.2xlarge", - "ml.c5.4xlarge", - "ml.c5.9xlarge", - "ml.c5.12xlarge", - "ml.c5.18xlarge", - "ml.c5.24xlarge", - "ml.p3.2xlarge", - "ml.p3.8xlarge", - "ml.p3.16xlarge", - "ml.g4dn.xlarge", - "ml.g4dn.2xlarge", - "ml.g4dn.4xlarge", - "ml.g4dn.8xlarge", - "ml.g4dn.12xlarge", - "ml.g4dn.16xlarge", - "ml.r5.large", - "ml.r5.xlarge", - "ml.r5.2xlarge", - "ml.r5.4xlarge", - "ml.r5.8xlarge", - "ml.r5.12xlarge", - "ml.r5.16xlarge", - "ml.r5.24xlarge", - "ml.p3dn.24xlarge", - "ml.m5d.large", - "ml.m5d.xlarge", - "ml.m5d.2xlarge", - "ml.m5d.4xlarge", - "ml.m5d.8xlarge", - "ml.m5d.12xlarge", - "ml.m5d.16xlarge", - "ml.m5d.24xlarge", - "ml.g5.xlarge", - "ml.g5.2xlarge", - "ml.g5.4xlarge", - "ml.g5.8xlarge", - "ml.g5.12xlarge", - "ml.g5.16xlarge", - "ml.g5.24xlarge", - "ml.g5.48xlarge", - "ml.p4d.24xlarge", - "ml.p4de.24xlarge", - "ml.geospatial.interactive", - "ml.trn1.2xlarge", - "ml.trn1.32xlarge", - "ml.trn1n.32xlarge" - ], - "type": "string" - }, - "SageMakerImageArn": { - "maxLength": 256, - "pattern": "^arn:aws(-[\\w]+)*:sagemaker:.+:[0-9]{12}:image/[a-z0-9]([-.]?[a-z0-9])*$", - "type": "string" - }, - "SageMakerImageVersionArn": { - "maxLength": 256, - "pattern": "^arn:aws(-[\\w]+)*:sagemaker:.+:[0-9]{12}:image-version/[a-z0-9]([-.]?[a-z0-9])*/[0-9]+$", - "type": "string" - } - }, - "type": "object" - }, - "SharingSettings": { - "additionalProperties": false, - "properties": { - "NotebookOutputOption": { - "enum": [ - "Allowed", - "Disabled" - ], - "type": "string" - }, - "S3KmsKeyId": { - "maxLength": 2048, - "pattern": ".*", - "type": "string" - }, - "S3OutputPath": { - "maxLength": 1024, - "pattern": "^(https|s3)://([^/]+)/?(.*)$", - "type": "string" - } - }, - "type": "object" - }, - "SpaceEbsVolumeSizeInGb": { - "maximum": 16384, - "minimum": 5, - "type": "integer" - }, - "StudioLifecycleConfigArn": { - "maxLength": 256, - "pattern": "arn:aws[a-z\\-]*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:studio-lifecycle-config/.*", - "type": "string" - }, - "StudioWebPortalSettings": { - "additionalProperties": false, - "properties": { - "HiddenAppTypes": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/AppType" - }, - "minItems": 0, - "type": "array", - "uniqueItems": true - }, - "HiddenMlTools": { - "insertionOrder": false, - "items": { - "$ref": "#/definitions/MlTools" - }, - "minItems": 0, - "type": "array", - "uniqueItems": true - } - }, - "type": "object" - }, - "Tag": { - "additionalProperties": false, - "properties": { - "Key": { - "maxLength": 128, - "minLength": 1, - "type": "string" - }, - "Value": { - "maxLength": 128, - "minLength": 1, - "type": "string" - } - }, - "required": [ - "Key", - "Value" - ], - "type": "object" - }, - "UserSettings": { - "additionalProperties": false, - "properties": { - "CodeEditorAppSettings": { - "$ref": "#/definitions/CodeEditorAppSettings" - }, - "CustomFileSystemConfigs": { - "items": { - "$ref": "#/definitions/CustomFileSystemConfig" - }, - "maxItems": 2, - "minItems": 0, - "type": "array", - "uniqueItems": true - }, - "CustomPosixUserConfig": { - "$ref": "#/definitions/CustomPosixUserConfig" - }, - "DefaultLandingUri": { - "maxLength": 1023, - "type": "string" - }, - "ExecutionRole": { - "maxLength": 2048, - "minLength": 20, - "pattern": "^arn:aws[a-z\\-]*:iam::\\d{12}:role/?[a-zA-Z_0-9+=,.@\\-_/]+$", - "type": "string" - }, - "JupyterLabAppSettings": { - "$ref": "#/definitions/JupyterLabAppSettings" - }, - "JupyterServerAppSettings": { - "$ref": "#/definitions/JupyterServerAppSettings" - }, - "KernelGatewayAppSettings": { - "$ref": "#/definitions/KernelGatewayAppSettings" - }, - "RStudioServerProAppSettings": { - "$ref": "#/definitions/RStudioServerProAppSettings" - }, - "SecurityGroups": { - "format": "AWS::EC2::SecurityGroup.Ids", - "items": { - "format": "AWS::EC2::SecurityGroup.GroupId", - "maxLength": 32, - "pattern": "[-0-9a-zA-Z]+", - "type": "string" - }, - "maxItems": 5, - "minItems": 0, - "type": "array", - "uniqueItems": false - }, - "SharingSettings": { - "$ref": "#/definitions/SharingSettings" - }, - "SpaceStorageSettings": { - "$ref": "#/definitions/DefaultSpaceStorageSettings" - }, - "StudioWebPortal": { - "enum": [ - "ENABLED", - "DISABLED" - ], - "type": "string" - }, - "StudioWebPortalSettings": { - "$ref": "#/definitions/StudioWebPortalSettings" - } - }, - "type": "object" - } - }, - "handlers": { - "create": { - "permissions": [ - "sagemaker:CreateUserProfile", - "sagemaker:DescribeUserProfile", - "sagemaker:DescribeImage", - "sagemaker:DescribeImageVersion", - "iam:PassRole" - ] - }, - "delete": { - "permissions": [ - "sagemaker:DeleteUserProfile", - "sagemaker:DescribeUserProfile" - ] - }, - "list": { - "permissions": [ - "sagemaker:ListUserProfiles" - ] - }, - "read": { - "permissions": [ - "sagemaker:DescribeUserProfile" - ] - }, - "update": { - "permissions": [ - "sagemaker:UpdateUserProfile", - "sagemaker:DescribeUserProfile", - "sagemaker:DescribeImage", - "sagemaker:DescribeImageVersion", - "iam:PassRole" - ] - } - }, - "primaryIdentifier": [ - "/properties/UserProfileName", - "/properties/DomainId" - ], - "properties": { - "DomainId": { - "maxLength": 63, - "minLength": 1, - "type": "string" - }, - "SingleSignOnUserIdentifier": { - "pattern": "UserName", - "type": "string" - }, - "SingleSignOnUserValue": { - "maxLength": 256, - "minLength": 1, - "type": "string" - }, - "Tags": { - "items": { - "$ref": "#/definitions/Tag" - }, - "maxItems": 50, - "minItems": 0, - "type": "array", - "uniqueItems": false - }, - "UserProfileArn": { - "maxLength": 256, - "pattern": "arn:aws[a-z\\-]*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:user-profile/.*", - "type": "string" - }, - "UserProfileName": { - "maxLength": 63, - "minLength": 1, - "type": "string" - }, - "UserSettings": { - "$ref": "#/definitions/UserSettings", - "maxItems": 50, - "minItems": 0, - "uniqueItems": false - } - }, - "readOnlyProperties": [ - "/properties/UserProfileArn" - ], - "required": [ - "DomainId", - "UserProfileName" - ], - "typeName": "AWS::SageMaker::UserProfile", - "writeOnlyProperties": [ - "/properties/Tags" - ] -} diff --git a/src/cfnlint/data/schemas/providers/us_west_2/aws-sso-instance.json b/src/cfnlint/data/schemas/providers/us_west_2/aws-sso-instance.json deleted file mode 100644 index 26c2ca063a..0000000000 --- a/src/cfnlint/data/schemas/providers/us_west_2/aws-sso-instance.json +++ /dev/null @@ -1,125 +0,0 @@ -{ - "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" -}