Update build.func
This commit is contained in:
parent
6ca38e23ae
commit
d6a1183824
@ -1581,6 +1581,92 @@ install_script() {
|
|||||||
esac
|
esac
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Check and prompt for storage if missing or invalid
|
||||||
|
check_storage_or_prompt() {
|
||||||
|
local vars_file="$1"
|
||||||
|
local changed=0
|
||||||
|
|
||||||
|
if [[ ! -f "$vars_file" ]]; then
|
||||||
|
msg_warn "No vars file found at $vars_file"
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Helper: validate storage
|
||||||
|
_validate_storage() {
|
||||||
|
local s="$1"
|
||||||
|
[[ -n "$s" ]] || return 1
|
||||||
|
pvesm status -content images | awk 'NR>1 {print $1}' | grep -qx "$s"
|
||||||
|
}
|
||||||
|
|
||||||
|
# Load current values
|
||||||
|
local ct_store tpl_store
|
||||||
|
ct_store="$(grep -E '^var_container_storage=' "$vars_file" | cut -d= -f2-)"
|
||||||
|
tpl_store="$(grep -E '^var_template_storage=' "$vars_file" | cut -d= -f2-)"
|
||||||
|
|
||||||
|
# Container storage
|
||||||
|
if ! _validate_storage "$ct_store"; then
|
||||||
|
local new_ct
|
||||||
|
new_ct=$(pvesm status -content images | awk 'NR>1 {print $1" "$2" "$6}')
|
||||||
|
new_ct=$(whiptail --backtitle "[dev] Proxmox VE Helper Scripts" \
|
||||||
|
--title "Select Container Storage" \
|
||||||
|
--menu "Choose container storage:" 20 60 10 $new_ct 3>&1 1>&2 2>&3) || return 1
|
||||||
|
if [[ -n "$new_ct" ]]; then
|
||||||
|
sed -i "/^var_container_storage=/d" "$vars_file"
|
||||||
|
echo "var_container_storage=$new_ct" >>"$vars_file"
|
||||||
|
changed=1
|
||||||
|
msg_ok "Updated container storage in $vars_file → $new_ct"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Template storage
|
||||||
|
if ! _validate_storage "$tpl_store"; then
|
||||||
|
local new_tpl
|
||||||
|
new_tpl=$(pvesm status -content vztmpl | awk 'NR>1 {print $1" "$2" "$6}')
|
||||||
|
new_tpl=$(whiptail --backtitle "[dev] Proxmox VE Helper Scripts" \
|
||||||
|
--title "Select Template Storage" \
|
||||||
|
--menu "Choose template storage:" 20 60 10 $new_tpl 3>&1 1>&2 2>&3) || return 1
|
||||||
|
if [[ -n "$new_tpl" ]]; then
|
||||||
|
sed -i "/^var_template_storage=/d" "$vars_file"
|
||||||
|
echo "var_template_storage=$new_tpl" >>"$vars_file"
|
||||||
|
changed=1
|
||||||
|
msg_ok "Updated template storage in $vars_file → $new_tpl"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
return $changed
|
||||||
|
}
|
||||||
|
|
||||||
|
# Storage Settings menu
|
||||||
|
storage_settings_menu() {
|
||||||
|
local menu_items=(
|
||||||
|
"1" "Check & update My Defaults (default.vars)"
|
||||||
|
)
|
||||||
|
if [ -f "$(get_app_defaults_path)" ]; then
|
||||||
|
menu_items+=("2" "Check & update App Defaults for ${APP}")
|
||||||
|
fi
|
||||||
|
menu_items+=("3" "Back")
|
||||||
|
|
||||||
|
local choice
|
||||||
|
choice=$(whiptail --backtitle "[dev] Proxmox VE Helper Scripts" \
|
||||||
|
--title "STORAGE SETTINGS" \
|
||||||
|
--menu "Select what to update:" 15 60 5 \
|
||||||
|
"${menu_items[@]}" 3>&1 1>&2 2>&3) || return 0
|
||||||
|
|
||||||
|
case "$choice" in
|
||||||
|
1)
|
||||||
|
check_storage_or_prompt "/usr/local/community-scripts/default.vars"
|
||||||
|
;;
|
||||||
|
2)
|
||||||
|
if [ -f "$(get_app_defaults_path)" ]; then
|
||||||
|
check_storage_or_prompt "$(get_app_defaults_path)"
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
3)
|
||||||
|
return 0
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
check_container_resources() {
|
check_container_resources() {
|
||||||
# Check actual RAM & Cores
|
# Check actual RAM & Cores
|
||||||
|
Loading…
x
Reference in New Issue
Block a user