You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
.PHONY: all build clean test test-coverage test-short benchmark lint dashboard dashboard-coverage dashboard-api-types dashboard-check-api run docker preflight-production smoke-production capture-production-evidence docs help
all: dashboard build ## Build dashboard and binary
build: ## Build the anubis binary
@echo "⚖️ Building AnubisWatch..."
CGO_ENABLED=0 go build -ldflags "$(LDFLAGS)" -o bin/$(BINARY) ./cmd/anubis
@echo "✓ Build complete: bin/$(BINARY)"
run: build ## Build and run the server
./bin/$(BINARY) serve
dev: ## Run in development mode (single node, no TLS)
go run ./cmd/anubis serve --single --config ./configs/anubis.yaml
clean: ## Clean build artifacts
rm -rf bin/ web/dist/
@echo "✓ Cleaned"
test: ## Run all tests
go test -race ./cmd/... ./internal/...
test-coverage: ## Enforce exact Go coverage for cmd and internal packages
./scripts/check-go-coverage.sh
test-short: ## Run short tests only
go test -short ./...
benchmark: ## Run benchmarks (storage and probe)
@echo "⚖️ Running benchmarks..."
go test -bench=. -benchmem ./internal/storage/...
go test -bench=. -benchmem ./internal/probe/...
preflight-production: ## Run production Helm/Kubernetes preflight checks (requires VALUES)
./scripts/production-preflight.sh
smoke-production: ## Run production smoke checks (requires ANUBIS_BASE_URL or BASE_URL arg)
./scripts/production-smoke.sh $(BASE_URL)
capture-production-evidence: ## Capture deployment evidence for the current Kubernetes context