#!/usr/bin/env bash # Baut die Release-Binaries für Linux (amd64 + arm64) samt SHA256SUMS. # # deploy/build.sh # Version aus `git describe` # VERSION=v0.1.0 deploy/build.sh # # Ausgabe: dist//sultan_linux_{amd64,arm64} und dist//SHA256SUMS set -euo pipefail cd "$(dirname "$0")/.." VERSION="${VERSION:-$(git describe --tags --always --dirty)}" ARCHS="${ARCHS:-amd64 arm64}" OUT="dist/${VERSION}" rm -rf "$OUT" mkdir -p "$OUT" for arch in $ARCHS; do echo "==> linux/${arch} (${VERSION})" CGO_ENABLED=0 GOOS=linux GOARCH="$arch" \ go build -trimpath -ldflags "-s -w -X sultan/pkg/cli.Version=${VERSION}" \ -o "${OUT}/sultan_linux_${arch}" . done (cd "$OUT" && sha256sum sultan_linux_* > SHA256SUMS) echo "==> fertig: ${OUT}" cat "${OUT}/SHA256SUMS"