Skip to content
This repository was archived by the owner on Mar 19, 2024. It is now read-only.

Commit 5f1451e

Browse files
author
CodingNagger
committed
Versioned S3 Lambda upload
1 parent 7554075 commit 5f1451e

File tree

1 file changed

+18
-1
lines changed

1 file changed

+18
-1
lines changed

Makefile

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ SHARED_LIBS_FOLDER=swift-shared-libs
3636
LAYER_ZIP=swift-lambda-runtime-$(LAYER_VERSION).zip
3737
LAMBDA_BUILD_PATH=.build
3838
IAM_ROLE_NAME=lambda_sprinter_basic_execution
39+
DATETIME=$(shell date +'%y%m%d-%H%M%S')
3940

4041
# use this for local development
4142
MOUNT_ROOT=$(shell pwd)/..
@@ -47,7 +48,7 @@ DOCKER_PROJECT_PATH=aws-lambda-swift-sprinter/$(SWIFT_PROJECT_PATH)
4748

4849
# AWS Configuration
4950
AWS_PROFILE?=default
50-
AWS_BUCKET?=my-s3-bucket
51+
AWS_BUCKET?=aws-lambda-swift-sprinter
5152

5253
swift_test:
5354
docker run \
@@ -153,6 +154,22 @@ create_lambda: create_role package_lambda
153154
$(info "$(LAMBDA_LAYER_ARN)")
154155
aws lambda create-function --function-name $(LAMBDA_FUNCTION_NAME) --runtime provided --handler $(LAMBDA_HANDLER) --role "$(IAM_ROLE_ARN)" --zip-file fileb://$(LAMBDA_BUILD_PATH)/$(LAMBDA_ZIP) --layers $(LAMBDA_LAYER_ARN) --profile $(AWS_PROFILE)
155156

157+
158+
create_lambda_with_s3: create_role package_lambda
159+
echo set path
160+
$(eval LAMBDA_S3_UPLOAD_PATH := $(LAMBDA_FUNCTION_NAME)/$(DATETIME))
161+
echo $(LAMBDA_S3_UPLOAD_PATH)
162+
163+
echo upload
164+
aws s3 sync --acl public-read ./.build s3://$(AWS_BUCKET)/$(LAMBDA_S3_UPLOAD_PATH) --profile $(AWS_PROFILE)
165+
166+
echo create lambda
167+
$(eval LAMBDA_LAYER_ARN := $(shell cat $(LAMBDA_BUILD_PATH)/$(SWIFT_LAMBDA_LIBRARY)-arn.txt))
168+
$(info "$(LAMBDA_LAYER_ARN)")
169+
echo $(LAMBDA_S3_UPLOAD_PATH)
170+
aws lambda create-function --function-name $(LAMBDA_FUNCTION_NAME) --runtime provided --handler $(LAMBDA_HANDLER) --role "$(IAM_ROLE_ARN)" --code "S3Bucket=$(AWS_BUCKET),S3Key=$(LAMBDA_S3_UPLOAD_PATH)/$(LAMBDA_ZIP)" --layers $(LAMBDA_LAYER_ARN) --profile $(AWS_PROFILE)
171+
echo $(LAMBDA_S3_UPLOAD_PATH)
172+
156173
update_lambda: package_lambda
157174
aws lambda update-function-code --function-name $(LAMBDA_FUNCTION_NAME) --zip-file fileb://$(LAMBDA_BUILD_PATH)/$(LAMBDA_ZIP) --profile $(AWS_PROFILE)
158175

0 commit comments

Comments
 (0)