From cf3bf54bf86ff0b44cc9f3caacd027b5fa3ff041 Mon Sep 17 00:00:00 2001 From: jaakko Date: Mon, 13 Apr 2026 21:21:48 +0300 Subject: [PATCH] =?UTF-8?q?kipina-node:=20automaattinen=20versiop=C3=A4ivi?= =?UTF-8?q?tys=20build-hashilla?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Poistettu interaktiivinen "haluatko korvata?" -kysely. Tilalle: - Bootstrap hakee .build-hash palvelimelta joka käynnistyksellä - Vertaa paikalliseen kipina-node-bin.hash - Lataa uuden automaattisesti jos hash eroaa - Näyttää version käynnistyksen yhteydessä Ei enää tilannetta jossa vanha binääri jää vahingossa ajoon. --- .../frontend/public/download/.build-hash | 2 +- network-poc/frontend/public/kipina-node | 30 +++++++++++-------- network-poc/kipina-node | 30 +++++++++++-------- 3 files changed, 35 insertions(+), 27 deletions(-) mode change 100755 => 100644 network-poc/kipina-node diff --git a/network-poc/frontend/public/download/.build-hash b/network-poc/frontend/public/download/.build-hash index d2cfa46..0eba386 100644 --- a/network-poc/frontend/public/download/.build-hash +++ b/network-poc/frontend/public/download/.build-hash @@ -1 +1 @@ -0f3881a +56f21a9 diff --git a/network-poc/frontend/public/kipina-node b/network-poc/frontend/public/kipina-node index 31b38db..79e328f 100644 --- a/network-poc/frontend/public/kipina-node +++ b/network-poc/frontend/public/kipina-node @@ -99,23 +99,27 @@ if [ -n "$KIPINA_MODEL" ]; then echo " Malli: $KIPINA_MODEL (Ympäristömuuttujasta)" fi -# Lataa binääri +# Binäärin automaattinen päivitys — vertaa build-hashia palvelimeen BIN_PATH="./kipina-node-bin" -if [ -f "$BIN_PATH" ]; then - echo "" - read -p " Löydettiin vanha kipina-node-bin lokaalisti. Haluatko poistaa sen ja ladata uusimman version? [Y/n] " -r DEL_CHOICE - if [[ "$DEL_CHOICE" =~ ^[Nn]$ ]]; then - echo " ✓ Käytetään lokaalia versiota." - else - rm -f "$BIN_PATH" - echo " ✓ Vanha binääri poistettu ja korvataan uudella." - fi -fi +HASH_PATH="./kipina-node-bin.hash" -if [ ! -f "$BIN_PATH" ]; then - echo " Ladataan tuorein $BINARY..." +REMOTE_HASH=$(curl -sSL "$BASE_URL/.build-hash?v=$(date +%s)" 2>/dev/null | tr -d '[:space:]') +LOCAL_HASH="" +[ -f "$HASH_PATH" ] && LOCAL_HASH=$(cat "$HASH_PATH" | tr -d '[:space:]') + +if [ -f "$BIN_PATH" ] && [ -n "$REMOTE_HASH" ] && [ "$REMOTE_HASH" = "$LOCAL_HASH" ]; then + echo " ✓ Binääri ajan tasalla (versio: $LOCAL_HASH)" +else + if [ -f "$BIN_PATH" ]; then + echo " ↻ Uusi versio saatavilla ($LOCAL_HASH → $REMOTE_HASH)" + else + echo " Ladataan $BINARY..." + fi + rm -f "$BIN_PATH" curl -sSL "$BASE_URL/$BINARY?v=$(date +%s)" -o "$BIN_PATH" chmod +x "$BIN_PATH" + echo "$REMOTE_HASH" > "$HASH_PATH" + echo " ✓ Päivitetty versioon $REMOTE_HASH" fi echo "" diff --git a/network-poc/kipina-node b/network-poc/kipina-node old mode 100755 new mode 100644 index 31b38db..79e328f --- a/network-poc/kipina-node +++ b/network-poc/kipina-node @@ -99,23 +99,27 @@ if [ -n "$KIPINA_MODEL" ]; then echo " Malli: $KIPINA_MODEL (Ympäristömuuttujasta)" fi -# Lataa binääri +# Binäärin automaattinen päivitys — vertaa build-hashia palvelimeen BIN_PATH="./kipina-node-bin" -if [ -f "$BIN_PATH" ]; then - echo "" - read -p " Löydettiin vanha kipina-node-bin lokaalisti. Haluatko poistaa sen ja ladata uusimman version? [Y/n] " -r DEL_CHOICE - if [[ "$DEL_CHOICE" =~ ^[Nn]$ ]]; then - echo " ✓ Käytetään lokaalia versiota." - else - rm -f "$BIN_PATH" - echo " ✓ Vanha binääri poistettu ja korvataan uudella." - fi -fi +HASH_PATH="./kipina-node-bin.hash" -if [ ! -f "$BIN_PATH" ]; then - echo " Ladataan tuorein $BINARY..." +REMOTE_HASH=$(curl -sSL "$BASE_URL/.build-hash?v=$(date +%s)" 2>/dev/null | tr -d '[:space:]') +LOCAL_HASH="" +[ -f "$HASH_PATH" ] && LOCAL_HASH=$(cat "$HASH_PATH" | tr -d '[:space:]') + +if [ -f "$BIN_PATH" ] && [ -n "$REMOTE_HASH" ] && [ "$REMOTE_HASH" = "$LOCAL_HASH" ]; then + echo " ✓ Binääri ajan tasalla (versio: $LOCAL_HASH)" +else + if [ -f "$BIN_PATH" ]; then + echo " ↻ Uusi versio saatavilla ($LOCAL_HASH → $REMOTE_HASH)" + else + echo " Ladataan $BINARY..." + fi + rm -f "$BIN_PATH" curl -sSL "$BASE_URL/$BINARY?v=$(date +%s)" -o "$BIN_PATH" chmod +x "$BIN_PATH" + echo "$REMOTE_HASH" > "$HASH_PATH" + echo " ✓ Päivitetty versioon $REMOTE_HASH" fi echo ""