mirror of
https://github.com/community-scripts/ProxmoxVE.git
synced 2026-03-21 17:33:01 +01:00
Compare commits
2 Commits
copilot/sc
...
refactor/t
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
dbf3fa6f1d | ||
|
|
876d14721d |
@@ -282,7 +282,7 @@ get_cached_version() {
|
|||||||
cat "/var/cache/app-versions/${app}_version.txt"
|
cat "/var/cache/app-versions/${app}_version.txt"
|
||||||
return 0
|
return 0
|
||||||
fi
|
fi
|
||||||
return 0
|
return 1
|
||||||
}
|
}
|
||||||
|
|
||||||
# ------------------------------------------------------------------------------
|
# ------------------------------------------------------------------------------
|
||||||
@@ -1100,8 +1100,9 @@ get_system_arch() {
|
|||||||
# ------------------------------------------------------------------------------
|
# ------------------------------------------------------------------------------
|
||||||
create_temp_dir() {
|
create_temp_dir() {
|
||||||
local tmp_dir=$(mktemp -d)
|
local tmp_dir=$(mktemp -d)
|
||||||
# Set trap to cleanup on EXIT, ERR, INT, TERM
|
# Callers should handle their own cleanup (rm -rf "$tmpdir")
|
||||||
trap "rm -rf '$tmp_dir'" EXIT ERR INT TERM
|
# Do NOT set trap here — it would overwrite global traps and only fire
|
||||||
|
# when create_temp_dir() itself returns, not the calling function
|
||||||
echo "$tmp_dir"
|
echo "$tmp_dir"
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -5351,26 +5352,9 @@ function setup_java() {
|
|||||||
"main"
|
"main"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Get currently installed version
|
# Get currently installed version (use dpkg-query to avoid column truncation)
|
||||||
local INSTALLED_VERSION=""
|
local INSTALLED_VERSION=""
|
||||||
if dpkg -l | grep -q "temurin-.*-jdk" 2>/dev/null; then
|
INSTALLED_VERSION=$(dpkg-query -W -f '${Package}\n' 2>/dev/null | grep -oP '^temurin-\K[0-9]+(?=-jdk$)' | head -n1 || echo "")
|
||||||
INSTALLED_VERSION=$(dpkg -l 2>/dev/null | awk '/temurin-.*-jdk/{print $2}' | grep -oP 'temurin-\K[0-9]+' | head -n1 || echo "")
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Validate INSTALLED_VERSION is not empty if JDK package found
|
|
||||||
local JDK_COUNT=0
|
|
||||||
JDK_COUNT=$(dpkg -l 2>/dev/null | grep -c "temurin-.*-jdk" || true)
|
|
||||||
if [[ -z "$INSTALLED_VERSION" && "${JDK_COUNT:-0}" -gt 0 ]]; then
|
|
||||||
msg_warn "Found Temurin JDK but cannot determine version - attempting reinstall"
|
|
||||||
# Try to get actual package name for purge
|
|
||||||
local OLD_PACKAGE
|
|
||||||
OLD_PACKAGE=$(dpkg -l 2>/dev/null | awk '/temurin-.*-jdk/{print $2}' | head -n1 || echo "")
|
|
||||||
if [[ -n "$OLD_PACKAGE" ]]; then
|
|
||||||
msg_info "Removing existing package: $OLD_PACKAGE"
|
|
||||||
$STD apt purge -y "$OLD_PACKAGE" || true
|
|
||||||
fi
|
|
||||||
INSTALLED_VERSION="" # Reset to trigger fresh install
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Scenario 1: Already at correct version
|
# Scenario 1: Already at correct version
|
||||||
if [[ "$INSTALLED_VERSION" == "$JAVA_VERSION" ]]; then
|
if [[ "$INSTALLED_VERSION" == "$JAVA_VERSION" ]]; then
|
||||||
@@ -7849,8 +7833,8 @@ function setup_uv() {
|
|||||||
local TMP_DIR=$(mktemp -d)
|
local TMP_DIR=$(mktemp -d)
|
||||||
local CACHED_VERSION
|
local CACHED_VERSION
|
||||||
|
|
||||||
# trap for TMP Cleanup
|
# trap for TMP Cleanup (RETURN instead of EXIT to avoid overwriting global traps)
|
||||||
trap "rm -rf '$TMP_DIR'" EXIT
|
trap "rm -rf '$TMP_DIR'" RETURN
|
||||||
|
|
||||||
CACHED_VERSION=$(get_cached_version "uv")
|
CACHED_VERSION=$(get_cached_version "uv")
|
||||||
|
|
||||||
@@ -8120,6 +8104,8 @@ function setup_docker() {
|
|||||||
local docker_installed=false
|
local docker_installed=false
|
||||||
local portainer_installed=false
|
local portainer_installed=false
|
||||||
local USE_DOCKER_REPO="${USE_DOCKER_REPO:-false}"
|
local USE_DOCKER_REPO="${USE_DOCKER_REPO:-false}"
|
||||||
|
local DOCKER_CURRENT_VERSION=""
|
||||||
|
local DOCKER_LATEST_VERSION=""
|
||||||
|
|
||||||
# Check if Docker is already installed
|
# Check if Docker is already installed
|
||||||
if command -v docker &>/dev/null; then
|
if command -v docker &>/dev/null; then
|
||||||
|
|||||||
Reference in New Issue
Block a user