Update build.func
This commit is contained in:
		
							parent
							
								
									668d711af2
								
							
						
					
					
						commit
						c0b109c1fe
					
				| @ -12,11 +12,10 @@ variables() { | ||||
|     DIAGNOSTICS="yes"                                 # sets the DIAGNOSTICS variable to "yes", used for the API call. | ||||
|     METHOD="default"                                  # sets the METHOD variable to "default", used for the API call. | ||||
|     RANDOM_UUID="$(cat /proc/sys/kernel/random/uuid)" # generates a random UUID and sets it to the RANDOM_UUID variable. | ||||
|     CT_TYPE="${CT_TYPE:-$var_unprivileged}"           # Set an global environment variable for the container type. | ||||
|     #ENABLE_FUSE="${ENABLE_FUSE:-no}"                  # Set an global environment variable for enabling FUSE. | ||||
|     CT_TYPE="${CT_TYPE:-$var_unprivileged}"           # Set an environment variable for the container type. | ||||
| } | ||||
| 
 | ||||
| #source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVED/main/misc/api.func) | ||||
| source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVED/main/misc/api.func) | ||||
| 
 | ||||
| # This function sets various color variables using ANSI escape codes for formatting text in the terminal. | ||||
| color() { | ||||
| @ -61,27 +60,29 @@ color() { | ||||
|     ROOTSSH="${TAB}🔑${TAB}${CL}" | ||||
|     CREATING="${TAB}🚀${TAB}${CL}" | ||||
|     ADVANCED="${TAB}🧩${TAB}${CL}" | ||||
|     #FUSE="${TAB}🔧${TAB}${CL}" | ||||
|     CIFS="${TAB}🔌${TAB}${CL}" | ||||
|     FUSE="${TAB}🔧${TAB}${CL}" | ||||
|     NFS="${TAB}📂${TAB}${CL}" | ||||
| } | ||||
| 
 | ||||
| # This function enables error handling in the script by setting options and defining a trap for the ERR signal. | ||||
| #catch_errors() { | ||||
| #    set -Eeuo pipefail | ||||
| #    trap 'error_handler $LINENO "$BASH_COMMAND"' ERR | ||||
| #} | ||||
| catch_errors() { | ||||
|     set -Eeuo pipefail | ||||
|     trap 'error_handler $LINENO "$BASH_COMMAND"' ERR | ||||
| } | ||||
| 
 | ||||
| # This function is called when an error occurs. It receives the exit code, line number, and command that caused the error, and displays an error message. | ||||
| error_handler() { | ||||
|     #source /dev/stdin <<<$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVED/main/misc/api.func) | ||||
|     source /dev/stdin <<<$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVED/main/misc/api.func) | ||||
|     if [ -n "$SPINNER_PID" ] && ps -p $SPINNER_PID >/dev/null; then kill $SPINNER_PID >/dev/null; fi | ||||
|     printf "\e[?25h" | ||||
|     local exit_code="$?" | ||||
|     #local line_number="$1" | ||||
|     #local command="$2" | ||||
|     #local error_description="$(get_error_description "$exit_code")" | ||||
|     #local error_message="${RD}[ERROR]${CL} in line ${RD}$line_number${CL}: exit code ${RD}$exit_code${CL} (${YW}$error_description${CL}): while executing command ${YW}$command${CL}" | ||||
|     #post_update_to_api "failed" "$exit_code" "$error_description" | ||||
|     #echo -e "\n$error_message\n" | ||||
|     local line_number="$1" | ||||
|     local command="$2" | ||||
|     local error_description="$(get_error_description "$exit_code")" | ||||
|     local error_message="${RD}[ERROR]${CL} in line ${RD}$line_number${CL}: exit code ${RD}$exit_code${CL} (${YW}$error_description${CL}): while executing command ${YW}$command${CL}" | ||||
|     post_update_to_api "failed" "$exit_code" "$error_description" | ||||
|     echo -e "\n$error_message\n" | ||||
| } | ||||
| 
 | ||||
| # This function displays an informational message with logging support. | ||||
| @ -337,8 +338,8 @@ base_settings() { | ||||
|     HN=$NSAPP | ||||
|     BRG="vmbr0" | ||||
|     NET="dhcp" | ||||
|     #IPv6="dhcp" | ||||
|     #IPv6GW="" | ||||
|     IPv6="dhcp" | ||||
|     IPv6GW="" | ||||
|     GATE="" | ||||
|     APT_CACHER="" | ||||
|     APT_CACHER_IP="" | ||||
| @ -351,7 +352,9 @@ base_settings() { | ||||
|     SSH="no" | ||||
|     SSH_AUTHORIZED_KEY="" | ||||
|     TAGS="community-script-dev;" | ||||
|     #ENABLE_FUSE="no" | ||||
|     ENABLE_NFS="no" | ||||
|     ENABLE_CIFS="no" | ||||
|     ENABLE_FUSE="no" | ||||
| 
 | ||||
|     # Override default settings with variables from ct script | ||||
|     CT_TYPE=${var_unprivileged:-$CT_TYPE} | ||||
| @ -360,7 +363,7 @@ base_settings() { | ||||
|     RAM_SIZE=${var_ram:-$RAM_SIZE} | ||||
|     VERB=${var_verbose:-$VERBOSE} | ||||
|     TAGS="${TAGS}${var_tags:-}" | ||||
|     #ENABLE_FUSE="${var_fuse:-${ENABLE_FUSE:-no}}" | ||||
|     ENABLE_FUSE=${var_fuse:-$ENABLE_FUSE} | ||||
| 
 | ||||
|     # Since these 2 are only defined outside of default_settings function, we add a temporary fallback. TODO: To align everything, we should add these as constant variables (e.g. OSTYPE and OSVERSION), but that would currently require updating the default_settings function for all existing scripts | ||||
|     if [ -z "$var_os" ]; then | ||||
| @ -1355,18 +1358,18 @@ check_container_storage() { | ||||
| start() { | ||||
|     LOGDIR="/usr/local/community-scripts/logs" | ||||
|     mkdir -p "$LOGDIR" | ||||
| 
 | ||||
|     if [ -f /etc/alpine-release ]; then | ||||
|         echo "Running on Alpine Linux – minimal update process." | ||||
|         update_script | ||||
|     fi | ||||
|     if command -v pveversion >/dev/null 2>&1; then | ||||
|         if ! (whiptail --backtitle "[dev] Proxmox VE Helper Scripts" --title "${APP} LXC" --yesno "This will create a New ${APP} LXC. Proceed?" 10 58); then | ||||
|             clear | ||||
|             exit_script | ||||
|             exit | ||||
|         fi | ||||
|         SPINNER_PID="" | ||||
|         install_script | ||||
|     fi | ||||
| 
 | ||||
|     if ! command -v pveversion >/dev/null 2>&1; then | ||||
|     else | ||||
|         CHOICE=$(whiptail --backtitle "[dev] Proxmox VE Helper Scripts" --title "${APP} LXC Update/Setting" --menu \ | ||||
|             "Support/Update functions for ${APP} LXC. Choose an option:" \ | ||||
|             12 60 3 \ | ||||
| @ -1408,15 +1411,15 @@ build_container() { | ||||
|         FEATURES="nesting=1" | ||||
|     fi | ||||
| 
 | ||||
|     #if [ "$ENABLE_FUSE" == "yes" ]; then | ||||
|     #    FEATURES+=",fuse=1" | ||||
|     #fi | ||||
|     if [ "$ENABLE_FUSE" == "yes" ]; then | ||||
|         FEATURES+=",fuse=1" | ||||
|     fi | ||||
| 
 | ||||
|     #if [[ $DIAGNOSTICS == "yes" ]]; then | ||||
|     #    post_to_api | ||||
|     #fi | ||||
|     if [[ $DIAGNOSTICS == "yes" ]]; then | ||||
|         post_to_api | ||||
|     fi | ||||
| 
 | ||||
|     #FEATURES="${FEATURES#,}" | ||||
|     FEATURES="${FEATURES#,}" | ||||
|     TEMP_DIR=$(mktemp -d) | ||||
|     pushd $TEMP_DIR >/dev/null | ||||
|     if [ "$var_os" == "alpine" ]; then | ||||
| @ -1440,6 +1443,7 @@ build_container() { | ||||
|     export PCT_OSTYPE="$var_os" | ||||
|     export PCT_OSVERSION="$var_version" | ||||
|     export PCT_DISK_SIZE="$DISK_SIZE" | ||||
|     export IPv6="$IPv6" | ||||
|     export PCT_OPTIONS=" | ||||
|     -features $FEATURES | ||||
|     -hostname $HN | ||||
| @ -1517,7 +1521,7 @@ http://dl-cdn.alpinelinux.org/alpine/latest-stable/community | ||||
| EOF' | ||||
|         pct exec "$CTID" -- ash -c "apk add bash >/dev/null" | ||||
|     fi | ||||
|     lxc-attach -n "$CTID" -- bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVED/main/install/$var_install.sh)" || exit $? | ||||
|     lxc-attach -n "$CTID" -- bash -c "$(wget -qLO - https://raw.githubusercontent.com/community-scripts/ProxmoxVED/main/install/$var_install.sh)" || exit $? | ||||
| 
 | ||||
| } | ||||
| 
 | ||||
| @ -1564,7 +1568,7 @@ EOF | ||||
|         systemctl start ping-instances.service | ||||
|     fi | ||||
| 
 | ||||
|     #post_update_to_api "done" "none" | ||||
|     post_update_to_api "done" "none" | ||||
| } | ||||
| 
 | ||||
| set_std_mode() { | ||||
| @ -1586,11 +1590,10 @@ silent() { | ||||
| 
 | ||||
| exit_script() { | ||||
|     exit_code=$? # Capture exit status | ||||
|     #post_update_to_api "failed" "$exit_code" | ||||
|     post_update_to_api "failed" "$exit_code" | ||||
| } | ||||
| 
 | ||||
| # | ||||
| trap 'exit_script' EXIT | ||||
| #trap 'post_update_to_api "failed" "2"' ERR | ||||
| #trap 'post_update_to_api "failed" "130"' SIGINT | ||||
| #trap 'post_update_to_api "failed" "143"' SIGTERM | ||||
| trap 'post_update_to_api "failed" "2"' ERR | ||||
| trap 'post_update_to_api "failed" "130"' SIGINT | ||||
| trap 'post_update_to_api "failed" "143"' SIGTERM | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 CanbiZ
						CanbiZ