.DEFAULT_GOAL := all

build: clean
	bee pack

run:
	bee run -gendoc=true -downdoc=true

purge:
	lsof -t -i:8092 | xargs kill | true

run-dev:
	bee generate routers && bee run -gendoc=true -downdoc=true -runmode=prod

dev: purge run-dev

debug:
	bee run -downdebug -gendebug

clean:
	rm -rf oc-datacenter.tar.gz

docker:
	DOCKER_BUILDKIT=1 docker build -t oc-datacenter -f Dockerfile . --build-arg=HOST=$(HOST) --build-arg=KUBERNETES_HOST=$(KUBERNETES_HOST) --build-arg=KUBERNETES_SERVICE_PORT=$(KUBERNETES_SERVICE_PORT) --build-arg=KUBE_CA=$(KUBE_CA) --build-arg=KUBE_CERT=$(KUBE_CERT) --build-arg=KUBE_DATA=$(KUBE_DATA)
	docker tag oc-datacenter opencloudregistry/oc-datacenter:latest

publish-kind:
	kind load docker-image opencloudregistry/oc-datacenter:latest --name $(CLUSTER_NAME) | true

publish-registry:
	docker push opencloudregistry/oc-datacenter:latest

docker-deploy:
	docker compose up -d

run-docker: docker publish-kind publish-registry docker-deploy

all: docker publish-kind

ci: docker publish-registry 

.PHONY: build run clean docker publish-kind publish-registry
