fix(ops): make server diagnostics release-safe
This commit is contained in:
+12
-1
@@ -4,6 +4,11 @@ export DOCKER_BUILDKIT=1
|
||||
|
||||
repository_root=$(cd "$(dirname "$0")/.." && pwd)
|
||||
output_directory="${THT_THT_OUTPUT_DIRECTORY:-$repository_root/dist/tht}"
|
||||
build_commit=$(git -C "$repository_root" rev-parse HEAD)
|
||||
build_time=$(git -C "$repository_root" show -s --format=%cI HEAD)
|
||||
if ! build_version=$(git -C "$repository_root" describe --tags --exact-match HEAD 2>/dev/null); then
|
||||
build_version=0.0.0-dev
|
||||
fi
|
||||
|
||||
usage() {
|
||||
cat <<'EOF'
|
||||
@@ -43,4 +48,10 @@ if [[ "$output_directory" != /* || "$output_directory" == / || "$output_director
|
||||
fi
|
||||
|
||||
mkdir -p "$output_directory"
|
||||
docker build --file "$repository_root/docker/tht.Dockerfile" --output "type=local,dest=$output_directory" "$repository_root"
|
||||
docker build \
|
||||
--build-arg "THT_VERSION=$build_version" \
|
||||
--build-arg "THT_COMMIT=$build_commit" \
|
||||
--build-arg "THT_BUILD_TIME=$build_time" \
|
||||
--file "$repository_root/docker/tht.Dockerfile" \
|
||||
--output "type=local,dest=$output_directory" \
|
||||
"$repository_root"
|
||||
|
||||
Regular → Executable
@@ -11,6 +11,8 @@ fail() {
|
||||
exit 1
|
||||
}
|
||||
|
||||
test -x "$installer" || fail "install-tht.sh must be executable for the documented invocation"
|
||||
|
||||
sha256() {
|
||||
if command -v sha256sum >/dev/null 2>&1; then
|
||||
sha256sum "$1" | awk '{print $1}'
|
||||
|
||||
@@ -22,7 +22,16 @@ printf '%s\n' "$manifest" | grep -Eq 'Platform:[[:space:]]+linux/arm64'
|
||||
|
||||
temporary_output=$(mktemp -d)
|
||||
trap 'rm -rf "$temporary_output"' EXIT HUP INT TERM
|
||||
docker build --file "$dockerfile" --output "type=local,dest=$temporary_output" "$repository_root" >/dev/null
|
||||
test_version='9.8.7-test'
|
||||
test_commit='0123456789abcdef0123456789abcdef01234567'
|
||||
test_build_time='2026-09-07T01:00:00+02:00'
|
||||
docker build \
|
||||
--build-arg "THT_VERSION=$test_version" \
|
||||
--build-arg "THT_COMMIT=$test_commit" \
|
||||
--build-arg "THT_BUILD_TIME=$test_build_time" \
|
||||
--file "$dockerfile" \
|
||||
--output "type=local,dest=$temporary_output" \
|
||||
"$repository_root" >/dev/null
|
||||
|
||||
test -s "$temporary_output/tht-windows-amd64.exe"
|
||||
test -s "$temporary_output/tht-darwin-amd64"
|
||||
@@ -30,4 +39,9 @@ test -s "$temporary_output/tht-darwin-arm64"
|
||||
test -s "$temporary_output/tht-linux-amd64"
|
||||
test -s "$temporary_output/tht-linux-arm64"
|
||||
|
||||
version_json=$($temporary_output/tht-linux-amd64 version --json)
|
||||
printf '%s\n' "$version_json" | grep -Fq '"version":"9.8.7-test"'
|
||||
printf '%s\n' "$version_json" | grep -Fq '"commit":"0123456789abcdef0123456789abcdef01234567"'
|
||||
printf '%s\n' "$version_json" | grep -Fq '"buildTime":"2026-09-07T01:00:00+02:00"'
|
||||
|
||||
echo "tht build contract passed."
|
||||
|
||||
Reference in New Issue
Block a user