-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMakefile
69 lines (54 loc) · 2.12 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
include install.mk
DIRECTORY = $(notdir $(sort $(wildcard packages/*)))
VALUES ?= values.yaml
DIST_DIR = .dist/
DIST_VERSION ?= canary
RELEASE = $(DIST_DIR)/prow-installer-$(DIST_VERSION).tar.gz
HELM_PLUGIN_DIFF_URL := https://github.com/databus23/helm-diff
HELM_PLUGIN_DIFF_VERSION := v3.5.0
HELM_PLUGIN_MAP_KUBE_APIS_URL := https://github.com/helm/helm-mapkubeapis
HELM_PLUGIN_MAP_KUBE_APIS_VERSION := v0.3.0
.PHONY: init
init:
helm plugin install $(HELM_PLUGIN_DIFF_URL) --version $(HELM_PLUGIN_DIFF_VERSION) || echo "Plugin already installed - nothing to do"
helm plugin install $(HELM_PLUGIN_MAP_KUBE_APIS_URL) --version $(HELM_PLUGIN_MAP_KUBE_APIS_VERSION) || echo "Plugin already installed - nothing to do"
# plugin to handle deprecated apis
helm plugin install https://github.com/hickeyma/helm-mapkubeapis || echo "Plugin already installed - nothing to do"
helm repo add stable https://charts.helm.sh/stable
helm repo add jetstack https://charts.jetstack.io
helm repo add estafette https://helm.estafette.io
helm repo add bitnami https://charts.bitnami.com/bitnami
helm repo add ingress-nginx https://kubernetes.github.io/ingress-nginx
helm repo update
.PHONY: deploy
deploy: $(addsuffix -deploy,$($*DIRECTORY:/=))
.PHONY: %-deploy
%-deploy:
@echo "*Deploying package $*"
@$(MAKE) FOLDER=packages/$* VALUES=$(VALUES) SET_VALUES=$(SET_VALUES) install
.PHONY: validate
validate: $(addsuffix -validate,$($*DIRECTORY:/=))
.PHONY: %-validate
%-validate:
@echo "*Validating package $*"
@$(MAKE) VALIDATE=true DRY_RUN= FOLDER=packages/$* VALUES=$(VALUES) SET_VALUES=$(SET_VALUES) install
package:
@echo Creating package...
@mkdir -p $(DIST_DIR)
@tar -zcf $(RELEASE) packages/ Makefile install.mk k8sapi_deprecated_mappings.yaml LICENSE
@echo Creating package...Done $(RELEASE)
.PHONY: semantic-release
semantic-release:
npm ci
npx semantic-release
.PHONY: semantic-release-dry-run
semantic-release-dry-run:
npm ci
npx semantic-release -d
.PHONY: install-npm-check-updates
install-npm-check-updates:
npm install npm-check-updates
.PHONY: update-npm-dependencies
update-npm-dependencies: install-npm-check-updates
ncu -u
npm install