IMG := mkm-admin build: podman build -t $(IMG) . # Server configuration (Change these to your actual server details) SERVER_USER := user SERVER_IP := 192.168.100.105 SERVER_PATH := /var/www/mkm-admin deploy: build @echo "Cleaning up existing deployment if any..." -podman kube down k8s/deployment.yaml @echo "Generating merged deployment with ConfigMap..." kubectl create configmap mkm-admin-config --from-env-file=.env --dry-run=client -o yaml > k8s/merged_deployment.yaml @echo "---" >> k8s/merged_deployment.yaml @cat k8s/deployment.yaml >> k8s/merged_deployment.yaml @echo "Deploying via podman kube play..." podman kube play k8s/merged_deployment.yaml @rm k8s/merged_deployment.yaml deploy-server: @echo "Deploying to remote server $(SERVER_IP)..." @# Generate temporary merged YAML for server @kubectl create configmap mkm-admin-config --from-env-file=.env --dry-run=client -o yaml > k8s/server_deploy.yaml @echo "---" >> k8s/server_deploy.yaml @cat k8s/deployment.yaml >> k8s/server_deploy.yaml @# Single SCP/SSH call to reduce password prompts scp k8s/server_deploy.yaml $(SERVER_USER)@$(SERVER_IP):/tmp/server_deploy.yaml ssh $(SERVER_USER)@$(SERVER_IP) "kubectl apply -f /tmp/server_deploy.yaml && rm /tmp/server_deploy.yaml" @rm k8s/server_deploy.yaml stop: -podman kube down k8s/deployment.yaml >/dev/null 2>&1 .PHONY: build deploy deploy-server stop