mirror of
https://github.com/community-scripts/ProxmoxVE.git
synced 2026-10-06 19:10:58 +02:00
Refactor/core qol adoption (#17655)
* Scripts: close every msg_info block with msg_ok Past-tense msg_info calls that should have been msg_ok, notices that opened a block before a prompt, and blocks without a closing msg_ok. These already left a stale spinner; with core's block stack they would resume it after every later msg_ok. * Generate passwords with random_password openssl rand -base64 | tr -dc | head -c returned fewer characters than asked for, and the unfiltered | cut variants put / and + into passwords that end up in DSNs and sed expressions. Secrets an app decodes as base64 are unchanged. Requires community-scripts/core#61. * Keep data directories through CLEAN_INSTALL instead of copying them create_backup copied uploads, storage and similar directories twice per update and needed their size again in free space. CLEAN_INSTALL_KEEP moves them aside instead. Only directories the upstream release does not ship, in scripts that restored right after the fetch. Requires community-scripts/core#61. * Drop the 300s uv timeout overrides setup_uv exports UV_HTTP_TIMEOUT=600 now; the scripts' 300 only lowered it. Requires community-scripts/core#61.
This commit is contained in:
committed by
GitHub
parent
45599d63ec
commit
7f57d0998c
@@ -70,7 +70,6 @@ if [[ "$LXC_STATUS" != "running" ]]; then
|
||||
msg_info "Container $CTID is not running. Starting it now..."
|
||||
pct start "$CTID"
|
||||
while [[ "$(pct status "$CTID" | awk '{print $2}')" != "running" ]]; do
|
||||
msg_info "Waiting for the container to start..."
|
||||
sleep 2
|
||||
done
|
||||
msg_ok "Container $CTID is now running."
|
||||
|
||||
@@ -56,8 +56,7 @@ while read -r line; do
|
||||
((${#ITEM} + OFFSET > MSG_MAX_LENGTH)) && MSG_MAX_LENGTH=$((${#ITEM} + OFFSET))
|
||||
CTID_MENU+=("$TAG" "$ITEM" "OFF")
|
||||
done < <(pct list | awk 'NR>1')
|
||||
|
||||
stop_spinner
|
||||
msg_ok "Loaded container list"
|
||||
CTID=""
|
||||
while [[ -z "${CTID}" ]]; do
|
||||
CTID=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "Containers on $NODE" --radiolist \
|
||||
|
||||
@@ -96,7 +96,7 @@ TEMPLATE=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "All Templat
|
||||
|
||||
# Setup script environment
|
||||
NAME=$(echo "$TEMPLATE" | grep -oE '^[^-]+-[^-]+')
|
||||
PASS="$(openssl rand -base64 8)"
|
||||
PASS="$(random_password 16)"
|
||||
|
||||
# Get valid Container ID
|
||||
CTID=$(pvesh get /cluster/nextid)
|
||||
|
||||
@@ -86,8 +86,8 @@ function install() {
|
||||
|
||||
# Generate secrets and config values
|
||||
local ENCRYPTION_KEY JWT_SECRET PROJ_DIR BUILDS_DIR
|
||||
ENCRYPTION_KEY=$(openssl rand -base64 32 | tr -dc 'a-zA-Z0-9' | head -c32)
|
||||
JWT_SECRET=$(openssl rand -base64 32 | tr -dc 'a-zA-Z0-9' | head -c32)
|
||||
ENCRYPTION_KEY=$(random_password 32)
|
||||
JWT_SECRET=$(random_password 32)
|
||||
PROJ_DIR="/etc/arcane/projects"
|
||||
BUILDS_DIR="/etc/arcane/builds"
|
||||
|
||||
|
||||
@@ -89,7 +89,7 @@ function install() {
|
||||
fetch_and_deploy_gh_release "cronmaster" "fccview/cronmaster" "prebuild" "latest" "$INSTALL_PATH" "cronmaster_*_prebuild.tar.gz"
|
||||
|
||||
local AUTH_PASS
|
||||
AUTH_PASS="$(openssl rand -base64 18 | cut -c1-13)"
|
||||
AUTH_PASS="$(random_password 13)"
|
||||
|
||||
msg_info "Creating configuration"
|
||||
cat <<EOF >"$CONFIG_PATH"
|
||||
|
||||
@@ -137,7 +137,7 @@ function install() {
|
||||
echo ""
|
||||
else
|
||||
# Generate new password
|
||||
DB_PASS=$(openssl rand -base64 18 | tr -dc 'a-zA-Z0-9' | head -c16)
|
||||
DB_PASS=$(random_password 16)
|
||||
|
||||
# Check if user exists, create if not
|
||||
if sudo -u postgres psql -tAc "SELECT 1 FROM pg_roles WHERE rolname='${DB_USER}'" 2>/dev/null | grep -q 1; then
|
||||
@@ -187,7 +187,7 @@ function install() {
|
||||
|
||||
# Generate JWT Secret
|
||||
local JWT_SECRET
|
||||
JWT_SECRET=$(openssl rand -base64 32 | tr -dc 'a-zA-Z0-9' | head -c32)
|
||||
JWT_SECRET=$(random_password 32)
|
||||
|
||||
# Force fresh download by removing version cache
|
||||
rm -f "$HOME/.jellystat"
|
||||
|
||||
@@ -189,10 +189,10 @@ function install() {
|
||||
msg_info "Configuring environment"
|
||||
curl -fsSL "https://raw.githubusercontent.com/moghtech/komodo/main/compose/compose.env" -o "$COMPOSE_ENV"
|
||||
|
||||
DB_PASSWORD=$(openssl rand -base64 16 | tr -d '/+=')
|
||||
ADMIN_PASSWORD=$(openssl rand -base64 8 | tr -d '/+=')
|
||||
WEBHOOK_SECRET=$(openssl rand -base64 24 | tr -d '/+=')
|
||||
JWT_SECRET=$(openssl rand -base64 24 | tr -d '/+=')
|
||||
DB_PASSWORD=$(random_password 21)
|
||||
ADMIN_PASSWORD=$(random_password 16)
|
||||
WEBHOOK_SECRET=$(random_password 32)
|
||||
JWT_SECRET=$(random_password 32)
|
||||
|
||||
sed -i "s/^KOMODO_DATABASE_USERNAME=.*/KOMODO_DATABASE_USERNAME=komodo_admin/" "$COMPOSE_ENV"
|
||||
sed -i "s/^KOMODO_DATABASE_PASSWORD=.*/KOMODO_DATABASE_PASSWORD=${DB_PASSWORD}/" "$COMPOSE_ENV"
|
||||
|
||||
@@ -141,6 +141,7 @@ function install_phpmyadmin() {
|
||||
mkdir -p "$INSTALL_DIR"
|
||||
tar xf "$tarball" --strip-components=1 -C "$INSTALL_DIR"
|
||||
rm -f "$tarball"
|
||||
msg_ok "Downloaded phpMyAdmin ${LATEST_VERSION}"
|
||||
}
|
||||
|
||||
function configure_phpmyadmin() {
|
||||
@@ -210,12 +211,12 @@ function uninstall_phpmyadmin() {
|
||||
$STD rc-service lighttpd stop
|
||||
$STD rc-service php-fpm stop
|
||||
fi
|
||||
msg_ok "Stopped Webserver"
|
||||
|
||||
msg_info "Removing phpMyAdmin directory"
|
||||
rm -rf "$INSTALL_DIR"
|
||||
|
||||
if [[ "$OS" == "Alpine" ]]; then
|
||||
msg_info "Removing Lighttpd config"
|
||||
rm -f /etc/lighttpd/lighttpd.conf
|
||||
$STD rc-service php-fpm restart
|
||||
$STD rc-service lighttpd restart
|
||||
|
||||
@@ -654,12 +654,11 @@ for container in $CHOICE; do
|
||||
log_write "Container $container ($service): FAILED — no backup found for restore"
|
||||
exit 235
|
||||
fi
|
||||
msg_info "Restoring from: $BACKUP_ENTRY"
|
||||
pct restore $container "$BACKUP_ENTRY" --storage $LXC_STORAGE --force >/dev/null 2>&1
|
||||
restorestatus=$?
|
||||
if [ $restorestatus -eq 0 ]; then
|
||||
pct start $container
|
||||
msg_ok "Container $container successfully restored from backup"
|
||||
msg_ok "Container $container restored from ${BACKUP_ENTRY}"
|
||||
log_result "$container" "$service" "RESTORED" "Update failed (exit $exit_code) — restored from backup"
|
||||
log_write "Container $container ($service): RESTORED from $BACKUP_ENTRY"
|
||||
else
|
||||
|
||||
Reference in New Issue
Block a user