Fix: beta_ver wird jetzt immer per API abgerufen
This commit is contained in:
+10
-12
@@ -51,12 +51,14 @@ parse_args() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
get_local_version() {
|
get_local_version() {
|
||||||
local version_line
|
local version_output
|
||||||
if ! version_line=$(ollama --version 2>/dev/null); then
|
# stdout und stderr erfassen; einige Ollama-Versionen geben die
|
||||||
|
# Versionszeile auf stderr aus, das sonst verworfen wuerde.
|
||||||
|
if ! version_output=$(ollama --version 2>&1); then
|
||||||
return 0
|
return 0
|
||||||
fi
|
fi
|
||||||
|
|
||||||
printf '%s\n' "$version_line" | grep -oEm1 '[0-9]+\.[0-9]+\.[0-9]+[^[:space:]]*' || true
|
printf '%s\n' "$version_output" | grep -oEm1 '[0-9]+\.[0-9]+\.[0-9]+[^[:space:]]*' || true
|
||||||
}
|
}
|
||||||
|
|
||||||
# Helfer: GitHub-API abrufen und sicherstellen, dass die Antwort nicht leer ist.
|
# Helfer: GitHub-API abrufen und sicherstellen, dass die Antwort nicht leer ist.
|
||||||
@@ -182,25 +184,21 @@ main() {
|
|||||||
|
|
||||||
local_ver=$(get_local_version)
|
local_ver=$(get_local_version)
|
||||||
|
|
||||||
# Nur benötigte API-Daten abrufen.
|
# Immer Stable und Beta (neueste Release inkl. Pre-Releases) abrufen.
|
||||||
stable_ver=$(get_latest_version "$GITHUB_API/releases/latest")
|
stable_ver=$(get_latest_version "$GITHUB_API/releases/latest")
|
||||||
if [[ -z "$stable_ver" ]]; then
|
if [[ -z "$stable_ver" ]]; then
|
||||||
die "Ermittlung der aktuellen Stable-Version fehlgeschlagen."
|
die "Ermittlung der aktuellen Stable-Version fehlgeschlagen."
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ "$use_beta" == true ]]; then
|
beta_ver=$(get_latest_version "$GITHUB_API/releases?per_page=1")
|
||||||
beta_ver=$(get_latest_version "$GITHUB_API/releases?per_page=1")
|
if [[ -z "$beta_ver" ]]; then
|
||||||
if [[ -z "$beta_ver" ]]; then
|
die "Ermittlung der aktuellen Beta-Version fehlgeschlagen."
|
||||||
die "Ermittlung der aktuellen Beta-Version fehlgeschlagen."
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
beta_ver="$stable_ver"
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
printf 'Lokal: %s\n' "${local_ver:-(nicht installiert)}"
|
printf 'Lokal: %s\n' "${local_ver:-(nicht installiert)}"
|
||||||
printf 'Stable: %s\n' "$stable_ver"
|
printf 'Stable: %s\n' "$stable_ver"
|
||||||
|
|
||||||
if [[ "$use_beta" == true ]] && [[ "$(cmp_versions "$beta_ver" "$stable_ver")" == 1 ]]; then
|
if [[ "$(cmp_versions "$beta_ver" "$stable_ver")" == 1 ]]; then
|
||||||
printf 'Beta: %s\n' "$beta_ver"
|
printf 'Beta: %s\n' "$beta_ver"
|
||||||
else
|
else
|
||||||
printf 'Beta: keine neuere Beta verfuegbar\n'
|
printf 'Beta: keine neuere Beta verfuegbar\n'
|
||||||
|
|||||||
Reference in New Issue
Block a user