mirror of
https://github.com/clastix/kamaji.git
synced 2026-08-26 00:47:20 +00:00
* feat(api)!: readiness and conditions for datastore Signed-off-by: Dario Tranchitella <dario@tranchitella.eu> * docs: readiness and conditions for datastore Signed-off-by: Dario Tranchitella <dario@tranchitella.eu> * feat(controller): readiness and conditions for datastore Signed-off-by: Dario Tranchitella <dario@tranchitella.eu> * refactor: default datastore checked at reconciliation time Signed-off-by: Dario Tranchitella <dario@tranchitella.eu> * chore(helm): upgrading to v4.1.1 Signed-off-by: Dario Tranchitella <dario@tranchitella.eu> --------- Signed-off-by: Dario Tranchitella <dario@tranchitella.eu>
41 lines
2.0 KiB
Makefile
41 lines
2.0 KiB
Makefile
ROOT_DIR:=$(shell dirname $(realpath $(firstword $(MAKEFILE_LIST))))
|
|
NAME:=default
|
|
NAMESPACE:=nats-system
|
|
|
|
.PHONY: helm
|
|
HELM = $(shell pwd)/../../../bin/helm
|
|
helm: ## Download helm locally if necessary.
|
|
$(call go-install-tool,$(HELM),helm.sh/helm/v3/cmd/helm@v4.1.1)
|
|
|
|
nats: nats-certificates nats-secret nats-deployment
|
|
|
|
nats-certificates:
|
|
rm -rf $(ROOT_DIR)/certs/$(NAME) && mkdir -p $(ROOT_DIR)/certs/$(NAME)
|
|
cfssl gencert -initca $(ROOT_DIR)/ca-csr.json | cfssljson -bare $(ROOT_DIR)/certs/$(NAME)/ca
|
|
@mv $(ROOT_DIR)/certs/$(NAME)/ca.pem $(ROOT_DIR)/certs/$(NAME)/ca.crt
|
|
@mv $(ROOT_DIR)/certs/$(NAME)/ca-key.pem $(ROOT_DIR)/certs/$(NAME)/ca.key
|
|
@NAME=$(NAME) NAMESPACE=$(NAMESPACE) envsubst < server-csr.json > $(ROOT_DIR)/certs/$(NAME)/server-csr.json
|
|
cfssl gencert -ca=$(ROOT_DIR)/certs/$(NAME)/ca.crt -ca-key=$(ROOT_DIR)/certs/$(NAME)/ca.key \
|
|
-config=$(ROOT_DIR)/config.json -profile=server \
|
|
$(ROOT_DIR)/certs/$(NAME)/server-csr.json | cfssljson -bare $(ROOT_DIR)/certs/$(NAME)/server
|
|
@mv $(ROOT_DIR)/certs/$(NAME)/server.pem $(ROOT_DIR)/certs/$(NAME)/server.crt
|
|
@mv $(ROOT_DIR)/certs/$(NAME)/server-key.pem $(ROOT_DIR)/certs/$(NAME)/server.key
|
|
chmod 644 $(ROOT_DIR)/certs/$(NAME)/*
|
|
|
|
nats-secret:
|
|
@kubectl create namespace $(NAMESPACE) || true
|
|
@kubectl -n $(NAMESPACE) create secret generic nats-$(NAME)-config \
|
|
--from-file=$(ROOT_DIR)/certs/$(NAME)/ca.crt --from-file=$(ROOT_DIR)/certs/$(NAME)/ca.key \
|
|
--from-file=$(ROOT_DIR)/certs/$(NAME)/server.key --from-file=$(ROOT_DIR)/certs/$(NAME)/server.crt \
|
|
--from-literal=password=password \
|
|
--dry-run=client -o yaml | kubectl apply -f -
|
|
|
|
nats-deployment:
|
|
@VALUES_FILE=$(if $(findstring notls,$(NAME)),values-notls.yaml,values.yaml); \
|
|
NAME=$(NAME) envsubst < $(ROOT_DIR)/$$VALUES_FILE | $(HELM) upgrade --install $(NAME) nats/nats --create-namespace -n nats-system -f -
|
|
|
|
|
|
nats-destroy:
|
|
@NAME=$(NAME) envsubst < $(ROOT_DIR)/nats.yaml | kubectl -n $(NAMESPACE) delete --ignore-not-found -f -
|
|
@kubectl delete -n $(NAMESPACE) secret mysql-$(NAME)config --ignore-not-found
|