mirror of
https://github.com/community-scripts/ProxmoxVE.git
synced 2026-07-22 05:42:53 +02:00
Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| fe01d670f6 | |||
| e0df8a80bf |
+12
-2
@@ -5140,7 +5140,10 @@ EOF
|
|||||||
echo -en "${YW}Select option [1-${max_option}] (default: 1, auto-remove in 60s): ${CL}"
|
echo -en "${YW}Select option [1-${max_option}] (default: 1, auto-remove in 60s): ${CL}"
|
||||||
|
|
||||||
local response=""
|
local response=""
|
||||||
if read -t 60 -r response; then
|
local read_rc
|
||||||
|
read -t 60 -r response
|
||||||
|
read_rc=$?
|
||||||
|
if [[ $read_rc -eq 0 ]]; then
|
||||||
case "${response:-1}" in
|
case "${response:-1}" in
|
||||||
1)
|
1)
|
||||||
# Remove container
|
# Remove container
|
||||||
@@ -5359,13 +5362,20 @@ EOF
|
|||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
else
|
elif [[ $read_rc -gt 128 ]]; then
|
||||||
# Timeout - auto-remove
|
# Timeout - auto-remove
|
||||||
echo ""
|
echo ""
|
||||||
msg_info "No response - removing container ${CTID}"
|
msg_info "No response - removing container ${CTID}"
|
||||||
pct stop "$CTID" &>/dev/null || true
|
pct stop "$CTID" &>/dev/null || true
|
||||||
pct destroy "$CTID" &>/dev/null || true
|
pct destroy "$CTID" &>/dev/null || true
|
||||||
msg_ok "Container ${CTID} removed"
|
msg_ok "Container ${CTID} removed"
|
||||||
|
else
|
||||||
|
# read itself failed (e.g. broken/closed stdin, I/O error) rather than
|
||||||
|
# timing out - don't guess and destroy the container on a read we
|
||||||
|
# couldn't actually capture; keep it since that's the reversible choice.
|
||||||
|
echo ""
|
||||||
|
msg_error "Could not read your response (stdin error) - keeping container ${CTID} for safety."
|
||||||
|
msg_error "Remove it manually if not needed: pct destroy ${CTID}"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Force one final status update attempt after cleanup
|
# Force one final status update attempt after cleanup
|
||||||
|
|||||||
+17
-2
@@ -497,7 +497,10 @@ error_handler() {
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
local response=""
|
local response=""
|
||||||
if read -t 60 -r response; then
|
local read_rc
|
||||||
|
read -t 60 -r response
|
||||||
|
read_rc=$?
|
||||||
|
if [[ $read_rc -eq 0 ]]; then
|
||||||
if [[ -z "$response" || "$response" =~ ^[Yy]$ ]]; then
|
if [[ -z "$response" || "$response" =~ ^[Yy]$ ]]; then
|
||||||
echo ""
|
echo ""
|
||||||
if declare -f msg_info >/dev/null 2>&1; then
|
if declare -f msg_info >/dev/null 2>&1; then
|
||||||
@@ -520,7 +523,7 @@ error_handler() {
|
|||||||
echo -e "${YW}Container ${CTID} kept for debugging${CL}"
|
echo -e "${YW}Container ${CTID} kept for debugging${CL}"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
else
|
elif [[ $read_rc -gt 128 ]]; then
|
||||||
# Timeout - auto-remove
|
# Timeout - auto-remove
|
||||||
echo ""
|
echo ""
|
||||||
if declare -f msg_info >/dev/null 2>&1; then
|
if declare -f msg_info >/dev/null 2>&1; then
|
||||||
@@ -535,6 +538,18 @@ error_handler() {
|
|||||||
else
|
else
|
||||||
echo -e "${GN}✔${CL} Container ${CTID} removed"
|
echo -e "${GN}✔${CL} Container ${CTID} removed"
|
||||||
fi
|
fi
|
||||||
|
else
|
||||||
|
# read itself failed (e.g. broken/closed stdin, I/O error) rather than
|
||||||
|
# timing out - don't guess and destroy the container on a read we
|
||||||
|
# couldn't actually capture; keep it since that's the reversible choice.
|
||||||
|
echo ""
|
||||||
|
if declare -f msg_error >/dev/null 2>&1; then
|
||||||
|
msg_error "Could not read your response (stdin error) - keeping container ${CTID} for safety."
|
||||||
|
msg_error "Remove it manually if not needed: pct destroy ${CTID}"
|
||||||
|
else
|
||||||
|
echo -e "${YW}Could not read your response (stdin error) - keeping container ${CTID} for safety.${CL}"
|
||||||
|
echo -e "${YW}Remove it manually if not needed: pct destroy ${CTID}${CL}"
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|||||||
Reference in New Issue
Block a user