-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMakefile
77 lines (64 loc) · 2.18 KB
/
Makefile
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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
PROJECT_NAME = "esm"
LOCAL_DEPLOY_DIR = "docker"
# ---------------------------------------
# For deploying docker containers locally
# ---------------------------------------
up:
@docker compose -p ${PROJECT_NAME} \
-f ${LOCAL_DEPLOY_DIR}/docker-compose.yml \
up --build -d --remove-orphans
nobuild/up:
@docker-compose -p ${PROJECT_NAME} \
-f ${LOCAL_DEPLOY_DIR}/docker-compose.yml \
up -d
# ---------------------------------
# For tearing down local deployment
# ---------------------------------
down:
@docker compose -p ${PROJECT_NAME} \
-f ${LOCAL_DEPLOY_DIR}/docker-compose.yml \
down
down-clean:
@docker compose -p ${PROJECT_NAME} \
-f ${LOCAL_DEPLOY_DIR}/docker-compose.yml \
down --volumes --remove-orphans
@docker system prune -f
# ---------------------------------
# For deploying modules to AWS
# ---------------------------------
deploy:
$(MAKE) -C terraform/modules deploy-all
deploy-%:
$(call run_deploy_or_destroy,deploy,$*)
destroy:
$(MAKE) -C terraform/modules destroy-all
destroy-%:
$(call run_deploy_or_destroy,destroy,$*)
plan:
$(MAKE) -C terraform/modules plan-all
plan-%:
$(call run_deploy_or_destroy,plan,$*)
# ---------------------------------
# For deploying shared/backend to AWS
# This should only be run once
# Please do not run the below commands because they are initialised in AWS already
# ---------------------------------
deploy-shared:
$(MAKE) -C terraform/shared deploy-shared
destroy-shared:
$(MAKE) -C terraform/shared destroy-shared
plan-shared:
$(MAKE) -C terraform/shared plan-shared
# Help
help:
@echo "Available commands:"
@echo " init - Set up development tools and Python virtual environment"
@echo " deploy - Build and deploy all services"
@echo " deploy-service - Build and deploy specific service"
@echo " destroy - Destroy all services"
@echo " destroy-service - Destroy specific services"
@echo " lint - Lint all services"
@echo " test - Test all services"
@echo " help - Show this help message"
@echo " requirements - Install Python requirements"
@echo " rover-up - Runs Rover GUI to visualise terraform"