DOCKER_REGISTRY ?= generativeai-docker-stage-dev-local.bahnhub.tech.rz.db.de
IMAGE_TAG ?= $(shell git describe --always --dirty --match "" 2>/dev/null || echo "latest")
DEPLOYMENT_ENV ?= dev
IMAGE_NAME = dbplanet-$(DEPLOYMENT_ENV)

.PHONY: build push deploy vars whatif

vars:
	@echo "IMAGE_TAG=$(IMAGE_TAG)"
	@echo "IMAGE_NAME=$(IMAGE_NAME)"
	@echo "DOCKER_REGISTRY=$(DOCKER_REGISTRY)"

build:
	docker build --platform linux/amd64 --build-arg env=$(DEPLOYMENT_ENV) -t $(DOCKER_REGISTRY)/$(IMAGE_NAME):$(IMAGE_TAG) .

push: build
	docker login $(DOCKER_REGISTRY)
	docker push $(DOCKER_REGISTRY)/$(IMAGE_NAME):$(IMAGE_TAG)

whatif:
	az deployment sub what-if \
		--location westeurope \
		--parameters infra/parameters/$(DEPLOYMENT_ENV).bicepparam \
		--parameters deployContainerApp=true imageTag=$(IMAGE_TAG)

deploy: push
	./infra/deploy.sh --environment $(shell echo $(DEPLOYMENT_ENV) | tr '[:lower:]' '[:upper:]') --image-tag $(IMAGE_TAG)
