Add proboctl core skeleton and build system

Introduce the proboctl CLI entry point, root command, version,
completion, iostreams, shared cmdutil helpers (flags, table, JSON,
time formatting), API client with pagination, config management,
goreleaser configuration, and build system integration.

Signed-off-by: Bryan Frimin <bryan@getprobo.com>
This commit is contained in:
Bryan Frimin
2026-03-14 23:34:22 +01:00
parent 0b7c0e0806
commit 6919b9372a
18 changed files with 1286 additions and 4 deletions

View File

@@ -46,6 +46,9 @@ PROBOD_BIN_EXTRA_DEPS=
PROBOD_BIN= bin/probod
PROBOD_SRC= cmd/probod/main.go
PROBOCTL_BIN= bin/proboctl
PROBOCTL_SRC= cmd/proboctl/main.go
ifndef SKIP_APPS
PROBOD_BIN_EXTRA_DEPS += \
@probo/console \
@@ -119,7 +122,7 @@ coverage-combined: coverage-report test-e2e-coverage ## Generate combined covera
$(GO) tool cover -html=coverage-combined.out -o=coverage-combined.html
.PHONY: build
build: bin/probod
build: bin/probod bin/proboctl
.PHONY: sbom-docker
sbom-docker: docker-build
@@ -176,6 +179,10 @@ bin/probod: pkg/server/api/connect/v1/schema/schema.go \
@probo/emails
$(GO_BUILD) -o $(PROBOD_BIN) $(PROBOD_SRC)
.PHONY: bin/proboctl
bin/proboctl:
$(GO_BUILD) -o $(PROBOCTL_BIN) $(PROBOCTL_SRC)
.PHONY: @probo/emails
@probo/emails:
$(NPM) --workspace $@ run build