Update build.func
This commit is contained in:
parent
6eb408569e
commit
df2e4e6030
@ -792,7 +792,7 @@ advanced_settings() {
|
||||
case "$SSH_KEY_MODE" in
|
||||
found)
|
||||
SEL=$(whiptail --backtitle "[dev] Proxmox VE Helper Scripts" --title "SELECT HOST KEYS" \
|
||||
--checklist "Select one or more keys to import:" 20 20 10 "${CHOICES[@]}" 3>&1 1>&2 2>&3) || exit_script
|
||||
--checklist "Select one or more keys to import:" 20 140 10 "${CHOICES[@]}" 3>&1 1>&2 2>&3) || exit_script
|
||||
for tag in $SEL; do
|
||||
tag="${tag%\"}"
|
||||
tag="${tag#\"}"
|
||||
@ -1203,26 +1203,29 @@ _sanitize_value() {
|
||||
|
||||
# Map-Parser: read var_* from file into _VARS_IN associative array
|
||||
declare -A _VARS_IN
|
||||
_load_vars_file_to_map() {
|
||||
_load_vars_file() {
|
||||
local file="$1"
|
||||
_VARS_IN=()
|
||||
[[ -f "$file" ]] || return 0
|
||||
local line
|
||||
while IFS= read -r line || [[ -n "$line" ]]; do
|
||||
[ -f "$file" ] || return 0
|
||||
msg_info "Loading defaults from ${file}"
|
||||
local line key val
|
||||
while IFS= read -r line || [ -n "$line" ]; do
|
||||
line="${line#"${line%%[![:space:]]*}"}"
|
||||
line="${line%"${line##*[![:space:]]}"}"
|
||||
[[ -z "$line" || "$line" == \#* ]] && continue
|
||||
if [[ "$line" =~ ^([A-Za-z_][A-Za-z0-9_]*)=(.*)$ ]]; then
|
||||
local k="${BASH_REMATCH[1]}"
|
||||
local v="${BASH_REMATCH[2]}"
|
||||
[[ "$k" == var_* ]] || continue
|
||||
_is_whitelisted_key "$k" || continue
|
||||
# strip Quotes
|
||||
if [[ "$v" =~ ^\"(.*)\"$ ]]; then v="${BASH_REMATCH[1]}"; fi
|
||||
if [[ "$v" =~ ^\'(.*)\'$ ]]; then v="${BASH_REMATCH[1]}"; fi
|
||||
_VARS_IN["$k"]="$v"
|
||||
fi
|
||||
[ -z "$line" ] && continue
|
||||
case "$line" in
|
||||
\#*) continue ;;
|
||||
esac
|
||||
key=$(printf "%s" "$line" | cut -d= -f1)
|
||||
val=$(printf "%s" "$line" | cut -d= -f2-)
|
||||
case "$key" in
|
||||
var_*)
|
||||
if _is_whitelisted_key "$key"; then
|
||||
[ -z "${!key+x}" ] && export "$key=$val"
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
done <"$file"
|
||||
msg_ok "Loaded ${file}"
|
||||
}
|
||||
|
||||
# Diff function for two var_* files -> produces human-readable diff list for $1 (old) vs $2 (new)
|
||||
|
Loading…
x
Reference in New Issue
Block a user