-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMakefile
55 lines (45 loc) · 1.3 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
DEBIAN_VERSION=sid
PWD=$(shell pwd)
BIN_DIR=$(PWD)/bin
PATCH_FOLDER=$(PWD)/patches
REGISTRY=ghcr.io/go-riscv
PKG_DIR := $(PWD)/pkg
PKG_LIST := $(notdir $(wildcard $(PWD)/pkg/*))
PKG_LIST := golang protobuf release etcd kubernetes kind
.PHONY: all
all: folders
@for folder in $(PKG_LIST); do \
if [ -d $(PKG_DIR)/"$$folder" ]; then \
cd $(PKG_DIR)/"$$folder" && make all; \
fi \
done
.PHONY: $(PKG_LIST)
$(PKG_LIST):
@cd $(PKG_DIR)/$@ && make all
.PHONY: distclean
distclean:
@for folder in $(PKG_LIST); do \
if [ -d $(PKG_DIR)/"$$folder" ]; then \
cd $(PKG_DIR)/"$$folder" && make distclean; \
fi \
done
rm -rf $(BIN_DIR)
.PHONY: folders
folders:
mkdir -p $(BIN_DIR)
####################################################
# kind cluster and app deployment #
####################################################
.PHONY: kind-cluster
kind-cluster:
# build kind cluster
$(BIN_DIR)/kind create cluster --retain --config config/kind.yaml
$(BIN_DIR)/kind load docker-image $(REGISTRY)/local-path-helper:riscv64
$(BIN_DIR)/kind load docker-image $(REGISTRY)/local-path-provisioner:riscv64
.PHONY: app-deploy
app-deploy:
# deploy alpine echo server, client and service
$(BIN_DIR)/kubectl apply -f config/alpine.yaml
.PHONY: kind-cluster-delete
kind-cluster-delete:
$(BIN_DIR)/kind delete cluster