@@ -50,11 +50,19 @@ jobs:
5050 test -f Scripts/update/apply.sh
5151 test -f Scripts/update/status.sh
5252 # Determine version from serverutils (robust)
53- ver=$(awk -F '"' '/^VERSION=/ {print $2; exit}' serverutils)
54- if [ -z "${ver:-}" ]; then echo "VERSION not found in serverutils" >&2; exit 1; fi
53+ base_ver=$(awk -F '"' '/^VERSION=/ {print $2; exit}' serverutils)
54+ if [ -z "${base_ver:-}" ]; then echo "VERSION not found in serverutils" >&2; exit 1; fi
55+ build_date=$(date -u +"%F")
56+ short_sha=$(git rev-parse --short HEAD)
57+ full_ver="${base_ver}+${build_date}.g${short_sha}"
58+ echo "Computed full version: $full_ver"
59+ # Stage build with VERSION baked in
60+ rm -rf build && mkdir -p build
61+ cp -a serverutils Scripts asset systemd config asciiart.ascii build/
62+ sed -i "s/^VERSION=\".*\"/VERSION=\"${full_ver}\"/" build/serverutils
5563 # Build versioned tarball with runner + scripts and assets
56- ver_tar="site/releases/solen-${ver }.tar.gz"
57- tar -czf "$ver_tar" serverutils Scripts asset systemd config asciiart.ascii
64+ ver_tar="site/releases/solen-${full_ver }.tar.gz"
65+ tar -czf "$ver_tar" -C build .
5866 # Verify tarball contains required libs (avoid SIGPIPE under pipefail)
5967 tmp_tar_list=$(mktemp)
6068 tar -tf "$ver_tar" > "$tmp_tar_list"
@@ -69,16 +77,19 @@ jobs:
6977 cp -f "$ver_tar" site/releases/solen-nightly.tar.gz
7078 cp -f "$ver_tar" site/releases/solen-latest.tar.gz
7179 # Checksums for each published filename
72- (cd site/releases && sha256sum "solen-${ver }.tar.gz" > "solen-${ver }.tar.gz.sha256")
80+ (cd site/releases && sha256sum "solen-${full_ver }.tar.gz" > "solen-${full_ver }.tar.gz.sha256")
7381 (cd site/releases && sha256sum solen-stable.tar.gz > solen-stable.tar.gz.sha256)
7482 (cd site/releases && sha256sum solen-rc.tar.gz > solen-rc.tar.gz.sha256)
7583 (cd site/releases && sha256sum solen-nightly.tar.gz > solen-nightly.tar.gz.sha256)
7684 (cd site/releases && sha256sum solen-latest.tar.gz > solen-latest.tar.gz.sha256)
7785 - name : Build channel manifests
7886 run : |
7987 set -euo pipefail
80- ver=$(awk -F '"' '/^VERSION=/ {print $2; exit}' serverutils)
81- test -n "$ver"
88+ base_ver=$(awk -F '"' '/^VERSION=/ {print $2; exit}' serverutils)
89+ test -n "$base_ver"
90+ build_date=$(date -u +"%F")
91+ short_sha=$(git rev-parse --short HEAD)
92+ ver="${base_ver}+${build_date}.g${short_sha}"
8293 sha_stable=$(awk '{print $1}' site/releases/solen-stable.tar.gz.sha256)
8394 sha_rc=$(awk '{print $1}' site/releases/solen-rc.tar.gz.sha256)
8495 sha_nightly=$(awk '{print $1}' site/releases/solen-nightly.tar.gz.sha256)
0 commit comments