Simplify local release validation and publication
This commit is contained in:
@@ -5,7 +5,6 @@ repository_dir=$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")/.." && pwd)
|
||||
cd "$repository_dir"
|
||||
|
||||
baseline_toolchain=${CONFIGKIT_BASELINE_TOOLCHAIN:?set CONFIGKIT_BASELINE_TOOLCHAIN to a cached supported Go 1.25 patch release}
|
||||
newer_toolchain=${CONFIGKIT_NEWER_TOOLCHAIN:?set CONFIGKIT_NEWER_TOOLCHAIN to a cached newer supported Go toolchain}
|
||||
|
||||
run_go() {
|
||||
local toolchain=$1
|
||||
@@ -20,7 +19,6 @@ check_toolchain() {
|
||||
}
|
||||
|
||||
check_toolchain "$baseline_toolchain"
|
||||
check_toolchain "$newer_toolchain"
|
||||
bash -n scripts/release-check.sh
|
||||
|
||||
temporary_dir=$(mktemp -d)
|
||||
@@ -69,21 +67,13 @@ while IFS= read -r -d '' candidate_file; do
|
||||
esac
|
||||
done < <(git ls-files --cached --others --exclude-standard -z)
|
||||
|
||||
for toolchain in "$baseline_toolchain" "$newer_toolchain"; do
|
||||
run_go "$toolchain" test ./...
|
||||
run_go "$toolchain" vet ./...
|
||||
run_go "$toolchain" build ./...
|
||||
done
|
||||
|
||||
run_go "$newer_toolchain" test -race ./...
|
||||
run_go "$newer_toolchain" test . -run '^Example'
|
||||
run_go "$newer_toolchain" test ./examples/consumers
|
||||
run_go "$newer_toolchain" test . -run '^TestLocalDocumentationLinks$'
|
||||
run_go "$newer_toolchain" test . -run '^TestDependencyImportBoundary$'
|
||||
# Verbose output reports skipped cases without a separate evidence run.
|
||||
run_go "$baseline_toolchain" test -race -v ./...
|
||||
run_go "$baseline_toolchain" vet ./...
|
||||
|
||||
# Only release-validated targets gate publication; macOS is best-effort.
|
||||
for target in linux/amd64 linux/arm64; do
|
||||
target_os=${target%/*}
|
||||
target_arch=${target#*/}
|
||||
GOTOOLCHAIN="$newer_toolchain" GOPROXY=off CGO_ENABLED=0 GOOS="$target_os" GOARCH="$target_arch" go build ./...
|
||||
GOTOOLCHAIN="$baseline_toolchain" GOPROXY=off CGO_ENABLED=0 GOOS="$target_os" GOARCH="$target_arch" go build ./...
|
||||
done
|
||||
|
||||
Reference in New Issue
Block a user