mirror of
https://github.com/community-scripts/ProxmoxVE.git
synced 2026-04-18 08:22:16 +00:00
Improve error handling and logging for LXC builds (#12208)
Prevent host-side error_handler from being triggered during in-container install/recovery by delaying re-enabling set -Eeuo pipefail and the ERR trap in misc/build.func until after install/recovery completes; add explanatory comments. Update misc/error_handler.func to fall back to BUILD_LOG if container-internal log path is unavailable, show the last 20 log lines when present, refine container vs host detection (check INSTALL_LOG file and /root), copy INSTALL_LOG into /root and write a .failed flag with the exit code for host-side detection, and ensure full-log output and container removal prompt are shown appropriately in host context. Tweak misc/core.func silent() output to include a "Full log" path and adjust formatting.
This commit is contained in:
committed by
GitHub
parent
695a6ce29b
commit
69de9fa57e
@@ -4055,8 +4055,9 @@ EOF'
|
||||
lxc-attach -n "$CTID" -- bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/install/${var_install}.sh)"
|
||||
local lxc_exit=$?
|
||||
|
||||
set -Eeuo pipefail # Re-enable error handling
|
||||
trap 'error_handler' ERR # Restore ERR trap
|
||||
# Keep error handling DISABLED during failure detection and recovery
|
||||
# Re-enabling it here would cause any pct exec/pull failure to trigger
|
||||
# error_handler() on the host, bypassing the recovery menu entirely
|
||||
|
||||
# Check for error flag file in container (more reliable than lxc-attach exit code)
|
||||
local install_exit_code=0
|
||||
@@ -4484,6 +4485,10 @@ EOF'
|
||||
|
||||
exit $install_exit_code
|
||||
fi
|
||||
|
||||
# Re-enable error handling after successful install or recovery menu completion
|
||||
set -Eeuo pipefail
|
||||
trap 'error_handler' ERR
|
||||
}
|
||||
|
||||
destroy_lxc() {
|
||||
|
||||
Reference in New Issue
Block a user