What's Changed
• Stamp release version into the binary from the git tag by @backguynn in #1100
• ebpf: bump submodule to restore SCTP closed->EST recovery by @backguynn in #1101
• Check release tags before building, and only gate release publishes by @backguynn in #1102
• cicd: check wRR distribution instead of exact response order by @backguynn in #1103
Fixes
SCTP closed→EST recovery, lost in v0.9.8.7, is restored. The fix shipped in
v0.9.8.6 but disappeared from v0.9.8.7: the loxilb-ebpf branch carrying it was
never merged into that repo's main, and the submodule bump for sockproxy PROXY
protocol v2 moved the pointer onto the main line, which did not contain the
work. Nothing reported the loss. Users running SCTP load balancing on v0.9.8.7
should upgrade. (loxilb-io/loxilb-ebpf#90, #1101)
Binaries report their own version correctly. common.Version was a const,
so it could not be stamped at link time and was only ever bumped by hand — which
was missed for v0.9.8.7, whose binaries identify themselves as 0.9.8.6-beta.
The git tag is now the source of truth for both loxilb and loxicmd, stamped at
build time, and the packaging pipeline refuses to publish an artifact whose
binary disagrees with the tag. loxicmd had drifted further still, reporting
0.9.8.3-beta in every release since v0.9.8.3. (#1100, loxilb-io/loxicmd#44)
Note that release binaries now report a plain version (0.9.8.8) rather than a
-beta suffixed one. A build from source with no release tag reports
0.9.8-dev.
Release engineering
The packaging workflow now verifies, before it starts building, that the release
tag exists in loxilb, loxilb-ebpf and loxicmd alike and that the loxilb-ebpf tag
names the commit the loxilb tag pins as its submodule — the packaging build
checks out the tag rather than following the pointer, so the two drifting apart
would silently ship untested eBPF code. These checks gate only runs that publish
a versioned release; manual artifact-only builds are unaffected. (#1102)
The wRR CI scenarios now assert the share of traffic each endpoint receives
rather than the exact order responses arrive in. They had been failing since the
weight expansion table shrank from 32 to 16 slots — a change that altered the
interleaving but not the distribution. (#1103)
Component versions
| component | version |
|---|---|
| loxilb | v0.9.8.8 |
| loxilb-ebpf | v0.9.8.8 |
| loxicmd | v0.9.8.8 |
Full Changelog: v0.9.8.7...v0.9.8.8