# Automatic Updates Pulse 5.0 introduces one-click updates for supported deployment types, making it easy to keep your monitoring system up to date. ## Supported Deployment Types | Deployment | Auto-Update | Method | |------------|-------------|--------| | **ProxmoxVE LXC** | ✅ Yes | In-app update button | | **Systemd Service** | ✅ Yes | In-app update button | | **Docker** | ❌ Manual | Pull new image | | **Source Build** | ❌ Manual | Git pull + rebuild | ## Using One-Click Updates ### When an Update is Available 1. Navigate to **Settings → System → Updates** 2. If an update is available, you'll see an **"Install Update"** button 3. Click the button to open the confirmation dialog 4. Review the update details: - Current version → New version - Estimated time - Changelog highlights 5. Click **"Install Update"** to begin ### Update Process 1. **Download**: New version is downloaded 2. **Backup**: Current installation is backed up 3. **Apply**: Files are updated 4. **Restart**: Service restarts automatically 5. **Verify**: Health check confirms success ### Progress Tracking A real-time progress modal shows: - Current step - Download progress - Any warnings or errors - Automatic page reload on success ## Configuration ### Update Preferences In **Settings → System → Updates**: | Setting | Description | |---------|-------------| | **Update Channel** | Stable (recommended) or Release Candidate | | **Auto-Check** | Automatically check for updates daily | ### Environment Variables ```bash # Disable auto-update check PULSE_AUTO_UPDATE_CHECK=false # Use release candidate channel PULSE_UPDATE_CHANNEL=rc ``` ## Manual Update Methods ### Docker ```bash # Pull latest image docker pull rcourtman/pulse:latest # Restart container docker-compose down && docker-compose up -d ``` ### ProxmoxVE LXC (Manual) ```bash curl -fsSL https://github.com/rcourtman/Pulse/releases/latest/download/install.sh | bash ``` ### Systemd Service (Manual) ```bash curl -fsSL https://github.com/rcourtman/Pulse/releases/latest/download/install.sh | bash ``` ### Source Build ```bash cd /path/to/pulse git pull make build sudo systemctl restart pulse ``` ## Rollback If an update causes issues: ### Automatic Rollback Pulse creates a backup before updating. If the update fails: 1. The previous version is automatically restored 2. Service restarts with the old version 3. Error details are logged ### Manual Rollback If rollback is supported for your deployment, use the **Rollback** action from the update history in **Settings → System → Updates**. Backups are stored as `backup-/` folders inside the Pulse data directory (`/etc/pulse` or `/data`). ## Update History View past updates in **Settings → System → Updates → Update History**: - Previous versions installed - Update timestamps - Success/failure status ## Troubleshooting ### Update button not showing 1. Check if your deployment supports auto-update 2. Verify an update is actually available 3. Ensure you have the latest frontend loaded (hard refresh) ### Update failed 1. Check the error message in the progress modal 2. Review logs: `journalctl -u pulse -n 100` 3. Verify disk space is available 4. Check network connectivity to GitHub ### Service won't restart after update 1. Check systemd status: `systemctl status pulse` 2. View recent logs: `journalctl -u pulse -f` 3. Manually restore from backup if needed