From 6fa96c3fb0dac4ed42d088db1c4b7f1ef0eff71c Mon Sep 17 00:00:00 2001 From: paritosh18 Date: Wed, 26 Nov 2025 19:30:57 +0530 Subject: [PATCH] Increase memory size for submitCompanyDetails and update package patterns in host and minglaradmin functions; refactor JWT middleware to use shared Prisma client instance --- serverless/functions/host.yml | 50 ++++++++++--------- serverless/functions/minglaradmin.yml | 2 +- serverless/patterns/base.yml | 3 +- .../jwt/authForMinglarAdmin&Host.ts | 4 +- .../middlewares/jwt/authForMinglarAdmin.ts | 4 +- .../jwt/authForOnlyMinglarAdmin.ts | 4 +- src/common/middlewares/jwt/authForUser.ts | 3 +- 7 files changed, 34 insertions(+), 36 deletions(-) diff --git a/serverless/functions/host.yml b/serverless/functions/host.yml index f7fba66..9443854 100644 --- a/serverless/functions/host.yml +++ b/serverless/functions/host.yml @@ -214,33 +214,35 @@ getStepperInfo: # Functions with S3/AWS SDK dependencies submitCompanyDetails: handler: src/modules/host/handlers/Host_Admin/onboarding/submitCompanyDetails.handler - memorySize: 512 + memorySize: 1024 timeout: 30 package: patterns: - - 'src/modules/host/handlers/addCompanyDetails.*' - - 'src/modules/host/services/**' - - 'src/common/middlewares/aws/**' - - ${file(./serverless/patterns/base.yml):pattern1} - - ${file(./serverless/patterns/base.yml):pattern2} - - ${file(./serverless/patterns/base.yml):pattern3} - - ${file(./serverless/patterns/base.yml):pattern4} - - ${file(./serverless/patterns/aws-s3.yml):pattern1} - - ${file(./serverless/patterns/aws-s3.yml):pattern2} - - ${file(./serverless/patterns/aws-s3.yml):pattern3} - - ${file(./serverless/patterns/aws-s3.yml):pattern4} - - ${file(./serverless/patterns/aws-s3.yml):pattern5} - - ${file(./serverless/patterns/aws-s3.yml):pattern6} - - ${file(./serverless/patterns/aws-s3.yml):pattern7} - - ${file(./serverless/patterns/aws-s3.yml):pattern8} - - ${file(./serverless/patterns/aws-s3.yml):pattern9} - - ${file(./serverless/patterns/aws-s3.yml):pattern10} - - ${file(./serverless/patterns/aws-s3.yml):pattern11} - - ${file(./serverless/patterns/aws-s3.yml):pattern12} - - ${file(./serverless/patterns/aws-s3.yml):pattern13} - - ${file(./serverless/patterns/aws-s3.yml):pattern14} - - ${file(./serverless/patterns/aws-s3.yml):pattern15} - - ${file(./serverless/patterns/aws-s3.yml):pattern16} + - 'src/modules/host/handlers/addCompanyDetails.*' + - 'src/modules/host/services/**' + - 'src/common/**' + - 'node_modules/@prisma/client/**' + - 'node_modules/.prisma/client/libquery_engine-rhel-openssl-3.0.x.so.node' + # Only include specific AWS SDK modules needed for S3 + - 'node_modules/@aws-sdk/client-s3/**' + - 'node_modules/@aws-sdk/s3-request-presigner/**' + - 'node_modules/@aws-sdk/types/**' + - 'node_modules/@aws-sdk/middleware-logger/**' + - 'node_modules/@aws-sdk/util-utf8-node/**' + - 'node_modules/@aws-sdk/util-utf8-browser/**' + - 'node_modules/@smithy/**' + - 'node_modules/tslib/**' + # Remove these large/unnecessary packages: + - 'node_modules/fast-xml-parser/**' # Remove if not used + - 'node_modules/lambda-multipart-parser/**' # You're using busboy directly + - 'node_modules/busboy/**' + # Remove these AWS utility packages (included in main SDK): + - 'node_modules/@aws-crypto/**' + # - 'node_modules/uuid/**' # AWS SDK includes its own + # - 'node_modules/@aws/util-uri-escape/**' + # - 'node_modules/@aws/util-middleware/**' + - 'node_modules/@aws/smithy-client/**' + # - 'node_modules/@aws/lambda-invoke-store/**' events: - httpApi: path: /host/add-company-details diff --git a/serverless/functions/minglaradmin.yml b/serverless/functions/minglaradmin.yml index 28953ed..6820e41 100644 --- a/serverless/functions/minglaradmin.yml +++ b/serverless/functions/minglaradmin.yml @@ -63,7 +63,7 @@ minglarCreatePassword: updateMinglarProfile: handler: src/modules/minglaradmin/handlers/updateProfile.handler - memorySize: 512 + memorySize: 1024 timeout: 30 package: patterns: diff --git a/serverless/patterns/base.yml b/serverless/patterns/base.yml index cade0c4..1fce4e7 100644 --- a/serverless/patterns/base.yml +++ b/serverless/patterns/base.yml @@ -2,4 +2,5 @@ pattern1: 'src/common/**' pattern2: 'common/**' pattern3: 'node_modules/@prisma/client/**' -pattern4: 'node_modules/.prisma/client/libquery_engine-rhel-openssl-3.0.x.so.node' \ No newline at end of file +pattern4: 'node_modules/.prisma/client/libquery_engine-rhel-openssl-3.0.x.so.node' +pattern5: '!node_modules/.prisma/client/libquery_engine*' \ No newline at end of file diff --git a/src/common/middlewares/jwt/authForMinglarAdmin&Host.ts b/src/common/middlewares/jwt/authForMinglarAdmin&Host.ts index 5c38f1c..03967a4 100644 --- a/src/common/middlewares/jwt/authForMinglarAdmin&Host.ts +++ b/src/common/middlewares/jwt/authForMinglarAdmin&Host.ts @@ -1,12 +1,12 @@ import jwt from 'jsonwebtoken'; import httpStatus from 'http-status'; import { Request, Response, NextFunction } from 'express'; -import { PrismaClient } from '@prisma/client'; import ApiError from '../../utils/helper/ApiError'; import config from '../../../config/config'; import { ROLE } from '@/common/utils/constants/common.constant'; +import { prisma } from '../../database/prisma.client'; + -const prisma = new PrismaClient(); interface DecodedToken { id?: number; diff --git a/src/common/middlewares/jwt/authForMinglarAdmin.ts b/src/common/middlewares/jwt/authForMinglarAdmin.ts index 3be0ded..cbf6d65 100644 --- a/src/common/middlewares/jwt/authForMinglarAdmin.ts +++ b/src/common/middlewares/jwt/authForMinglarAdmin.ts @@ -1,12 +1,10 @@ import jwt from 'jsonwebtoken'; import httpStatus from 'http-status'; import { Request, Response, NextFunction } from 'express'; -import { PrismaClient } from '@prisma/client'; import ApiError from '../../utils/helper/ApiError'; import config from '../../../config/config'; import { ROLE } from '@/common/utils/constants/common.constant'; - -const prisma = new PrismaClient(); +import { prisma } from '../../database/prisma.client'; interface DecodedToken { id?: number; diff --git a/src/common/middlewares/jwt/authForOnlyMinglarAdmin.ts b/src/common/middlewares/jwt/authForOnlyMinglarAdmin.ts index 9bf6f8e..270c511 100644 --- a/src/common/middlewares/jwt/authForOnlyMinglarAdmin.ts +++ b/src/common/middlewares/jwt/authForOnlyMinglarAdmin.ts @@ -1,12 +1,10 @@ import jwt from 'jsonwebtoken'; import httpStatus from 'http-status'; import { Request, Response, NextFunction } from 'express'; -import { PrismaClient } from '@prisma/client'; import ApiError from '../../utils/helper/ApiError'; import config from '../../../config/config'; import { ROLE } from '@/common/utils/constants/common.constant'; - -const prisma = new PrismaClient(); +import { prisma } from '../../database/prisma.client'; interface DecodedToken { id?: number; diff --git a/src/common/middlewares/jwt/authForUser.ts b/src/common/middlewares/jwt/authForUser.ts index 2b20c03..09124ce 100644 --- a/src/common/middlewares/jwt/authForUser.ts +++ b/src/common/middlewares/jwt/authForUser.ts @@ -1,12 +1,11 @@ import jwt from 'jsonwebtoken'; import httpStatus from 'http-status'; import { Request, Response, NextFunction } from 'express'; -import { PrismaClient } from '@prisma/client'; import ApiError from '../../utils/helper/ApiError'; import config from '../../../config/config'; import { ROLE } from '@/common/utils/constants/common.constant'; -const prisma = new PrismaClient(); +import { prisma } from '../../database/prisma.client'; interface DecodedToken { id?: number;