-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathbuildspec.yml
More file actions
40 lines (35 loc) · 1.98 KB
/
buildspec.yml
File metadata and controls
40 lines (35 loc) · 1.98 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
version: 0.2
env:
parameter-store:
EXEC_ROLE: "AW_VERIFICATION_EMAIL_ROLE"
FUNCTION_NAME: "AW_VERIFICATION_EMAIL_NAME"
SQS_ARN: "AW_SQS_ARN_PREFIX"
AW_EMAIL: "AW_OFFICIAL_EMAIL"
AW_RECEIVE_SQS_URL: "Aw_Lambda_Receive_Queue_URL"
variables:
HANDLER: "src/index"
Q_NAME: "AWVerificationEmailBasicPP"
ZIP_FILE: "new-function.zip"
SQS_ENDPOINT_URL: "https://sqs.ap-southeast-2.amazonaws.com/"
S3_ENDPOINT_URL: "https://s3.ap-southeast-2.amazonaws.com"
#ENV_ARG: "--environment "Variables={SourceEmail=$AW_EMAIL, SqsQueueUrl=$AW_RECEIVE_SQS_URL, SQS_ENDPOINT=$SQS_ENDPOINT_URL, S3_ENDPOINT=$S3_ENDPOINT_URL, REGION=ap-southeast-2}"
phases:
pre_build:
commands:
- pwd
- ls
- aws sqs create-queue --queue-name $Q_NAME
build:
commands:
- hostname
- npm install
- ls
- zip -r $ZIP_FILE src/index.js node_modules/dotenv src/helpers/templateHelper.js src/helpers/emailHelper.js
#- zip Sending_Email.zip index.js
- aws lambda create-function --function-name $FUNCTION_NAME --runtime nodejs12.x --memory-size 128 --timeout 10 --zip-file "fileb://$ZIP_FILE" --handler $HANDLER.handler --role $EXEC_ROLE --region $AWS_DEFAULT_REGION || aws lambda update-function-code --function-name $FUNCTION_NAME --zip-file "fileb://$ZIP_FILE" --region $AWS_DEFAULT_REGION
# create new lambda || update lambda code
- sleep 3 #wait till function-code-update completed
- aws lambda update-function-configuration --function-name $FUNCTION_NAME --environment "Variables={sourceEmail=$AW_EMAIL, sqsQueueUrl=$AW_RECEIVE_SQS_URL, SQS_ENDPOINT=$SQS_ENDPOINT_URL, S3_ENDPOINT=$S3_ENDPOINT_URL, REGION=ap-southeast-2}" --region $AWS_DEFAULT_REGION
# update configuration (environmental vars)
- aws lambda create-event-source-mapping --function-name $FUNCTION_NAME --event-source-arn $SQS_ARN$Q_NAME || echo "trigger alread exists"
# create event trigger for lambda || trigger already exists