#!/bin/sh
set -e

echo "create lambda"

yarn esbuild ./lambda/index.js \
  --bundle \
  --platform=node \
  --target=node18 \
  --outdir=./lambda/.dist

cd lambda/.dist
zip lambda.zip index.js
cd -

yarn awslocal lambda create-function \
  --function-name my-function \
  --runtime nodejs18.x \
  --zip-file fileb://lambda/.dist/lambda.zip \
  --handler index.handler \
  --memory-size 512 \
  --timeout 30 \
  --role arn:aws:iam::619719722105:role/lambda-qa-lambda-songwhip-queue \
  --environment "Variables={SQS_MESSAGE_HANDLER_ENDPOINT=${SQS_MESSAGE_HANDLER_ENDPOINT},DEBUG=${DEBUG:-' '}}"

echo "waiting for lambda ready …"
yarn awslocal lambda wait function-active-v2 --function-name my-function
echo "lambda ready"
