diff --git a/GNUmakefile b/GNUmakefile index 6760a5136..aae952963 100644 --- a/GNUmakefile +++ b/GNUmakefile @@ -50,15 +50,16 @@ E2E_COVER_DIR ?= $(CURDIR)/coverage/e2e DOCKER_IMAGE_NAME= ghcr.io/getprobo/probo DOCKER_TAG_NAME?= latest -PROBOD_BIN_DEPS= pkg/server/api/connect/v1/schema/schema.go \ +GENERATED= pkg/server/api/connect/v1/schema/schema.go \ pkg/server/api/connect/v1/types/types.go \ pkg/server/api/console/v1/schema/schema.go \ pkg/server/api/console/v1/types/types.go \ pkg/server/api/trust/v1/schema/schema.go \ pkg/server/api/trust/v1/types/types.go \ pkg/server/api/mcp/v1/server/server.go \ - pkg/server/api/mcp/v1/types/types.go \ - apps/console/dist/index.html \ + pkg/server/api/mcp/v1/types/types.go + +EMBEDDED= apps/console/dist/index.html \ apps/trust/dist/index.html \ @probo/emails @@ -72,8 +73,9 @@ PRB_SRC= cmd/prb/main.go PROBOD_BOOTSTRAP_BIN= bin/probod-bootstrap PROBOD_BOOTSTRAP_SRC= cmd/probod-bootstrap/main.go -ifndef SKIP_APPS -PROBOD_BIN_EXTRA_DEPS += \ +ifdef WITH_APPS +GENERATED += relay +EMBEDDED += \ @probo/console \ @probo/trust endif @@ -91,7 +93,7 @@ lint-go: vet go-fmt go-fix go-lint lint-js: npm-lint .PHONY: vet -vet: generate apps/console/dist/index.html apps/trust/dist/index.html @probo/emails +vet: generate embed $(GO_VET) ./... .PHONY: npm-lint @@ -108,7 +110,7 @@ go-fmt: fi .PHONY: go-fix -go-fix: generate apps/console/dist/index.html apps/trust/dist/index.html @probo/emails +go-fix: generate embed @output="$$($(GO_BASE) fix -diff -omitzero=false ./apps/... ./cmd/... ./packages/... ./pkg/... ./e2e/...)"; \ if [ -n "$$output" ]; then \ echo "error: 'go fix' suggests changes; please apply them"; \ @@ -239,15 +241,15 @@ docker-build: $(DOCKER_BUILD) --tag $(DOCKER_IMAGE_NAME):$(DOCKER_TAG_NAME) --file Dockerfile . .PHONY: $(PROBOD_BIN) -$(PROBOD_BIN): $(PROBOD_BIN_DEPS) $(PROBOD_BIN_EXTRA_DEPS) +$(PROBOD_BIN): generate embed $(GO_BUILD) $(PROBOD_LDFLAGS) -o $(PROBOD_BIN) $(PROBOD_SRC) .PHONY: bin/prb bin/prb: $(GO_BUILD) $(PRB_LDFLAGS) -o $(PRB_BIN) $(PRB_SRC) -.PHONY: bin/probod-bootstrap -bin/probod-bootstrap: +.PHONY: $(PROBOD_BOOTSTRAP_BIN) +$(PROBOD_BOOTSTRAP_BIN): $(GO_BUILD) $(PROBOD_BOOTSTRAP_LDFLAGS) -o $(PROBOD_BOOTSTRAP_BIN) $(PROBOD_BOOTSTRAP_SRC) .PHONY: @probo/emails @@ -291,14 +293,10 @@ pkg/server/api/trust/v1/schema.graphql: pkg/server/api/trust/v1/graphql $(TRUST_ $(NPM) --workspace $@ run build .PHONY: generate -generate: pkg/server/api/connect/v1/schema/schema.go \ - pkg/server/api/connect/v1/types/types.go \ - pkg/server/api/console/v1/schema/schema.go \ - pkg/server/api/console/v1/types/types.go \ - pkg/server/api/trust/v1/schema/schema.go \ - pkg/server/api/trust/v1/types/types.go \ - pkg/server/api/mcp/v1/server/server.go \ - pkg/server/api/mcp/v1/types/types.go +generate: $(GENERATED) + +.PHONY: embed +embed: $(EMBEDDED) pkg/server/api/connect/v1/schema/schema.go \ pkg/server/api/connect/v1/types/types.go: pkg/server/api/connect/v1/gqlgen.yaml pkg/server/api/connect/v1/graphql $(CONNECT_GQL) @@ -398,6 +396,10 @@ sandbox-create: ## Create a Lima sandbox VM for this worktree sandbox-start: ## Start the Lima sandbox VM ./contrib/lima/sandbox.sh start +.PHONY: sandbox-boot-logs +sandbox-boot-logs: ## Show the Lima sandbox VM boot logs + ./contrib/lima/sandbox.sh boot-logs + .PHONY: sandbox-stop sandbox-stop: ## Stop (hibernate) the Lima sandbox VM ./contrib/lima/sandbox.sh stop