328 lines
8.2 KiB
YAML
328 lines
8.2 KiB
YAML
service: minglarDev
|
|
|
|
provider:
|
|
name: aws
|
|
runtime: nodejs20.x
|
|
region: ap-south-1
|
|
versionFunctions: false
|
|
|
|
apiGateway:
|
|
binaryMediaTypes:
|
|
- "*/*"
|
|
minimumCompressionSize: 0
|
|
|
|
environment:
|
|
DATABASE_URL: ${env:DATABASE_URL}
|
|
DB_USERNAME: ${env:DB_USERNAME}
|
|
DB_PASSWORD: ${env:DB_PASSWORD}
|
|
DB_DATABASE_NAME: ${env:DB_DATABASE_NAME}
|
|
DB_HOSTNAME: ${env:DB_HOSTNAME}
|
|
DB_PORT: ${env:DB_PORT}
|
|
BY_PASS_EMAIL: ${env:BY_PASS_EMAIL}
|
|
BYPASS_OTP: ${env:BYPASS_OTP}
|
|
BREVO_EMAIL_API_KEY: ${env:BREVO_EMAIL_API_KEY}
|
|
BREVO_API_BASEURL: ${env:BREVO_API_BASEURL}
|
|
BREVO_FROM_EMAIL: ${env:BREVO_FROM_EMAIL}
|
|
BREVO_SMTP_HOST: ${env:BREVO_SMTP_HOST}
|
|
BREVO_SMTP_PORT: ${env:BREVO_SMTP_PORT}
|
|
BREVO_SMTP_USER: ${env:BREVO_SMTP_USER}
|
|
BREVO_SMTP_PASS: ${env:BREVO_SMTP_PASS}
|
|
REFRESH_TOKEN_SECRET: ${env:REFRESH_TOKEN_SECRET}
|
|
JWT_SECRET: ${env:JWT_SECRET}
|
|
SALT_ROUNDS: ${env:SALT_ROUNDS}
|
|
NODE_ENV: ${env:NODE_ENV}
|
|
S3_BUCKET_NAME: ${env:S3_BUCKET_NAME}
|
|
|
|
iam:
|
|
role:
|
|
statements:
|
|
- Effect: Allow
|
|
Action:
|
|
- s3:PutObject
|
|
- s3:GetObject
|
|
- s3:DeleteObject
|
|
Resource: "arn:aws:s3:::${env:S3_BUCKET_NAME}/*"
|
|
|
|
|
|
# ------------------------------------------------------------
|
|
# ESBUILD
|
|
# ------------------------------------------------------------
|
|
custom:
|
|
esbuild:
|
|
bundle: true
|
|
minify: true
|
|
sourcemap: false
|
|
target: node20
|
|
platform: node
|
|
concurrency: 10
|
|
external:
|
|
- "@prisma/client"
|
|
- ".prisma"
|
|
exclude:
|
|
- "aws-sdk"
|
|
|
|
|
|
# ------------------------------------------------------------
|
|
# GLOBAL PACKAGE CONFIG (EMPTY PACKAGE STRATEGY)
|
|
# ------------------------------------------------------------
|
|
package:
|
|
individually: true
|
|
patterns:
|
|
- "!**/*" # <-- DO NOT include anything globally
|
|
|
|
|
|
# ------------------------------------------------------------
|
|
# FUNCTIONS (ONLY required files included)
|
|
# ------------------------------------------------------------
|
|
functions:
|
|
|
|
getHosts:
|
|
handler: src/modules/host/handlers/host.handler
|
|
package:
|
|
patterns:
|
|
- "src/modules/host/handlers/host.*"
|
|
- "src/modules/host/services/**"
|
|
- "common/**"
|
|
- "src/common/**"
|
|
- "node_modules/@prisma/client/**"
|
|
- "node_modules/.prisma/**"
|
|
|
|
events:
|
|
- httpApi:
|
|
path: /host
|
|
method: get
|
|
|
|
|
|
verifyOtp:
|
|
handler: src/modules/host/handlers/verifyOtp.handler
|
|
package:
|
|
patterns:
|
|
- "src/modules/host/handlers/verifyOtp.*"
|
|
- "src/modules/host/services/**"
|
|
- "common/**"
|
|
- "src/common/**"
|
|
- "node_modules/@prisma/client/**"
|
|
- "node_modules/.prisma/**"
|
|
|
|
events:
|
|
- httpApi:
|
|
path: /host/verify-otp
|
|
method: post
|
|
|
|
|
|
loginForHost:
|
|
handler: src/modules/host/handlers/loginForHost.handler
|
|
package:
|
|
patterns:
|
|
- "src/modules/host/handlers/loginForHost.*"
|
|
- "src/modules/host/services/**"
|
|
- "common/**"
|
|
- "src/common/**"
|
|
- "node_modules/@prisma/client/**"
|
|
- "node_modules/.prisma/**"
|
|
events:
|
|
- httpApi:
|
|
path: /host/login
|
|
method: post
|
|
|
|
|
|
registrationOfHost:
|
|
handler: src/modules/host/handlers/registration.handler
|
|
package:
|
|
patterns:
|
|
- "src/modules/host/handlers/registration.*"
|
|
- "src/modules/host/services/**"
|
|
- "common/**"
|
|
- "src/common/**"
|
|
- "node_modules/@prisma/client/**"
|
|
- "node_modules/.prisma/**"
|
|
events:
|
|
- httpApi:
|
|
path: /host/registration
|
|
method: post
|
|
|
|
|
|
createPasswordForHost:
|
|
handler: src/modules/host/handlers/createPassword.handler
|
|
package:
|
|
patterns:
|
|
- "src/modules/host/handlers/createPassword.*"
|
|
- "src/modules/host/services/**"
|
|
- "common/**"
|
|
- "src/common/**"
|
|
- "node_modules/@prisma/client/**"
|
|
- "node_modules/.prisma/**"
|
|
|
|
events:
|
|
- httpApi:
|
|
path: /host/create-password
|
|
method: post
|
|
|
|
|
|
addPaymentDetailsForHost:
|
|
handler: src/modules/host/handlers/addPaymentDetails.handler
|
|
package:
|
|
patterns:
|
|
- "src/modules/host/handlers/addPaymentDetails.*"
|
|
- "src/modules/host/services/**"
|
|
- "common/**"
|
|
- "src/common/**"
|
|
- "node_modules/@prisma/client/**"
|
|
- "node_modules/.prisma/**"
|
|
|
|
events:
|
|
- httpApi:
|
|
path: /host/add-payment-details
|
|
method: post
|
|
|
|
|
|
getHostById:
|
|
handler: src/modules/host/handlers/getbyidhandler.handler
|
|
package:
|
|
patterns:
|
|
- "src/modules/host/handlers/getbyidhandler.*"
|
|
- "src/modules/host/services/**"
|
|
- "common/**"
|
|
- "src/common/**"
|
|
- "node_modules/@prisma/client/**"
|
|
- "node_modules/.prisma/**"
|
|
|
|
events:
|
|
- httpApi:
|
|
path: /host/getById
|
|
method: get
|
|
|
|
|
|
getStepperInfo:
|
|
handler: src/modules/host/handlers/getStepper.handler
|
|
package:
|
|
patterns:
|
|
- "src/modules/host/handlers/getStepper.handler.*"
|
|
- "src/common/utils/handlers/safeHandler.*"
|
|
- "src/common/database/**"
|
|
- "src/modules/host/services/**"
|
|
- "common/**"
|
|
- "node_modules/@prisma/client/**"
|
|
- "node_modules/.prisma/**"
|
|
|
|
events:
|
|
- httpApi:
|
|
path: /stepper
|
|
method: get
|
|
|
|
|
|
minglarRegistration:
|
|
handler: src/modules/minglaradmin/handlers/registration.handler
|
|
package:
|
|
patterns:
|
|
- "src/modules/minglaradmin/**"
|
|
- "common/**"
|
|
- "src/common/**"
|
|
- "node_modules/@prisma/client/**"
|
|
- "node_modules/.prisma/**"
|
|
|
|
events:
|
|
- httpApi:
|
|
path: /minglaradmin/registration
|
|
method: post
|
|
|
|
|
|
minglarLoginForAdmin:
|
|
handler: src/modules/minglaradmin/handlers/loginForMinglar.handler
|
|
package:
|
|
patterns:
|
|
- "src/modules/minglaradmin/**"
|
|
- "common/**"
|
|
- "src/common/**"
|
|
- "node_modules/@prisma/client/**"
|
|
- "node_modules/.prisma/**"
|
|
|
|
events:
|
|
- httpApi:
|
|
path: /minglaradmin/login
|
|
method: post
|
|
|
|
|
|
minglarCreatePassword:
|
|
handler: src/modules/minglaradmin/handlers/createPassword.handler
|
|
package:
|
|
patterns:
|
|
- "src/modules/minglaradmin/**"
|
|
- "common/**"
|
|
- "src/common/**"
|
|
- "node_modules/@prisma/client/**"
|
|
- "node_modules/.prisma/**"
|
|
|
|
events:
|
|
- httpApi:
|
|
path: /minglaradmin/create-password
|
|
method: post
|
|
|
|
updateMinglarProfile:
|
|
handler: src/modules/minglaradmin/handlers/updateProfile.handler
|
|
package:
|
|
patterns:
|
|
- "src/modules/host/handlers/addCompanyDetails.*"
|
|
- "src/modules/host/services/**"
|
|
- "common/**"
|
|
- "src/common/**"
|
|
- "node_modules/@prisma/client/**"
|
|
- "node_modules/.prisma/**"
|
|
- "node_modules/@aws-sdk/**"
|
|
- "node_modules/@smithy/**"
|
|
|
|
events:
|
|
- httpApi:
|
|
path: /minglaradmin/update-profile
|
|
method: patch
|
|
|
|
prepopulateTeammate:
|
|
handler: src/modules/minglaradmin/handlers/prepopulateTeammate.handler
|
|
package:
|
|
patterns:
|
|
- "src/modules/minglaradmin/**"
|
|
- "common/**"
|
|
- "src/common/**"
|
|
- "node_modules/@prisma/client/**"
|
|
- "node_modules/.prisma/**"
|
|
|
|
events:
|
|
- httpApi:
|
|
path: /minglaradmin/prepopulate-Roles
|
|
method: get
|
|
|
|
|
|
inviteTeammate:
|
|
handler: src/modules/minglaradmin/handlers/inviteTeammate.handler
|
|
package:
|
|
patterns:
|
|
- "src/modules/minglaradmin/**"
|
|
- "common/**"
|
|
- "src/common/**"
|
|
- "node_modules/@prisma/client/**"
|
|
- "node_modules/.prisma/**"
|
|
|
|
events:
|
|
- httpApi:
|
|
path: /minglaradmin/invite-teammate
|
|
method: post
|
|
|
|
|
|
addCompanyDetails:
|
|
handler: src/modules/host/handlers/addCompanyDetails.handler
|
|
package:
|
|
patterns:
|
|
- "src/modules/host/handlers/addCompanyDetails.*"
|
|
- "src/modules/host/services/**"
|
|
- "common/**"
|
|
- "src/common/**"
|
|
- "node_modules/@prisma/client/**"
|
|
- "node_modules/.prisma/**"
|
|
- "node_modules/@aws-sdk/**"
|
|
- "node_modules/@smithy/**"
|
|
|
|
events:
|
|
- httpApi:
|
|
path: /host/add-company-details
|
|
method: post
|