.PHONY: dev local client build test images images-compose hosted-up

dev:
	go run ./cmd/server

local:
	go run ./cmd/server

client:
	go run ./cmd/client -help

build:
	go build ./cmd/server
	go build ./cmd/client
	go build ./cmd/customer-service
	go build ./cmd/service-controller

test:
	go test ./...

# Build the four independently deployable runtime images.
images:
	docker build -f Dockerfile.server -t $${NEURALHUNT_SERVER_IMAGE:-neuralhunt-server:local} .
	docker build -f Dockerfile.customer-service -t $${NEURALHUNT_CUSTOMER_IMAGE:-neuralhunt-customer-service:local} .
	docker build -f Dockerfile.worker -t $${CS_WORKER_IMAGE:-neuralhunt-worker:local} .
	docker build -f Dockerfile.service-controller -t $${NEURALHUNT_SERVICE_CONTROLLER_IMAGE:-neuralhunt-service-controller:local} .

images-compose:
	docker compose --profile images build app customer-service worker-image service-controller-image

hosted-up: images
	docker compose --profile hosted up -d
