From 76bec7de41acdf7b9e3f5d17b8201f75c6a21469 Mon Sep 17 00:00:00 2001 From: Gavin Zhang Date: Tue, 22 Nov 2022 10:34:41 -0800 Subject: [PATCH 1/4] Add schema types to global section --- bin/validate_schema.py | 3 + samtranslator/schema/aws_serverless_api.py | 40 +- .../schema/aws_serverless_function.py | 46 +- .../schema/aws_serverless_httpapi.py | 20 +- .../schema/aws_serverless_simpletable.py | 4 +- samtranslator/schema/schema.json | 4726 +++++++++-------- 6 files changed, 2453 insertions(+), 2386 deletions(-) diff --git a/bin/validate_schema.py b/bin/validate_schema.py index 1e17622845..1a31384f03 100755 --- a/bin/validate_schema.py +++ b/bin/validate_schema.py @@ -50,6 +50,9 @@ def get_templates() -> Iterator[Path]: "api_with_authorizers_max_openapi", # 'UserPoolArn' expects to be a string, but received list "api_with_authorizers_max", # 'UserPoolArn' expects to be a string, but received list "api_with_any_method_in_swagger", # Missing required field 'FunctionArn' + "api_with_cors_and_only_headers", # 'AllowOrigins' is required field + "api_with_cors_and_only_methods", # 'AllowOrigins' is required field + "implicit_api_with_auth_and_conditions_max", # 'UserPoolArn' expects to be a string, but received list ] def should_skip(s: str) -> bool: diff --git a/samtranslator/schema/aws_serverless_api.py b/samtranslator/schema/aws_serverless_api.py index ef810954cc..7a05e7607d 100644 --- a/samtranslator/schema/aws_serverless_api.py +++ b/samtranslator/schema/aws_serverless_api.py @@ -2,7 +2,7 @@ from typing_extensions import Literal -from samtranslator.schema.common import PassThrough, BaseModel, SamIntrinsic, Unknown +from samtranslator.schema.common import PassThrough, BaseModel, SamIntrinsic class ResourcePolicy(BaseModel): @@ -64,7 +64,7 @@ class LambdaRequestAuthorizer(BaseModel): class UsagePlan(BaseModel): - CreateUsagePlan: Literal["PER_API", "SHARED", "NONE"] + CreateUsagePlan: Union[Literal["PER_API", "SHARED", "NONE"], SamIntrinsic] Description: Optional[PassThrough] Quota: Optional[PassThrough] Tags: Optional[PassThrough] @@ -126,7 +126,7 @@ class Properties(BaseModel): CacheClusterEnabled: Optional[PassThrough] CacheClusterSize: Optional[PassThrough] CanarySetting: Optional[PassThrough] - Cors: Optional[Union[str, Cors]] + Cors: Optional[Union[str, SamIntrinsic, Cors]] DefinitionBody: Optional[PassThrough] DefinitionUri: Optional[PassThrough] Description: Optional[PassThrough] @@ -148,23 +148,23 @@ class Properties(BaseModel): class Globals(BaseModel): - Auth: Unknown - Name: Unknown - DefinitionUri: Unknown - CacheClusterEnabled: Unknown - CacheClusterSize: Unknown - Variables: Unknown - EndpointConfiguration: Unknown - MethodSettings: Unknown - BinaryMediaTypes: Unknown - MinimumCompressionSize: Unknown - Cors: Unknown - GatewayResponses: Unknown - AccessLogSetting: Unknown - CanarySetting: Unknown - TracingEnabled: Unknown - OpenApiVersion: Unknown - Domain: Unknown + Auth: Optional[Auth] + Name: Optional[PassThrough] + DefinitionUri: Optional[PassThrough] + CacheClusterEnabled: Optional[PassThrough] + CacheClusterSize: Optional[PassThrough] + Variables: Optional[PassThrough] + EndpointConfiguration: Optional[PassThrough] + MethodSettings: Optional[PassThrough] + BinaryMediaTypes: Optional[PassThrough] + MinimumCompressionSize: Optional[PassThrough] + Cors: Optional[Union[str, SamIntrinsic, Cors]] + GatewayResponses: Optional[PassThrough] + AccessLogSetting: Optional[PassThrough] + CanarySetting: Optional[PassThrough] + TracingEnabled: Optional[PassThrough] + OpenApiVersion: Optional[Union[float, str]] # TODO: float doesn't exist in documentation + Domain: Optional[Domain] class Resource(BaseModel): diff --git a/samtranslator/schema/aws_serverless_function.py b/samtranslator/schema/aws_serverless_function.py index 0ab5581540..5fd04f64f2 100644 --- a/samtranslator/schema/aws_serverless_function.py +++ b/samtranslator/schema/aws_serverless_function.py @@ -2,7 +2,7 @@ from typing_extensions import Literal -from samtranslator.schema.common import PassThrough, BaseModel, SamIntrinsic, Unknown +from samtranslator.schema.common import PassThrough, BaseModel, SamIntrinsic class ResourcePolicy(BaseModel): @@ -421,28 +421,28 @@ class Properties(BaseModel): class Globals(BaseModel): - Handler: Unknown - Runtime: Unknown - CodeUri: Unknown - DeadLetterQueue: Unknown - Description: Unknown - MemorySize: Unknown - Timeout: Unknown - VpcConfig: Unknown - Environment: Unknown - Tags: Unknown - Tracing: Unknown - KmsKeyArn: Unknown - Layers: Unknown - AutoPublishAlias: Unknown - DeploymentPreference: Unknown - PermissionsBoundary: Unknown - ReservedConcurrentExecutions: Unknown - ProvisionedConcurrencyConfig: Unknown - AssumeRolePolicyDocument: Unknown - EventInvokeConfig: Unknown - Architectures: Unknown - EphemeralStorage: Unknown + Handler: Optional[PassThrough] + Runtime: Optional[PassThrough] + CodeUri: Optional[Union[str, CodeUri]] + DeadLetterQueue: Optional[Union[SamIntrinsic, DeadLetterQueue]] + Description: Optional[PassThrough] + MemorySize: Optional[PassThrough] + Timeout: Optional[PassThrough] + VpcConfig: Optional[PassThrough] + Environment: Optional[PassThrough] + Tags: Optional[Dict[str, Any]] + Tracing: Optional[Union[str, SamIntrinsic]] + KmsKeyArn: Optional[PassThrough] + Layers: Optional[PassThrough] + AutoPublishAlias: Optional[Union[str, SamIntrinsic]] + DeploymentPreference: Optional[DeploymentPreference] + PermissionsBoundary: Optional[PassThrough] + ReservedConcurrentExecutions: Optional[PassThrough] + ProvisionedConcurrencyConfig: Optional[PassThrough] + AssumeRolePolicyDocument: Optional[Dict[str, Any]] + EventInvokeConfig: Optional[EventInvokeConfig] + Architectures: Optional[PassThrough] + EphemeralStorage: Optional[PassThrough] class Resource(BaseModel): diff --git a/samtranslator/schema/aws_serverless_httpapi.py b/samtranslator/schema/aws_serverless_httpapi.py index 2f523ebc91..50bc214a37 100644 --- a/samtranslator/schema/aws_serverless_httpapi.py +++ b/samtranslator/schema/aws_serverless_httpapi.py @@ -2,7 +2,7 @@ from typing_extensions import Literal -from samtranslator.schema.common import PassThrough, BaseModel, SamIntrinsic, Unknown +from samtranslator.schema.common import PassThrough, BaseModel, SamIntrinsic class OAuth2Authorizer(BaseModel): @@ -97,15 +97,15 @@ class Properties(BaseModel): class Globals(BaseModel): - Auth: Unknown - AccessLogSettings: Unknown - StageVariables: Unknown - Tags: Unknown - RouteSettings: Unknown - FailOnWarnings: Unknown - Domain: Unknown - CorsConfiguration: Unknown - DefaultRouteSettings: Unknown + Auth: Optional[Auth] + AccessLogSettings: Optional[PassThrough] + StageVariables: Optional[PassThrough] + Tags: Optional[Dict[str, Any]] + RouteSettings: Optional[PassThrough] + FailOnWarnings: Optional[PassThrough] + Domain: Optional[Domain] + CorsConfiguration: Optional[PassThrough] + DefaultRouteSettings: Optional[PassThrough] class Resource(BaseModel): diff --git a/samtranslator/schema/aws_serverless_simpletable.py b/samtranslator/schema/aws_serverless_simpletable.py index cf86f35c48..f7bf02ae2c 100644 --- a/samtranslator/schema/aws_serverless_simpletable.py +++ b/samtranslator/schema/aws_serverless_simpletable.py @@ -2,7 +2,7 @@ from typing_extensions import Literal -from samtranslator.schema.common import PassThrough, BaseModel, Unknown +from samtranslator.schema.common import PassThrough, BaseModel class PrimaryKey(BaseModel): @@ -19,7 +19,7 @@ class Properties(BaseModel): class Globals(BaseModel): - SSESpecification: Unknown + SSESpecification: Optional[PassThrough] class Resource(BaseModel): diff --git a/samtranslator/schema/schema.json b/samtranslator/schema/schema.json index adf038b3e7..70c64f7854 100644 --- a/samtranslator/schema/schema.json +++ b/samtranslator/schema/schema.json @@ -45,6 +45,196 @@ "Resources" ], "definitions": { + "CodeUri": { + "title": "CodeUri", + "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", + "type": "object", + "properties": { + "Bucket": { + "title": "Bucket", + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] + }, + "Key": { + "title": "Key", + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] + }, + "Version": { + "title": "Version", + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] + } + }, + "required": [ + "Bucket", + "Key" + ], + "additionalProperties": false + }, + "DeadLetterQueue": { + "title": "DeadLetterQueue", + "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", + "type": "object", + "properties": { + "TargetArn": { + "title": "Targetarn", + "type": "string" + }, + "Type": { + "title": "Type", + "enum": [ + "SNS", + "SQS" + ], + "type": "string" + } + }, + "required": [ + "TargetArn", + "Type" + ], + "additionalProperties": false + }, + "Hooks": { + "title": "Hooks", + "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", + "type": "object", + "properties": { + "PostTraffic": { + "title": "Posttraffic", + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] + }, + "PreTraffic": { + "title": "Pretraffic", + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] + } + }, + "additionalProperties": false + }, + "DeploymentPreference": { + "title": "DeploymentPreference", + "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", + "type": "object", + "properties": { + "Alarms": { + "title": "Alarms", + "anyOf": [ + { + "type": "array", + "items": { + "type": "object" + } + }, + { + "type": "object" + } + ] + }, + "Enabled": { + "title": "Enabled", + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "object" + } + ] + }, + "Hooks": { + "$ref": "#/definitions/Hooks" + }, + "PassthroughCondition": { + "title": "Passthroughcondition", + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "object" + } + ] + }, + "Role": { + "title": "Role", + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] + }, + "TriggerConfigurations": { + "title": "Triggerconfigurations" + }, + "Type": { + "title": "Type", + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] + } + }, + "additionalProperties": false + }, + "EventInvokeConfig": { + "title": "EventInvokeConfig", + "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", + "type": "object", + "properties": { + "DestinationConfig": { + "title": "Destinationconfig" + }, + "MaximumEventAgeInSeconds": { + "title": "Maximumeventageinseconds", + "type": "integer" + }, + "MaximumRetryAttempts": { + "title": "Maximumretryattempts", + "type": "integer" + } + }, + "additionalProperties": false + }, "samtranslator__schema__aws_serverless_function__Globals": { "title": "Globals", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", @@ -57,10 +247,26 @@ "title": "Runtime" }, "CodeUri": { - "title": "Codeuri" + "title": "Codeuri", + "anyOf": [ + { + "type": "string" + }, + { + "$ref": "#/definitions/CodeUri" + } + ] }, "DeadLetterQueue": { - "title": "Deadletterqueue" + "title": "Deadletterqueue", + "anyOf": [ + { + "type": "object" + }, + { + "$ref": "#/definitions/DeadLetterQueue" + } + ] }, "Description": { "title": "Description" @@ -78,10 +284,19 @@ "title": "Environment" }, "Tags": { - "title": "Tags" + "title": "Tags", + "type": "object" }, "Tracing": { - "title": "Tracing" + "title": "Tracing", + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] }, "KmsKeyArn": { "title": "Kmskeyarn" @@ -90,10 +305,18 @@ "title": "Layers" }, "AutoPublishAlias": { - "title": "Autopublishalias" + "title": "Autopublishalias", + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] }, "DeploymentPreference": { - "title": "Deploymentpreference" + "$ref": "#/definitions/DeploymentPreference" }, "PermissionsBoundary": { "title": "Permissionsboundary" @@ -105,10 +328,11 @@ "title": "Provisionedconcurrencyconfig" }, "AssumeRolePolicyDocument": { - "title": "Assumerolepolicydocument" + "title": "Assumerolepolicydocument", + "type": "object" }, "EventInvokeConfig": { - "title": "Eventinvokeconfig" + "$ref": "#/definitions/EventInvokeConfig" }, "Architectures": { "title": "Architectures" @@ -119,246 +343,197 @@ }, "additionalProperties": false }, - "samtranslator__schema__aws_serverless_api__Globals": { - "title": "Globals", + "CognitoAuthorizerIdentity": { + "title": "CognitoAuthorizerIdentity", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "Auth": { - "title": "Auth" + "Header": { + "title": "Header", + "type": "string" }, - "Name": { - "title": "Name" + "ReauthorizeEvery": { + "title": "Reauthorizeevery", + "anyOf": [ + { + "type": "integer" + }, + { + "type": "object" + } + ] }, - "DefinitionUri": { - "title": "Definitionuri" - }, - "CacheClusterEnabled": { - "title": "Cacheclusterenabled" - }, - "CacheClusterSize": { - "title": "Cacheclustersize" - }, - "Variables": { - "title": "Variables" - }, - "EndpointConfiguration": { - "title": "Endpointconfiguration" - }, - "MethodSettings": { - "title": "Methodsettings" - }, - "BinaryMediaTypes": { - "title": "Binarymediatypes" - }, - "MinimumCompressionSize": { - "title": "Minimumcompressionsize" - }, - "Cors": { - "title": "Cors" - }, - "GatewayResponses": { - "title": "Gatewayresponses" - }, - "AccessLogSetting": { - "title": "Accesslogsetting" - }, - "CanarySetting": { - "title": "Canarysetting" - }, - "TracingEnabled": { - "title": "Tracingenabled" - }, - "OpenApiVersion": { - "title": "Openapiversion" - }, - "Domain": { - "title": "Domain" + "ValidationExpression": { + "title": "Validationexpression", + "type": "string" } }, "additionalProperties": false }, - "samtranslator__schema__aws_serverless_httpapi__Globals": { - "title": "Globals", + "CognitoAuthorizer": { + "title": "CognitoAuthorizer", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "Auth": { - "title": "Auth" - }, - "AccessLogSettings": { - "title": "Accesslogsettings" - }, - "StageVariables": { - "title": "Stagevariables" - }, - "Tags": { - "title": "Tags" - }, - "RouteSettings": { - "title": "Routesettings" - }, - "FailOnWarnings": { - "title": "Failonwarnings" - }, - "Domain": { - "title": "Domain" + "AuthorizationScopes": { + "title": "Authorizationscopes", + "type": "array", + "items": { + "type": "string" + } }, - "CorsConfiguration": { - "title": "Corsconfiguration" + "Identity": { + "$ref": "#/definitions/CognitoAuthorizerIdentity" }, - "DefaultRouteSettings": { - "title": "Defaultroutesettings" - } - }, - "additionalProperties": false - }, - "samtranslator__schema__aws_serverless_simpletable__Globals": { - "title": "Globals", - "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", - "type": "object", - "properties": { - "SSESpecification": { - "title": "Ssespecification" + "UserPoolArn": { + "title": "Userpoolarn", + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] } }, + "required": [ + "UserPoolArn" + ], "additionalProperties": false }, - "__main____Globals": { - "title": "Globals", + "LambdaTokenAuthorizerIdentity": { + "title": "LambdaTokenAuthorizerIdentity", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "Function": { - "$ref": "#/definitions/samtranslator__schema__aws_serverless_function__Globals" - }, - "Api": { - "$ref": "#/definitions/samtranslator__schema__aws_serverless_api__Globals" - }, - "HttpApi": { - "$ref": "#/definitions/samtranslator__schema__aws_serverless_httpapi__Globals" + "ReauthorizeEvery": { + "title": "Reauthorizeevery", + "anyOf": [ + { + "type": "integer" + }, + { + "type": "object" + } + ] }, - "SimpleTable": { - "$ref": "#/definitions/samtranslator__schema__aws_serverless_simpletable__Globals" - } - }, - "additionalProperties": false - }, - "ResourceReference": { - "title": "ResourceReference", - "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", - "type": "object", - "properties": { - "Id": { - "title": "Id", + "ValidationExpression": { + "title": "Validationexpression", "type": "string" }, - "Arn": { - "title": "Arn" - }, - "Name": { - "title": "Name" - }, - "Qualifier": { - "title": "Qualifier" - }, - "QueueUrl": { - "title": "Queueurl" - }, - "ResourceId": { - "title": "Resourceid" - }, - "RoleName": { - "title": "Rolename" - }, - "Type": { - "title": "Type", + "Header": { + "title": "Header", "type": "string" } }, "additionalProperties": false }, - "samtranslator__schema__aws_serverless_connector__Properties": { - "title": "Properties", + "LambdaTokenAuthorizer": { + "title": "LambdaTokenAuthorizer", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "Source": { - "$ref": "#/definitions/ResourceReference" - }, - "Destination": { - "$ref": "#/definitions/ResourceReference" - }, - "Permissions": { - "title": "Permissions", + "AuthorizationScopes": { + "title": "Authorizationscopes", "type": "array", "items": { - "enum": [ - "Read", - "Write" - ], "type": "string" } - } - }, - "required": [ - "Source", - "Destination", - "Permissions" - ], - "additionalProperties": false - }, - "samtranslator__schema__aws_serverless_connector__Resource": { - "title": "Resource", - "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", - "type": "object", - "properties": { - "Type": { - "title": "Type", + }, + "FunctionArn": { + "title": "Functionarn", + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] + }, + "FunctionInvokeRole": { + "title": "Functioninvokerole", + "type": "string" + }, + "FunctionPayloadType": { + "title": "Functionpayloadtype", "enum": [ - "AWS::Serverless::Connector" + "REQUEST", + "TOKEN" ], "type": "string" }, - "Properties": { - "$ref": "#/definitions/samtranslator__schema__aws_serverless_connector__Properties" + "Identity": { + "$ref": "#/definitions/LambdaTokenAuthorizerIdentity" } }, "required": [ - "Type", - "Properties" + "FunctionArn" ], "additionalProperties": false }, - "CodeUri": { - "title": "CodeUri", + "LambdaRequestAuthorizerIdentity": { + "title": "LambdaRequestAuthorizerIdentity", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "Bucket": { - "title": "Bucket", + "Context": { + "title": "Context", + "type": "array", + "items": { + "type": "string" + } + }, + "Headers": { + "title": "Headers", + "type": "array", + "items": { + "type": "string" + } + }, + "QueryStrings": { + "title": "Querystrings", + "type": "array", + "items": { + "type": "string" + } + }, + "ReauthorizeEvery": { + "title": "Reauthorizeevery", "anyOf": [ { - "type": "string" + "type": "integer" }, { "type": "object" } ] }, - "Key": { - "title": "Key", - "anyOf": [ - { - "type": "string" - }, - { - "type": "object" - } - ] + "StageVariables": { + "title": "Stagevariables", + "type": "array", + "items": { + "type": "string" + } + } + }, + "additionalProperties": false + }, + "LambdaRequestAuthorizer": { + "title": "LambdaRequestAuthorizer", + "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", + "type": "object", + "properties": { + "AuthorizationScopes": { + "title": "Authorizationscopes", + "type": "array", + "items": { + "type": "string" + } }, - "Version": { - "title": "Version", + "FunctionArn": { + "title": "Functionarn", "anyOf": [ { "type": "string" @@ -367,233 +542,356 @@ "type": "object" } ] - } - }, - "required": [ - "Bucket", - "Key" - ], - "additionalProperties": false - }, - "DeadLetterQueue": { - "title": "DeadLetterQueue", - "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", - "type": "object", - "properties": { - "TargetArn": { - "title": "Targetarn", + }, + "FunctionInvokeRole": { + "title": "Functioninvokerole", "type": "string" }, - "Type": { - "title": "Type", + "FunctionPayloadType": { + "title": "Functionpayloadtype", "enum": [ - "SNS", - "SQS" + "REQUEST", + "TOKEN" ], "type": "string" + }, + "Identity": { + "$ref": "#/definitions/LambdaRequestAuthorizerIdentity" } }, "required": [ - "TargetArn", - "Type" + "FunctionArn" ], "additionalProperties": false }, - "Hooks": { - "title": "Hooks", + "samtranslator__schema__aws_serverless_api__ResourcePolicy": { + "title": "ResourcePolicy", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "PostTraffic": { - "title": "Posttraffic", - "anyOf": [ - { - "type": "string" - }, - { - "type": "object" - } - ] + "AwsAccountBlacklist": { + "title": "Awsaccountblacklist", + "type": "array", + "items": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] + } }, - "PreTraffic": { - "title": "Pretraffic", - "anyOf": [ - { - "type": "string" - }, - { - "type": "object" - } - ] + "AwsAccountWhitelist": { + "title": "Awsaccountwhitelist", + "type": "array", + "items": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] + } + }, + "CustomStatements": { + "title": "Customstatements", + "type": "array", + "items": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] + } + }, + "IntrinsicVpcBlacklist": { + "title": "Intrinsicvpcblacklist", + "type": "array", + "items": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] + } + }, + "IntrinsicVpcWhitelist": { + "title": "Intrinsicvpcwhitelist", + "type": "array", + "items": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] + } + }, + "IntrinsicVpceBlacklist": { + "title": "Intrinsicvpceblacklist", + "type": "array", + "items": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] + } + }, + "IntrinsicVpceWhitelist": { + "title": "Intrinsicvpcewhitelist", + "type": "array", + "items": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] + } + }, + "IpRangeBlacklist": { + "title": "Iprangeblacklist", + "type": "array", + "items": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] + } + }, + "IpRangeWhitelist": { + "title": "Iprangewhitelist", + "type": "array", + "items": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] + } + }, + "SourceVpcBlacklist": { + "title": "Sourcevpcblacklist", + "type": "array", + "items": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] + } + }, + "SourceVpcWhitelist": { + "title": "Sourcevpcwhitelist", + "type": "array", + "items": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] + } } }, "additionalProperties": false }, - "DeploymentPreference": { - "title": "DeploymentPreference", + "UsagePlan": { + "title": "UsagePlan", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "Alarms": { - "title": "Alarms", + "CreateUsagePlan": { + "title": "Createusageplan", "anyOf": [ { - "type": "array", - "items": { - "type": "object" - } + "enum": [ + "PER_API", + "SHARED", + "NONE" + ], + "type": "string" }, { "type": "object" } ] }, - "Enabled": { - "title": "Enabled", - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "object" - } - ] - }, - "Hooks": { - "$ref": "#/definitions/Hooks" + "Description": { + "title": "Description" }, - "PassthroughCondition": { - "title": "Passthroughcondition", - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "object" - } - ] + "Quota": { + "title": "Quota" }, - "Role": { - "title": "Role", - "anyOf": [ - { - "type": "string" - }, - { - "type": "object" - } - ] + "Tags": { + "title": "Tags" }, - "TriggerConfigurations": { - "title": "Triggerconfigurations" + "Throttle": { + "title": "Throttle" }, - "Type": { - "title": "Type", - "anyOf": [ - { - "type": "string" - }, - { - "type": "object" - } - ] + "UsagePlanName": { + "title": "Usageplanname" } }, + "required": [ + "CreateUsagePlan" + ], "additionalProperties": false }, - "EventInvokeConfig": { - "title": "EventInvokeConfig", + "samtranslator__schema__aws_serverless_api__Auth": { + "title": "Auth", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "DestinationConfig": { - "title": "Destinationconfig" + "AddDefaultAuthorizerToCorsPreflight": { + "title": "Adddefaultauthorizertocorspreflight", + "type": "boolean" }, - "MaximumEventAgeInSeconds": { - "title": "Maximumeventageinseconds", - "type": "integer" + "ApiKeyRequired": { + "title": "Apikeyrequired", + "type": "boolean" }, - "MaximumRetryAttempts": { - "title": "Maximumretryattempts", - "type": "integer" + "Authorizers": { + "title": "Authorizers", + "type": "object", + "additionalProperties": { + "anyOf": [ + { + "$ref": "#/definitions/CognitoAuthorizer" + }, + { + "$ref": "#/definitions/LambdaTokenAuthorizer" + }, + { + "$ref": "#/definitions/LambdaRequestAuthorizer" + } + ] + } + }, + "DefaultAuthorizer": { + "title": "Defaultauthorizer", + "type": "string" + }, + "InvokeRole": { + "title": "Invokerole", + "type": "string" + }, + "ResourcePolicy": { + "$ref": "#/definitions/samtranslator__schema__aws_serverless_api__ResourcePolicy" + }, + "UsagePlan": { + "$ref": "#/definitions/UsagePlan" } }, "additionalProperties": false }, - "S3EventProperties": { - "title": "S3EventProperties", + "Cors": { + "title": "Cors", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "Bucket": { - "title": "Bucket", - "anyOf": [ - { - "type": "string" - }, - { - "type": "object" - } - ] + "AllowCredentials": { + "title": "Allowcredentials", + "type": "boolean" }, - "Events": { - "title": "Events" + "AllowHeaders": { + "title": "Allowheaders", + "type": "string" }, - "Filter": { - "title": "Filter" + "AllowMethods": { + "title": "Allowmethods", + "type": "string" + }, + "AllowOrigin": { + "title": "Alloworigin", + "type": "string" + }, + "MaxAge": { + "title": "Maxage", + "type": "string" } }, "required": [ - "Bucket" + "AllowOrigin" ], "additionalProperties": false }, - "S3Event": { - "title": "S3Event", + "samtranslator__schema__aws_serverless_api__Route53": { + "title": "Route53", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "Properties": { - "$ref": "#/definitions/S3EventProperties" + "DistributionDomainName": { + "title": "Distributiondomainname" }, - "Type": { - "title": "Type", - "enum": [ - "S3" - ], - "type": "string" + "EvaluateTargetHealth": { + "title": "Evaluatetargethealth" + }, + "HostedZoneId": { + "title": "Hostedzoneid" + }, + "HostedZoneName": { + "title": "Hostedzonename" + }, + "IpV6": { + "title": "Ipv6", + "type": "boolean" } }, - "required": [ - "Properties", - "Type" - ], "additionalProperties": false }, - "SqsSubscription": { - "title": "SqsSubscription", + "samtranslator__schema__aws_serverless_api__Domain": { + "title": "Domain", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "BatchSize": { - "title": "Batchsize", - "anyOf": [ - { - "type": "string" - }, - { - "type": "object" - } - ] + "BasePath": { + "title": "Basepath" }, - "Enabled": { - "title": "Enabled", - "type": "boolean" + "CertificateArn": { + "title": "Certificatearn" }, - "QueueArn": { - "title": "Queuearn", + "DomainName": { + "title": "Domainname" + }, + "EndpointConfiguration": { + "title": "Endpointconfiguration", "anyOf": [ { + "enum": [ + "REGIONAL", + "EDGE" + ], "type": "string" }, { @@ -601,447 +899,289 @@ } ] }, - "QueuePolicyLogicalId": { - "title": "Queuepolicylogicalid", - "type": "string" + "MutualTlsAuthentication": { + "title": "Mutualtlsauthentication" }, - "QueueUrl": { - "title": "Queueurl", - "anyOf": [ - { - "type": "string" - }, - { - "type": "object" - } - ] + "OwnershipVerificationCertificateArn": { + "title": "Ownershipverificationcertificatearn" + }, + "Route53": { + "$ref": "#/definitions/samtranslator__schema__aws_serverless_api__Route53" + }, + "SecurityPolicy": { + "title": "Securitypolicy" } }, - "required": [ - "QueueArn", - "QueueUrl" - ], "additionalProperties": false }, - "SNSEventProperties": { - "title": "SNSEventProperties", + "samtranslator__schema__aws_serverless_api__Globals": { + "title": "Globals", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "FilterPolicy": { - "title": "Filterpolicy" + "Auth": { + "$ref": "#/definitions/samtranslator__schema__aws_serverless_api__Auth" }, - "Region": { - "title": "Region" + "Name": { + "title": "Name" }, - "SqsSubscription": { - "title": "Sqssubscription", - "anyOf": [ - { - "type": "boolean" - }, - { - "$ref": "#/definitions/SqsSubscription" - } - ] + "DefinitionUri": { + "title": "Definitionuri" }, - "Topic": { - "title": "Topic" - } - }, - "additionalProperties": false - }, - "SNSEvent": { - "title": "SNSEvent", - "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", - "type": "object", - "properties": { - "Properties": { - "$ref": "#/definitions/SNSEventProperties" + "CacheClusterEnabled": { + "title": "Cacheclusterenabled" }, - "Type": { - "title": "Type", - "enum": [ - "SNS" - ], - "type": "string" - } - }, - "required": [ - "Properties", - "Type" - ], - "additionalProperties": false - }, - "KinesisEventProperties": { - "title": "KinesisEventProperties", - "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", - "type": "object", - "properties": { - "BatchSize": { - "title": "Batchsize" + "CacheClusterSize": { + "title": "Cacheclustersize" }, - "BisectBatchOnFunctionError": { - "title": "Bisectbatchonfunctionerror" + "Variables": { + "title": "Variables" }, - "DestinationConfig": { - "title": "Destinationconfig" + "EndpointConfiguration": { + "title": "Endpointconfiguration" }, - "Enabled": { - "title": "Enabled" + "MethodSettings": { + "title": "Methodsettings" }, - "FilterCriteria": { - "title": "Filtercriteria" + "BinaryMediaTypes": { + "title": "Binarymediatypes" }, - "FunctionResponseTypes": { - "title": "Functionresponsetypes" + "MinimumCompressionSize": { + "title": "Minimumcompressionsize" }, - "MaximumBatchingWindowInSeconds": { - "title": "Maximumbatchingwindowinseconds" + "Cors": { + "title": "Cors", + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + }, + { + "$ref": "#/definitions/Cors" + } + ] }, - "MaximumRecordAgeInSeconds": { - "title": "Maximumrecordageinseconds" + "GatewayResponses": { + "title": "Gatewayresponses" }, - "MaximumRetryAttempts": { - "title": "Maximumretryattempts" + "AccessLogSetting": { + "title": "Accesslogsetting" }, - "ParallelizationFactor": { - "title": "Parallelizationfactor" + "CanarySetting": { + "title": "Canarysetting" }, - "StartingPosition": { - "title": "Startingposition" + "TracingEnabled": { + "title": "Tracingenabled" }, - "Stream": { - "title": "Stream" + "OpenApiVersion": { + "title": "Openapiversion", + "anyOf": [ + { + "type": "number" + }, + { + "type": "string" + } + ] }, - "TumblingWindowInSeconds": { - "title": "Tumblingwindowinseconds" + "Domain": { + "$ref": "#/definitions/samtranslator__schema__aws_serverless_api__Domain" } }, "additionalProperties": false }, - "KinesisEvent": { - "title": "KinesisEvent", + "OAuth2Authorizer": { + "title": "OAuth2Authorizer", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "Type": { - "title": "Type", - "enum": [ - "Kinesis" - ], + "AuthorizationScopes": { + "title": "Authorizationscopes", + "type": "array", + "items": { + "type": "string" + } + }, + "IdentitySource": { + "title": "Identitysource", "type": "string" }, - "Properties": { - "$ref": "#/definitions/KinesisEventProperties" + "JwtConfiguration": { + "title": "Jwtconfiguration" } }, - "required": [ - "Type", - "Properties" - ], "additionalProperties": false }, - "DynamoDBEventProperties": { - "title": "DynamoDBEventProperties", + "LambdaAuthorizerIdentity": { + "title": "LambdaAuthorizerIdentity", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "BatchSize": { - "title": "Batchsize" - }, - "BisectBatchOnFunctionError": { - "title": "Bisectbatchonfunctionerror" - }, - "DestinationConfig": { - "title": "Destinationconfig" - }, - "Enabled": { - "title": "Enabled" - }, - "FilterCriteria": { - "title": "Filtercriteria" - }, - "FunctionResponseTypes": { - "title": "Functionresponsetypes" - }, - "MaximumBatchingWindowInSeconds": { - "title": "Maximumbatchingwindowinseconds" - }, - "MaximumRecordAgeInSeconds": { - "title": "Maximumrecordageinseconds" - }, - "MaximumRetryAttempts": { - "title": "Maximumretryattempts" + "Context": { + "title": "Context", + "type": "array", + "items": { + "type": "string" + } }, - "ParallelizationFactor": { - "title": "Parallelizationfactor" + "Headers": { + "title": "Headers", + "type": "array", + "items": { + "type": "string" + } }, - "StartingPosition": { - "title": "Startingposition" + "QueryStrings": { + "title": "Querystrings", + "type": "array", + "items": { + "type": "string" + } }, - "Stream": { - "title": "Stream" + "ReauthorizeEvery": { + "title": "Reauthorizeevery", + "type": "integer" }, - "TumblingWindowInSeconds": { - "title": "Tumblingwindowinseconds" + "StageVariables": { + "title": "Stagevariables", + "type": "array", + "items": { + "type": "string" + } } }, "additionalProperties": false }, - "DynamoDBEvent": { - "title": "DynamoDBEvent", + "LambdaAuthorizer": { + "title": "LambdaAuthorizer", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "Type": { - "title": "Type", - "enum": [ - "DynamoDB" - ], - "type": "string" + "AuthorizerPayloadFormatVersion": { + "title": "Authorizerpayloadformatversion", + "anyOf": [ + { + "enum": [ + "1.0", + "2.0" + ], + "type": "string" + }, + { + "type": "number" + } + ] }, - "Properties": { - "$ref": "#/definitions/DynamoDBEventProperties" + "EnableSimpleResponses": { + "title": "Enablesimpleresponses", + "type": "boolean" + }, + "FunctionArn": { + "title": "Functionarn", + "type": "object" + }, + "FunctionInvokeRole": { + "title": "Functioninvokerole", + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] + }, + "Identity": { + "$ref": "#/definitions/LambdaAuthorizerIdentity" } }, "required": [ - "Type", - "Properties" + "AuthorizerPayloadFormatVersion", + "FunctionArn" ], "additionalProperties": false }, - "SQSEventProperties": { - "title": "SQSEventProperties", + "samtranslator__schema__aws_serverless_httpapi__Auth": { + "title": "Auth", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "BatchSize": { - "title": "Batchsize" - }, - "Enabled": { - "title": "Enabled" - }, - "FilterCriteria": { - "title": "Filtercriteria" - }, - "MaximumBatchingWindowInSeconds": { - "title": "Maximumbatchingwindowinseconds" + "Authorizers": { + "title": "Authorizers", + "type": "object", + "additionalProperties": { + "anyOf": [ + { + "$ref": "#/definitions/OAuth2Authorizer" + }, + { + "$ref": "#/definitions/LambdaAuthorizer" + } + ] + } }, - "Queue": { - "title": "Queue" - } - }, - "additionalProperties": false - }, - "SQSEvent": { - "title": "SQSEvent", - "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", - "type": "object", - "properties": { - "Type": { - "title": "Type", - "enum": [ - "SQS" - ], + "DefaultAuthorizer": { + "title": "Defaultauthorizer", "type": "string" }, - "Properties": { - "$ref": "#/definitions/SQSEventProperties" + "EnableIamAuthorizer": { + "title": "Enableiamauthorizer", + "type": "boolean" } }, - "required": [ - "Type", - "Properties" - ], "additionalProperties": false }, - "samtranslator__schema__aws_serverless_function__ResourcePolicy": { - "title": "ResourcePolicy", + "samtranslator__schema__aws_serverless_httpapi__Route53": { + "title": "Route53", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "AwsAccountBlacklist": { - "title": "Awsaccountblacklist", - "type": "array", - "items": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "object" - } - ] - } - }, - "AwsAccountWhitelist": { - "title": "Awsaccountwhitelist", - "type": "array", - "items": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "object" - } - ] - } - }, - "CustomStatements": { - "title": "Customstatements", - "type": "array", - "items": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "object" - } - ] - } - }, - "IntrinsicVpcBlacklist": { - "title": "Intrinsicvpcblacklist", - "type": "array", - "items": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "object" - } - ] - } - }, - "IntrinsicVpcWhitelist": { - "title": "Intrinsicvpcwhitelist", - "type": "array", - "items": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "object" - } - ] - } - }, - "IntrinsicVpceBlacklist": { - "title": "Intrinsicvpceblacklist", - "type": "array", - "items": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "object" - } - ] - } - }, - "IntrinsicVpceWhitelist": { - "title": "Intrinsicvpcewhitelist", - "type": "array", - "items": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "object" - } - ] - } + "DistributionDomainName": { + "title": "Distributiondomainname" }, - "IpRangeBlacklist": { - "title": "Iprangeblacklist", - "type": "array", - "items": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "object" - } - ] - } + "EvaluateTargetHealth": { + "title": "Evaluatetargethealth" }, - "IpRangeWhitelist": { - "title": "Iprangewhitelist", - "type": "array", - "items": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "object" - } - ] - } + "HostedZoneId": { + "title": "Hostedzoneid" }, - "SourceVpcBlacklist": { - "title": "Sourcevpcblacklist", - "type": "array", - "items": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "object" - } - ] - } + "HostedZoneName": { + "title": "Hostedzonename" }, - "SourceVpcWhitelist": { - "title": "Sourcevpcwhitelist", - "type": "array", - "items": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "object" - } - ] - } + "IpV6": { + "title": "Ipv6", + "type": "boolean" } }, "additionalProperties": false }, - "ApiAuth": { - "title": "ApiAuth", + "samtranslator__schema__aws_serverless_httpapi__Domain": { + "title": "Domain", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "ApiKeyRequired": { - "title": "Apikeyrequired", - "type": "boolean" - }, - "AuthorizationScopes": { - "title": "Authorizationscopes", + "BasePath": { + "title": "Basepath", "type": "array", "items": { "type": "string" } }, - "Authorizer": { - "title": "Authorizer", - "type": "string" + "CertificateArn": { + "title": "Certificatearn" }, - "InvokeRole": { - "title": "Invokerole", + "DomainName": { + "title": "Domainname" + }, + "EndpointConfiguration": { + "title": "Endpointconfiguration", "anyOf": [ { + "enum": [ + "REGIONAL" + ], "type": "string" }, { @@ -1049,318 +1189,388 @@ } ] }, - "ResourcePolicy": { - "$ref": "#/definitions/samtranslator__schema__aws_serverless_function__ResourcePolicy" + "MutualTlsAuthentication": { + "title": "Mutualtlsauthentication" + }, + "OwnershipVerificationCertificateArn": { + "title": "Ownershipverificationcertificatearn" + }, + "Route53": { + "$ref": "#/definitions/samtranslator__schema__aws_serverless_httpapi__Route53" + }, + "SecurityPolicy": { + "title": "Securitypolicy" } }, "additionalProperties": false }, - "RequestModel": { - "title": "RequestModel", + "samtranslator__schema__aws_serverless_httpapi__Globals": { + "title": "Globals", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "Model": { - "title": "Model", - "type": "string" + "Auth": { + "$ref": "#/definitions/samtranslator__schema__aws_serverless_httpapi__Auth" }, - "Required": { - "title": "Required", - "type": "boolean" + "AccessLogSettings": { + "title": "Accesslogsettings" }, - "ValidateBody": { - "title": "Validatebody", - "type": "boolean" + "StageVariables": { + "title": "Stagevariables" }, - "ValidateParameters": { - "title": "Validateparameters", - "type": "boolean" + "Tags": { + "title": "Tags", + "type": "object" + }, + "RouteSettings": { + "title": "Routesettings" + }, + "FailOnWarnings": { + "title": "Failonwarnings" + }, + "Domain": { + "$ref": "#/definitions/samtranslator__schema__aws_serverless_httpapi__Domain" + }, + "CorsConfiguration": { + "title": "Corsconfiguration" + }, + "DefaultRouteSettings": { + "title": "Defaultroutesettings" } }, - "required": [ - "Model" - ], "additionalProperties": false }, - "RequestParameters": { - "title": "RequestParameters", + "samtranslator__schema__aws_serverless_simpletable__Globals": { + "title": "Globals", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "Caching": { - "title": "Caching", - "type": "boolean" - }, - "Required": { - "title": "Required", - "type": "boolean" + "SSESpecification": { + "title": "Ssespecification" } }, "additionalProperties": false }, - "samtranslator__schema__aws_serverless_function__ApiEventProperties": { - "title": "ApiEventProperties", + "__main____Globals": { + "title": "Globals", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "Auth": { - "$ref": "#/definitions/ApiAuth" - }, - "Method": { - "title": "Method", - "type": "string" - }, - "Path": { - "title": "Path", - "type": "string" + "Function": { + "$ref": "#/definitions/samtranslator__schema__aws_serverless_function__Globals" }, - "RequestModel": { - "$ref": "#/definitions/RequestModel" + "Api": { + "$ref": "#/definitions/samtranslator__schema__aws_serverless_api__Globals" }, - "RequestParameters": { - "title": "Requestparameters", - "anyOf": [ - { - "type": "string" - }, - { - "$ref": "#/definitions/RequestParameters" - } - ] + "HttpApi": { + "$ref": "#/definitions/samtranslator__schema__aws_serverless_httpapi__Globals" }, - "RestApiId": { - "title": "Restapiid", - "anyOf": [ - { - "type": "string" - }, - { - "type": "object" - } - ] + "SimpleTable": { + "$ref": "#/definitions/samtranslator__schema__aws_serverless_simpletable__Globals" } }, - "required": [ - "Method", - "Path" - ], "additionalProperties": false }, - "samtranslator__schema__aws_serverless_function__ApiEvent": { - "title": "ApiEvent", + "ResourceReference": { + "title": "ResourceReference", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { + "Id": { + "title": "Id", + "type": "string" + }, + "Arn": { + "title": "Arn" + }, + "Name": { + "title": "Name" + }, + "Qualifier": { + "title": "Qualifier" + }, + "QueueUrl": { + "title": "Queueurl" + }, + "ResourceId": { + "title": "Resourceid" + }, + "RoleName": { + "title": "Rolename" + }, "Type": { "title": "Type", - "enum": [ - "Api" - ], "type": "string" + } + }, + "additionalProperties": false + }, + "samtranslator__schema__aws_serverless_connector__Properties": { + "title": "Properties", + "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", + "type": "object", + "properties": { + "Source": { + "$ref": "#/definitions/ResourceReference" }, - "Properties": { - "$ref": "#/definitions/samtranslator__schema__aws_serverless_function__ApiEventProperties" + "Destination": { + "$ref": "#/definitions/ResourceReference" + }, + "Permissions": { + "title": "Permissions", + "type": "array", + "items": { + "enum": [ + "Read", + "Write" + ], + "type": "string" + } } }, "required": [ - "Type", - "Properties" + "Source", + "Destination", + "Permissions" ], "additionalProperties": false }, - "samtranslator__schema__aws_serverless_function__DeadLetterConfig": { - "title": "DeadLetterConfig", + "samtranslator__schema__aws_serverless_connector__Resource": { + "title": "Resource", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "Arn": { - "title": "Arn" - }, - "QueueLogicalId": { - "title": "Queuelogicalid", - "type": "string" - }, "Type": { "title": "Type", "enum": [ - "SQS" + "AWS::Serverless::Connector" ], "type": "string" + }, + "Properties": { + "$ref": "#/definitions/samtranslator__schema__aws_serverless_connector__Properties" } }, + "required": [ + "Type", + "Properties" + ], "additionalProperties": false }, - "EventsScheduleProperties": { - "title": "EventsScheduleProperties", + "S3EventProperties": { + "title": "S3EventProperties", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "DeadLetterConfig": { - "$ref": "#/definitions/samtranslator__schema__aws_serverless_function__DeadLetterConfig" - }, - "Description": { - "title": "Description" - }, - "Enabled": { - "title": "Enabled", - "type": "boolean" - }, - "Input": { - "title": "Input" - }, - "Name": { - "title": "Name" - }, - "RetryPolicy": { - "title": "Retrypolicy" + "Bucket": { + "title": "Bucket", + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] }, - "Schedule": { - "title": "Schedule" + "Events": { + "title": "Events" }, - "State": { - "title": "State" + "Filter": { + "title": "Filter" } }, + "required": [ + "Bucket" + ], "additionalProperties": false }, - "samtranslator__schema__aws_serverless_function__ScheduleEvent": { - "title": "ScheduleEvent", + "S3Event": { + "title": "S3Event", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { + "Properties": { + "$ref": "#/definitions/S3EventProperties" + }, "Type": { "title": "Type", "enum": [ - "Schedule" + "S3" ], "type": "string" - }, - "Properties": { - "$ref": "#/definitions/EventsScheduleProperties" } }, "required": [ - "Type", - "Properties" + "Properties", + "Type" ], "additionalProperties": false }, - "samtranslator__schema__aws_serverless_function__ScheduleV2EventProperties": { - "title": "ScheduleV2EventProperties", + "SqsSubscription": { + "title": "SqsSubscription", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "DeadLetterConfig": { - "$ref": "#/definitions/samtranslator__schema__aws_serverless_function__DeadLetterConfig" - }, - "Description": { - "title": "Description" + "BatchSize": { + "title": "Batchsize", + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] }, - "EndDate": { - "title": "Enddate" - }, - "FlexibleTimeWindow": { - "title": "Flexibletimewindow" - }, - "GroupName": { - "title": "Groupname" - }, - "Input": { - "title": "Input" - }, - "KmsKeyArn": { - "title": "Kmskeyarn" - }, - "Name": { - "title": "Name" - }, - "PermissionsBoundary": { - "title": "Permissionsboundary" + "Enabled": { + "title": "Enabled", + "type": "boolean" }, - "RetryPolicy": { - "title": "Retrypolicy" + "QueueArn": { + "title": "Queuearn", + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] }, - "RoleArn": { - "title": "Rolearn" + "QueuePolicyLogicalId": { + "title": "Queuepolicylogicalid", + "type": "string" }, - "ScheduleExpression": { - "title": "Scheduleexpression" + "QueueUrl": { + "title": "Queueurl", + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] + } + }, + "required": [ + "QueueArn", + "QueueUrl" + ], + "additionalProperties": false + }, + "SNSEventProperties": { + "title": "SNSEventProperties", + "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", + "type": "object", + "properties": { + "FilterPolicy": { + "title": "Filterpolicy" }, - "ScheduleExpressionTimezone": { - "title": "Scheduleexpressiontimezone" + "Region": { + "title": "Region" }, - "StartDate": { - "title": "Startdate" + "SqsSubscription": { + "title": "Sqssubscription", + "anyOf": [ + { + "type": "boolean" + }, + { + "$ref": "#/definitions/SqsSubscription" + } + ] }, - "State": { - "title": "State" + "Topic": { + "title": "Topic" } }, "additionalProperties": false }, - "samtranslator__schema__aws_serverless_function__ScheduleV2Event": { - "title": "ScheduleV2Event", + "SNSEvent": { + "title": "SNSEvent", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { + "Properties": { + "$ref": "#/definitions/SNSEventProperties" + }, "Type": { "title": "Type", "enum": [ - "ScheduleV2" + "SNS" ], "type": "string" - }, - "Properties": { - "$ref": "#/definitions/samtranslator__schema__aws_serverless_function__ScheduleV2EventProperties" } }, "required": [ - "Type", - "Properties" + "Properties", + "Type" ], "additionalProperties": false }, - "samtranslator__schema__aws_serverless_function__CloudWatchEventProperties": { - "title": "CloudWatchEventProperties", + "KinesisEventProperties": { + "title": "KinesisEventProperties", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { + "BatchSize": { + "title": "Batchsize" + }, + "BisectBatchOnFunctionError": { + "title": "Bisectbatchonfunctionerror" + }, + "DestinationConfig": { + "title": "Destinationconfig" + }, "Enabled": { - "title": "Enabled", - "type": "boolean" + "title": "Enabled" }, - "EventBusName": { - "title": "Eventbusname" + "FilterCriteria": { + "title": "Filtercriteria" }, - "Input": { - "title": "Input" + "FunctionResponseTypes": { + "title": "Functionresponsetypes" }, - "InputPath": { - "title": "Inputpath" + "MaximumBatchingWindowInSeconds": { + "title": "Maximumbatchingwindowinseconds" }, - "Pattern": { - "title": "Pattern" + "MaximumRecordAgeInSeconds": { + "title": "Maximumrecordageinseconds" }, - "State": { - "title": "State" + "MaximumRetryAttempts": { + "title": "Maximumretryattempts" + }, + "ParallelizationFactor": { + "title": "Parallelizationfactor" + }, + "StartingPosition": { + "title": "Startingposition" + }, + "Stream": { + "title": "Stream" + }, + "TumblingWindowInSeconds": { + "title": "Tumblingwindowinseconds" } }, "additionalProperties": false }, - "samtranslator__schema__aws_serverless_function__CloudWatchEvent": { - "title": "CloudWatchEvent", + "KinesisEvent": { + "title": "KinesisEvent", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { "Type": { "title": "Type", "enum": [ - "CloudWatchEvent" + "Kinesis" ], "type": "string" }, "Properties": { - "$ref": "#/definitions/samtranslator__schema__aws_serverless_function__CloudWatchEventProperties" + "$ref": "#/definitions/KinesisEventProperties" } }, "required": [ @@ -1369,49 +1579,67 @@ ], "additionalProperties": false }, - "samtranslator__schema__aws_serverless_function__EventBridgeRuleEventProperties": { - "title": "EventBridgeRuleEventProperties", + "DynamoDBEventProperties": { + "title": "DynamoDBEventProperties", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "DeadLetterConfig": { - "$ref": "#/definitions/samtranslator__schema__aws_serverless_function__DeadLetterConfig" + "BatchSize": { + "title": "Batchsize" }, - "EventBusName": { - "title": "Eventbusname" + "BisectBatchOnFunctionError": { + "title": "Bisectbatchonfunctionerror" }, - "Input": { - "title": "Input" + "DestinationConfig": { + "title": "Destinationconfig" }, - "InputPath": { - "title": "Inputpath" + "Enabled": { + "title": "Enabled" }, - "Pattern": { - "title": "Pattern" + "FilterCriteria": { + "title": "Filtercriteria" }, - "RetryPolicy": { - "title": "Retrypolicy" + "FunctionResponseTypes": { + "title": "Functionresponsetypes" }, - "Target": { - "title": "Target" + "MaximumBatchingWindowInSeconds": { + "title": "Maximumbatchingwindowinseconds" + }, + "MaximumRecordAgeInSeconds": { + "title": "Maximumrecordageinseconds" + }, + "MaximumRetryAttempts": { + "title": "Maximumretryattempts" + }, + "ParallelizationFactor": { + "title": "Parallelizationfactor" + }, + "StartingPosition": { + "title": "Startingposition" + }, + "Stream": { + "title": "Stream" + }, + "TumblingWindowInSeconds": { + "title": "Tumblingwindowinseconds" } }, "additionalProperties": false }, - "samtranslator__schema__aws_serverless_function__EventBridgeRuleEvent": { - "title": "EventBridgeRuleEvent", + "DynamoDBEvent": { + "title": "DynamoDBEvent", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { "Type": { "title": "Type", "enum": [ - "EventBridgeRule" + "DynamoDB" ], "type": "string" }, "Properties": { - "$ref": "#/definitions/samtranslator__schema__aws_serverless_function__EventBridgeRuleEventProperties" + "$ref": "#/definitions/DynamoDBEventProperties" } }, "required": [ @@ -1420,34 +1648,43 @@ ], "additionalProperties": false }, - "CloudWatchLogsEventProperties": { - "title": "CloudWatchLogsEventProperties", + "SQSEventProperties": { + "title": "SQSEventProperties", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "FilterPattern": { - "title": "Filterpattern" + "BatchSize": { + "title": "Batchsize" }, - "LogGroupName": { - "title": "Loggroupname" + "Enabled": { + "title": "Enabled" + }, + "FilterCriteria": { + "title": "Filtercriteria" + }, + "MaximumBatchingWindowInSeconds": { + "title": "Maximumbatchingwindowinseconds" + }, + "Queue": { + "title": "Queue" } }, "additionalProperties": false }, - "CloudWatchLogsEvent": { - "title": "CloudWatchLogsEvent", + "SQSEvent": { + "title": "SQSEvent", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { "Type": { "title": "Type", "enum": [ - "CloudWatchLogs" + "SQS" ], "type": "string" }, "Properties": { - "$ref": "#/definitions/CloudWatchLogsEventProperties" + "$ref": "#/definitions/SQSEventProperties" } }, "required": [ @@ -1456,159 +1693,255 @@ ], "additionalProperties": false }, - "IoTRuleEventProperties": { - "title": "IoTRuleEventProperties", + "samtranslator__schema__aws_serverless_function__ResourcePolicy": { + "title": "ResourcePolicy", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "AwsIotSqlVersion": { - "title": "Awsiotsqlversion" - }, - "Sql": { - "title": "Sql" - } - }, - "additionalProperties": false - }, - "IoTRuleEvent": { - "title": "IoTRuleEvent", - "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", - "type": "object", - "properties": { - "Type": { - "title": "Type", - "enum": [ - "IoTRule" - ], - "type": "string" + "AwsAccountBlacklist": { + "title": "Awsaccountblacklist", + "type": "array", + "items": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] + } }, - "Properties": { - "$ref": "#/definitions/IoTRuleEventProperties" + "AwsAccountWhitelist": { + "title": "Awsaccountwhitelist", + "type": "array", + "items": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] + } + }, + "CustomStatements": { + "title": "Customstatements", + "type": "array", + "items": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] + } + }, + "IntrinsicVpcBlacklist": { + "title": "Intrinsicvpcblacklist", + "type": "array", + "items": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] + } + }, + "IntrinsicVpcWhitelist": { + "title": "Intrinsicvpcwhitelist", + "type": "array", + "items": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] + } + }, + "IntrinsicVpceBlacklist": { + "title": "Intrinsicvpceblacklist", + "type": "array", + "items": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] + } + }, + "IntrinsicVpceWhitelist": { + "title": "Intrinsicvpcewhitelist", + "type": "array", + "items": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] + } + }, + "IpRangeBlacklist": { + "title": "Iprangeblacklist", + "type": "array", + "items": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] + } + }, + "IpRangeWhitelist": { + "title": "Iprangewhitelist", + "type": "array", + "items": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] + } + }, + "SourceVpcBlacklist": { + "title": "Sourcevpcblacklist", + "type": "array", + "items": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] + } + }, + "SourceVpcWhitelist": { + "title": "Sourcevpcwhitelist", + "type": "array", + "items": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] + } } }, - "required": [ - "Type", - "Properties" - ], "additionalProperties": false }, - "AlexaSkillEventProperties": { - "title": "AlexaSkillEventProperties", + "ApiAuth": { + "title": "ApiAuth", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "SkillId": { - "title": "Skillid", + "ApiKeyRequired": { + "title": "Apikeyrequired", + "type": "boolean" + }, + "AuthorizationScopes": { + "title": "Authorizationscopes", + "type": "array", + "items": { + "type": "string" + } + }, + "Authorizer": { + "title": "Authorizer", "type": "string" + }, + "InvokeRole": { + "title": "Invokerole", + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] + }, + "ResourcePolicy": { + "$ref": "#/definitions/samtranslator__schema__aws_serverless_function__ResourcePolicy" } }, "additionalProperties": false }, - "AlexaSkillEvent": { - "title": "AlexaSkillEvent", + "RequestModel": { + "title": "RequestModel", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "Type": { - "title": "Type", - "enum": [ - "AlexaSkill" - ], + "Model": { + "title": "Model", "type": "string" }, - "Properties": { - "$ref": "#/definitions/AlexaSkillEventProperties" + "Required": { + "title": "Required", + "type": "boolean" + }, + "ValidateBody": { + "title": "Validatebody", + "type": "boolean" + }, + "ValidateParameters": { + "title": "Validateparameters", + "type": "boolean" } }, "required": [ - "Type" + "Model" ], "additionalProperties": false }, - "CognitoEventProperties": { - "title": "CognitoEventProperties", + "RequestParameters": { + "title": "RequestParameters", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "Trigger": { - "title": "Trigger" + "Caching": { + "title": "Caching", + "type": "boolean" }, - "UserPool": { - "title": "Userpool", - "anyOf": [ - { - "type": "string" - }, - { - "type": "object" - } - ] + "Required": { + "title": "Required", + "type": "boolean" } }, - "required": [ - "UserPool" - ], "additionalProperties": false }, - "CognitoEvent": { - "title": "CognitoEvent", - "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", - "type": "object", - "properties": { - "Type": { - "title": "Type", - "enum": [ - "Cognito" - ], - "type": "string" - }, - "Properties": { - "$ref": "#/definitions/CognitoEventProperties" - } - }, - "required": [ - "Type", - "Properties" - ], - "additionalProperties": false - }, - "HttpApiAuth": { - "title": "HttpApiAuth", - "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", - "type": "object", - "properties": { - "AuthorizationScopes": { - "title": "Authorizationscopes", - "type": "array", - "items": { - "type": "string" - } - }, - "Authorizer": { - "title": "Authorizer", - "type": "string" - } - }, - "additionalProperties": false - }, - "HttpApiEventProperties": { - "title": "HttpApiEventProperties", + "samtranslator__schema__aws_serverless_function__ApiEventProperties": { + "title": "ApiEventProperties", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "ApiId": { - "title": "Apiid", - "anyOf": [ - { - "type": "string" - }, - { - "type": "object" - } - ] - }, "Auth": { - "$ref": "#/definitions/HttpApiAuth" + "$ref": "#/definitions/ApiAuth" }, "Method": { "title": "Method", @@ -1618,25 +1951,25 @@ "title": "Path", "type": "string" }, - "PayloadFormatVersion": { - "title": "Payloadformatversion", + "RequestModel": { + "$ref": "#/definitions/RequestModel" + }, + "RequestParameters": { + "title": "Requestparameters", "anyOf": [ { "type": "string" }, { - "type": "object" + "$ref": "#/definitions/RequestParameters" } ] }, - "RouteSettings": { - "title": "Routesettings" - }, - "TimeoutInMillis": { - "title": "Timeoutinmillis", + "RestApiId": { + "title": "Restapiid", "anyOf": [ { - "type": "integer" + "type": "string" }, { "type": "object" @@ -1644,124 +1977,103 @@ ] } }, + "required": [ + "Method", + "Path" + ], "additionalProperties": false }, - "HttpApiEvent": { - "title": "HttpApiEvent", + "samtranslator__schema__aws_serverless_function__ApiEvent": { + "title": "ApiEvent", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { "Type": { "title": "Type", "enum": [ - "HttpApi" + "Api" ], "type": "string" }, "Properties": { - "$ref": "#/definitions/HttpApiEventProperties" + "$ref": "#/definitions/samtranslator__schema__aws_serverless_function__ApiEventProperties" } }, "required": [ - "Type" + "Type", + "Properties" ], "additionalProperties": false }, - "MSKEventProperties": { - "title": "MSKEventProperties", + "samtranslator__schema__aws_serverless_function__DeadLetterConfig": { + "title": "DeadLetterConfig", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "ConsumerGroupId": { - "title": "Consumergroupid" - }, - "FilterCriteria": { - "title": "Filtercriteria" - }, - "MaximumBatchingWindowInSeconds": { - "title": "Maximumbatchingwindowinseconds" - }, - "StartingPosition": { - "title": "Startingposition" + "Arn": { + "title": "Arn" }, - "Stream": { - "title": "Stream" + "QueueLogicalId": { + "title": "Queuelogicalid", + "type": "string" }, - "Topics": { - "title": "Topics" - } - }, - "additionalProperties": false - }, - "MSKEvent": { - "title": "MSKEvent", - "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", - "type": "object", - "properties": { "Type": { "title": "Type", "enum": [ - "MSK" + "SQS" ], "type": "string" - }, - "Properties": { - "$ref": "#/definitions/MSKEventProperties" } }, - "required": [ - "Type", - "Properties" - ], "additionalProperties": false }, - "MQEventProperties": { - "title": "MQEventProperties", + "EventsScheduleProperties": { + "title": "EventsScheduleProperties", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "BatchSize": { - "title": "Batchsize" + "DeadLetterConfig": { + "$ref": "#/definitions/samtranslator__schema__aws_serverless_function__DeadLetterConfig" }, - "Broker": { - "title": "Broker" + "Description": { + "title": "Description" }, "Enabled": { - "title": "Enabled" + "title": "Enabled", + "type": "boolean" }, - "FilterCriteria": { - "title": "Filtercriteria" + "Input": { + "title": "Input" }, - "MaximumBatchingWindowInSeconds": { - "title": "Maximumbatchingwindowinseconds" + "Name": { + "title": "Name" }, - "Queues": { - "title": "Queues" + "RetryPolicy": { + "title": "Retrypolicy" }, - "SecretsManagerKmsKeyId": { - "title": "Secretsmanagerkmskeyid", - "type": "string" + "Schedule": { + "title": "Schedule" }, - "SourceAccessConfigurations": { - "title": "Sourceaccessconfigurations" + "State": { + "title": "State" } }, "additionalProperties": false }, - "MQEvent": { - "title": "MQEvent", + "samtranslator__schema__aws_serverless_function__ScheduleEvent": { + "title": "ScheduleEvent", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { "Type": { "title": "Type", "enum": [ - "MQ" + "Schedule" ], "type": "string" }, "Properties": { - "$ref": "#/definitions/MQEventProperties" + "$ref": "#/definitions/EventsScheduleProperties" } }, "required": [ @@ -1770,60 +2082,73 @@ ], "additionalProperties": false }, - "SelfManagedKafkaEventProperties": { - "title": "SelfManagedKafkaEventProperties", + "samtranslator__schema__aws_serverless_function__ScheduleV2EventProperties": { + "title": "ScheduleV2EventProperties", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "BatchSize": { - "title": "Batchsize" + "DeadLetterConfig": { + "$ref": "#/definitions/samtranslator__schema__aws_serverless_function__DeadLetterConfig" }, - "ConsumerGroupId": { - "title": "Consumergroupid" + "Description": { + "title": "Description" }, - "Enabled": { - "title": "Enabled" + "EndDate": { + "title": "Enddate" }, - "FilterCriteria": { - "title": "Filtercriteria" + "FlexibleTimeWindow": { + "title": "Flexibletimewindow" }, - "KafkaBootstrapServers": { - "title": "Kafkabootstrapservers", - "type": "array", - "items": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "object" - } - ] - } + "GroupName": { + "title": "Groupname" }, - "SourceAccessConfigurations": { - "title": "Sourceaccessconfigurations" + "Input": { + "title": "Input" }, - "Topics": { - "title": "Topics" + "KmsKeyArn": { + "title": "Kmskeyarn" + }, + "Name": { + "title": "Name" + }, + "PermissionsBoundary": { + "title": "Permissionsboundary" + }, + "RetryPolicy": { + "title": "Retrypolicy" + }, + "RoleArn": { + "title": "Rolearn" + }, + "ScheduleExpression": { + "title": "Scheduleexpression" + }, + "ScheduleExpressionTimezone": { + "title": "Scheduleexpressiontimezone" + }, + "StartDate": { + "title": "Startdate" + }, + "State": { + "title": "State" } }, "additionalProperties": false }, - "SelfManagedKafkaEvent": { - "title": "SelfManagedKafkaEvent", + "samtranslator__schema__aws_serverless_function__ScheduleV2Event": { + "title": "ScheduleV2Event", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { "Type": { "title": "Type", "enum": [ - "SelfManagedKafka" + "ScheduleV2" ], "type": "string" }, "Properties": { - "$ref": "#/definitions/SelfManagedKafkaEventProperties" + "$ref": "#/definitions/samtranslator__schema__aws_serverless_function__ScheduleV2EventProperties" } }, "required": [ @@ -1832,521 +2157,393 @@ ], "additionalProperties": false }, - "FunctionUrlConfig": { - "title": "FunctionUrlConfig", + "samtranslator__schema__aws_serverless_function__CloudWatchEventProperties": { + "title": "CloudWatchEventProperties", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "AuthType": { - "title": "Authtype", - "anyOf": [ - { - "type": "string" - }, - { - "type": "object" - } - ] + "Enabled": { + "title": "Enabled", + "type": "boolean" }, - "Cors": { - "title": "Cors" + "EventBusName": { + "title": "Eventbusname" + }, + "Input": { + "title": "Input" + }, + "InputPath": { + "title": "Inputpath" + }, + "Pattern": { + "title": "Pattern" + }, + "State": { + "title": "State" + } + }, + "additionalProperties": false + }, + "samtranslator__schema__aws_serverless_function__CloudWatchEvent": { + "title": "CloudWatchEvent", + "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", + "type": "object", + "properties": { + "Type": { + "title": "Type", + "enum": [ + "CloudWatchEvent" + ], + "type": "string" + }, + "Properties": { + "$ref": "#/definitions/samtranslator__schema__aws_serverless_function__CloudWatchEventProperties" } }, "required": [ - "AuthType" + "Type", + "Properties" ], "additionalProperties": false }, - "samtranslator__schema__aws_serverless_function__Properties": { - "title": "Properties", + "samtranslator__schema__aws_serverless_function__EventBridgeRuleEventProperties": { + "title": "EventBridgeRuleEventProperties", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "Architectures": { - "title": "Architectures" - }, - "AssumeRolePolicyDocument": { - "title": "Assumerolepolicydocument", - "type": "object" - }, - "AutoPublishAlias": { - "title": "Autopublishalias", - "anyOf": [ - { - "type": "string" - }, - { - "type": "object" - } - ] - }, - "AutoPublishCodeSha256": { - "title": "Autopublishcodesha256", - "anyOf": [ - { - "type": "string" - }, - { - "type": "object" - } - ] - }, - "CodeSigningConfigArn": { - "title": "Codesigningconfigarn", - "anyOf": [ - { - "type": "string" - }, - { - "type": "object" - } - ] - }, - "CodeUri": { - "title": "Codeuri", - "anyOf": [ - { - "type": "string" - }, - { - "$ref": "#/definitions/CodeUri" - } - ] - }, - "DeadLetterQueue": { - "title": "Deadletterqueue", - "anyOf": [ - { - "type": "object" - }, - { - "$ref": "#/definitions/DeadLetterQueue" - } - ] - }, - "DeploymentPreference": { - "$ref": "#/definitions/DeploymentPreference" - }, - "Description": { - "title": "Description" - }, - "Environment": { - "title": "Environment" - }, - "EphemeralStorage": { - "title": "Ephemeralstorage" - }, - "EventInvokeConfig": { - "$ref": "#/definitions/EventInvokeConfig" - }, - "Events": { - "title": "Events", - "type": "object", - "additionalProperties": { - "anyOf": [ - { - "$ref": "#/definitions/S3Event" - }, - { - "$ref": "#/definitions/SNSEvent" - }, - { - "$ref": "#/definitions/KinesisEvent" - }, - { - "$ref": "#/definitions/DynamoDBEvent" - }, - { - "$ref": "#/definitions/SQSEvent" - }, - { - "$ref": "#/definitions/samtranslator__schema__aws_serverless_function__ApiEvent" - }, - { - "$ref": "#/definitions/samtranslator__schema__aws_serverless_function__ScheduleEvent" - }, - { - "$ref": "#/definitions/samtranslator__schema__aws_serverless_function__ScheduleV2Event" - }, - { - "$ref": "#/definitions/samtranslator__schema__aws_serverless_function__CloudWatchEvent" - }, - { - "$ref": "#/definitions/samtranslator__schema__aws_serverless_function__EventBridgeRuleEvent" - }, - { - "$ref": "#/definitions/CloudWatchLogsEvent" - }, - { - "$ref": "#/definitions/IoTRuleEvent" - }, - { - "$ref": "#/definitions/AlexaSkillEvent" - }, - { - "$ref": "#/definitions/CognitoEvent" - }, - { - "$ref": "#/definitions/HttpApiEvent" - }, - { - "$ref": "#/definitions/MSKEvent" - }, - { - "$ref": "#/definitions/MQEvent" - }, - { - "$ref": "#/definitions/SelfManagedKafkaEvent" - } - ] - } - }, - "FileSystemConfigs": { - "title": "Filesystemconfigs" - }, - "FunctionName": { - "title": "Functionname" - }, - "FunctionUrlConfig": { - "$ref": "#/definitions/FunctionUrlConfig" - }, - "Handler": { - "title": "Handler" - }, - "ImageConfig": { - "title": "Imageconfig" - }, - "ImageUri": { - "title": "Imageuri" - }, - "InlineCode": { - "title": "Inlinecode" - }, - "KmsKeyArn": { - "title": "Kmskeyarn" - }, - "Layers": { - "title": "Layers" - }, - "MemorySize": { - "title": "Memorysize" - }, - "PackageType": { - "title": "Packagetype" - }, - "PermissionsBoundary": { - "title": "Permissionsboundary" + "DeadLetterConfig": { + "$ref": "#/definitions/samtranslator__schema__aws_serverless_function__DeadLetterConfig" }, - "Policies": { - "title": "Policies", - "anyOf": [ - { - "type": "string" - }, - { - "type": "array", - "items": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "object" - } - ] - } - }, - { - "type": "object" - } - ] + "EventBusName": { + "title": "Eventbusname" }, - "ProvisionedConcurrencyConfig": { - "title": "Provisionedconcurrencyconfig" + "Input": { + "title": "Input" }, - "ReservedConcurrentExecutions": { - "title": "Reservedconcurrentexecutions" + "InputPath": { + "title": "Inputpath" }, - "Role": { - "title": "Role", - "anyOf": [ - { - "type": "string" - }, - { - "type": "object" - } - ] + "Pattern": { + "title": "Pattern" }, - "Runtime": { - "title": "Runtime" + "RetryPolicy": { + "title": "Retrypolicy" }, - "Tags": { - "title": "Tags", - "type": "object" + "Target": { + "title": "Target" + } + }, + "additionalProperties": false + }, + "samtranslator__schema__aws_serverless_function__EventBridgeRuleEvent": { + "title": "EventBridgeRuleEvent", + "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", + "type": "object", + "properties": { + "Type": { + "title": "Type", + "enum": [ + "EventBridgeRule" + ], + "type": "string" }, - "Timeout": { - "title": "Timeout" + "Properties": { + "$ref": "#/definitions/samtranslator__schema__aws_serverless_function__EventBridgeRuleEventProperties" + } + }, + "required": [ + "Type", + "Properties" + ], + "additionalProperties": false + }, + "CloudWatchLogsEventProperties": { + "title": "CloudWatchLogsEventProperties", + "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", + "type": "object", + "properties": { + "FilterPattern": { + "title": "Filterpattern" }, - "Tracing": { - "title": "Tracing", - "anyOf": [ - { - "type": "string" - }, - { - "type": "object" - } - ] + "LogGroupName": { + "title": "Loggroupname" + } + }, + "additionalProperties": false + }, + "CloudWatchLogsEvent": { + "title": "CloudWatchLogsEvent", + "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", + "type": "object", + "properties": { + "Type": { + "title": "Type", + "enum": [ + "CloudWatchLogs" + ], + "type": "string" }, - "VersionDescription": { - "title": "Versiondescription" + "Properties": { + "$ref": "#/definitions/CloudWatchLogsEventProperties" + } + }, + "required": [ + "Type", + "Properties" + ], + "additionalProperties": false + }, + "IoTRuleEventProperties": { + "title": "IoTRuleEventProperties", + "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", + "type": "object", + "properties": { + "AwsIotSqlVersion": { + "title": "Awsiotsqlversion" }, - "VpcConfig": { - "title": "Vpcconfig" + "Sql": { + "title": "Sql" } }, "additionalProperties": false }, - "samtranslator__schema__aws_serverless_function__Resource": { - "title": "Resource", + "IoTRuleEvent": { + "title": "IoTRuleEvent", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { "Type": { "title": "Type", "enum": [ - "AWS::Serverless::Function" + "IoTRule" ], "type": "string" }, "Properties": { - "$ref": "#/definitions/samtranslator__schema__aws_serverless_function__Properties" - }, - "DeletionPolicy": { - "title": "Deletionpolicy" - }, - "UpdateReplacePolicy": { - "title": "Updatereplacepolicy" - }, - "Condition": { - "title": "Condition" - }, - "DependsOn": { - "title": "Dependson" - }, - "Metadata": { - "title": "Metadata" + "$ref": "#/definitions/IoTRuleEventProperties" } }, "required": [ - "Type" + "Type", + "Properties" ], "additionalProperties": false }, - "PrimaryKey": { - "title": "PrimaryKey", + "AlexaSkillEventProperties": { + "title": "AlexaSkillEventProperties", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "Name": { - "title": "Name" - }, - "Type": { - "title": "Type" + "SkillId": { + "title": "Skillid", + "type": "string" } }, "additionalProperties": false }, - "samtranslator__schema__aws_serverless_simpletable__Properties": { - "title": "Properties", + "AlexaSkillEvent": { + "title": "AlexaSkillEvent", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "PrimaryKey": { - "$ref": "#/definitions/PrimaryKey" - }, - "ProvisionedThroughput": { - "title": "Provisionedthroughput" - }, - "SSESpecification": { - "title": "Ssespecification" + "Type": { + "title": "Type", + "enum": [ + "AlexaSkill" + ], + "type": "string" }, - "TableName": { - "title": "Tablename" + "Properties": { + "$ref": "#/definitions/AlexaSkillEventProperties" + } + }, + "required": [ + "Type" + ], + "additionalProperties": false + }, + "CognitoEventProperties": { + "title": "CognitoEventProperties", + "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", + "type": "object", + "properties": { + "Trigger": { + "title": "Trigger" }, - "Tags": { - "title": "Tags", - "type": "object" + "UserPool": { + "title": "Userpool", + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] } }, + "required": [ + "UserPool" + ], "additionalProperties": false }, - "samtranslator__schema__aws_serverless_simpletable__Resource": { - "title": "Resource", + "CognitoEvent": { + "title": "CognitoEvent", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { "Type": { "title": "Type", "enum": [ - "AWS::Serverless::SimpleTable" + "Cognito" ], "type": "string" }, "Properties": { - "$ref": "#/definitions/samtranslator__schema__aws_serverless_simpletable__Properties" + "$ref": "#/definitions/CognitoEventProperties" } }, "required": [ - "Type" + "Type", + "Properties" ], "additionalProperties": false }, - "samtranslator__schema__aws_serverless_statemachine__DeadLetterConfig": { - "title": "DeadLetterConfig", + "HttpApiAuth": { + "title": "HttpApiAuth", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "Arn": { - "title": "Arn" - }, - "QueueLogicalId": { - "title": "Queuelogicalid", - "type": "string" + "AuthorizationScopes": { + "title": "Authorizationscopes", + "type": "array", + "items": { + "type": "string" + } }, - "Type": { - "title": "Type", - "enum": [ - "SQS" - ], + "Authorizer": { + "title": "Authorizer", "type": "string" } }, "additionalProperties": false }, - "ScheduleEventProperties": { - "title": "ScheduleEventProperties", + "HttpApiEventProperties": { + "title": "HttpApiEventProperties", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "DeadLetterConfig": { - "$ref": "#/definitions/samtranslator__schema__aws_serverless_statemachine__DeadLetterConfig" - }, - "Description": { - "title": "Description" + "ApiId": { + "title": "Apiid", + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] }, - "Enabled": { - "title": "Enabled", - "type": "boolean" + "Auth": { + "$ref": "#/definitions/HttpApiAuth" }, - "Input": { - "title": "Input" + "Method": { + "title": "Method", + "type": "string" }, - "Name": { - "title": "Name" + "Path": { + "title": "Path", + "type": "string" }, - "RetryPolicy": { - "title": "Retrypolicy" + "PayloadFormatVersion": { + "title": "Payloadformatversion", + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] }, - "Schedule": { - "title": "Schedule" + "RouteSettings": { + "title": "Routesettings" }, - "State": { - "title": "State" + "TimeoutInMillis": { + "title": "Timeoutinmillis", + "anyOf": [ + { + "type": "integer" + }, + { + "type": "object" + } + ] } }, "additionalProperties": false }, - "samtranslator__schema__aws_serverless_statemachine__ScheduleEvent": { - "title": "ScheduleEvent", + "HttpApiEvent": { + "title": "HttpApiEvent", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { "Type": { "title": "Type", "enum": [ - "Schedule" + "HttpApi" ], "type": "string" }, "Properties": { - "$ref": "#/definitions/ScheduleEventProperties" + "$ref": "#/definitions/HttpApiEventProperties" } }, "required": [ - "Type", - "Properties" + "Type" ], "additionalProperties": false }, - "samtranslator__schema__aws_serverless_statemachine__ScheduleV2EventProperties": { - "title": "ScheduleV2EventProperties", + "MSKEventProperties": { + "title": "MSKEventProperties", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "DeadLetterConfig": { - "$ref": "#/definitions/samtranslator__schema__aws_serverless_statemachine__DeadLetterConfig" - }, - "Description": { - "title": "Description" - }, - "EndDate": { - "title": "Enddate" - }, - "FlexibleTimeWindow": { - "title": "Flexibletimewindow" - }, - "GroupName": { - "title": "Groupname" - }, - "Input": { - "title": "Input" - }, - "KmsKeyArn": { - "title": "Kmskeyarn" - }, - "Name": { - "title": "Name" - }, - "PermissionsBoundary": { - "title": "Permissionsboundary" - }, - "RetryPolicy": { - "title": "Retrypolicy" + "ConsumerGroupId": { + "title": "Consumergroupid" }, - "RoleArn": { - "title": "Rolearn" + "FilterCriteria": { + "title": "Filtercriteria" }, - "ScheduleExpression": { - "title": "Scheduleexpression" + "MaximumBatchingWindowInSeconds": { + "title": "Maximumbatchingwindowinseconds" }, - "ScheduleExpressionTimezone": { - "title": "Scheduleexpressiontimezone" + "StartingPosition": { + "title": "Startingposition" }, - "StartDate": { - "title": "Startdate" + "Stream": { + "title": "Stream" }, - "State": { - "title": "State" + "Topics": { + "title": "Topics" } }, "additionalProperties": false }, - "samtranslator__schema__aws_serverless_statemachine__ScheduleV2Event": { - "title": "ScheduleV2Event", + "MSKEvent": { + "title": "MSKEvent", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { "Type": { "title": "Type", "enum": [ - "ScheduleV2" + "MSK" ], "type": "string" }, "Properties": { - "$ref": "#/definitions/samtranslator__schema__aws_serverless_statemachine__ScheduleV2EventProperties" + "$ref": "#/definitions/MSKEventProperties" } }, "required": [ @@ -2355,40 +2552,53 @@ ], "additionalProperties": false }, - "samtranslator__schema__aws_serverless_statemachine__CloudWatchEventProperties": { - "title": "CloudWatchEventProperties", + "MQEventProperties": { + "title": "MQEventProperties", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "EventBusName": { - "title": "Eventbusname" + "BatchSize": { + "title": "Batchsize" }, - "Input": { - "title": "Input" + "Broker": { + "title": "Broker" }, - "InputPath": { - "title": "Inputpath" + "Enabled": { + "title": "Enabled" }, - "Pattern": { - "title": "Pattern" + "FilterCriteria": { + "title": "Filtercriteria" + }, + "MaximumBatchingWindowInSeconds": { + "title": "Maximumbatchingwindowinseconds" + }, + "Queues": { + "title": "Queues" + }, + "SecretsManagerKmsKeyId": { + "title": "Secretsmanagerkmskeyid", + "type": "string" + }, + "SourceAccessConfigurations": { + "title": "Sourceaccessconfigurations" } }, "additionalProperties": false }, - "samtranslator__schema__aws_serverless_statemachine__CloudWatchEvent": { - "title": "CloudWatchEvent", + "MQEvent": { + "title": "MQEvent", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { "Type": { "title": "Type", "enum": [ - "CloudWatchEvent" + "MQ" ], "type": "string" }, "Properties": { - "$ref": "#/definitions/samtranslator__schema__aws_serverless_statemachine__CloudWatchEventProperties" + "$ref": "#/definitions/MQEventProperties" } }, "required": [ @@ -2397,46 +2607,60 @@ ], "additionalProperties": false }, - "samtranslator__schema__aws_serverless_statemachine__EventBridgeRuleEventProperties": { - "title": "EventBridgeRuleEventProperties", + "SelfManagedKafkaEventProperties": { + "title": "SelfManagedKafkaEventProperties", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "DeadLetterConfig": { - "$ref": "#/definitions/samtranslator__schema__aws_serverless_statemachine__DeadLetterConfig" + "BatchSize": { + "title": "Batchsize" }, - "EventBusName": { - "title": "Eventbusname" + "ConsumerGroupId": { + "title": "Consumergroupid" }, - "Input": { - "title": "Input" + "Enabled": { + "title": "Enabled" }, - "InputPath": { - "title": "Inputpath" + "FilterCriteria": { + "title": "Filtercriteria" }, - "Pattern": { - "title": "Pattern" + "KafkaBootstrapServers": { + "title": "Kafkabootstrapservers", + "type": "array", + "items": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] + } }, - "RetryPolicy": { - "title": "Retrypolicy" + "SourceAccessConfigurations": { + "title": "Sourceaccessconfigurations" + }, + "Topics": { + "title": "Topics" } }, "additionalProperties": false }, - "samtranslator__schema__aws_serverless_statemachine__EventBridgeRuleEvent": { - "title": "EventBridgeRuleEvent", + "SelfManagedKafkaEvent": { + "title": "SelfManagedKafkaEvent", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { "Type": { "title": "Type", "enum": [ - "EventBridgeRule" + "SelfManagedKafka" ], "type": "string" }, "Properties": { - "$ref": "#/definitions/samtranslator__schema__aws_serverless_statemachine__EventBridgeRuleEventProperties" + "$ref": "#/definitions/SelfManagedKafkaEventProperties" } }, "required": [ @@ -2445,357 +2669,446 @@ ], "additionalProperties": false }, - "samtranslator__schema__aws_serverless_statemachine__ResourcePolicy": { - "title": "ResourcePolicy", + "FunctionUrlConfig": { + "title": "FunctionUrlConfig", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "AwsAccountBlacklist": { - "title": "Awsaccountblacklist", - "type": "array", - "items": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "object" - } - ] - } + "AuthType": { + "title": "Authtype", + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] }, - "AwsAccountWhitelist": { - "title": "Awsaccountwhitelist", - "type": "array", - "items": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "object" - } - ] - } + "Cors": { + "title": "Cors" + } + }, + "required": [ + "AuthType" + ], + "additionalProperties": false + }, + "samtranslator__schema__aws_serverless_function__Properties": { + "title": "Properties", + "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", + "type": "object", + "properties": { + "Architectures": { + "title": "Architectures" }, - "CustomStatements": { - "title": "Customstatements", - "type": "array", - "items": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "object" - } - ] - } + "AssumeRolePolicyDocument": { + "title": "Assumerolepolicydocument", + "type": "object" }, - "IntrinsicVpcBlacklist": { - "title": "Intrinsicvpcblacklist", - "type": "array", - "items": { + "AutoPublishAlias": { + "title": "Autopublishalias", + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] + }, + "AutoPublishCodeSha256": { + "title": "Autopublishcodesha256", + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] + }, + "CodeSigningConfigArn": { + "title": "Codesigningconfigarn", + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] + }, + "CodeUri": { + "title": "Codeuri", + "anyOf": [ + { + "type": "string" + }, + { + "$ref": "#/definitions/CodeUri" + } + ] + }, + "DeadLetterQueue": { + "title": "Deadletterqueue", + "anyOf": [ + { + "type": "object" + }, + { + "$ref": "#/definitions/DeadLetterQueue" + } + ] + }, + "DeploymentPreference": { + "$ref": "#/definitions/DeploymentPreference" + }, + "Description": { + "title": "Description" + }, + "Environment": { + "title": "Environment" + }, + "EphemeralStorage": { + "title": "Ephemeralstorage" + }, + "EventInvokeConfig": { + "$ref": "#/definitions/EventInvokeConfig" + }, + "Events": { + "title": "Events", + "type": "object", + "additionalProperties": { "anyOf": [ { - "type": "string" + "$ref": "#/definitions/S3Event" + }, + { + "$ref": "#/definitions/SNSEvent" }, { - "type": "object" - } - ] - } - }, - "IntrinsicVpcWhitelist": { - "title": "Intrinsicvpcwhitelist", - "type": "array", - "items": { - "anyOf": [ + "$ref": "#/definitions/KinesisEvent" + }, { - "type": "string" + "$ref": "#/definitions/DynamoDBEvent" }, { - "type": "object" - } - ] - } - }, - "IntrinsicVpceBlacklist": { - "title": "Intrinsicvpceblacklist", - "type": "array", - "items": { - "anyOf": [ + "$ref": "#/definitions/SQSEvent" + }, { - "type": "string" + "$ref": "#/definitions/samtranslator__schema__aws_serverless_function__ApiEvent" }, { - "type": "object" - } - ] - } - }, - "IntrinsicVpceWhitelist": { - "title": "Intrinsicvpcewhitelist", - "type": "array", - "items": { - "anyOf": [ + "$ref": "#/definitions/samtranslator__schema__aws_serverless_function__ScheduleEvent" + }, { - "type": "string" + "$ref": "#/definitions/samtranslator__schema__aws_serverless_function__ScheduleV2Event" }, { - "type": "object" - } - ] - } - }, - "IpRangeBlacklist": { - "title": "Iprangeblacklist", - "type": "array", - "items": { - "anyOf": [ + "$ref": "#/definitions/samtranslator__schema__aws_serverless_function__CloudWatchEvent" + }, { - "type": "string" + "$ref": "#/definitions/samtranslator__schema__aws_serverless_function__EventBridgeRuleEvent" }, { - "type": "object" - } - ] - } - }, - "IpRangeWhitelist": { - "title": "Iprangewhitelist", - "type": "array", - "items": { - "anyOf": [ + "$ref": "#/definitions/CloudWatchLogsEvent" + }, { - "type": "string" + "$ref": "#/definitions/IoTRuleEvent" }, { - "type": "object" - } - ] - } - }, - "SourceVpcBlacklist": { - "title": "Sourcevpcblacklist", - "type": "array", - "items": { - "anyOf": [ + "$ref": "#/definitions/AlexaSkillEvent" + }, { - "type": "string" + "$ref": "#/definitions/CognitoEvent" }, { - "type": "object" - } - ] - } - }, - "SourceVpcWhitelist": { - "title": "Sourcevpcwhitelist", - "type": "array", - "items": { - "anyOf": [ + "$ref": "#/definitions/HttpApiEvent" + }, { - "type": "string" + "$ref": "#/definitions/MSKEvent" }, { - "type": "object" + "$ref": "#/definitions/MQEvent" + }, + { + "$ref": "#/definitions/SelfManagedKafkaEvent" } ] } + }, + "FileSystemConfigs": { + "title": "Filesystemconfigs" + }, + "FunctionName": { + "title": "Functionname" + }, + "FunctionUrlConfig": { + "$ref": "#/definitions/FunctionUrlConfig" + }, + "Handler": { + "title": "Handler" + }, + "ImageConfig": { + "title": "Imageconfig" + }, + "ImageUri": { + "title": "Imageuri" + }, + "InlineCode": { + "title": "Inlinecode" + }, + "KmsKeyArn": { + "title": "Kmskeyarn" + }, + "Layers": { + "title": "Layers" + }, + "MemorySize": { + "title": "Memorysize" + }, + "PackageType": { + "title": "Packagetype" + }, + "PermissionsBoundary": { + "title": "Permissionsboundary" + }, + "Policies": { + "title": "Policies", + "anyOf": [ + { + "type": "string" + }, + { + "type": "array", + "items": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] + } + }, + { + "type": "object" + } + ] + }, + "ProvisionedConcurrencyConfig": { + "title": "Provisionedconcurrencyconfig" + }, + "ReservedConcurrentExecutions": { + "title": "Reservedconcurrentexecutions" + }, + "Role": { + "title": "Role", + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] + }, + "Runtime": { + "title": "Runtime" + }, + "Tags": { + "title": "Tags", + "type": "object" + }, + "Timeout": { + "title": "Timeout" + }, + "Tracing": { + "title": "Tracing", + "anyOf": [ + { + "type": "string" + }, + { + "type": "object" + } + ] + }, + "VersionDescription": { + "title": "Versiondescription" + }, + "VpcConfig": { + "title": "Vpcconfig" } }, "additionalProperties": false }, - "samtranslator__schema__aws_serverless_statemachine__Auth": { - "title": "Auth", + "samtranslator__schema__aws_serverless_function__Resource": { + "title": "Resource", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "ApiKeyRequired": { - "title": "Apikeyrequired", - "type": "boolean" + "Type": { + "title": "Type", + "enum": [ + "AWS::Serverless::Function" + ], + "type": "string" }, - "AuthorizationScopes": { - "title": "Authorizationscopes", - "type": "array", - "items": { - "type": "string" - } + "Properties": { + "$ref": "#/definitions/samtranslator__schema__aws_serverless_function__Properties" }, - "Authorizer": { - "title": "Authorizer", - "type": "string" + "DeletionPolicy": { + "title": "Deletionpolicy" + }, + "UpdateReplacePolicy": { + "title": "Updatereplacepolicy" + }, + "Condition": { + "title": "Condition" + }, + "DependsOn": { + "title": "Dependson" + }, + "Metadata": { + "title": "Metadata" + } + }, + "required": [ + "Type" + ], + "additionalProperties": false + }, + "PrimaryKey": { + "title": "PrimaryKey", + "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", + "type": "object", + "properties": { + "Name": { + "title": "Name" }, - "ResourcePolicy": { - "$ref": "#/definitions/samtranslator__schema__aws_serverless_statemachine__ResourcePolicy" + "Type": { + "title": "Type" } }, "additionalProperties": false }, - "samtranslator__schema__aws_serverless_statemachine__ApiEventProperties": { - "title": "ApiEventProperties", + "samtranslator__schema__aws_serverless_simpletable__Properties": { + "title": "Properties", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "Auth": { - "$ref": "#/definitions/samtranslator__schema__aws_serverless_statemachine__Auth" + "PrimaryKey": { + "$ref": "#/definitions/PrimaryKey" }, - "Method": { - "title": "Method", - "type": "string" + "ProvisionedThroughput": { + "title": "Provisionedthroughput" }, - "Path": { - "title": "Path", - "type": "string" + "SSESpecification": { + "title": "Ssespecification" }, - "RestApiId": { - "title": "Restapiid", - "type": "object" + "TableName": { + "title": "Tablename" }, - "UnescapeMappingTemplate": { - "title": "Unescapemappingtemplate", - "type": "boolean" + "Tags": { + "title": "Tags", + "type": "object" } }, - "required": [ - "Method", - "Path" - ], "additionalProperties": false }, - "samtranslator__schema__aws_serverless_statemachine__ApiEvent": { - "title": "ApiEvent", + "samtranslator__schema__aws_serverless_simpletable__Resource": { + "title": "Resource", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { "Type": { "title": "Type", "enum": [ - "Api" + "AWS::Serverless::SimpleTable" ], "type": "string" }, "Properties": { - "$ref": "#/definitions/samtranslator__schema__aws_serverless_statemachine__ApiEventProperties" + "$ref": "#/definitions/samtranslator__schema__aws_serverless_simpletable__Properties" } }, "required": [ - "Type", - "Properties" + "Type" ], "additionalProperties": false }, - "samtranslator__schema__aws_serverless_statemachine__Properties": { - "title": "Properties", + "samtranslator__schema__aws_serverless_statemachine__DeadLetterConfig": { + "title": "DeadLetterConfig", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "Definition": { - "title": "Definition", - "type": "object" + "Arn": { + "title": "Arn" }, - "DefinitionSubstitutions": { - "title": "Definitionsubstitutions", - "type": "object" + "QueueLogicalId": { + "title": "Queuelogicalid", + "type": "string" }, - "DefinitionUri": { - "title": "Definitionuri", - "anyOf": [ - { - "type": "string" - }, - {} - ] + "Type": { + "title": "Type", + "enum": [ + "SQS" + ], + "type": "string" + } + }, + "additionalProperties": false + }, + "ScheduleEventProperties": { + "title": "ScheduleEventProperties", + "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", + "type": "object", + "properties": { + "DeadLetterConfig": { + "$ref": "#/definitions/samtranslator__schema__aws_serverless_statemachine__DeadLetterConfig" }, - "Events": { - "title": "Events", - "type": "object", - "additionalProperties": { - "anyOf": [ - { - "$ref": "#/definitions/samtranslator__schema__aws_serverless_statemachine__ScheduleEvent" - }, - { - "$ref": "#/definitions/samtranslator__schema__aws_serverless_statemachine__ScheduleV2Event" - }, - { - "$ref": "#/definitions/samtranslator__schema__aws_serverless_statemachine__CloudWatchEvent" - }, - { - "$ref": "#/definitions/samtranslator__schema__aws_serverless_statemachine__EventBridgeRuleEvent" - }, - { - "$ref": "#/definitions/samtranslator__schema__aws_serverless_statemachine__ApiEvent" - } - ] - } + "Description": { + "title": "Description" }, - "Logging": { - "title": "Logging" + "Enabled": { + "title": "Enabled", + "type": "boolean" + }, + "Input": { + "title": "Input" }, "Name": { "title": "Name" }, - "PermissionsBoundary": { - "title": "Permissionsboundary" - }, - "Policies": { - "title": "Policies", - "anyOf": [ - { - "type": "string" - }, - { - "type": "array", - "items": { - "type": "string" - } - }, - { - "type": "object" - }, - { - "type": "array", - "items": { - "type": "object" - } - } - ] - }, - "Role": { - "title": "Role" - }, - "Tags": { - "title": "Tags", - "type": "object" + "RetryPolicy": { + "title": "Retrypolicy" }, - "Tracing": { - "title": "Tracing" + "Schedule": { + "title": "Schedule" }, - "Type": { - "title": "Type" + "State": { + "title": "State" } }, "additionalProperties": false }, - "samtranslator__schema__aws_serverless_statemachine__Resource": { - "title": "Resource", + "samtranslator__schema__aws_serverless_statemachine__ScheduleEvent": { + "title": "ScheduleEvent", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { "Type": { "title": "Type", "enum": [ - "AWS::Serverless::StateMachine" + "Schedule" ], "type": "string" }, "Properties": { - "$ref": "#/definitions/samtranslator__schema__aws_serverless_statemachine__Properties" - }, - "Condition": { - "title": "Condition" + "$ref": "#/definitions/ScheduleEventProperties" } }, "required": [ @@ -2804,91 +3117,73 @@ ], "additionalProperties": false }, - "ContentUri": { - "title": "ContentUri", + "samtranslator__schema__aws_serverless_statemachine__ScheduleV2EventProperties": { + "title": "ScheduleV2EventProperties", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "Bucket": { - "title": "Bucket" + "DeadLetterConfig": { + "$ref": "#/definitions/samtranslator__schema__aws_serverless_statemachine__DeadLetterConfig" }, - "Key": { - "title": "Key" + "Description": { + "title": "Description" }, - "Version": { - "title": "Version" - } - }, - "additionalProperties": false - }, - "samtranslator__schema__aws_serverless_layerversion__Properties": { - "title": "Properties", - "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", - "type": "object", - "properties": { - "CompatibleArchitectures": { - "title": "Compatiblearchitectures" + "EndDate": { + "title": "Enddate" }, - "CompatibleRuntimes": { - "title": "Compatibleruntimes" + "FlexibleTimeWindow": { + "title": "Flexibletimewindow" }, - "ContentUri": { - "title": "Contenturi", - "anyOf": [ - { - "type": "string" - }, - { - "$ref": "#/definitions/ContentUri" - } - ] + "GroupName": { + "title": "Groupname" }, - "Description": { - "title": "Description" + "Input": { + "title": "Input" }, - "LayerName": { - "title": "Layername" + "KmsKeyArn": { + "title": "Kmskeyarn" }, - "LicenseInfo": { - "title": "Licenseinfo" + "Name": { + "title": "Name" }, - "RetentionPolicy": { - "title": "Retentionpolicy", - "anyOf": [ - { - "type": "string" - }, - { - "type": "object" - } - ] + "PermissionsBoundary": { + "title": "Permissionsboundary" + }, + "RetryPolicy": { + "title": "Retrypolicy" + }, + "RoleArn": { + "title": "Rolearn" + }, + "ScheduleExpression": { + "title": "Scheduleexpression" + }, + "ScheduleExpressionTimezone": { + "title": "Scheduleexpressiontimezone" + }, + "StartDate": { + "title": "Startdate" + }, + "State": { + "title": "State" } }, - "required": [ - "ContentUri" - ], "additionalProperties": false }, - "samtranslator__schema__aws_serverless_layerversion__Resource": { - "title": "Resource", + "samtranslator__schema__aws_serverless_statemachine__ScheduleV2Event": { + "title": "ScheduleV2Event", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { "Type": { "title": "Type", "enum": [ - "AWS::Serverless::LayerVersion" + "ScheduleV2" ], "type": "string" }, "Properties": { - "$ref": "#/definitions/samtranslator__schema__aws_serverless_layerversion__Properties" - }, - "Condition": { - "title": "Condition" - }, - "DeletionPolicy": { - "title": "Deletionpolicy" + "$ref": "#/definitions/samtranslator__schema__aws_serverless_statemachine__ScheduleV2EventProperties" } }, "required": [ @@ -2897,228 +3192,97 @@ ], "additionalProperties": false }, - "CognitoAuthorizerIdentity": { - "title": "CognitoAuthorizerIdentity", - "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", - "type": "object", - "properties": { - "Header": { - "title": "Header", - "type": "string" - }, - "ReauthorizeEvery": { - "title": "Reauthorizeevery", - "anyOf": [ - { - "type": "integer" - }, - { - "type": "object" - } - ] - }, - "ValidationExpression": { - "title": "Validationexpression", - "type": "string" - } - }, - "additionalProperties": false - }, - "CognitoAuthorizer": { - "title": "CognitoAuthorizer", + "samtranslator__schema__aws_serverless_statemachine__CloudWatchEventProperties": { + "title": "CloudWatchEventProperties", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "AuthorizationScopes": { - "title": "Authorizationscopes", - "type": "array", - "items": { - "type": "string" - } - }, - "Identity": { - "$ref": "#/definitions/CognitoAuthorizerIdentity" + "EventBusName": { + "title": "Eventbusname" }, - "UserPoolArn": { - "title": "Userpoolarn", - "anyOf": [ - { - "type": "string" - }, - { - "type": "object" - } - ] - } - }, - "required": [ - "UserPoolArn" - ], - "additionalProperties": false - }, - "LambdaTokenAuthorizerIdentity": { - "title": "LambdaTokenAuthorizerIdentity", - "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", - "type": "object", - "properties": { - "ReauthorizeEvery": { - "title": "Reauthorizeevery", - "anyOf": [ - { - "type": "integer" - }, - { - "type": "object" - } - ] + "Input": { + "title": "Input" }, - "ValidationExpression": { - "title": "Validationexpression", - "type": "string" + "InputPath": { + "title": "Inputpath" }, - "Header": { - "title": "Header", - "type": "string" + "Pattern": { + "title": "Pattern" } }, "additionalProperties": false }, - "LambdaTokenAuthorizer": { - "title": "LambdaTokenAuthorizer", + "samtranslator__schema__aws_serverless_statemachine__CloudWatchEvent": { + "title": "CloudWatchEvent", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "AuthorizationScopes": { - "title": "Authorizationscopes", - "type": "array", - "items": { - "type": "string" - } - }, - "FunctionArn": { - "title": "Functionarn", - "anyOf": [ - { - "type": "string" - }, - { - "type": "object" - } - ] - }, - "FunctionInvokeRole": { - "title": "Functioninvokerole", - "type": "string" - }, - "FunctionPayloadType": { - "title": "Functionpayloadtype", + "Type": { + "title": "Type", "enum": [ - "REQUEST", - "TOKEN" + "CloudWatchEvent" ], "type": "string" }, - "Identity": { - "$ref": "#/definitions/LambdaTokenAuthorizerIdentity" + "Properties": { + "$ref": "#/definitions/samtranslator__schema__aws_serverless_statemachine__CloudWatchEventProperties" } }, "required": [ - "FunctionArn" + "Type", + "Properties" ], "additionalProperties": false }, - "LambdaRequestAuthorizerIdentity": { - "title": "LambdaRequestAuthorizerIdentity", + "samtranslator__schema__aws_serverless_statemachine__EventBridgeRuleEventProperties": { + "title": "EventBridgeRuleEventProperties", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "Context": { - "title": "Context", - "type": "array", - "items": { - "type": "string" - } + "DeadLetterConfig": { + "$ref": "#/definitions/samtranslator__schema__aws_serverless_statemachine__DeadLetterConfig" }, - "Headers": { - "title": "Headers", - "type": "array", - "items": { - "type": "string" - } + "EventBusName": { + "title": "Eventbusname" }, - "QueryStrings": { - "title": "Querystrings", - "type": "array", - "items": { - "type": "string" - } + "Input": { + "title": "Input" }, - "ReauthorizeEvery": { - "title": "Reauthorizeevery", - "anyOf": [ - { - "type": "integer" - }, - { - "type": "object" - } - ] + "InputPath": { + "title": "Inputpath" }, - "StageVariables": { - "title": "Stagevariables", - "type": "array", - "items": { - "type": "string" - } + "Pattern": { + "title": "Pattern" + }, + "RetryPolicy": { + "title": "Retrypolicy" } }, "additionalProperties": false }, - "LambdaRequestAuthorizer": { - "title": "LambdaRequestAuthorizer", + "samtranslator__schema__aws_serverless_statemachine__EventBridgeRuleEvent": { + "title": "EventBridgeRuleEvent", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "AuthorizationScopes": { - "title": "Authorizationscopes", - "type": "array", - "items": { - "type": "string" - } - }, - "FunctionArn": { - "title": "Functionarn", - "anyOf": [ - { - "type": "string" - }, - { - "type": "object" - } - ] - }, - "FunctionInvokeRole": { - "title": "Functioninvokerole", - "type": "string" - }, - "FunctionPayloadType": { - "title": "Functionpayloadtype", + "Type": { + "title": "Type", "enum": [ - "REQUEST", - "TOKEN" + "EventBridgeRule" ], "type": "string" }, - "Identity": { - "$ref": "#/definitions/LambdaRequestAuthorizerIdentity" + "Properties": { + "$ref": "#/definitions/samtranslator__schema__aws_serverless_statemachine__EventBridgeRuleEventProperties" } }, "required": [ - "FunctionArn" + "Type", + "Properties" ], "additionalProperties": false }, - "samtranslator__schema__aws_serverless_api__ResourcePolicy": { + "samtranslator__schema__aws_serverless_statemachine__ResourcePolicy": { "title": "ResourcePolicy", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", @@ -3280,185 +3444,294 @@ }, "additionalProperties": false }, - "UsagePlan": { - "title": "UsagePlan", + "samtranslator__schema__aws_serverless_statemachine__Auth": { + "title": "Auth", + "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", + "type": "object", + "properties": { + "ApiKeyRequired": { + "title": "Apikeyrequired", + "type": "boolean" + }, + "AuthorizationScopes": { + "title": "Authorizationscopes", + "type": "array", + "items": { + "type": "string" + } + }, + "Authorizer": { + "title": "Authorizer", + "type": "string" + }, + "ResourcePolicy": { + "$ref": "#/definitions/samtranslator__schema__aws_serverless_statemachine__ResourcePolicy" + } + }, + "additionalProperties": false + }, + "samtranslator__schema__aws_serverless_statemachine__ApiEventProperties": { + "title": "ApiEventProperties", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "CreateUsagePlan": { - "title": "Createusageplan", - "enum": [ - "PER_API", - "SHARED", - "NONE" - ], - "type": "string" + "Auth": { + "$ref": "#/definitions/samtranslator__schema__aws_serverless_statemachine__Auth" }, - "Description": { - "title": "Description" + "Method": { + "title": "Method", + "type": "string" }, - "Quota": { - "title": "Quota" + "Path": { + "title": "Path", + "type": "string" }, - "Tags": { - "title": "Tags" + "RestApiId": { + "title": "Restapiid", + "type": "object" }, - "Throttle": { - "title": "Throttle" + "UnescapeMappingTemplate": { + "title": "Unescapemappingtemplate", + "type": "boolean" + } + }, + "required": [ + "Method", + "Path" + ], + "additionalProperties": false + }, + "samtranslator__schema__aws_serverless_statemachine__ApiEvent": { + "title": "ApiEvent", + "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", + "type": "object", + "properties": { + "Type": { + "title": "Type", + "enum": [ + "Api" + ], + "type": "string" }, - "UsagePlanName": { - "title": "Usageplanname" + "Properties": { + "$ref": "#/definitions/samtranslator__schema__aws_serverless_statemachine__ApiEventProperties" } }, "required": [ - "CreateUsagePlan" + "Type", + "Properties" ], "additionalProperties": false }, - "samtranslator__schema__aws_serverless_api__Auth": { - "title": "Auth", + "samtranslator__schema__aws_serverless_statemachine__Properties": { + "title": "Properties", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "AddDefaultAuthorizerToCorsPreflight": { - "title": "Adddefaultauthorizertocorspreflight", - "type": "boolean" + "Definition": { + "title": "Definition", + "type": "object" }, - "ApiKeyRequired": { - "title": "Apikeyrequired", - "type": "boolean" + "DefinitionSubstitutions": { + "title": "Definitionsubstitutions", + "type": "object" }, - "Authorizers": { - "title": "Authorizers", + "DefinitionUri": { + "title": "Definitionuri", + "anyOf": [ + { + "type": "string" + }, + {} + ] + }, + "Events": { + "title": "Events", "type": "object", "additionalProperties": { "anyOf": [ { - "$ref": "#/definitions/CognitoAuthorizer" + "$ref": "#/definitions/samtranslator__schema__aws_serverless_statemachine__ScheduleEvent" }, { - "$ref": "#/definitions/LambdaTokenAuthorizer" + "$ref": "#/definitions/samtranslator__schema__aws_serverless_statemachine__ScheduleV2Event" }, { - "$ref": "#/definitions/LambdaRequestAuthorizer" + "$ref": "#/definitions/samtranslator__schema__aws_serverless_statemachine__CloudWatchEvent" + }, + { + "$ref": "#/definitions/samtranslator__schema__aws_serverless_statemachine__EventBridgeRuleEvent" + }, + { + "$ref": "#/definitions/samtranslator__schema__aws_serverless_statemachine__ApiEvent" } ] } }, - "DefaultAuthorizer": { - "title": "Defaultauthorizer", - "type": "string" + "Logging": { + "title": "Logging" }, - "InvokeRole": { - "title": "Invokerole", - "type": "string" + "Name": { + "title": "Name" }, - "ResourcePolicy": { - "$ref": "#/definitions/samtranslator__schema__aws_serverless_api__ResourcePolicy" + "PermissionsBoundary": { + "title": "Permissionsboundary" }, - "UsagePlan": { - "$ref": "#/definitions/UsagePlan" + "Policies": { + "title": "Policies", + "anyOf": [ + { + "type": "string" + }, + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "type": "object" + }, + { + "type": "array", + "items": { + "type": "object" + } + } + ] + }, + "Role": { + "title": "Role" + }, + "Tags": { + "title": "Tags", + "type": "object" + }, + "Tracing": { + "title": "Tracing" + }, + "Type": { + "title": "Type" } }, "additionalProperties": false }, - "Cors": { - "title": "Cors", + "samtranslator__schema__aws_serverless_statemachine__Resource": { + "title": "Resource", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "AllowCredentials": { - "title": "Allowcredentials", - "type": "boolean" - }, - "AllowHeaders": { - "title": "Allowheaders", - "type": "string" - }, - "AllowMethods": { - "title": "Allowmethods", + "Type": { + "title": "Type", + "enum": [ + "AWS::Serverless::StateMachine" + ], "type": "string" }, - "AllowOrigin": { - "title": "Alloworigin", - "type": "string" + "Properties": { + "$ref": "#/definitions/samtranslator__schema__aws_serverless_statemachine__Properties" }, - "MaxAge": { - "title": "Maxage", - "type": "string" + "Condition": { + "title": "Condition" } }, "required": [ - "AllowOrigin" + "Type", + "Properties" ], "additionalProperties": false }, - "samtranslator__schema__aws_serverless_api__Route53": { - "title": "Route53", + "ContentUri": { + "title": "ContentUri", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "DistributionDomainName": { - "title": "Distributiondomainname" - }, - "EvaluateTargetHealth": { - "title": "Evaluatetargethealth" - }, - "HostedZoneId": { - "title": "Hostedzoneid" + "Bucket": { + "title": "Bucket" }, - "HostedZoneName": { - "title": "Hostedzonename" + "Key": { + "title": "Key" }, - "IpV6": { - "title": "Ipv6", - "type": "boolean" + "Version": { + "title": "Version" } }, "additionalProperties": false }, - "samtranslator__schema__aws_serverless_api__Domain": { - "title": "Domain", + "samtranslator__schema__aws_serverless_layerversion__Properties": { + "title": "Properties", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", "type": "object", "properties": { - "BasePath": { - "title": "Basepath" + "CompatibleArchitectures": { + "title": "Compatiblearchitectures" }, - "CertificateArn": { - "title": "Certificatearn" + "CompatibleRuntimes": { + "title": "Compatibleruntimes" }, - "DomainName": { - "title": "Domainname" + "ContentUri": { + "title": "Contenturi", + "anyOf": [ + { + "type": "string" + }, + { + "$ref": "#/definitions/ContentUri" + } + ] }, - "EndpointConfiguration": { - "title": "Endpointconfiguration", + "Description": { + "title": "Description" + }, + "LayerName": { + "title": "Layername" + }, + "LicenseInfo": { + "title": "Licenseinfo" + }, + "RetentionPolicy": { + "title": "Retentionpolicy", "anyOf": [ { - "enum": [ - "REGIONAL", - "EDGE" - ], "type": "string" }, { "type": "object" } ] + } + }, + "required": [ + "ContentUri" + ], + "additionalProperties": false + }, + "samtranslator__schema__aws_serverless_layerversion__Resource": { + "title": "Resource", + "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", + "type": "object", + "properties": { + "Type": { + "title": "Type", + "enum": [ + "AWS::Serverless::LayerVersion" + ], + "type": "string" }, - "MutualTlsAuthentication": { - "title": "Mutualtlsauthentication" - }, - "OwnershipVerificationCertificateArn": { - "title": "Ownershipverificationcertificatearn" + "Properties": { + "$ref": "#/definitions/samtranslator__schema__aws_serverless_layerversion__Properties" }, - "Route53": { - "$ref": "#/definitions/samtranslator__schema__aws_serverless_api__Route53" + "Condition": { + "title": "Condition" }, - "SecurityPolicy": { - "title": "Securitypolicy" + "DeletionPolicy": { + "title": "Deletionpolicy" } }, + "required": [ + "Type", + "Properties" + ], "additionalProperties": false }, "samtranslator__schema__aws_serverless_api__Properties": { @@ -3493,6 +3766,9 @@ { "type": "string" }, + { + "type": "object" + }, { "$ref": "#/definitions/Cors" } @@ -3616,147 +3892,6 @@ ], "additionalProperties": false }, - "OAuth2Authorizer": { - "title": "OAuth2Authorizer", - "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", - "type": "object", - "properties": { - "AuthorizationScopes": { - "title": "Authorizationscopes", - "type": "array", - "items": { - "type": "string" - } - }, - "IdentitySource": { - "title": "Identitysource", - "type": "string" - }, - "JwtConfiguration": { - "title": "Jwtconfiguration" - } - }, - "additionalProperties": false - }, - "LambdaAuthorizerIdentity": { - "title": "LambdaAuthorizerIdentity", - "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", - "type": "object", - "properties": { - "Context": { - "title": "Context", - "type": "array", - "items": { - "type": "string" - } - }, - "Headers": { - "title": "Headers", - "type": "array", - "items": { - "type": "string" - } - }, - "QueryStrings": { - "title": "Querystrings", - "type": "array", - "items": { - "type": "string" - } - }, - "ReauthorizeEvery": { - "title": "Reauthorizeevery", - "type": "integer" - }, - "StageVariables": { - "title": "Stagevariables", - "type": "array", - "items": { - "type": "string" - } - } - }, - "additionalProperties": false - }, - "LambdaAuthorizer": { - "title": "LambdaAuthorizer", - "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", - "type": "object", - "properties": { - "AuthorizerPayloadFormatVersion": { - "title": "Authorizerpayloadformatversion", - "anyOf": [ - { - "enum": [ - "1.0", - "2.0" - ], - "type": "string" - }, - { - "type": "number" - } - ] - }, - "EnableSimpleResponses": { - "title": "Enablesimpleresponses", - "type": "boolean" - }, - "FunctionArn": { - "title": "Functionarn", - "type": "object" - }, - "FunctionInvokeRole": { - "title": "Functioninvokerole", - "anyOf": [ - { - "type": "string" - }, - { - "type": "object" - } - ] - }, - "Identity": { - "$ref": "#/definitions/LambdaAuthorizerIdentity" - } - }, - "required": [ - "AuthorizerPayloadFormatVersion", - "FunctionArn" - ], - "additionalProperties": false - }, - "samtranslator__schema__aws_serverless_httpapi__Auth": { - "title": "Auth", - "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", - "type": "object", - "properties": { - "Authorizers": { - "title": "Authorizers", - "type": "object", - "additionalProperties": { - "anyOf": [ - { - "$ref": "#/definitions/OAuth2Authorizer" - }, - { - "$ref": "#/definitions/LambdaAuthorizer" - } - ] - } - }, - "DefaultAuthorizer": { - "title": "Defaultauthorizer", - "type": "string" - }, - "EnableIamAuthorizer": { - "title": "Enableiamauthorizer", - "type": "boolean" - } - }, - "additionalProperties": false - }, "CorsConfiguration": { "title": "CorsConfiguration", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", @@ -3825,77 +3960,6 @@ ], "additionalProperties": false }, - "samtranslator__schema__aws_serverless_httpapi__Route53": { - "title": "Route53", - "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", - "type": "object", - "properties": { - "DistributionDomainName": { - "title": "Distributiondomainname" - }, - "EvaluateTargetHealth": { - "title": "Evaluatetargethealth" - }, - "HostedZoneId": { - "title": "Hostedzoneid" - }, - "HostedZoneName": { - "title": "Hostedzonename" - }, - "IpV6": { - "title": "Ipv6", - "type": "boolean" - } - }, - "additionalProperties": false - }, - "samtranslator__schema__aws_serverless_httpapi__Domain": { - "title": "Domain", - "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", - "type": "object", - "properties": { - "BasePath": { - "title": "Basepath", - "type": "array", - "items": { - "type": "string" - } - }, - "CertificateArn": { - "title": "Certificatearn" - }, - "DomainName": { - "title": "Domainname" - }, - "EndpointConfiguration": { - "title": "Endpointconfiguration", - "anyOf": [ - { - "enum": [ - "REGIONAL" - ], - "type": "string" - }, - { - "type": "object" - } - ] - }, - "MutualTlsAuthentication": { - "title": "Mutualtlsauthentication" - }, - "OwnershipVerificationCertificateArn": { - "title": "Ownershipverificationcertificatearn" - }, - "Route53": { - "$ref": "#/definitions/samtranslator__schema__aws_serverless_httpapi__Route53" - }, - "SecurityPolicy": { - "title": "Securitypolicy" - } - }, - "additionalProperties": false - }, "samtranslator__schema__aws_serverless_httpapi__Properties": { "title": "Properties", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", From a5624658d38c8a6ea335e65473d9649447fdc314 Mon Sep 17 00:00:00 2001 From: Gavin Zhang Date: Tue, 22 Nov 2022 10:38:53 -0800 Subject: [PATCH 2/4] Format file --- samtranslator/schema/aws_serverless_function.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/samtranslator/schema/aws_serverless_function.py b/samtranslator/schema/aws_serverless_function.py index 5fd04f64f2..110373840f 100644 --- a/samtranslator/schema/aws_serverless_function.py +++ b/samtranslator/schema/aws_serverless_function.py @@ -439,7 +439,7 @@ class Globals(BaseModel): PermissionsBoundary: Optional[PassThrough] ReservedConcurrentExecutions: Optional[PassThrough] ProvisionedConcurrencyConfig: Optional[PassThrough] - AssumeRolePolicyDocument: Optional[Dict[str, Any]] + AssumeRolePolicyDocument: Optional[Dict[str, Any]] EventInvokeConfig: Optional[EventInvokeConfig] Architectures: Optional[PassThrough] EphemeralStorage: Optional[PassThrough] From 8dfb5c62cfa405d837a7339e3f2ec6c53c6dadc0 Mon Sep 17 00:00:00 2001 From: Gavin Zhang Date: Tue, 22 Nov 2022 11:42:18 -0800 Subject: [PATCH 3/4] Unify types --- samtranslator/schema/aws_serverless_api.py | 77 +++++++------ .../schema/aws_serverless_function.py | 101 +++++++++++------- .../schema/aws_serverless_httpapi.py | 37 ++++--- .../schema/aws_serverless_simpletable.py | 6 +- samtranslator/schema/schema.json | 57 +--------- 5 files changed, 138 insertions(+), 140 deletions(-) diff --git a/samtranslator/schema/aws_serverless_api.py b/samtranslator/schema/aws_serverless_api.py index 7a05e7607d..cfb6868740 100644 --- a/samtranslator/schema/aws_serverless_api.py +++ b/samtranslator/schema/aws_serverless_api.py @@ -118,52 +118,69 @@ class Domain(BaseModel): SecurityPolicy: Optional[PassThrough] +Name = Optional[PassThrough] +DefinitionUri = Optional[PassThrough] +CacheClusterEnabled = Optional[PassThrough] +CacheClusterSize = Optional[PassThrough] +Variables = Optional[PassThrough] +EndpointConfiguration = Optional[PassThrough] +MethodSettings = Optional[PassThrough] +BinaryMediaTypes = Optional[PassThrough] +MinimumCompressionSize = Optional[PassThrough] +CorsType = Optional[Union[str, SamIntrinsic, Cors]] +GatewayResponses = Optional[SamIntrinsic] +AccessLogSetting = Optional[PassThrough] +CanarySetting = Optional[PassThrough] +TracingEnabled = Optional[PassThrough] +OpenApiVersion = Optional[Union[float, str]] # TODO: float doesn't exist in documentation + + class Properties(BaseModel): - AccessLogSetting: Optional[PassThrough] + AccessLogSetting: Optional[AccessLogSetting] ApiKeySourceType: Optional[PassThrough] Auth: Optional[Auth] - BinaryMediaTypes: Optional[PassThrough] - CacheClusterEnabled: Optional[PassThrough] - CacheClusterSize: Optional[PassThrough] - CanarySetting: Optional[PassThrough] - Cors: Optional[Union[str, SamIntrinsic, Cors]] + BinaryMediaTypes: Optional[BinaryMediaTypes] + CacheClusterEnabled: Optional[CacheClusterEnabled] + CacheClusterSize: Optional[CacheClusterSize] + CanarySetting: Optional[CanarySetting] + Cors: Optional[CorsType] DefinitionBody: Optional[PassThrough] - DefinitionUri: Optional[PassThrough] + DefinitionUri: Optional[DefinitionUri] Description: Optional[PassThrough] DisableExecuteApiEndpoint: Optional[PassThrough] Domain: Optional[Domain] - EndpointConfiguration: Optional[PassThrough] + EndpointConfiguration: Optional[EndpointConfiguration] FailOnWarnings: Optional[PassThrough] - GatewayResponses: Optional[SamIntrinsic] - MethodSettings: Optional[PassThrough] - MinimumCompressionSize: Optional[PassThrough] + GatewayResponses: Optional[GatewayResponses] + MethodSettings: Optional[MethodSettings] + MinimumCompressionSize: Optional[MinimumCompressionSize] Mode: Optional[PassThrough] Models: Optional[SamIntrinsic] - Name: Optional[PassThrough] - OpenApiVersion: Optional[Union[float, str]] # TODO: float doesn't exist in documentation + Name: Optional[Name] + OpenApiVersion: Optional[OpenApiVersion] StageName: Union[str, SamIntrinsic] Tags: Optional[PassThrough] - TracingEnabled: Optional[PassThrough] - Variables: Optional[PassThrough] + TracingEnabled: Optional[TracingEnabled] + Variables: Optional[Variables] class Globals(BaseModel): Auth: Optional[Auth] - Name: Optional[PassThrough] - DefinitionUri: Optional[PassThrough] - CacheClusterEnabled: Optional[PassThrough] - CacheClusterSize: Optional[PassThrough] - Variables: Optional[PassThrough] - EndpointConfiguration: Optional[PassThrough] - MethodSettings: Optional[PassThrough] - BinaryMediaTypes: Optional[PassThrough] - MinimumCompressionSize: Optional[PassThrough] - Cors: Optional[Union[str, SamIntrinsic, Cors]] - GatewayResponses: Optional[PassThrough] - AccessLogSetting: Optional[PassThrough] - CanarySetting: Optional[PassThrough] - TracingEnabled: Optional[PassThrough] - OpenApiVersion: Optional[Union[float, str]] # TODO: float doesn't exist in documentation + Name: Optional[Name] + DefinitionUri: Optional[DefinitionUri] + CacheClusterEnabled: Optional[CacheClusterEnabled] + CacheClusterSize: Optional[CacheClusterSize] + Variables: Optional[Variables] + EndpointConfiguration: Optional[EndpointConfiguration] + MethodSettings: Optional[MethodSettings] + BinaryMediaTypes: Optional[BinaryMediaTypes] + MinimumCompressionSize: Optional[MinimumCompressionSize] + Cors: Optional[CorsType] + GatewayResponses: Optional[GatewayResponses] + AccessLogSetting: Optional[AccessLogSetting] + CanarySetting: Optional[CanarySetting] + TracingEnabled: Optional[TracingEnabled] + OpenApiVersion: Optional[OpenApiVersion] Domain: Optional[Domain] diff --git a/samtranslator/schema/aws_serverless_function.py b/samtranslator/schema/aws_serverless_function.py index 110373840f..82eca86256 100644 --- a/samtranslator/schema/aws_serverless_function.py +++ b/samtranslator/schema/aws_serverless_function.py @@ -358,18 +358,39 @@ class ScheduleV2Event(BaseModel): Properties: ScheduleV2EventProperties +Handler = Optional[PassThrough] +Runtime = Optional[PassThrough] +CodeUriType = Optional[Union[str, CodeUri]] +DeadLetterQueueType = Optional[Union[SamIntrinsic, DeadLetterQueue]] +Description = Optional[PassThrough] +MemorySize = Optional[PassThrough] +Timeout = Optional[PassThrough] +VpcConfig = Optional[PassThrough] +Environment = Optional[PassThrough] +Tags = Optional[Dict[str, Any]] +Tracing = Optional[Union[str, SamIntrinsic]] +KmsKeyArn = Optional[PassThrough] +Layers = Optional[PassThrough] +AutoPublishAlias = Optional[Union[str, SamIntrinsic]] +PermissionsBoundary = Optional[PassThrough] +ReservedConcurrentExecutions = Optional[PassThrough] +ProvisionedConcurrencyConfig = Optional[PassThrough] +AssumeRolePolicyDocument = Optional[Dict[str, Any]] +Architectures = Optional[PassThrough] +EphemeralStorage = Optional[PassThrough] + class Properties(BaseModel): - Architectures: Optional[PassThrough] - AssumeRolePolicyDocument: Optional[Dict[str, Any]] - AutoPublishAlias: Optional[Union[str, SamIntrinsic]] + Architectures: Optional[Architectures] + AssumeRolePolicyDocument: Optional[AssumeRolePolicyDocument] + AutoPublishAlias: Optional[AutoPublishAlias] AutoPublishCodeSha256: Optional[Union[str, SamIntrinsic]] CodeSigningConfigArn: Optional[Union[str, SamIntrinsic]] - CodeUri: Optional[Union[str, CodeUri]] - DeadLetterQueue: Optional[Union[SamIntrinsic, DeadLetterQueue]] + CodeUri: Optional[CodeUriType] + DeadLetterQueue: Optional[DeadLetterQueueType] DeploymentPreference: Optional[DeploymentPreference] - Description: Optional[PassThrough] - Environment: Optional[PassThrough] - EphemeralStorage: Optional[PassThrough] + Description: Optional[Description] + Environment: Optional[Environment] + EphemeralStorage: Optional[EphemeralStorage] EventInvokeConfig: Optional[EventInvokeConfig] Events: Optional[ Dict[ @@ -399,50 +420,50 @@ class Properties(BaseModel): FileSystemConfigs: Optional[PassThrough] FunctionName: Optional[PassThrough] FunctionUrlConfig: Optional[FunctionUrlConfig] - Handler: Optional[PassThrough] + Handler: Optional[Handler] ImageConfig: Optional[PassThrough] ImageUri: Optional[PassThrough] InlineCode: Optional[PassThrough] - KmsKeyArn: Optional[PassThrough] - Layers: Optional[PassThrough] - MemorySize: Optional[PassThrough] + KmsKeyArn: Optional[KmsKeyArn] + Layers: Optional[Layers] + MemorySize: Optional[MemorySize] PackageType: Optional[PassThrough] - PermissionsBoundary: Optional[PassThrough] + PermissionsBoundary: Optional[PermissionsBoundary] Policies: Optional[Union[str, List[Union[str, SamIntrinsic]], SamIntrinsic]] - ProvisionedConcurrencyConfig: Optional[PassThrough] - ReservedConcurrentExecutions: Optional[PassThrough] + ProvisionedConcurrencyConfig: Optional[ProvisionedConcurrencyConfig] + ReservedConcurrentExecutions: Optional[ReservedConcurrentExecutions] Role: Optional[Union[str, SamIntrinsic]] - Runtime: Optional[PassThrough] - Tags: Optional[Dict[str, Any]] - Timeout: Optional[PassThrough] - Tracing: Optional[Union[str, SamIntrinsic]] + Runtime: Optional[Runtime] + Tags: Optional[Tags] + Timeout: Optional[Timeout] + Tracing: Optional[Tracing] VersionDescription: Optional[PassThrough] - VpcConfig: Optional[PassThrough] + VpcConfig: Optional[VpcConfig] class Globals(BaseModel): - Handler: Optional[PassThrough] - Runtime: Optional[PassThrough] - CodeUri: Optional[Union[str, CodeUri]] - DeadLetterQueue: Optional[Union[SamIntrinsic, DeadLetterQueue]] - Description: Optional[PassThrough] - MemorySize: Optional[PassThrough] - Timeout: Optional[PassThrough] - VpcConfig: Optional[PassThrough] - Environment: Optional[PassThrough] - Tags: Optional[Dict[str, Any]] - Tracing: Optional[Union[str, SamIntrinsic]] - KmsKeyArn: Optional[PassThrough] - Layers: Optional[PassThrough] - AutoPublishAlias: Optional[Union[str, SamIntrinsic]] + Handler: Optional[Handler] + Runtime: Optional[Runtime] + CodeUri: Optional[CodeUriType] + DeadLetterQueue: Optional[DeadLetterQueueType] + Description: Optional[Description] + MemorySize: Optional[MemorySize] + Timeout: Optional[Timeout] + VpcConfig: Optional[VpcConfig] + Environment: Optional[Environment] + Tags: Optional[Tags] + Tracing: Optional[Tracing] + KmsKeyArn: Optional[KmsKeyArn] + Layers: Optional[Layers] + AutoPublishAlias: Optional[AutoPublishAlias] DeploymentPreference: Optional[DeploymentPreference] - PermissionsBoundary: Optional[PassThrough] - ReservedConcurrentExecutions: Optional[PassThrough] - ProvisionedConcurrencyConfig: Optional[PassThrough] - AssumeRolePolicyDocument: Optional[Dict[str, Any]] + PermissionsBoundary: Optional[PermissionsBoundary] + ReservedConcurrentExecutions: Optional[ReservedConcurrentExecutions] + ProvisionedConcurrencyConfig: Optional[ProvisionedConcurrencyConfig] + AssumeRolePolicyDocument: Optional[AssumeRolePolicyDocument] EventInvokeConfig: Optional[EventInvokeConfig] - Architectures: Optional[PassThrough] - EphemeralStorage: Optional[PassThrough] + Architectures: Optional[Architectures] + EphemeralStorage: Optional[EphemeralStorage] class Resource(BaseModel): diff --git a/samtranslator/schema/aws_serverless_httpapi.py b/samtranslator/schema/aws_serverless_httpapi.py index 50bc214a37..2343308e46 100644 --- a/samtranslator/schema/aws_serverless_httpapi.py +++ b/samtranslator/schema/aws_serverless_httpapi.py @@ -77,35 +77,44 @@ class Domain(BaseModel): SecurityPolicy: Optional[PassThrough] +AccessLogSettings = Optional[PassThrough] +StageVariables = Optional[PassThrough] +Tags = Optional[Dict[str, Any]] +RouteSettings = Optional[PassThrough] +FailOnWarnings = Optional[PassThrough] +CorsConfigurationType = Optional[PassThrough] +DefaultRouteSettings = Optional[PassThrough] + + class Properties(BaseModel): - AccessLogSettings: Optional[PassThrough] + AccessLogSettings: Optional[AccessLogSettings] Auth: Optional[Auth] # TODO: Also string like in the docs? - CorsConfiguration: Optional[Union[SamIntrinsic, CorsConfiguration]] - DefaultRouteSettings: Optional[PassThrough] + CorsConfiguration: Optional[CorsConfigurationType] + DefaultRouteSettings: Optional[DefaultRouteSettings] DefinitionBody: Optional[Dict[str, Any]] DefinitionUri: Optional[Union[str, DefinitionUri]] Description: Optional[str] DisableExecuteApiEndpoint: Optional[PassThrough] Domain: Optional[Domain] - FailOnWarnings: Optional[PassThrough] - RouteSettings: Optional[PassThrough] + FailOnWarnings: Optional[FailOnWarnings] + RouteSettings: Optional[RouteSettings] StageName: Optional[PassThrough] - StageVariables: Optional[PassThrough] - Tags: Optional[Dict[str, Any]] + StageVariables: Optional[StageVariables] + Tags: Optional[Tags] Name: Optional[PassThrough] # TODO: Add to docs class Globals(BaseModel): Auth: Optional[Auth] - AccessLogSettings: Optional[PassThrough] - StageVariables: Optional[PassThrough] - Tags: Optional[Dict[str, Any]] - RouteSettings: Optional[PassThrough] - FailOnWarnings: Optional[PassThrough] + AccessLogSettings: Optional[AccessLogSettings] + StageVariables: Optional[StageVariables] + Tags: Optional[Tags] + RouteSettings: Optional[RouteSettings] + FailOnWarnings: Optional[FailOnWarnings] Domain: Optional[Domain] - CorsConfiguration: Optional[PassThrough] - DefaultRouteSettings: Optional[PassThrough] + CorsConfiguration: Optional[CorsConfigurationType] + DefaultRouteSettings: Optional[DefaultRouteSettings] class Resource(BaseModel): diff --git a/samtranslator/schema/aws_serverless_simpletable.py b/samtranslator/schema/aws_serverless_simpletable.py index f7bf02ae2c..fef7348caf 100644 --- a/samtranslator/schema/aws_serverless_simpletable.py +++ b/samtranslator/schema/aws_serverless_simpletable.py @@ -10,16 +10,18 @@ class PrimaryKey(BaseModel): Type: PassThrough +SSESpecification = Optional[PassThrough] + class Properties(BaseModel): PrimaryKey: Optional[PrimaryKey] ProvisionedThroughput: Optional[PassThrough] - SSESpecification: Optional[PassThrough] + SSESpecification: Optional[SSESpecification] TableName: Optional[PassThrough] Tags: Optional[Dict[str, Any]] class Globals(BaseModel): - SSESpecification: Optional[PassThrough] + SSESpecification: Optional[SSESpecification] class Resource(BaseModel): diff --git a/samtranslator/schema/schema.json b/samtranslator/schema/schema.json index 70c64f7854..80db73caec 100644 --- a/samtranslator/schema/schema.json +++ b/samtranslator/schema/schema.json @@ -964,7 +964,8 @@ ] }, "GatewayResponses": { - "title": "Gatewayresponses" + "title": "Gatewayresponses", + "type": "object" }, "AccessLogSetting": { "title": "Accesslogsetting" @@ -3892,50 +3893,6 @@ ], "additionalProperties": false }, - "CorsConfiguration": { - "title": "CorsConfiguration", - "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", - "type": "object", - "properties": { - "AllowCredentials": { - "title": "Allowcredentials", - "type": "boolean" - }, - "AllowHeaders": { - "title": "Allowheaders", - "type": "array", - "items": { - "type": "string" - } - }, - "AllowMethods": { - "title": "Allowmethods", - "type": "array", - "items": { - "type": "string" - } - }, - "AllowOrigins": { - "title": "Alloworigins", - "type": "array", - "items": { - "type": "string" - } - }, - "ExposeHeaders": { - "title": "Exposeheaders", - "type": "array", - "items": { - "type": "string" - } - }, - "MaxAge": { - "title": "Maxage", - "type": "integer" - } - }, - "additionalProperties": false - }, "DefinitionUri": { "title": "DefinitionUri", "description": "By default strict\nhttps://pydantic-docs.helpmanual.io/usage/model_config/#change-behaviour-globally", @@ -3972,15 +3929,7 @@ "$ref": "#/definitions/samtranslator__schema__aws_serverless_httpapi__Auth" }, "CorsConfiguration": { - "title": "Corsconfiguration", - "anyOf": [ - { - "type": "object" - }, - { - "$ref": "#/definitions/CorsConfiguration" - } - ] + "title": "Corsconfiguration" }, "DefaultRouteSettings": { "title": "Defaultroutesettings" From 0481165a45326df6838623d5ab5292380e5134c6 Mon Sep 17 00:00:00 2001 From: Gavin Zhang Date: Tue, 22 Nov 2022 11:44:45 -0800 Subject: [PATCH 4/4] Format file --- samtranslator/schema/aws_serverless_function.py | 1 + samtranslator/schema/aws_serverless_simpletable.py | 1 + 2 files changed, 2 insertions(+) diff --git a/samtranslator/schema/aws_serverless_function.py b/samtranslator/schema/aws_serverless_function.py index 82eca86256..cb75807e3c 100644 --- a/samtranslator/schema/aws_serverless_function.py +++ b/samtranslator/schema/aws_serverless_function.py @@ -379,6 +379,7 @@ class ScheduleV2Event(BaseModel): Architectures = Optional[PassThrough] EphemeralStorage = Optional[PassThrough] + class Properties(BaseModel): Architectures: Optional[Architectures] AssumeRolePolicyDocument: Optional[AssumeRolePolicyDocument] diff --git a/samtranslator/schema/aws_serverless_simpletable.py b/samtranslator/schema/aws_serverless_simpletable.py index fef7348caf..72988a77fe 100644 --- a/samtranslator/schema/aws_serverless_simpletable.py +++ b/samtranslator/schema/aws_serverless_simpletable.py @@ -12,6 +12,7 @@ class PrimaryKey(BaseModel): SSESpecification = Optional[PassThrough] + class Properties(BaseModel): PrimaryKey: Optional[PrimaryKey] ProvisionedThroughput: Optional[PassThrough]