From a229cbde8e68329e371bf83432a88da278254b79 Mon Sep 17 00:00:00 2001 From: viruslox <12681439+viruslox@users.noreply.github.com> Date: Sun, 6 Sep 2026 12:54:27 +0000 Subject: [PATCH] build: Fix CI workflow failure by disabling CGO - Set `CGO_ENABLED: "0"` in `.github/workflows/ci.yml` top-level env to resolve missing C-compiler/library dependencies in the GitHub runner. - Explicitly prepend `CGO_ENABLED=0` to all `go build` commands in `build.sh` to ensure consistency between local builds and CI for our CGO-free architecture (e.g., using `modernc.org/sqlite`). --- .github/workflows/ci.yml | 1 + build.sh | 12 ++++++------ 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 0ec1913..724318f 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -8,6 +8,7 @@ on: env: FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: true + CGO_ENABLED: "0" jobs: build: diff --git a/build.sh b/build.sh index b227fcc..646fc5c 100755 --- a/build.sh +++ b/build.sh @@ -26,18 +26,18 @@ mkdir -p "${BUILD_DIR}" # Build for AMD64 echo "Compiling for Linux AMD64..." -GOOS=linux GOARCH=amd64 go build -buildmode=pie -ldflags="${LDFLAGS}" -o "${BUILD_DIR}/${APP_NAME}_amd64" ./cmd/client || echo "Warning: go command failed, this is just a placeholder build script." -GOOS=linux GOARCH=amd64 go build -buildmode=pie -ldflags="${LDFLAGS}" -o "${BUILD_DIR}/${APP_SRV_NAME}_amd64" ./cmd/server || echo "Warning: go command failed, this is just a placeholder build script." +CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -buildmode=pie -ldflags="${LDFLAGS}" -o "${BUILD_DIR}/${APP_NAME}_amd64" ./cmd/client || echo "Warning: go command failed, this is just a placeholder build script." +CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -buildmode=pie -ldflags="${LDFLAGS}" -o "${BUILD_DIR}/${APP_SRV_NAME}_amd64" ./cmd/server || echo "Warning: go command failed, this is just a placeholder build script." # Build for ARM64 (e.g. Radxa Rock 5T, Orange Pi 5 Plus) echo "Compiling for Linux ARM64..." -GOOS=linux GOARCH=arm64 go build -buildmode=pie -ldflags="${LDFLAGS}" -o "${BUILD_DIR}/${APP_NAME}_arm64" ./cmd/client || echo "Warning: go command failed, this is just a placeholder build script." -GOOS=linux GOARCH=arm64 go build -buildmode=pie -ldflags="${LDFLAGS}" -o "${BUILD_DIR}/${APP_SRV_NAME}_arm64" ./cmd/server || echo "Warning: go command failed, this is just a placeholder build script." +CGO_ENABLED=0 GOOS=linux GOARCH=arm64 go build -buildmode=pie -ldflags="${LDFLAGS}" -o "${BUILD_DIR}/${APP_NAME}_arm64" ./cmd/client || echo "Warning: go command failed, this is just a placeholder build script." +CGO_ENABLED=0 GOOS=linux GOARCH=arm64 go build -buildmode=pie -ldflags="${LDFLAGS}" -o "${BUILD_DIR}/${APP_SRV_NAME}_arm64" ./cmd/server || echo "Warning: go command failed, this is just a placeholder build script." echo "Compiling frontend for Linux AMD64..." -GOOS=linux GOARCH=amd64 go build -buildmode=pie -ldflags="${LDFLAGS}" -o "${BUILD_DIR}/vlx_frontend_amd64" ./cmd/frontend || echo "Warning: frontend go command failed." +CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -buildmode=pie -ldflags="${LDFLAGS}" -o "${BUILD_DIR}/vlx_frontend_amd64" ./cmd/frontend || echo "Warning: frontend go command failed." echo "Compiling frontend for Linux ARM64..." -GOOS=linux GOARCH=arm64 go build -buildmode=pie -ldflags="${LDFLAGS}" -o "${BUILD_DIR}/vlx_frontend_arm64" ./cmd/frontend || echo "Warning: frontend go command failed." +CGO_ENABLED=0 GOOS=linux GOARCH=arm64 go build -buildmode=pie -ldflags="${LDFLAGS}" -o "${BUILD_DIR}/vlx_frontend_arm64" ./cmd/frontend || echo "Warning: frontend go command failed." echo "Build complete! Binaries are located in the '${BUILD_DIR}' directory."