Skip to content

ci(publish-binary): rolling develop build covers all 6 linux arches (386, riscv64, armv6) - #4087

Merged
0pcom merged 1 commit into
skycoin:developfrom
0pcom:ci/develop-binary-all-linux-arches
Aug 22, 2026
Merged

0pcom merged 1 commit into
skycoin:developfrom
0pcom:ci/develop-binary-all-linux-arches

Conversation

@0pcom

@0pcom 0pcom commented Aug 22, 2026

Copy link
Copy Markdown
Collaborator

The binary-develop/binary-master auto-update channels pull the rolling <branch>-latest archives from publish-binary.yml, which built only amd64/arm64/arm — missing 386, riscv64, and armv6 that tagged releases (release.yml) produce. Worse, the single arm archive was GOARM=7 while release.yml names GOARM=6 arm and GOARM=7 armhf, so an armv6 host mapping to arm would get an unrunnable GOARM=7 binary.

This builds the same six archives release.yml does, with matching names + GOARM (arm=GOARM6, armhf=GOARM7, + 386, riscv64). CGO_ENABLED=0 keeps it a plain cross-compile (no musl toolchain needed for the pure-Go rolling build). Now every fleet arch can auto-update from develop.

The rolling develop/master binary archives (consumed by the binary-develop /
binary-master auto-update channels) built only amd64/arm64/arm — and that
single 'arm' archive was GOARM=7, while release.yml names GOARM=6 'arm' and
GOARM=7 'armhf'. So the develop channel was missing 386, riscv64 and armv6
entirely, and an armv6 host mapping to the 'arm' archive would download a
GOARM=7 binary that can't run.

Build the same six archives release.yml does, with matching names + GOARM
(arm=GOARM6, armhf=GOARM7, plus 386 and riscv64). CGO_ENABLED=0 keeps it a
plain cross-compile — no per-arch musl toolchain needed for the pure-Go
rolling build.
@0pcom
0pcom force-pushed the ci/develop-binary-all-linux-arches branch from e799d1d to 5043cec Compare August 22, 2026 23:55
@0pcom 0pcom closed this Aug 22, 2026
@0pcom
0pcom deleted the ci/develop-binary-all-linux-arches branch August 22, 2026 23:55
@0pcom
0pcom restored the ci/develop-binary-all-linux-arches branch August 22, 2026 23:56
@0pcom 0pcom reopened this Aug 22, 2026
@0pcom
0pcom merged commit 5c00790 into skycoin:develop Aug 22, 2026
20 of 28 checks passed
@0pcom
0pcom deleted the ci/develop-binary-all-linux-arches branch August 22, 2026 23:56
0pcom added a commit that referenced this pull request Aug 23, 2026
…d not found) (#4110)

#4087's all-arches build_arch put a conditional ${goarm:+GOARM="..."} expansion
in the env-assignment prefix. Bash only recognizes assignment prefixes for
LITERAL words at parse time, so the expanded GOARM=... (and then the trailing
CGO_ENABLED=0) were treated as COMMANDS — "CGO_ENABLED=0: command not found",
exit 127 — breaking the rolling develop-latest binary the fleet's binary
auto-updater pulls.

Split into an explicit if so every env prefix is literal for both the GOARM
arches (arm/armhf) and the no-GOARM arches (amd64/arm64/386/riscv64). Verified
the shell logic locally: the old form reproduces the exact error; the new form
sets the correct GOOS/GOARCH/GOARM/CGO_ENABLED for every arch.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant