export ARQUITECTURA := $(shell lscpu |grep itectur | tr -d ' '| cut -f2 -d':')
export REGISTRY=registry.reymota.es
export IMG_VERSION = 0.72
export IMG_NGINX_VERSION = 1.0

# limpia todo
all: imagen clean install

imagen:
	cd ../; make

install:
	-kubectl create -f namespace.yaml
	-kubectl create -f reg-secret.yaml
	-kubectl create -f env-prod-configmap.yaml 
	-kubectl create -f env-prod-db-configmap.yaml 

	-kubectl create -f pv-local-reymota.yaml
	-kubectl create -f reymota-prod-persistentvolumeclaim.yaml
	-kubectl create -f static-volume-persistentvolumeclaim.yaml
	-kubectl create -f postgres-data-persistentvolumeclaim.yaml

	-kubectl create -f db-deployment.yaml
	-kubectl create -f db-service.yaml

	-envsubst < reymota-deployment.yaml |kubectl create -f -
	-envsubst < nginx-deployment.yaml |kubectl create -f -
	-kubectl create -f nginx-service.yaml
	-kubectl create -f reymota-ingress.yaml

clean:
	-envsubst < nginx-deployment.yaml |kubectl delete -f -
	-kubectl delete -f nginx-service.yaml
	-envsubst < reymota-deployment.yaml |kubectl delete -f -

	-kubectl delete -f db-deployment.yaml
	-kubectl delete -f db-service.yaml

	-kubectl delete -f env-prod-configmap.yaml 
	-kubectl delete -f env-prod-db-configmap.yaml 

	-kubectl delete -f postgres-data-persistentvolumeclaim.yaml
	-kubectl delete -f static-volume-persistentvolumeclaim.yaml
	-kubectl delete -f reymota-prod-persistentvolumeclaim.yaml
	-kubectl delete -f pv-local-reymota.yaml
	-kubectl delete -f reg-secret.yaml
	-kubectl delete -f namespace.yaml

nginx:
	cd ../nginx; make

backup:
	kubectl --kubeconfig /home/creylopez/.kube/config -n reymota exec -ti deployment.apps/db -- /usr/lib/postgresql/15/bin/pg_dump --username=creylopez --dbname=reymota > reymota-$(IMG_VERSION).sql

muestra:
	-envsubst < reymota-deployment.yaml > /tmp/deployment.yaml
