Files
ProxmoxVE/ct/pulse.sh

76 lines
2.2 KiB
Bash
Raw Normal View History

#!/usr/bin/env bash
make Pulse installation non-interactive (#4848) * fix: streamline Pulse installation for web-based configuration - Remove all interactive prompts during installation - Remove .env setup (handled by web UI) - Remove configuration messages (handled by web UI) - Change install directory from /opt/pulse-proxmox to /opt/pulse - Update JSON note to reflect web-based setup wizard Pulse now features a complete web-based configuration system with automatic setup detection, making manual .env configuration obsolete. The new workflow: 1. Script installs Pulse without any user interaction 2. Service starts automatically 3. User navigates to the provided URL 4. Pulse shows setup wizard for configuration 5. No SSH or manual file editing required This provides the ideal community script experience - completely hands-off installation with configuration through the web interface. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com> * Update pulse.sh to align with non-interactive installation - Change paths from /opt/pulse-proxmox to /opt/pulse - Remove .env file backup/restore logic since Pulse now uses web-based configuration - Simplify permissions setting to match new installation approach 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com> * little fixes * Update pulse.sh --------- Co-authored-by: Claude <noreply@anthropic.com> Co-authored-by: CanbiZ <47820557+MickLesk@users.noreply.github.com>
2025-06-02 09:45:00 +01:00
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
# Copyright (c) 2021-2025 community-scripts ORG
# Author: rcourtman & vhsdream
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://github.com/rcourtman/Pulse
APP="Pulse"
var_tags="${var_tags:-monitoring,proxmox}"
var_cpu="${var_cpu:-1}"
var_ram="${var_ram:-1024}"
var_disk="${var_disk:-4}"
var_os="${var_os:-debian}"
var_version="${var_version:-12}"
var_unprivileged="${var_unprivileged:-1}"
header_info "$APP"
variables
color
catch_errors
function update_script() {
header_info
check_container_storage
check_container_resources
2025-06-02 13:17:20 +02:00
if [[ ! -d /opt/pulse ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
if [[ ! -f ~/.pulse ]]; then
msg_error "Old Installation Found! Please recreate the container due big changes in the software."
exit 1
fi
RELEASE=$(curl -fsSL https://api.github.com/repos/rcourtman/Pulse/releases/latest | jq -r '.tag_name' | sed 's/^v//')
if [[ "${RELEASE}" != "$(cat ~/.pulse 2>/dev/null)" ]] || [[ ! -f ~/.pulse ]]; then
msg_info "Stopping ${APP}"
make Pulse installation non-interactive (#4848) * fix: streamline Pulse installation for web-based configuration - Remove all interactive prompts during installation - Remove .env setup (handled by web UI) - Remove configuration messages (handled by web UI) - Change install directory from /opt/pulse-proxmox to /opt/pulse - Update JSON note to reflect web-based setup wizard Pulse now features a complete web-based configuration system with automatic setup detection, making manual .env configuration obsolete. The new workflow: 1. Script installs Pulse without any user interaction 2. Service starts automatically 3. User navigates to the provided URL 4. Pulse shows setup wizard for configuration 5. No SSH or manual file editing required This provides the ideal community script experience - completely hands-off installation with configuration through the web interface. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com> * Update pulse.sh to align with non-interactive installation - Change paths from /opt/pulse-proxmox to /opt/pulse - Remove .env file backup/restore logic since Pulse now uses web-based configuration - Simplify permissions setting to match new installation approach 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com> * little fixes * Update pulse.sh --------- Co-authored-by: Claude <noreply@anthropic.com> Co-authored-by: CanbiZ <47820557+MickLesk@users.noreply.github.com>
2025-06-02 09:45:00 +01:00
systemctl stop pulse
msg_ok "Stopped ${APP}"
dirs=(/opt/pulse/bin /opt/pulse/frontend-modern)
for dir in "${dirs[@]}"; do
if [[ -d "$dir" ]]; then
rm -rf "$dir"
fi
done
fetch_and_deploy_gh_release "pulse" "rcourtman/Pulse" "prebuild" "latest" "/opt/pulse" "*-linux-amd64.tar.gz"
chown -R pulse:pulse /etc/pulse /opt/pulse
sed -i 's|bin/pulse|pulse|' /etc/systemd/system/pulse.service
systemctl daemon-reload
if grep -q 'pulse-home:/bin/bash' /etc/passwd; then
usermod -s /usr/sbin/nologin pulse
fi
msg_info "Starting ${APP}"
make Pulse installation non-interactive (#4848) * fix: streamline Pulse installation for web-based configuration - Remove all interactive prompts during installation - Remove .env setup (handled by web UI) - Remove configuration messages (handled by web UI) - Change install directory from /opt/pulse-proxmox to /opt/pulse - Update JSON note to reflect web-based setup wizard Pulse now features a complete web-based configuration system with automatic setup detection, making manual .env configuration obsolete. The new workflow: 1. Script installs Pulse without any user interaction 2. Service starts automatically 3. User navigates to the provided URL 4. Pulse shows setup wizard for configuration 5. No SSH or manual file editing required This provides the ideal community script experience - completely hands-off installation with configuration through the web interface. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com> * Update pulse.sh to align with non-interactive installation - Change paths from /opt/pulse-proxmox to /opt/pulse - Remove .env file backup/restore logic since Pulse now uses web-based configuration - Simplify permissions setting to match new installation approach 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com> * little fixes * Update pulse.sh --------- Co-authored-by: Claude <noreply@anthropic.com> Co-authored-by: CanbiZ <47820557+MickLesk@users.noreply.github.com>
2025-06-02 09:45:00 +01:00
systemctl start pulse
msg_ok "Started ${APP}"
msg_ok "Updated Successfully"
else
msg_ok "No update required. ${APP} is already at v${RELEASE}"
fi
exit
}
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 "${TAB}${GATEWAY}${BGN}http://${IP}:7655${CL}"