From d99bb9960dac4b465559db92eeb285859160ce63 Mon Sep 17 00:00:00 2001 From: Teodor Calin Date: Wed, 8 Jul 2026 19:20:10 +0300 Subject: [PATCH] fix(publish): stop shipping a Go object archive as pilot-gateway MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Same fix as sdk-python#16 — the go-build fallback on the library-only gateway repo produced a non-executable ar archive named pilot-gateway. Co-Authored-By: Claude Fable 5 --- .github/workflows/publish.yml | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index dcfbd74..0a5ce5b 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -157,8 +157,14 @@ jobs: ( cd web4 && CGO_ENABLED=0 go build -ldflags "$LDFLAGS" -o "$OUT/pilot-daemon" ./cmd/daemon ) ( cd web4 && CGO_ENABLED=0 go build -ldflags "$LDFLAGS" -o "$OUT/pilotctl" ./cmd/pilotctl ) ( cd web4 && CGO_ENABLED=0 go build -ldflags "$LDFLAGS" -o "$OUT/pilot-updater" ./cmd/updater ) - ( cd gateway && go mod tidy && CGO_ENABLED=0 go build -ldflags "$LDFLAGS" -o "$OUT/pilot-gateway" ./cmd/gateway ) \ - || ( cd gateway && CGO_ENABLED=0 go build -ldflags "$LDFLAGS" -o "$OUT/pilot-gateway" . ) + # The gateway repo is a library (no ./cmd/gateway); the old fallback + # `go build .` shipped a Go object archive as "pilot-gateway". + # Build only when the cmd exists, skip cleanly otherwise. + if [ -d gateway/cmd/gateway ]; then + ( cd gateway && go mod tidy && CGO_ENABLED=0 go build -ldflags "$LDFLAGS" -o "$OUT/pilot-gateway" ./cmd/gateway ) + else + echo "gateway repo has no cmd/gateway — skipping pilot-gateway binary" + fi ( cd libpilot && CGO_ENABLED=1 go build -buildmode=c-shared -ldflags "-s -w" -o "$OUT/libpilot.$EXT" . ) if [ "$OS" = "darwin" ]; then