-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMakefile
86 lines (70 loc) · 2.72 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
78
79
80
81
82
83
84
85
86
include .env
VERSION=$(shell cat VERSION)
PYTHON_CLIENT_VERSION=$(VERSION)
# Default target
all: build
build: build-backend build-frontend
@echo "Build version: $(VERSION)"
push: version push-backend push-frontend
@echo "Push version: $(VERSION)"
version:
@echo "Incrementing version number..."
echo $(shell awk -F. \
'/^[0-9]+\.[0-9]+\.[0-9]+$$/ {print $$1 "." $$2 "." ($$3+1)}' \
VERSION) > VERSION
# Target to build the backend Docker image
build-backend:
$(MAKE) -C backend build
# Target to push the backend Docker image
push-backend:
$(MAKE) -C backend push
# Target to build the backend Docker image
build-frontend:
$(MAKE) -C frontend build
# Target to push the backend Docker image
push-frontend:
$(MAKE) -C frontend push
# Target to remove built Docker image from local machine
clean:
$(MAKE) -C backend clean
$(MAKE) -C frontend clean
# Dev environment
dev:
docker compose --profile "*" up -d
# Deploy the helm app
kubernetes:
helm upgrade --install ${RELEASE_NAME} kubernetes/arena \
--set gitlab.password=${SARUS_GITLAB_DOCKER_REGISTRY_PASSWORD} \
--set ingress-nginx.controller.service.loadBalancerIP=${PUBLIC_IP} \
--set cluster.host=${CLUSTER_HOST} \
--set postgresql.user=${POSTGRES_USER} \
--set postgresql.password=${POSTGRES_PASSWORD} \
--set redis.password=${REDIS_PASSWORD} \
--set backend.firstSuperUser.user=${FIRST_SUPERUSER} \
--set backend.firstSuperUser.password=${FIRST_SUPERUSER_PASSWORD} \
--set backend.smtp.host=${SMTP_HOST} \
--set backend.smtp.requireAuthentication=True \
--set backend.smtp.user=${SMTP_USER} \
--set backend.smtp.password="${SMTP_PASSWORD}" \
--set backend.usersOpenRegistration=${USERS_OPEN_REGISTRATION}
# Deploy the helm app
kubernetes-staging:
helm upgrade --install ${RELEASE_NAME} kubernetes/arena \
--set gitlab.password=${SARUS_GITLAB_DOCKER_REGISTRY_PASSWORD} \
--set cluster.host=${STAGING_CLUSTER_HOST} \
--set postgresql.user=${POSTGRES_USER} \
--set postgresql.password=${POSTGRES_PASSWORD} \
--set redis.password=${REDIS_PASSWORD} \
--set backend.firstSuperUser.user=${FIRST_SUPERUSER} \
--set backend.firstSuperUser.password=${FIRST_SUPERUSER_PASSWORD} \
--set backend.usersOpenRegistration=${USERS_OPEN_REGISTRATION} \
--set cluster.provider=EKS \
--set cluster.tls.enabled=True \
# --set cluster.tls.issuer.name=letsencrypt-staging \
# --set cluster.tls.issuer.privateKeySecretRef=letsencrypt-staging
# Deploy the k8s dashboard
kubernetes-dashboard:
helm upgrade --install kubernetes-dashboard kubernetes-dashboard \
--repo https://kubernetes.github.io/dashboard/ \
--create-namespace --namespace kubernetes-dashboard
.PHONY: all build push version build-backend push-backend build-frontend push-frontend clean dev kubernetes kubernetes-dashboard