LocalStackでawscliを実行する手順 - GreenAvenue/geranium GitHub Wiki
Usage
How to build Lambda with LocalStack.
Setup
Put the file as in the following example.
# geranium/packages/infra/
.
├── README.md
├── docker-compose.yml
└── scripts
└── lambda.py
Start LocalStack service in advance.
# lambda.py
import json
def lambda_handler(event, context):
return response({'message': 'Hello LocalStack'}, 200)
def response(message, status_code):
return {
'statusCode': str(status_code),
'body': json.dumps(message),
'headers': {
'Content-Type': 'application/json',
'Access-Control-Allow-Origin': '*'
},
}
Execute command to make zip.
zip scripts/lambda.zip scripts/lambda.py
awscli
Set in advance. Access key can be set to dummy.
$ aws configure --profile localstack
AWS Access Key ID [None]: dummy
AWS Secret Access Key [None]: dummy
Default region name [None]: us-east-1
Default output format [None]: text
Execute by specifying "--profile".
$ aws --endpoint-url=http://localhost:4574 \
--profile localstack lambda create-function \
--function-name=func_1 \
--runtime=python3.8 \
--role=r1 \
--handler=lambda.lambda_handler \
--zip-file fileb://scripts/lambda.zip
OhOG9a3aq6aCMgBxgTZyVt/kvMLz8HmkikU9DHSKEAI= 387 arn:aws:lambda:us-east-1:000000000000:function:func_1 func_1 lambda.lambda_handler 2020-03-13T16:29:30.326+0000 499766e4-59fa-4512-b6f7-92a8ea28f7e7 r1 python3.8 Active 3 $LATESTTRACINGCONFIG PassThrough
Overview
