SHELL := /bin/bash REMOTE ?= alarm REMOTE_DIR ?= /zdata/root/dockerFiles/lvmh .PHONY: help build verify worker-image daemon web test deploy e2e integration e2e-integration clean help: @echo "build build daemon + web (dev checks)" @echo "verify vet + staticcheck + tests + web build" @echo "worker-image build lvmh-worker:latest (requires plugin/)" @echo "deploy rsync to alarm:$(REMOTE_DIR) and docker compose up -d" @echo "integration cross-component e2e harness (e2e/, requires go + bun)" build: daemon web daemon: cd daemon && go build ./... web: cd web && bun install && bun run build worker-image: docker build -f docker/worker.Dockerfile \ --build-arg LVMH_PLUGIN=build-plugin/lvmh-agent.ts \ -t lvmh-worker:latest . @# build-plugin/ is prepared by deploy/prep-worker.sh verify: daemon cd daemon && go vet ./... cd daemon && staticcheck ./... || true cd daemon && go test ./... -count=1 cd web && bun run build cd plugin && bunx tsc@5.9 --noEmit -p tsconfig.json test: cd daemon && go test ./... -count=1 deploy: verify worker-image bash deploy/deploy.sh $(REMOTE) $(REMOTE_DIR) e2e: bash deploy/e2e.sh integration: bun e2e/driver.mjs e2e-integration: integration clean: rm -rf web/dist web/node_modules daemon/lvmh-daemon .pi/scratch