Fixed update

pull/6/head
Dominik Dzienia 8 months ago
parent 8b9df0f7e6
commit 58d45c9f8c

@ -1081,7 +1081,7 @@ extract_version() {
} }
read_or_default() { read_or_default() {
if [ -f $1 ]; then if [ -f "$1" ]; then
cat "$1" cat "$1"
else else
if [ $# -eq 2 ]; then if [ $# -eq 2 ]; then
@ -1104,20 +1104,20 @@ download_updates() {
download_if_needed() { download_if_needed() {
local lastCheck=$(read_or_default "$UPDATES_DIR/timestamp") local lastCheck=$(read_or_default "$UPDATES_DIR/timestamp")
local lastDownload=$(read_or_default "$UPDATES_DIR/downloaded" "")
local timestampNow=$(date +%s) local timestampNow=$(date +%s)
local updateCheck=$UPDATE_CHECK local updateCheck=$UPDATE_CHECK
if (((timestampNow - lastCheck) > updateCheck)) || [ $# -eq 1 ] || (( forceUpdateCheck == 1 )); then if (((timestampNow - lastCheck) > updateCheck)) || [ "$lastDownload" == "" ] || ((forceUpdateCheck == 1)); then
echo "$timestampNow" >"$UPDATES_DIR/timestamp" echo "$timestampNow" >"$UPDATES_DIR/timestamp"
ohai "Checking if new version is available..." ohai "Checking if new version is available..."
local onlineUpdated="$(curl -fsSL "https://gitea.dzienia.pl/shared/mikrus-installer/raw/branch/$UPDATE_CHANNEL/updated")" local onlineUpdated="$(curl -fsSL "https://gitea.dzienia.pl/shared/mikrus-installer/raw/branch/$UPDATE_CHANNEL/updated")"
local lastDownload=$(read_or_default "$UPDATES_DIR/downloaded") local lastDownload=$(read_or_default "$UPDATES_DIR/downloaded")
if [ "$onlineUpdated" == "$lastDownload" ] && (( forceUpdateCheck == 0 )); then if [ "$onlineUpdated" == "$lastDownload" ] && ((forceUpdateCheck == 0)); then
msgok "Latest update already downloaded" msgok "Latest update already downloaded"
else else
echo "$onlineUpdated" >"$UPDATES_DIR/downloaded" echo "$onlineUpdated" >"$UPDATES_DIR/downloaded"
download_updates download_updates
fi fi
else else
msgok "Too soon to download update, skipping..." msgok "Too soon to download update, skipping..."
fi fi
@ -1139,7 +1139,7 @@ update_background_check() {
echo "✨ Na Twoim serwerze mikr.us z Nightscoutem można zaktualizować narzędzie nightscout-tool!" echo "✨ Na Twoim serwerze mikr.us z Nightscoutem można zaktualizować narzędzie nightscout-tool!"
echo " " echo " "
echo "🐕 Watchdog wykrył że dostępna jest aktualizacja nightscout-tool," echo "🐕 Watchdog wykrył że dostępna jest aktualizacja nightscout-tool,"
echo "a u Ciebie zainstalowana jest jeszcze starsza wersja." echo "a u Ciebie zainstalowana jest jeszcze starsza wersja."
echo " " echo " "
echo "Aby zaktualizować narzędzie:" echo "Aby zaktualizować narzędzie:"
echo " " echo " "
@ -1151,7 +1151,7 @@ update_background_check() {
echo " " echo " "
echo "3. Potwierdź naciskając przycisk:" echo "3. Potwierdź naciskając przycisk:"
echo " 【 Aktualizacja 】" echo " 【 Aktualizacja 】"
echo " " echo " "
} | pusher "✨_Na_Twoim_serwerze_Nightscout_dostępna_jest_aktualizacja" } | pusher "✨_Na_Twoim_serwerze_Nightscout_dostępna_jest_aktualizacja"
fi fi
fi fi
@ -1164,7 +1164,7 @@ update_if_needed() {
local lastDownload=$(read_or_default "$UPDATES_DIR/downloaded" "???") local lastDownload=$(read_or_default "$UPDATES_DIR/downloaded" "???")
local updateInstalled=$(read_or_default "$UPDATES_DIR/updated" "???") local updateInstalled=$(read_or_default "$UPDATES_DIR/updated" "???")
if [ "$lastDownload" == "$updateInstalled" ] && (( forceUpdateCheck == 0 )) && [ $# -eq 0 ]; then if [ "$lastDownload" == "$updateInstalled" ] && ((forceUpdateCheck == 0)) && [ $# -eq 0 ]; then
msgok "Scripts and config files are up to date" msgok "Scripts and config files are up to date"
else else
@ -1211,7 +1211,7 @@ update_if_needed() {
if [ "$changed" -eq 0 ]; then if [ "$changed" -eq 0 ]; then
if [ $# -eq 1 ]; then if [ $# -eq 1 ]; then
msgok "Scripts and config files are up to date" msgok "Scripts and config files are up to date"
okdlg "Aktualizacja skryptów" "$1" okdlg "Aktualizacja skryptów" "$1"
fi fi
else else
@ -1220,10 +1220,10 @@ update_if_needed() {
okTxt="${TL}${uni_warn} Aktualizacja zrestartuje i zaktualizuje kontenery ${uni_warn}" okTxt="${TL}${uni_warn} Aktualizacja zrestartuje i zaktualizuje kontenery ${uni_warn}"
fi fi
local versionMsg="${TL}Build: ${updateInstalled}" local versionMsg="${TL}Build: ${updateInstalled}"
if [ ! "$lastDownload" == "$updateInstalled" ]; then if [ ! "$lastDownload" == "$updateInstalled" ]; then
versionMsg="$(pad_multiline "${TL}Masz build: ${updateInstalled}${NL} Dostępny: ${lastDownload}")" versionMsg="$(pad_multiline "${TL}Masz build: ${updateInstalled}${NL} Dostępny: ${lastDownload}")"
fi fi
yesnodlg "Aktualizacja skryptów" "$uni_confirm_upd" "$uni_resign" \ yesnodlg "Aktualizacja skryptów" "$uni_confirm_upd" "$uni_resign" \
"Zalecana jest aktualizacja plików:${versionMsg}" \ "Zalecana jest aktualizacja plików:${versionMsg}" \
@ -1238,7 +1238,7 @@ update_if_needed() {
if ! [ $? -eq 1 ]; then if ! [ $? -eq 1 ]; then
clear_last_time "update_needed" clear_last_time "update_needed"
if [ "$redeploy" -gt 0 ]; then if [ "$redeploy" -gt 0 ]; then
docker_compose_down docker_compose_down
@ -2339,7 +2339,7 @@ gather_diagnostics() {
echo " domena : $domain" echo " domena : $domain"
echo " wersja nightscout : $ns_tag" echo " wersja nightscout : $ns_tag"
echo " wersja nightscout-tool : $SCRIPT_VERSION ($SCRIPT_BUILD_TIME) $UPDATE_CHANNEL" echo " wersja nightscout-tool : $SCRIPT_VERSION ($SCRIPT_BUILD_TIME) $UPDATE_CHANNEL"
echo " build : ${updateInstalled}" echo " build : ${updateInstalled}"
} >"$SUPPORT_LOG" } >"$SUPPORT_LOG"
ohai "Zbieranie statusu usług" ohai "Zbieranie statusu usług"
@ -2743,7 +2743,7 @@ watchdog_check() {
fi fi
free_space_check free_space_check
update_background_check update_background_check
local NS_STATUS=$(get_container_status_code 'ns-server') local NS_STATUS=$(get_container_status_code 'ns-server')
local DB_STATUS=$(get_container_status_code 'ns-database') local DB_STATUS=$(get_container_status_code 'ns-database')
@ -2880,7 +2880,7 @@ load_update_channel() {
startup_version() { startup_version() {
local updateInstalled=$(read_or_default "$UPDATES_DIR/updated" "???") local updateInstalled=$(read_or_default "$UPDATES_DIR/updated" "???")
msgnote "nightscout-tool version $SCRIPT_VERSION ($SCRIPT_BUILD_TIME)" msgnote "nightscout-tool version $SCRIPT_VERSION ($SCRIPT_BUILD_TIME)"
msgnote "build ${updateInstalled}" msgnote "build ${updateInstalled}"
msgnote "$uni_copyright 2023-2024 Dominik Dzienia" msgnote "$uni_copyright 2023-2024 Dominik Dzienia"
msgnote "Licensed under CC BY-NC-ND 4.0" msgnote "Licensed under CC BY-NC-ND 4.0"
} }
@ -2914,26 +2914,26 @@ parse_commandline_args() {
-d | --develop) -d | --develop)
warn "Switching to DEVELOP update channel" warn "Switching to DEVELOP update channel"
UPDATE_CHANNEL=develop UPDATE_CHANNEL=develop
forceUpdateCheck=1 forceUpdateCheck=1
echo "$UPDATE_CHANNEL" >"$UPDATE_CHANNEL_FILE" echo "$UPDATE_CHANNEL" >"$UPDATE_CHANNEL_FILE"
shift shift
;; ;;
-p | --production) -p | --production)
warn "Switching to PRODUCTION update channel" warn "Switching to PRODUCTION update channel"
UPDATE_CHANNEL=master UPDATE_CHANNEL=master
forceUpdateCheck=1 forceUpdateCheck=1
echo "$UPDATE_CHANNEL" >"$UPDATE_CHANNEL_FILE" echo "$UPDATE_CHANNEL" >"$UPDATE_CHANNEL_FILE"
shift shift
;; ;;
-u | --update) -u | --update)
warn "Forcing update check" warn "Forcing update check"
forceUpdateCheck=1 forceUpdateCheck=1
shift shift
;; ;;
-c | --channel) -c | --channel)
shift # The arg is next in position args shift # The arg is next in position args
UPDATE_CHANNEL_CANDIDATE=$1 UPDATE_CHANNEL_CANDIDATE=$1
forceUpdateCheck=1 forceUpdateCheck=1
[[ ! "$UPDATE_CHANNEL_CANDIDATE" =~ ^[a-z]{3,}$ ]] && { [[ ! "$UPDATE_CHANNEL_CANDIDATE" =~ ^[a-z]{3,}$ ]] && {
echo "Incorrect channel name provided: $UPDATE_CHANNEL_CANDIDATE" echo "Incorrect channel name provided: $UPDATE_CHANNEL_CANDIDATE"

@ -1065,7 +1065,7 @@ extract_version() {
} }
read_or_default() { read_or_default() {
if [ -f $1 ]; then if [ -f "$1" ]; then
cat "$1" cat "$1"
else else
if [ $# -eq 2 ]; then if [ $# -eq 2 ]; then
@ -1088,20 +1088,20 @@ download_updates() {
download_if_needed() { download_if_needed() {
local lastCheck=$(read_or_default "$UPDATES_DIR/timestamp") local lastCheck=$(read_or_default "$UPDATES_DIR/timestamp")
local lastDownload=$(read_or_default "$UPDATES_DIR/downloaded" "")
local timestampNow=$(date +%s) local timestampNow=$(date +%s)
local updateCheck=$UPDATE_CHECK local updateCheck=$UPDATE_CHECK
if (((timestampNow - lastCheck) > updateCheck)) || [ $# -eq 1 ] || (( forceUpdateCheck == 1 )); then if (((timestampNow - lastCheck) > updateCheck)) || [ "$lastDownload" == "" ] || ((forceUpdateCheck == 1)); then
echo "$timestampNow" >"$UPDATES_DIR/timestamp" echo "$timestampNow" >"$UPDATES_DIR/timestamp"
ohai "Checking if new version is available..." ohai "Checking if new version is available..."
local onlineUpdated="$(curl -fsSL "https://gitea.dzienia.pl/shared/mikrus-installer/raw/branch/$UPDATE_CHANNEL/updated")" local onlineUpdated="$(curl -fsSL "https://gitea.dzienia.pl/shared/mikrus-installer/raw/branch/$UPDATE_CHANNEL/updated")"
local lastDownload=$(read_or_default "$UPDATES_DIR/downloaded") local lastDownload=$(read_or_default "$UPDATES_DIR/downloaded")
if [ "$onlineUpdated" == "$lastDownload" ] && (( forceUpdateCheck == 0 )); then if [ "$onlineUpdated" == "$lastDownload" ] && ((forceUpdateCheck == 0)); then
msgok "Latest update already downloaded" msgok "Latest update already downloaded"
else else
echo "$onlineUpdated" >"$UPDATES_DIR/downloaded" echo "$onlineUpdated" >"$UPDATES_DIR/downloaded"
download_updates download_updates
fi fi
else else
msgok "Too soon to download update, skipping..." msgok "Too soon to download update, skipping..."
fi fi
@ -1123,7 +1123,7 @@ update_background_check() {
echo "✨ Na Twoim serwerze mikr.us z Nightscoutem można zaktualizować narzędzie nightscout-tool!" echo "✨ Na Twoim serwerze mikr.us z Nightscoutem można zaktualizować narzędzie nightscout-tool!"
echo " " echo " "
echo "🐕 Watchdog wykrył że dostępna jest aktualizacja nightscout-tool," echo "🐕 Watchdog wykrył że dostępna jest aktualizacja nightscout-tool,"
echo "a u Ciebie zainstalowana jest jeszcze starsza wersja." echo "a u Ciebie zainstalowana jest jeszcze starsza wersja."
echo " " echo " "
echo "Aby zaktualizować narzędzie:" echo "Aby zaktualizować narzędzie:"
echo " " echo " "
@ -1135,7 +1135,7 @@ update_background_check() {
echo " " echo " "
echo "3. Potwierdź naciskając przycisk:" echo "3. Potwierdź naciskając przycisk:"
echo " 【 Aktualizacja 】" echo " 【 Aktualizacja 】"
echo " " echo " "
} | pusher "✨_Na_Twoim_serwerze_Nightscout_dostępna_jest_aktualizacja" } | pusher "✨_Na_Twoim_serwerze_Nightscout_dostępna_jest_aktualizacja"
fi fi
fi fi
@ -1148,7 +1148,7 @@ update_if_needed() {
local lastDownload=$(read_or_default "$UPDATES_DIR/downloaded" "???") local lastDownload=$(read_or_default "$UPDATES_DIR/downloaded" "???")
local updateInstalled=$(read_or_default "$UPDATES_DIR/updated" "???") local updateInstalled=$(read_or_default "$UPDATES_DIR/updated" "???")
if [ "$lastDownload" == "$updateInstalled" ] && (( forceUpdateCheck == 0 )) && [ $# -eq 0 ]; then if [ "$lastDownload" == "$updateInstalled" ] && ((forceUpdateCheck == 0)) && [ $# -eq 0 ]; then
msgok "Scripts and config files are up to date" msgok "Scripts and config files are up to date"
else else
@ -1195,7 +1195,7 @@ update_if_needed() {
if [ "$changed" -eq 0 ]; then if [ "$changed" -eq 0 ]; then
if [ $# -eq 1 ]; then if [ $# -eq 1 ]; then
msgok "Scripts and config files are up to date" msgok "Scripts and config files are up to date"
okdlg "Aktualizacja skryptów" "$1" okdlg "Aktualizacja skryptów" "$1"
fi fi
else else
@ -1204,10 +1204,10 @@ update_if_needed() {
okTxt="${TL}${uni_warn} Aktualizacja zrestartuje i zaktualizuje kontenery ${uni_warn}" okTxt="${TL}${uni_warn} Aktualizacja zrestartuje i zaktualizuje kontenery ${uni_warn}"
fi fi
local versionMsg="${TL}Build: ${updateInstalled}" local versionMsg="${TL}Build: ${updateInstalled}"
if [ ! "$lastDownload" == "$updateInstalled" ]; then if [ ! "$lastDownload" == "$updateInstalled" ]; then
versionMsg="$(pad_multiline "${TL}Masz build: ${updateInstalled}${NL} Dostępny: ${lastDownload}")" versionMsg="$(pad_multiline "${TL}Masz build: ${updateInstalled}${NL} Dostępny: ${lastDownload}")"
fi fi
yesnodlg "Aktualizacja skryptów" "$uni_confirm_upd" "$uni_resign" \ yesnodlg "Aktualizacja skryptów" "$uni_confirm_upd" "$uni_resign" \
"Zalecana jest aktualizacja plików:${versionMsg}" \ "Zalecana jest aktualizacja plików:${versionMsg}" \
@ -1222,7 +1222,7 @@ update_if_needed() {
if ! [ $? -eq 1 ]; then if ! [ $? -eq 1 ]; then
clear_last_time "update_needed" clear_last_time "update_needed"
if [ "$redeploy" -gt 0 ]; then if [ "$redeploy" -gt 0 ]; then
docker_compose_down docker_compose_down
@ -2323,7 +2323,7 @@ gather_diagnostics() {
echo " domena : $domain" echo " domena : $domain"
echo " wersja nightscout : $ns_tag" echo " wersja nightscout : $ns_tag"
echo " wersja nightscout-tool : $SCRIPT_VERSION ($SCRIPT_BUILD_TIME) $UPDATE_CHANNEL" echo " wersja nightscout-tool : $SCRIPT_VERSION ($SCRIPT_BUILD_TIME) $UPDATE_CHANNEL"
echo " build : ${updateInstalled}" echo " build : ${updateInstalled}"
} >"$SUPPORT_LOG" } >"$SUPPORT_LOG"
ohai "Zbieranie statusu usług" ohai "Zbieranie statusu usług"
@ -2727,7 +2727,7 @@ watchdog_check() {
fi fi
free_space_check free_space_check
update_background_check update_background_check
local NS_STATUS=$(get_container_status_code 'ns-server') local NS_STATUS=$(get_container_status_code 'ns-server')
local DB_STATUS=$(get_container_status_code 'ns-database') local DB_STATUS=$(get_container_status_code 'ns-database')
@ -2864,7 +2864,7 @@ load_update_channel() {
startup_version() { startup_version() {
local updateInstalled=$(read_or_default "$UPDATES_DIR/updated" "???") local updateInstalled=$(read_or_default "$UPDATES_DIR/updated" "???")
msgnote "nightscout-tool version $SCRIPT_VERSION ($SCRIPT_BUILD_TIME)" msgnote "nightscout-tool version $SCRIPT_VERSION ($SCRIPT_BUILD_TIME)"
msgnote "build ${updateInstalled}" msgnote "build ${updateInstalled}"
msgnote "$uni_copyright 2023-2024 Dominik Dzienia" msgnote "$uni_copyright 2023-2024 Dominik Dzienia"
msgnote "Licensed under CC BY-NC-ND 4.0" msgnote "Licensed under CC BY-NC-ND 4.0"
} }
@ -2898,26 +2898,26 @@ parse_commandline_args() {
-d | --develop) -d | --develop)
warn "Switching to DEVELOP update channel" warn "Switching to DEVELOP update channel"
UPDATE_CHANNEL=develop UPDATE_CHANNEL=develop
forceUpdateCheck=1 forceUpdateCheck=1
echo "$UPDATE_CHANNEL" >"$UPDATE_CHANNEL_FILE" echo "$UPDATE_CHANNEL" >"$UPDATE_CHANNEL_FILE"
shift shift
;; ;;
-p | --production) -p | --production)
warn "Switching to PRODUCTION update channel" warn "Switching to PRODUCTION update channel"
UPDATE_CHANNEL=master UPDATE_CHANNEL=master
forceUpdateCheck=1 forceUpdateCheck=1
echo "$UPDATE_CHANNEL" >"$UPDATE_CHANNEL_FILE" echo "$UPDATE_CHANNEL" >"$UPDATE_CHANNEL_FILE"
shift shift
;; ;;
-u | --update) -u | --update)
warn "Forcing update check" warn "Forcing update check"
forceUpdateCheck=1 forceUpdateCheck=1
shift shift
;; ;;
-c | --channel) -c | --channel)
shift # The arg is next in position args shift # The arg is next in position args
UPDATE_CHANNEL_CANDIDATE=$1 UPDATE_CHANNEL_CANDIDATE=$1
forceUpdateCheck=1 forceUpdateCheck=1
[[ ! "$UPDATE_CHANNEL_CANDIDATE" =~ ^[a-z]{3,}$ ]] && { [[ ! "$UPDATE_CHANNEL_CANDIDATE" =~ ^[a-z]{3,}$ ]] && {
echo "Incorrect channel name provided: $UPDATE_CHANNEL_CANDIDATE" echo "Incorrect channel name provided: $UPDATE_CHANNEL_CANDIDATE"

@ -1 +1 @@
2024-10-25T12:32:17.951Z 2024-10-25T13:51:37.691Z
Loading…
Cancel
Save