Compare commits

..

7 Commits

Author SHA1 Message Date
MickLesk d1a67b3bbb AlmaLinux VM: report failures through the engine's error handler
The script replaced the engine's error_handler with one that sent the
failed command as the exit code, so every failure reached telemetry as
exit 199 "exit code not reported", without the failed command or
category. Its signal traps sent words instead of codes the same way.

It also ran its own unguarded apt-get update for libguestfs-tools, so a
host with the enterprise repository and no subscription (401) stopped
there. vm_prepare_cloud_image installs the tools itself, tolerating a
repository that fails to update.
2026-11-03 10:25:34 +01:00
community-scripts-pr-app[bot] 9e879e8e0c Update CHANGELOG.md (#18399)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-11-03 09:01:48 +00:00
community-scripts-pr-app[bot] 413fbcf58a Update CHANGELOG.md (#18398)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-11-03 08:57:59 +00:00
community-scripts-pr-app[bot] bc9d4f19ae Update CHANGELOG.md (#18396)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-11-03 08:48:28 +00:00
community-scripts-pr-app[bot] 9c9bbb4995 Update CHANGELOG.md (#18395)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-11-03 08:48:11 +00:00
community-scripts-pr-app[bot] 5e5513522f Update CHANGELOG.md (#18394)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-11-03 08:09:03 +00:00
Connor Gallopo 1820e2f772 move tracearr to node 26 (#18393) 2026-11-03 09:08:34 +01:00
6 changed files with 20 additions and 197 deletions
+15
View File
@@ -571,6 +571,21 @@ Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit
</details>
## 2026-11-03
### 🚀 Updated Scripts
- #### 🐞 Bug Fixes
- Tracearr: move to Node.js 26 [@connorgallopo](https://github.com/connorgallopo) ([#18393](https://github.com/community-scripts/ProxmoxVE/pull/18393))
### 💾 Core
- feat: add var_cmode to set the container console mode [@MickLesk](https://github.com/MickLesk) ([core#180](https://github.com/community-scripts/core/pull/180))
- fix: restore npm when an interrupted update left it behind [@MickLesk](https://github.com/MickLesk) ([core#189](https://github.com/community-scripts/core/pull/189))
- feat: find the assets of a renamed GitHub repo without the API [@MickLesk](https://github.com/MickLesk) ([core#188](https://github.com/community-scripts/core/pull/188))
- ref: count a container stopped during a detached install as an abort [@MickLesk](https://github.com/MickLesk) ([core#187](https://github.com/community-scripts/core/pull/187))
## 2026-11-02
### 🚀 Updated Scripts
-83
View File
@@ -1,83 +0,0 @@
#!/usr/bin/env bash
_cs_boot="${COMMUNITY_SCRIPTS_CORE_DIR:-$(dirname "${BASH_SOURCE[0]}")/../../core}/core/build.func"
source "$_cs_boot" 2>/dev/null || source <(curl -fsSL "${COMMUNITY_SCRIPTS_CORE_URL:-https://raw.githubusercontent.com/community-scripts/core/main}/core/build.func")
# Copyright (c) 2021-2026 community-scripts ORG
# Author: uchouT (uchouT)
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://github.com/OpenListTeam/OpenList/
APP="OpenList"
var_tags="${var_tags:-files;storage}"
var_cpu="${var_cpu:-1}"
var_arm64="${var_arm64:-yes}"
var_unprivileged="${var_unprivileged:-1}"
var_ram="${var_ram:-1024}"
var_disk="${var_disk:-6}"
var_version="${var_version:-13}"
header_info "$APP"
variables
color
catch_errors
function update_script() {
header_info
check_container_storage
check_container_resources
run_os_update
}
update_deb_based() {
if [[ ! -f /opt/openlist/openlist ]]; then
msg_error "No OpenList Installation Found!"
exit 1
fi
if check_for_gh_release "openlist" "OpenListTeam/OpenList"; then
msg_info "Stopping OpenList"
systemctl stop openlist
msg_ok "Stopped OpenList"
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "openlist" "OpenListTeam/OpenList" "prebuild" "latest" "/opt/openlist" "openlist-linux-musl-$(arch_resolve "amd64" "arm64").tar.gz"
msg_info "Starting OpenList"
systemctl start openlist
msg_ok "Started OpenList"
msg_ok "Updated successfully!"
fi
}
update_alpine() {
if [[ ! -f /opt/openlist/openlist ]]; then
msg_error "No OpenList Installation Found!"
exit 1
fi
msg_info "Updating Alpine Packages"
$STD apk -U upgrade
msg_ok "Updated Alpine Packages"
if check_for_gh_release "openlist" "OpenListTeam/OpenList"; then
msg_info "Stopping OpenList"
$STD rc-service openlist stop
msg_ok "Stopped OpenList"
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "openlist" "OpenListTeam/OpenList" "prebuild" "latest" "/opt/openlist" "openlist-linux-musl-$(arch_resolve "amd64" "arm64").tar.gz"
msg_info "Starting OpenList"
$STD rc-service openlist start
msg_ok "Started OpenList"
msg_ok "Updated successfully!"
fi
}
start
build_container
description
msg_ok "Completed Successfully!\n"
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
echo -e "${INFO}${YW}Access it using the following URL:${CL}"
echo -e "${GATEWAY}${BGN}http://${IP}:5244${CL}"
echo -e "${INFO}${YW}Credentials saved in:${CL}"
echo -e "${TAB}/root/openlist.creds"
+1 -1
View File
@@ -30,7 +30,7 @@ function update_script() {
exit
fi
NODE_VERSION="24" setup_nodejs
NODE_VERSION="26" setup_nodejs
msg_info "Updating prestart script"
cat <<EOF >/data/tracearr/prestart.sh
-90
View File
@@ -1,90 +0,0 @@
#!/usr/bin/env bash
# Copyright (c) 2021-2026 community-scripts ORG
# Author: uchouT (uchouT)
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://github.com/OpenListTeam/OpenList/
source /dev/stdin <<<"$FUNCTIONS_FILE_PATH"
color
verb_ip6
catch_errors
setting_up_container
network_check
update_os
fetch_and_deploy_gh_release "openlist" "OpenListTeam/OpenList" "prebuild" "latest" "/opt/openlist" "openlist-linux-musl-$(arch_resolve "amd64" "arm64").tar.gz"
msg_info "Setting up OpenList"
ADMIN_PASS="$(head -c 256 /dev/urandom | tr -dc 'A-Za-z0-9')"
ADMIN_PASS="${ADMIN_PASS:0:16}"
$STD /opt/openlist/openlist --data /opt/openlist_data admin set "$ADMIN_PASS"
if [[ ! -f /opt/openlist_data/data.db ]]; then
msg_error "OpenList did not initialise its database"
exit 1
fi
{
echo "OpenList Credentials"
echo "Username: admin"
echo "Password: ${ADMIN_PASS}"
} >~/openlist.creds
chmod 600 ~/openlist.creds
msg_ok "Set up OpenList"
setup_deb_based() {
msg_info "Creating OpenList Service"
cat <<EOF >/etc/systemd/system/openlist.service
[Unit]
Description=OpenList
After=network.target
[Service]
Type=simple
User=root
WorkingDirectory=/opt/openlist
ExecStart=/opt/openlist/openlist server --data /opt/openlist_data
Restart=on-failure
RestartSec=5
[Install]
WantedBy=multi-user.target
EOF
systemctl enable -q --now openlist
msg_ok "Created OpenList Service"
}
setup_alpine() {
msg_info "Creating OpenList Service"
cat <<'EOF' >/etc/init.d/openlist
#!/sbin/openrc-run
name="OpenList"
description="OpenList - a file list program that supports multiple storages"
command="/opt/openlist/openlist"
command_args="server --data /opt/openlist_data"
supervisor=supervise-daemon
directory="/opt/openlist"
output_log="/var/log/openlist.log"
error_log="/var/log/openlist.log"
respawn_delay=10
depend() {
need net
after firewall
}
start_pre() {
checkpath -f -m 0640 "$output_log"
}
EOF
chmod +x /etc/init.d/openlist
$STD rc-update add openlist default
$STD rc-service openlist start
msg_ok "Created OpenList Service"
}
run_os_setup
motd_ssh
customize
cleanup_lxc
+1 -1
View File
@@ -17,7 +17,7 @@ msg_info "Installing Dependencies"
$STD apt install -y redis-server
msg_ok "Installed Dependencies"
NODE_VERSION="24" NODE_MODULE="corepack" setup_nodejs
NODE_VERSION="26" NODE_MODULE="corepack" setup_nodejs
PG_VERSION="18" setup_postgresql
msg_info "Installing pnpm"
+3 -22
View File
@@ -24,18 +24,9 @@ THIN="discard=on,ssd=1,"
set -e
trap 'error_handler $LINENO "$BASH_COMMAND"' ERR
trap cleanup EXIT
trap 'post_update_to_api "failed" "INTERRUPTED"' SIGINT
trap 'post_update_to_api "failed" "TERMINATED"' SIGTERM
function error_handler() {
local exit_code="$?"
local line_number="$1"
local command="$2"
local error_message="${RD}[ERROR]${CL} in line ${RD}$line_number${CL}: exit code ${RD}$exit_code${CL}: while executing command ${YW}$command${CL}"
post_update_to_api "failed" "${command}"
echo -e "\n$error_message\n"
cleanup_vmid
}
trap 'post_update_to_api "failed" "130"' SIGINT
trap 'post_update_to_api "failed" "143"' SIGTERM
trap 'post_update_to_api "failed" "129"; exit 129' SIGHUP
TEMP_DIR=$(mktemp -d)
pushd "$TEMP_DIR" >/dev/null
@@ -126,16 +117,6 @@ post_to_api_vm
vm_select_storage "$HN"
# ==============================================================================
# PREREQUISITES
# ==============================================================================
if ! command -v virt-customize &>/dev/null; then
msg_info "Installing libguestfs-tools"
$STD apt-get update
$STD apt-get install -y libguestfs-tools
msg_ok "Installed libguestfs-tools"
fi
msg_info "Retrieving the URL for the ${APP} Qcow2 Disk Image"
ALMA_ARCH="$(vm_arch_resolve x86_64 aarch64)"
URL="https://repo.almalinux.org/almalinux/${var_version}/cloud/${ALMA_ARCH}/images/AlmaLinux-${var_version}-GenericCloud-latest.${ALMA_ARCH}.qcow2"