AWSTemplateFormatVersion: '2010-09-09' Transform: 'AWS::Serverless-2016-10-31' Description: 'apibuilder api deployment' Parameters: Env: Description: The environment name. Type: String Default: dev Resources: ApplicationFunction: Type: AWS::Serverless::Function Properties: CodeUri: ../../.. Environment: Variables: ENV: !Ref Env Events: DeleteByOrgKeyAndApplicationKey: Type: Api Properties: Path: '/{orgKey}/{applicationKey}' Method: delete GetByOrgKey: Type: Api Properties: Path: '/{orgKey}' Method: get PostByOrgKey: Type: Api Properties: Path: '/{orgKey}' Method: post PostByOrgKeyAndApplicationKey: Type: Api Properties: Path: '/{orgKey}/{applicationKey}/move' Method: post PutByOrgKeyAndApplicationKey: Type: Api Properties: Path: '/{orgKey}/{applicationKey}' Method: put Ping: Type: Schedule Properties: Schedule: rate(5 minutes) Input: '{"httpMethod": "PING"}' FunctionName: !Sub '${AWS::StackName}-application' Handler: src/main/js/handlers/application.handler Policies: - AWSLambdaBasicExecutionRole - Version: 2012-10-17 Statement: - Action: - secretsmanager:GetSecretValue Effect: Allow Resource: '*' - Action: - kms:Decrypt Effect: Allow Resource: '*' Runtime: nodejs8.10 ApplicationFunctionLogRetention: Type: AWS::Logs::LogGroup Properties: LogGroupName: !Sub '/aws/lambda/${ ApplicationFunction}' RetentionInDays: 7 AttributeFunction: Type: AWS::Serverless::Function Properties: CodeUri: ../../.. Environment: Variables: ENV: !Ref Env Events: DeleteByName: Type: Api Properties: Path: '/attributes/{name}' Method: delete Get: Type: Api Properties: Path: '/attributes' Method: get GetByName: Type: Api Properties: Path: '/attributes/{name}' Method: get Post: Type: Api Properties: Path: '/attributes' Method: post Ping: Type: Schedule Properties: Schedule: rate(5 minutes) Input: '{"httpMethod": "PING"}' FunctionName: !Sub '${AWS::StackName}-attribute' Handler: src/main/js/handlers/attribute.handler Policies: - AWSLambdaBasicExecutionRole - Version: 2012-10-17 Statement: - Action: - secretsmanager:GetSecretValue Effect: Allow Resource: '*' - Action: - kms:Decrypt Effect: Allow Resource: '*' Runtime: nodejs8.10 AttributeFunctionLogRetention: Type: AWS::Logs::LogGroup Properties: LogGroupName: !Sub '/aws/lambda/${ AttributeFunction}' RetentionInDays: 7 AuthenticationFunction: Type: AWS::Serverless::Function Properties: CodeUri: ../../.. Environment: Variables: ENV: !Ref Env Events: GetById: Type: Api Properties: Path: '/authentications/session/{id}' Method: get Ping: Type: Schedule Properties: Schedule: rate(5 minutes) Input: '{"httpMethod": "PING"}' FunctionName: !Sub '${AWS::StackName}-authentication' Handler: src/main/js/handlers/authentication.handler Policies: - AWSLambdaBasicExecutionRole - Version: 2012-10-17 Statement: - Action: - secretsmanager:GetSecretValue Effect: Allow Resource: '*' - Action: - kms:Decrypt Effect: Allow Resource: '*' Runtime: nodejs8.10 AuthenticationFunctionLogRetention: Type: AWS::Logs::LogGroup Properties: LogGroupName: !Sub '/aws/lambda/${ AuthenticationFunction}' RetentionInDays: 7 ChangeFunction: Type: AWS::Serverless::Function Properties: CodeUri: ../../.. Environment: Variables: ENV: !Ref Env Events: Get: Type: Api Properties: Path: '/changes' Method: get Ping: Type: Schedule Properties: Schedule: rate(5 minutes) Input: '{"httpMethod": "PING"}' FunctionName: !Sub '${AWS::StackName}-change' Handler: src/main/js/handlers/change.handler Policies: - AWSLambdaBasicExecutionRole - Version: 2012-10-17 Statement: - Action: - secretsmanager:GetSecretValue Effect: Allow Resource: '*' - Action: - kms:Decrypt Effect: Allow Resource: '*' Runtime: nodejs8.10 ChangeFunctionLogRetention: Type: AWS::Logs::LogGroup Properties: LogGroupName: !Sub '/aws/lambda/${ ChangeFunction}' RetentionInDays: 7 CodeFunction: Type: AWS::Serverless::Function Properties: CodeUri: ../../.. Environment: Variables: ENV: !Ref Env Events: GetByOrgKeyAndApplicationKeyAndVersionAndGeneratorKey: Type: Api Properties: Path: '/{orgKey}/{applicationKey}/{version}/{generatorKey}' Method: get Ping: Type: Schedule Properties: Schedule: rate(5 minutes) Input: '{"httpMethod": "PING"}' FunctionName: !Sub '${AWS::StackName}-code' Handler: src/main/js/handlers/code.handler Policies: - AWSLambdaBasicExecutionRole - Version: 2012-10-17 Statement: - Action: - secretsmanager:GetSecretValue Effect: Allow Resource: '*' - Action: - kms:Decrypt Effect: Allow Resource: '*' Runtime: nodejs8.10 CodeFunctionLogRetention: Type: AWS::Logs::LogGroup Properties: LogGroupName: !Sub '/aws/lambda/${ CodeFunction}' RetentionInDays: 7 DomainFunction: Type: AWS::Serverless::Function Properties: CodeUri: ../../.. Environment: Variables: ENV: !Ref Env Events: DeleteByOrgKeyAndName: Type: Api Properties: Path: '/domains/{orgKey}/{name}' Method: delete PostByOrgKey: Type: Api Properties: Path: '/domains/{orgKey}' Method: post Ping: Type: Schedule Properties: Schedule: rate(5 minutes) Input: '{"httpMethod": "PING"}' FunctionName: !Sub '${AWS::StackName}-domain' Handler: src/main/js/handlers/domain.handler Policies: - AWSLambdaBasicExecutionRole - Version: 2012-10-17 Statement: - Action: - secretsmanager:GetSecretValue Effect: Allow Resource: '*' - Action: - kms:Decrypt Effect: Allow Resource: '*' Runtime: nodejs8.10 DomainFunctionLogRetention: Type: AWS::Logs::LogGroup Properties: LogGroupName: !Sub '/aws/lambda/${ DomainFunction}' RetentionInDays: 7 EmailVerificationConfirmationFormFunction: Type: AWS::Serverless::Function Properties: CodeUri: ../../.. Environment: Variables: ENV: !Ref Env Events: Post: Type: Api Properties: Path: '/email_verification_confirmations' Method: post Ping: Type: Schedule Properties: Schedule: rate(5 minutes) Input: '{"httpMethod": "PING"}' FunctionName: !Sub '${AWS::StackName}-email-verification-confirmation-form' Handler: src/main/js/handlers/email_verification_confirmation_form.handler Policies: - AWSLambdaBasicExecutionRole - Version: 2012-10-17 Statement: - Action: - secretsmanager:GetSecretValue Effect: Allow Resource: '*' - Action: - kms:Decrypt Effect: Allow Resource: '*' Runtime: nodejs8.10 EmailVerificationConfirmationFormFunctionLogRetention: Type: AWS::Logs::LogGroup Properties: LogGroupName: !Sub '/aws/lambda/${ EmailVerificationConfirmationFormFunction}' RetentionInDays: 7 GeneratorServiceFunction: Type: AWS::Serverless::Function Properties: CodeUri: ../../.. Environment: Variables: ENV: !Ref Env Events: DeleteByGuid: Type: Api Properties: Path: '/generator_services/{guid}' Method: delete Get: Type: Api Properties: Path: '/generator_services' Method: get GetByGuid: Type: Api Properties: Path: '/generator_services/{guid}' Method: get Post: Type: Api Properties: Path: '/generator_services' Method: post Ping: Type: Schedule Properties: Schedule: rate(5 minutes) Input: '{"httpMethod": "PING"}' FunctionName: !Sub '${AWS::StackName}-generator-service' Handler: src/main/js/handlers/generator_service.handler Policies: - AWSLambdaBasicExecutionRole - Version: 2012-10-17 Statement: - Action: - secretsmanager:GetSecretValue Effect: Allow Resource: '*' - Action: - kms:Decrypt Effect: Allow Resource: '*' Runtime: nodejs8.10 GeneratorServiceFunctionLogRetention: Type: AWS::Logs::LogGroup Properties: LogGroupName: !Sub '/aws/lambda/${ GeneratorServiceFunction}' RetentionInDays: 7 GeneratorWithServiceFunction: Type: AWS::Serverless::Function Properties: CodeUri: ../../.. Environment: Variables: ENV: !Ref Env Events: Get: Type: Api Properties: Path: '/generators' Method: get GetByKey: Type: Api Properties: Path: '/generators/{key}' Method: get Ping: Type: Schedule Properties: Schedule: rate(5 minutes) Input: '{"httpMethod": "PING"}' FunctionName: !Sub '${AWS::StackName}-generator-with-service' Handler: src/main/js/handlers/generator_with_service.handler Policies: - AWSLambdaBasicExecutionRole - Version: 2012-10-17 Statement: - Action: - secretsmanager:GetSecretValue Effect: Allow Resource: '*' - Action: - kms:Decrypt Effect: Allow Resource: '*' Runtime: nodejs8.10 GeneratorWithServiceFunctionLogRetention: Type: AWS::Logs::LogGroup Properties: LogGroupName: !Sub '/aws/lambda/${ GeneratorWithServiceFunction}' RetentionInDays: 7 IoApibuilderGeneratorV0ModelsHealthcheckFunction: Type: AWS::Serverless::Function Properties: CodeUri: ../../.. Environment: Variables: ENV: !Ref Env Events: Get: Type: Api Properties: Path: '/_internal_/healthcheck' Method: get Get: Type: Api Properties: Path: '/_internal_/migrate' Method: get Ping: Type: Schedule Properties: Schedule: rate(5 minutes) Input: '{"httpMethod": "PING"}' FunctionName: !Sub '${AWS::StackName}-io-apibuilder-generator-v0-models-healthcheck' Handler: src/main/js/handlers/io_apibuilder_generator_v0_models_healthcheck.handler Policies: - AWSLambdaBasicExecutionRole - Version: 2012-10-17 Statement: - Action: - secretsmanager:GetSecretValue Effect: Allow Resource: '*' - Action: - kms:Decrypt Effect: Allow Resource: '*' Runtime: nodejs8.10 IoApibuilderGeneratorV0ModelsHealthcheckFunctionLogRetention: Type: AWS::Logs::LogGroup Properties: LogGroupName: !Sub '/aws/lambda/${ IoApibuilderGeneratorV0ModelsHealthcheckFunction}' RetentionInDays: 7 ItemFunction: Type: AWS::Serverless::Function Properties: CodeUri: ../../.. Environment: Variables: ENV: !Ref Env Events: Get: Type: Api Properties: Path: '/items' Method: get GetByGuid: Type: Api Properties: Path: '/items/{guid}' Method: get Ping: Type: Schedule Properties: Schedule: rate(5 minutes) Input: '{"httpMethod": "PING"}' FunctionName: !Sub '${AWS::StackName}-item' Handler: src/main/js/handlers/item.handler Policies: - AWSLambdaBasicExecutionRole - Version: 2012-10-17 Statement: - Action: - secretsmanager:GetSecretValue Effect: Allow Resource: '*' - Action: - kms:Decrypt Effect: Allow Resource: '*' Runtime: nodejs8.10 ItemFunctionLogRetention: Type: AWS::Logs::LogGroup Properties: LogGroupName: !Sub '/aws/lambda/${ ItemFunction}' RetentionInDays: 7 MembershipFunction: Type: AWS::Serverless::Function Properties: CodeUri: ../../.. Environment: Variables: ENV: !Ref Env Events: DeleteByGuid: Type: Api Properties: Path: '/memberships/{guid}' Method: delete Get: Type: Api Properties: Path: '/memberships' Method: get GetByGuid: Type: Api Properties: Path: '/memberships/{guid}' Method: get Ping: Type: Schedule Properties: Schedule: rate(5 minutes) Input: '{"httpMethod": "PING"}' FunctionName: !Sub '${AWS::StackName}-membership' Handler: src/main/js/handlers/membership.handler Policies: - AWSLambdaBasicExecutionRole - Version: 2012-10-17 Statement: - Action: - secretsmanager:GetSecretValue Effect: Allow Resource: '*' - Action: - kms:Decrypt Effect: Allow Resource: '*' Runtime: nodejs8.10 MembershipFunctionLogRetention: Type: AWS::Logs::LogGroup Properties: LogGroupName: !Sub '/aws/lambda/${ MembershipFunction}' RetentionInDays: 7 MembershipRequestFunction: Type: AWS::Serverless::Function Properties: CodeUri: ../../.. Environment: Variables: ENV: !Ref Env Events: Get: Type: Api Properties: Path: '/membership_requests' Method: get Post: Type: Api Properties: Path: '/membership_requests' Method: post PostByGuid: Type: Api Properties: Path: '/membership_requests/{guid}/accept' Method: post PostByGuid: Type: Api Properties: Path: '/membership_requests/{guid}/decline' Method: post Ping: Type: Schedule Properties: Schedule: rate(5 minutes) Input: '{"httpMethod": "PING"}' FunctionName: !Sub '${AWS::StackName}-membership-request' Handler: src/main/js/handlers/membership_request.handler Policies: - AWSLambdaBasicExecutionRole - Version: 2012-10-17 Statement: - Action: - secretsmanager:GetSecretValue Effect: Allow Resource: '*' - Action: - kms:Decrypt Effect: Allow Resource: '*' Runtime: nodejs8.10 MembershipRequestFunctionLogRetention: Type: AWS::Logs::LogGroup Properties: LogGroupName: !Sub '/aws/lambda/${ MembershipRequestFunction}' RetentionInDays: 7 OrganizationFunction: Type: AWS::Serverless::Function Properties: CodeUri: ../../.. Environment: Variables: ENV: !Ref Env Events: DeleteByKey: Type: Api Properties: Path: '/organizations/{key}' Method: delete DeleteByKeyAndName: Type: Api Properties: Path: '/organizations/{key}/attributes/{name}' Method: delete Get: Type: Api Properties: Path: '/organizations' Method: get GetByKey: Type: Api Properties: Path: '/organizations/{key}' Method: get GetByKey: Type: Api Properties: Path: '/organizations/{key}/attributes' Method: get GetByKeyAndName: Type: Api Properties: Path: '/organizations/{key}/attributes/{name}' Method: get Post: Type: Api Properties: Path: '/organizations' Method: post PutByKey: Type: Api Properties: Path: '/organizations/{key}' Method: put PutByKeyAndName: Type: Api Properties: Path: '/organizations/{key}/attributes/{name}' Method: put Ping: Type: Schedule Properties: Schedule: rate(5 minutes) Input: '{"httpMethod": "PING"}' FunctionName: !Sub '${AWS::StackName}-organization' Handler: src/main/js/handlers/organization.handler Policies: - AWSLambdaBasicExecutionRole - Version: 2012-10-17 Statement: - Action: - secretsmanager:GetSecretValue Effect: Allow Resource: '*' - Action: - kms:Decrypt Effect: Allow Resource: '*' Runtime: nodejs8.10 OrganizationFunctionLogRetention: Type: AWS::Logs::LogGroup Properties: LogGroupName: !Sub '/aws/lambda/${ OrganizationFunction}' RetentionInDays: 7 PasswordResetFunction: Type: AWS::Serverless::Function Properties: CodeUri: ../../.. Environment: Variables: ENV: !Ref Env Events: Post: Type: Api Properties: Path: '/password_resets' Method: post Ping: Type: Schedule Properties: Schedule: rate(5 minutes) Input: '{"httpMethod": "PING"}' FunctionName: !Sub '${AWS::StackName}-password-reset' Handler: src/main/js/handlers/password_reset.handler Policies: - AWSLambdaBasicExecutionRole - Version: 2012-10-17 Statement: - Action: - secretsmanager:GetSecretValue Effect: Allow Resource: '*' - Action: - kms:Decrypt Effect: Allow Resource: '*' Runtime: nodejs8.10 PasswordResetFunctionLogRetention: Type: AWS::Logs::LogGroup Properties: LogGroupName: !Sub '/aws/lambda/${ PasswordResetFunction}' RetentionInDays: 7 PasswordResetRequestFunction: Type: AWS::Serverless::Function Properties: CodeUri: ../../.. Environment: Variables: ENV: !Ref Env Events: Post: Type: Api Properties: Path: '/password_reset_requests' Method: post Ping: Type: Schedule Properties: Schedule: rate(5 minutes) Input: '{"httpMethod": "PING"}' FunctionName: !Sub '${AWS::StackName}-password-reset-request' Handler: src/main/js/handlers/password_reset_request.handler Policies: - AWSLambdaBasicExecutionRole - Version: 2012-10-17 Statement: - Action: - secretsmanager:GetSecretValue Effect: Allow Resource: '*' - Action: - kms:Decrypt Effect: Allow Resource: '*' Runtime: nodejs8.10 PasswordResetRequestFunctionLogRetention: Type: AWS::Logs::LogGroup Properties: LogGroupName: !Sub '/aws/lambda/${ PasswordResetRequestFunction}' RetentionInDays: 7 SubscriptionFunction: Type: AWS::Serverless::Function Properties: CodeUri: ../../.. Environment: Variables: ENV: !Ref Env Events: DeleteByGuid: Type: Api Properties: Path: '/subscriptions/{guid}' Method: delete Get: Type: Api Properties: Path: '/subscriptions' Method: get GetByGuid: Type: Api Properties: Path: '/subscriptions/{guid}' Method: get Post: Type: Api Properties: Path: '/subscriptions' Method: post Ping: Type: Schedule Properties: Schedule: rate(5 minutes) Input: '{"httpMethod": "PING"}' FunctionName: !Sub '${AWS::StackName}-subscription' Handler: src/main/js/handlers/subscription.handler Policies: - AWSLambdaBasicExecutionRole - Version: 2012-10-17 Statement: - Action: - secretsmanager:GetSecretValue Effect: Allow Resource: '*' - Action: - kms:Decrypt Effect: Allow Resource: '*' Runtime: nodejs8.10 SubscriptionFunctionLogRetention: Type: AWS::Logs::LogGroup Properties: LogGroupName: !Sub '/aws/lambda/${ SubscriptionFunction}' RetentionInDays: 7 TokenFunction: Type: AWS::Serverless::Function Properties: CodeUri: ../../.. Environment: Variables: ENV: !Ref Env Events: DeleteByGuid: Type: Api Properties: Path: '/tokens/{guid}' Method: delete GetByUserGuid: Type: Api Properties: Path: '/tokens/users/{user_guid}' Method: get GetByGuid: Type: Api Properties: Path: '/tokens/{guid}/cleartext' Method: get Post: Type: Api Properties: Path: '/tokens' Method: post Ping: Type: Schedule Properties: Schedule: rate(5 minutes) Input: '{"httpMethod": "PING"}' FunctionName: !Sub '${AWS::StackName}-token' Handler: src/main/js/handlers/token.handler Policies: - AWSLambdaBasicExecutionRole - Version: 2012-10-17 Statement: - Action: - secretsmanager:GetSecretValue Effect: Allow Resource: '*' - Action: - kms:Decrypt Effect: Allow Resource: '*' Runtime: nodejs8.10 TokenFunctionLogRetention: Type: AWS::Logs::LogGroup Properties: LogGroupName: !Sub '/aws/lambda/${ TokenFunction}' RetentionInDays: 7 UserFunction: Type: AWS::Serverless::Function Properties: CodeUri: ../../.. Environment: Variables: ENV: !Ref Env Events: Get: Type: Api Properties: Path: '/users' Method: get GetByGuid: Type: Api Properties: Path: '/users/{guid}' Method: get Post: Type: Api Properties: Path: '/users/authenticate' Method: post Post: Type: Api Properties: Path: '/users/authenticate_github' Method: post Post: Type: Api Properties: Path: '/users' Method: post PutByGuid: Type: Api Properties: Path: '/users/{guid}' Method: put Ping: Type: Schedule Properties: Schedule: rate(5 minutes) Input: '{"httpMethod": "PING"}' FunctionName: !Sub '${AWS::StackName}-user' Handler: src/main/js/handlers/user.handler Policies: - AWSLambdaBasicExecutionRole - Version: 2012-10-17 Statement: - Action: - secretsmanager:GetSecretValue Effect: Allow Resource: '*' - Action: - kms:Decrypt Effect: Allow Resource: '*' Runtime: nodejs8.10 UserFunctionLogRetention: Type: AWS::Logs::LogGroup Properties: LogGroupName: !Sub '/aws/lambda/${ UserFunction}' RetentionInDays: 7 ValidationFunction: Type: AWS::Serverless::Function Properties: CodeUri: ../../.. Environment: Variables: ENV: !Ref Env Events: Post: Type: Api Properties: Path: '/validations' Method: post Ping: Type: Schedule Properties: Schedule: rate(5 minutes) Input: '{"httpMethod": "PING"}' FunctionName: !Sub '${AWS::StackName}-validation' Handler: src/main/js/handlers/validation.handler Policies: - AWSLambdaBasicExecutionRole - Version: 2012-10-17 Statement: - Action: - secretsmanager:GetSecretValue Effect: Allow Resource: '*' - Action: - kms:Decrypt Effect: Allow Resource: '*' Runtime: nodejs8.10 ValidationFunctionLogRetention: Type: AWS::Logs::LogGroup Properties: LogGroupName: !Sub '/aws/lambda/${ ValidationFunction}' RetentionInDays: 7 VersionFunction: Type: AWS::Serverless::Function Properties: CodeUri: ../../.. Environment: Variables: ENV: !Ref Env Events: DeleteByOrgKeyAndApplicationKeyAndVersion: Type: Api Properties: Path: '/{orgKey}/{applicationKey}/{version}' Method: delete GetByOrgKeyAndApplicationKey: Type: Api Properties: Path: '/{orgKey}/{applicationKey}' Method: get GetByOrgKeyAndApplicationKeyAndVersion: Type: Api Properties: Path: '/{orgKey}/{applicationKey}/{version}' Method: get GetByOrgKeyAndApplicationKeyAndVersionAndTypeName: Type: Api Properties: Path: '/{orgKey}/{applicationKey}/{version}/example/{type_name}' Method: get PostByOrgKeyAndVersion: Type: Api Properties: Path: '/{orgKey}/{version}' Method: post PutByOrgKeyAndApplicationKeyAndVersion: Type: Api Properties: Path: '/{orgKey}/{applicationKey}/{version}' Method: put Ping: Type: Schedule Properties: Schedule: rate(5 minutes) Input: '{"httpMethod": "PING"}' FunctionName: !Sub '${AWS::StackName}-version' Handler: src/main/js/handlers/version.handler Policies: - AWSLambdaBasicExecutionRole - Version: 2012-10-17 Statement: - Action: - secretsmanager:GetSecretValue Effect: Allow Resource: '*' - Action: - kms:Decrypt Effect: Allow Resource: '*' Runtime: nodejs8.10 VersionFunctionLogRetention: Type: AWS::Logs::LogGroup Properties: LogGroupName: !Sub '/aws/lambda/${ VersionFunction}' RetentionInDays: 7 WatchFunction: Type: AWS::Serverless::Function Properties: CodeUri: ../../.. Environment: Variables: ENV: !Ref Env Events: DeleteByGuid: Type: Api Properties: Path: '/watches/{guid}' Method: delete Get: Type: Api Properties: Path: '/watches' Method: get GetByGuid: Type: Api Properties: Path: '/watches/{guid}' Method: get Get: Type: Api Properties: Path: '/watches/check' Method: get Post: Type: Api Properties: Path: '/watches' Method: post Ping: Type: Schedule Properties: Schedule: rate(5 minutes) Input: '{"httpMethod": "PING"}' FunctionName: !Sub '${AWS::StackName}-watch' Handler: src/main/js/handlers/watch.handler Policies: - AWSLambdaBasicExecutionRole - Version: 2012-10-17 Statement: - Action: - secretsmanager:GetSecretValue Effect: Allow Resource: '*' - Action: - kms:Decrypt Effect: Allow Resource: '*' Runtime: nodejs8.10 WatchFunctionLogRetention: Type: AWS::Logs::LogGroup Properties: LogGroupName: !Sub '/aws/lambda/${ WatchFunction}' RetentionInDays: 7 Outputs: ApplicationFunction: Description: The name of the Lambda function for the Application model Value: !Ref ApplicationFunction Export: Name: !Sub '${AWS::StackName}-functions-Application' ApplicationFunctionRole: Description: The name of the Lambda function role for the Application model Value: !Ref ApplicationFunctionRole Export: Name: !Sub '${AWS::StackName}-roles-Application' AttributeFunction: Description: The name of the Lambda function for the Attribute model Value: !Ref AttributeFunction Export: Name: !Sub '${AWS::StackName}-functions-Attribute' AttributeFunctionRole: Description: The name of the Lambda function role for the Attribute model Value: !Ref AttributeFunctionRole Export: Name: !Sub '${AWS::StackName}-roles-Attribute' AuthenticationFunction: Description: The name of the Lambda function for the Authentication model Value: !Ref AuthenticationFunction Export: Name: !Sub '${AWS::StackName}-functions-Authentication' AuthenticationFunctionRole: Description: The name of the Lambda function role for the Authentication model Value: !Ref AuthenticationFunctionRole Export: Name: !Sub '${AWS::StackName}-roles-Authentication' ChangeFunction: Description: The name of the Lambda function for the Change model Value: !Ref ChangeFunction Export: Name: !Sub '${AWS::StackName}-functions-Change' ChangeFunctionRole: Description: The name of the Lambda function role for the Change model Value: !Ref ChangeFunctionRole Export: Name: !Sub '${AWS::StackName}-roles-Change' CodeFunction: Description: The name of the Lambda function for the Code model Value: !Ref CodeFunction Export: Name: !Sub '${AWS::StackName}-functions-Code' CodeFunctionRole: Description: The name of the Lambda function role for the Code model Value: !Ref CodeFunctionRole Export: Name: !Sub '${AWS::StackName}-roles-Code' DomainFunction: Description: The name of the Lambda function for the Domain model Value: !Ref DomainFunction Export: Name: !Sub '${AWS::StackName}-functions-Domain' DomainFunctionRole: Description: The name of the Lambda function role for the Domain model Value: !Ref DomainFunctionRole Export: Name: !Sub '${AWS::StackName}-roles-Domain' EmailVerificationConfirmationFormFunction: Description: The name of the Lambda function for the EmailVerificationConfirmationForm model Value: !Ref EmailVerificationConfirmationFormFunction Export: Name: !Sub '${AWS::StackName}-functions-EmailVerificationConfirmationForm' EmailVerificationConfirmationFormFunctionRole: Description: The name of the Lambda function role for the EmailVerificationConfirmationForm model Value: !Ref EmailVerificationConfirmationFormFunctionRole Export: Name: !Sub '${AWS::StackName}-roles-EmailVerificationConfirmationForm' GeneratorServiceFunction: Description: The name of the Lambda function for the GeneratorService model Value: !Ref GeneratorServiceFunction Export: Name: !Sub '${AWS::StackName}-functions-GeneratorService' GeneratorServiceFunctionRole: Description: The name of the Lambda function role for the GeneratorService model Value: !Ref GeneratorServiceFunctionRole Export: Name: !Sub '${AWS::StackName}-roles-GeneratorService' GeneratorWithServiceFunction: Description: The name of the Lambda function for the GeneratorWithService model Value: !Ref GeneratorWithServiceFunction Export: Name: !Sub '${AWS::StackName}-functions-GeneratorWithService' GeneratorWithServiceFunctionRole: Description: The name of the Lambda function role for the GeneratorWithService model Value: !Ref GeneratorWithServiceFunctionRole Export: Name: !Sub '${AWS::StackName}-roles-GeneratorWithService' IoApibuilderGeneratorV0ModelsHealthcheckFunction: Description: The name of the Lambda function for the IoApibuilderGeneratorV0ModelsHealthcheck model Value: !Ref IoApibuilderGeneratorV0ModelsHealthcheckFunction Export: Name: !Sub '${AWS::StackName}-functions-IoApibuilderGeneratorV0ModelsHealthcheck' IoApibuilderGeneratorV0ModelsHealthcheckFunctionRole: Description: The name of the Lambda function role for the IoApibuilderGeneratorV0ModelsHealthcheck model Value: !Ref IoApibuilderGeneratorV0ModelsHealthcheckFunctionRole Export: Name: !Sub '${AWS::StackName}-roles-IoApibuilderGeneratorV0ModelsHealthcheck' ItemFunction: Description: The name of the Lambda function for the Item model Value: !Ref ItemFunction Export: Name: !Sub '${AWS::StackName}-functions-Item' ItemFunctionRole: Description: The name of the Lambda function role for the Item model Value: !Ref ItemFunctionRole Export: Name: !Sub '${AWS::StackName}-roles-Item' MembershipFunction: Description: The name of the Lambda function for the Membership model Value: !Ref MembershipFunction Export: Name: !Sub '${AWS::StackName}-functions-Membership' MembershipFunctionRole: Description: The name of the Lambda function role for the Membership model Value: !Ref MembershipFunctionRole Export: Name: !Sub '${AWS::StackName}-roles-Membership' MembershipRequestFunction: Description: The name of the Lambda function for the MembershipRequest model Value: !Ref MembershipRequestFunction Export: Name: !Sub '${AWS::StackName}-functions-MembershipRequest' MembershipRequestFunctionRole: Description: The name of the Lambda function role for the MembershipRequest model Value: !Ref MembershipRequestFunctionRole Export: Name: !Sub '${AWS::StackName}-roles-MembershipRequest' OrganizationFunction: Description: The name of the Lambda function for the Organization model Value: !Ref OrganizationFunction Export: Name: !Sub '${AWS::StackName}-functions-Organization' OrganizationFunctionRole: Description: The name of the Lambda function role for the Organization model Value: !Ref OrganizationFunctionRole Export: Name: !Sub '${AWS::StackName}-roles-Organization' PasswordResetFunction: Description: The name of the Lambda function for the PasswordReset model Value: !Ref PasswordResetFunction Export: Name: !Sub '${AWS::StackName}-functions-PasswordReset' PasswordResetFunctionRole: Description: The name of the Lambda function role for the PasswordReset model Value: !Ref PasswordResetFunctionRole Export: Name: !Sub '${AWS::StackName}-roles-PasswordReset' PasswordResetRequestFunction: Description: The name of the Lambda function for the PasswordResetRequest model Value: !Ref PasswordResetRequestFunction Export: Name: !Sub '${AWS::StackName}-functions-PasswordResetRequest' PasswordResetRequestFunctionRole: Description: The name of the Lambda function role for the PasswordResetRequest model Value: !Ref PasswordResetRequestFunctionRole Export: Name: !Sub '${AWS::StackName}-roles-PasswordResetRequest' SubscriptionFunction: Description: The name of the Lambda function for the Subscription model Value: !Ref SubscriptionFunction Export: Name: !Sub '${AWS::StackName}-functions-Subscription' SubscriptionFunctionRole: Description: The name of the Lambda function role for the Subscription model Value: !Ref SubscriptionFunctionRole Export: Name: !Sub '${AWS::StackName}-roles-Subscription' TokenFunction: Description: The name of the Lambda function for the Token model Value: !Ref TokenFunction Export: Name: !Sub '${AWS::StackName}-functions-Token' TokenFunctionRole: Description: The name of the Lambda function role for the Token model Value: !Ref TokenFunctionRole Export: Name: !Sub '${AWS::StackName}-roles-Token' UserFunction: Description: The name of the Lambda function for the User model Value: !Ref UserFunction Export: Name: !Sub '${AWS::StackName}-functions-User' UserFunctionRole: Description: The name of the Lambda function role for the User model Value: !Ref UserFunctionRole Export: Name: !Sub '${AWS::StackName}-roles-User' ValidationFunction: Description: The name of the Lambda function for the Validation model Value: !Ref ValidationFunction Export: Name: !Sub '${AWS::StackName}-functions-Validation' ValidationFunctionRole: Description: The name of the Lambda function role for the Validation model Value: !Ref ValidationFunctionRole Export: Name: !Sub '${AWS::StackName}-roles-Validation' VersionFunction: Description: The name of the Lambda function for the Version model Value: !Ref VersionFunction Export: Name: !Sub '${AWS::StackName}-functions-Version' VersionFunctionRole: Description: The name of the Lambda function role for the Version model Value: !Ref VersionFunctionRole Export: Name: !Sub '${AWS::StackName}-roles-Version' WatchFunction: Description: The name of the Lambda function for the Watch model Value: !Ref WatchFunction Export: Name: !Sub '${AWS::StackName}-functions-Watch' WatchFunctionRole: Description: The name of the Lambda function role for the Watch model Value: !Ref WatchFunctionRole Export: Name: !Sub '${AWS::StackName}-roles-Watch'