From 6e08fa3b503a23a3283c4d31ac24fa8f10e14143 Mon Sep 17 00:00:00 2001 From: slchangtw Date: Thu, 12 Sep 2024 16:00:36 +0200 Subject: [PATCH 1/4] Add data_team_layer --- data_team_layer/Makefile | 4 ++++ data_team_layer/requirements.txt | 1 + data_team_layer/shipcloud_utils/__init__.py | 0 data_team_layer/shipcloud_utils/date.py | 16 ++++++++++++++++ 4 files changed, 21 insertions(+) create mode 100644 data_team_layer/Makefile create mode 100644 data_team_layer/requirements.txt create mode 100644 data_team_layer/shipcloud_utils/__init__.py create mode 100644 data_team_layer/shipcloud_utils/date.py diff --git a/data_team_layer/Makefile b/data_team_layer/Makefile new file mode 100644 index 0000000..4cb6ebc --- /dev/null +++ b/data_team_layer/Makefile @@ -0,0 +1,4 @@ +build-DataTeamLayer: + mkdir -p "$(ARTIFACTS_DIR)/python" + cp -r data_team_utils/ "$(ARTIFACTS_DIR)/python" + python -m pip install -r requirements.txt -t "$(ARTIFACTS_DIR)/python" diff --git a/data_team_layer/requirements.txt b/data_team_layer/requirements.txt new file mode 100644 index 0000000..4b2e332 --- /dev/null +++ b/data_team_layer/requirements.txt @@ -0,0 +1 @@ +pandas==2.2.2 diff --git a/data_team_layer/shipcloud_utils/__init__.py b/data_team_layer/shipcloud_utils/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/data_team_layer/shipcloud_utils/date.py b/data_team_layer/shipcloud_utils/date.py new file mode 100644 index 0000000..cb4eb7b --- /dev/null +++ b/data_team_layer/shipcloud_utils/date.py @@ -0,0 +1,16 @@ +from datetime import date, timedelta + + +def get_previous_month_range() -> tuple[date, date]: + today_date = date.today() + last_day = today_date.replace(day=1) - timedelta(days=1) + first_day = today_date.replace(day=1) - timedelta(days=last_day.day) + return first_day, last_day + + +def get_yesterday() -> tuple[date]: + return date.today() - timedelta(days=1) + + +def get_today() -> tuple[date]: + return date.today() From ccef25ca05d1a82c54b6d90d2611f236ab634743 Mon Sep 17 00:00:00 2001 From: slchangtw Date: Thu, 12 Sep 2024 16:18:41 +0200 Subject: [PATCH 2/4] Add data team layer definition --- template.yaml | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/template.yaml b/template.yaml index bef2519..26b78ff 100644 --- a/template.yaml +++ b/template.yaml @@ -29,6 +29,17 @@ Resources: ManagedPolicyArns: - arn:aws:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole + DataTeamLayer: + Type: AWS::Serverless::LayerVersion + Properties: + LayerName: data-team-layer + ContentUri: data_team_layer/ + CompatibleRuntimes: + - python3.10 + - python3.11 + Metadata: + BuildMethod: makefile + : # The name should be in camel case. E.g., HelloWorldFunction Type: AWS::Serverless::Function Properties: @@ -39,8 +50,10 @@ Resources: Role: Fn::GetAtt: - LambdaExecRoles - - Arn - + - ArN + Layers: + - !Ref DataTeamLayer + Alert: # The name should be in camel case. E.g., HelloWorldFunctionAlert Type: AWS::CloudWatch::Alarm Properties: From 593d10280dd564024028487487900bd85a5120b6 Mon Sep 17 00:00:00 2001 From: slchangtw Date: Thu, 12 Sep 2024 17:27:08 +0200 Subject: [PATCH 3/4] Change folder name --- data_team_layer/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/data_team_layer/Makefile b/data_team_layer/Makefile index 4cb6ebc..224ee54 100644 --- a/data_team_layer/Makefile +++ b/data_team_layer/Makefile @@ -1,4 +1,4 @@ build-DataTeamLayer: mkdir -p "$(ARTIFACTS_DIR)/python" - cp -r data_team_utils/ "$(ARTIFACTS_DIR)/python" + cp -r shipcloud_utils/ "$(ARTIFACTS_DIR)/python" python -m pip install -r requirements.txt -t "$(ARTIFACTS_DIR)/python" From d68aabe239d1940e4a00eb667dcc7ad779a7160d Mon Sep 17 00:00:00 2001 From: Shun-Lung Chang Date: Thu, 12 Sep 2024 17:30:41 +0200 Subject: [PATCH 4/4] Update template.yaml Fix typo --- template.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/template.yaml b/template.yaml index 26b78ff..844cb1f 100644 --- a/template.yaml +++ b/template.yaml @@ -50,7 +50,7 @@ Resources: Role: Fn::GetAtt: - LambdaExecRoles - - ArN + - Arn Layers: - !Ref DataTeamLayer