fix: buid error again #14
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # name: Deploy to AWS Lambda | |
| # on: | |
| # push: | |
| # branches: | |
| # - main | |
| # jobs: | |
| # deploy: | |
| # runs-on: ubuntu-latest | |
| # env: | |
| # AWS_REGION: ap-south-1 | |
| # AWS_ACCOUNT_ID: 200077350985 | |
| # REPO_NAME: ootsav-lambda-backend | |
| # IMAGE_TAG: latest | |
| # FUNCTION_NAME: ootsav-backend | |
| # ROLE_ARN: arn:aws:iam::200077350985:role/lambda-basic-execution-role | |
| # NODE_ENV: production | |
| # DATABASE_URL: ${{ secrets.DATABASE_URL }} | |
| # DIRECT_URL: ${{ secrets.DIRECT_URL }} | |
| # TWILIO_ACCOUNT_SID: ${{ secrets.TWILIO_ACCOUNT_SID }} | |
| # TWILIO_AUTH_TOKEN: ${{ secrets.TWILIO_AUTH_TOKEN }} | |
| # TWILIO_VERIFY_SERVICE_SID: ${{ secrets.TWILIO_VERIFY_SERVICE_SID }} | |
| # JWT_SECRET: ${{ secrets.JWT_SECRET }} | |
| # SUPABASE_URL: ${{ secrets.SUPABASE_URL }} | |
| # SUPABASE_KEY: ${{ secrets.SUPABASE_KEY }} | |
| # steps: | |
| # - name: Checkout code | |
| # uses: actions/checkout@v4 | |
| # - name: Set up Node.js | |
| # uses: actions/setup-node@v4 | |
| # with: | |
| # node-version: 22 | |
| # cache: 'npm' | |
| # - name: Install dependencies | |
| # run: npm ci --include=dev | |
| # - name: Check Prisma schema | |
| # run: npx prisma validate | |
| # - name: Generate Prisma client | |
| # run: npx prisma generate | |
| # - name: Build TypeScript | |
| # env: | |
| # NODE_ENV: ${{ env.NODE_ENV }} | |
| # DATABASE_URL: ${{ secrets.DATABASE_URL }} | |
| # DIRECT_URL: ${{ secrets.DIRECT_URL }} | |
| # TWILIO_ACCOUNT_SID: ${{ secrets.TWILIO_ACCOUNT_SID }} | |
| # TWILIO_AUTH_TOKEN: ${{ secrets.TWILIO_AUTH_TOKEN }} | |
| # TWILIO_VERIFY_SERVICE_SID: ${{ secrets.TWILIO_VERIFY_SERVICE_SID }} | |
| # JWT_SECRET: ${{ secrets.JWT_SECRET }} | |
| # SUPABASE_URL: ${{ secrets.SUPABASE_URL }} | |
| # SUPABASE_KEY: ${{ secrets.SUPABASE_KEY }} | |
| # run: npx tsc --skipLibCheck | |
| # - name: Set up Docker Buildx | |
| # uses: docker/setup-buildx-action@v3 | |
| # - name: Configure AWS credentials | |
| # uses: aws-actions/configure-aws-credentials@v4 | |
| # with: | |
| # aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} | |
| # aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} | |
| # aws-region: ${{ env.AWS_REGION }} | |
| # - name: Login to Amazon ECR | |
| # run: | | |
| # aws ecr get-login-password --region $AWS_REGION \ | |
| # | docker login --username AWS --password-stdin ${AWS_ACCOUNT_ID}.dkr.ecr.${AWS_REGION}.amazonaws.com | |
| # - name: Create ECR repo if needed | |
| # run: | | |
| # aws ecr describe-repositories --repository-names $REPO_NAME \ | |
| # || aws ecr create-repository --repository-name $REPO_NAME | |
| # - name: Build Docker image | |
| # run: | | |
| # docker build -t $REPO_NAME . | |
| # docker tag $REPO_NAME:$IMAGE_TAG ${AWS_ACCOUNT_ID}.dkr.ecr.${AWS_REGION}.amazonaws.com/$REPO_NAME:$IMAGE_TAG | |
| # - name: Push image to ECR | |
| # run: | | |
| # docker push ${AWS_ACCOUNT_ID}.dkr.ecr.${AWS_REGION}.amazonaws.com/$REPO_NAME:$IMAGE_TAG | |
| # - name: Deploy Lambda function | |
| # run: | | |
| # set -e | |
| # ENV_VARS="NODE_ENV=$NODE_ENV,DATABASE_URL=$DATABASE_URL,DIRECT_URL=$DIRECT_URL,TWILIO_ACCOUNT_SID=$TWILIO_ACCOUNT_SID,TWILIO_AUTH_TOKEN=$TWILIO_AUTH_TOKEN,TWILIO_VERIFY_SERVICE_SID=$TWILIO_VERIFY_SERVICE_SID,JWT_SECRET=$JWT_SECRET",SUPABASE_KEY=$SUPABASE_KEY,SUPABASE_URL=$SUPABASE_URL, AWS_LAMBDA_NODEJS_DISABLE_CALLBACK_WARNING=1 | |
| # if aws lambda get-function --function-name $FUNCTION_NAME; then | |
| # echo "Updating function code..." | |
| # aws lambda update-function-code \ | |
| # --function-name $FUNCTION_NAME \ | |
| # --image-uri ${AWS_ACCOUNT_ID}.dkr.ecr.${AWS_REGION}.amazonaws.com/$REPO_NAME:$IMAGE_TAG | |
| # echo "Waiting for function update to complete..." | |
| # aws lambda wait function-updated --function-name $FUNCTION_NAME | |
| # echo "Updating function configuration..." | |
| # aws lambda update-function-configuration \ | |
| # --function-name $FUNCTION_NAME \ | |
| # --environment Variables="{$ENV_VARS}" | |
| # else | |
| # echo "Creating new Lambda function..." | |
| # aws lambda create-function \ | |
| # --function-name $FUNCTION_NAME \ | |
| # --package-type Image \ | |
| # --code ImageUri=${AWS_ACCOUNT_ID}.dkr.ecr.${AWS_REGION}.amazonaws.com/$REPO_NAME:$IMAGE_TAG \ | |
| # --role $ROLE_ARN \ | |
| # --environment Variables="{$ENV_VARS}" | |
| # fi | |
| # - name: Ensure Lambda URL exists | |
| # run: | | |
| # aws lambda get-function-url-config --function-name $FUNCTION_NAME \ | |
| # || aws lambda create-function-url-config \ | |
| # --function-name $FUNCTION_NAME \ | |
| # --auth-type NONE | |
| # - name: Ensure public permission | |
| # run: | | |
| # aws lambda add-permission \ | |
| # --function-name $FUNCTION_NAME \ | |
| # --action lambda:InvokeFunctionUrl \ | |
| # --principal "*" \ | |
| # --function-url-auth-type NONE \ | |
| # --statement-id function-url-public-access \ | |
| # || echo "Permission already set" |