feat: publish verifiable proxyctl v1

This commit is contained in:
proxyctl coordinator
2026-07-17 09:54:08 +08:00
parent 5ec2b1dae1
commit 2b161e86e6
11 changed files with 536 additions and 28 deletions
+39
View File
@@ -0,0 +1,39 @@
#!/bin/sh
set -eu
repo=$(CDPATH= cd -- "$(dirname "$0")/.." && pwd)
out=${1:-"$repo/dist"}
: "${VERSION:?set VERSION to the release version, for example v1.0.0}"
case $VERSION in
*[!A-Za-z0-9._+-]*|'')
echo "VERSION contains unsupported characters: $VERSION" >&2
exit 2
;;
esac
mkdir -p "$out"
out=$(CDPATH= cd -- "$out" && pwd)
rm -f "$out/proxyctl-linux-amd64" "$out/proxyctl-linux-arm64" "$out/SHA256SUMS"
build() {
arch=$1
output="$out/proxyctl-linux-$arch"
(
cd "$repo"
CGO_ENABLED=0 GOOS=linux GOARCH="$arch" \
go build -mod=readonly -buildvcs=false -trimpath \
-ldflags="-s -w -X main.version=$VERSION" \
-o "$output" ./cmd/proxyctl
)
}
umask 022
build amd64
build arm64
(
cd "$out"
sha256sum proxyctl-linux-amd64 proxyctl-linux-arm64 > SHA256SUMS
)
printf 'built Linux amd64 and arm64 binaries in %s\n' "$out"