ci: log console version and completion after asset download (#4910)

This commit is contained in:
Zhengchao An
2026-07-16 22:11:59 +08:00
committed by GitHub
parent 75c3403dcc
commit dc4b85eb2d
+10 -2
View File
@@ -289,6 +289,7 @@ jobs:
local console_url local console_url
local console_sha256 local console_sha256
local curl_auth_args=() local curl_auth_args=()
console_tag=""
if [[ "${{ matrix.platform }}" == "windows" ]]; then if [[ "${{ matrix.platform }}" == "windows" ]]; then
curl_bin="curl.exe" curl_bin="curl.exe"
@@ -311,7 +312,7 @@ jobs:
"$curl_bin" "${curl_auth_args[@]}" --fail -L "$console_api" \ "$curl_bin" "${curl_auth_args[@]}" --fail -L "$console_api" \
-o "$console_json" --retry 3 --retry-delay 5 --max-time 300 || return 1 -o "$console_json" --retry 3 --retry-delay 5 --max-time 300 || return 1
read -r console_url console_sha256 < <("$python_bin" - "$console_json" <<'PY' read -r console_tag console_url console_sha256 < <("$python_bin" - "$console_json" <<'PY'
import json import json
import re import re
import sys import sys
@@ -319,6 +320,8 @@ jobs:
with open(sys.argv[1], encoding="utf-8") as handle: with open(sys.argv[1], encoding="utf-8") as handle:
release = json.load(handle) release = json.load(handle)
tag = release.get("tag_name", "") or "unknown"
for asset in release.get("assets", []): for asset in release.get("assets", []):
name = asset.get("name", "") name = asset.get("name", "")
digest = asset.get("digest", "") digest = asset.get("digest", "")
@@ -327,7 +330,7 @@ jobs:
sha256 = digest.split(":", 1)[1] sha256 = digest.split(":", 1)[1]
if not re.fullmatch(r"[0-9a-fA-F]{64}", sha256): if not re.fullmatch(r"[0-9a-fA-F]{64}", sha256):
raise SystemExit(f"console zip asset has invalid sha256 digest: {sha256}") raise SystemExit(f"console zip asset has invalid sha256 digest: {sha256}")
sys.stdout.buffer.write(f"{url} {sha256}\n".encode("utf-8")) sys.stdout.buffer.write(f"{tag} {url} {sha256}\n".encode("utf-8"))
break break
else: else:
raise SystemExit("no console zip asset with sha256 digest found") raise SystemExit("no console zip asset with sha256 digest found")
@@ -339,6 +342,8 @@ jobs:
return 1 return 1
fi fi
echo "Console release: ${console_tag}"
echo "Downloading console asset: ${console_url}"
"$curl_bin" --fail -L "$console_url" -o console.zip --retry 3 --retry-delay 5 --max-time 300 || return 1 "$curl_bin" --fail -L "$console_url" -o console.zip --retry 3 --retry-delay 5 --max-time 300 || return 1
verify_sha256 "$console_sha256" console.zip || return 2 verify_sha256 "$console_sha256" console.zip || return 2
unzip -o console.zip -d ./rustfs/static || return 2 unzip -o console.zip -d ./rustfs/static || return 2
@@ -361,6 +366,9 @@ jobs:
exit 1 exit 1
fi fi
asset_count=$(find ./rustfs/static -type f | wc -l | tr -d '[:space:]')
echo "Console assets ready: version=${console_tag:-unknown}, ${asset_count} files extracted to ./rustfs/static"
- name: Build RustFS - name: Build RustFS
shell: bash shell: bash
run: | run: |