Skip to content

Releases: rcourtman/Pulse

v4.15.0-rc.2

06 Sep 19:59

Choose a tag to compare

v4.15.0-rc.2 Pre-release
Pre-release

What's Changed

Security Improvements

  • Fixed path traversal vulnerability in API endpoints
  • Implemented secure token comparison to prevent timing attacks
  • Enhanced security logging for audit trails

New Features

  • ZFS Pool Monitoring (Experimental) - Monitor ZFS pool health and usage (addresses #423)
  • PMG Backup Detection - Properly identifies Proxmox Mail Gateway host backups (addresses #359)

Bug Fixes

  • VM Disk Monitoring - Fixed disk usage showing 0% for VMs with guest agents (addresses #414, #416, #348, #367, #425)
    • Duplicate mount points no longer inflate disk totals
    • Better fallback to allocated disk size when guest agent unavailable
    • Comprehensive logging for debugging disk monitoring issues
  • PBS Connection Handling - Improved timeout handling to prevent "context deadline exceeded" errors (addresses #424)
  • Cluster Health Checks - Enhanced cluster health detection and error handling (addresses #405)
  • TypeScript Fixes - Resolved type comparison errors in backup VMID handling

Diagnostic Tools

New diagnostic script for troubleshooting VM disk issues:

# Run on your Pulse host /opt/pulse/scripts/test-vm-disk.sh <VMID>

Testing v4.15.0-rc.2

ProxmoxVE LXC: Type update in console

Docker:

docker pull rcourtman/pulse:v4.15.0-rc.2 docker run -d --name pulse -p 7655:7655 -v pulse-data:/etc/pulse rcourtman/pulse:v4.15.0-rc.2

Install Script:

curl -fsSL https://raw.githubusercontent.com/rcourtman/Pulse/main/install.sh | bash -s -- --version v4.15.0-rc.2

Downloads

Pre-built binaries available below for linux-amd64, linux-arm64, and linux-armv7.

Please test and report any issues, especially with VM disk monitoring and ZFS pools.

v4.15.0-rc.1

06 Sep 12:43

Choose a tag to compare

v4.15.0-rc.1 Pre-release
Pre-release

What's Changed

New Features

  • ZFS Pool Monitoring - Complete implementation of ZFS pool health monitoring for Proxmox VE nodes
    • Automatic detection of ZFS storage pools
    • Health status monitoring (ONLINE, DEGRADED, FAULTED states)
    • Error tracking for read, write, and checksum errors
    • Individual device monitoring within pools
    • Alert generation for degraded pools and device errors
    • Frontend display showing ZFS issues inline with storage information

Security Improvements

  • Path Traversal Protection - Added comprehensive path traversal attack prevention
  • Secure Token Comparison - Implemented secure token comparison to prevent timing attacks
  • Enhanced Request Validation - Added proper HTTP status codes for different security scenarios
  • Security Event Logging - Added comprehensive logging for security events

Bug Fixes

  • PMG Backup Detection - Comprehensive improvements to PMG backup detection system
    • Fixed VMID=0 host config backup identification
    • Added debug mode for troubleshooting backup detection issues
    • More robust detection for various PMG backup configurations
  • Guest Agent Disk Stats - Restored guest agent disk statistics in optimized monitor (addresses #414)
  • PBS Connection Timeouts - Improved PBS connection handling with granular timeout settings (addresses #424)
  • Cluster Health Checks - Enhanced cluster health checks and VMFileSystem error handling (addresses #405)
  • TypeScript Type Safety - Fixed type comparison errors in backup VMID handling

Improvements

  • Error Resilience - Better error handling across PBS and cluster operations
  • Debug Capabilities - Enhanced debugging tools for backup detection and monitoring
  • Performance - Optimized monitoring operations with better timeout management

Installation

Testing v4.15.0-rc.1:

# Install script curl -fsSL https://raw.githubusercontent.com/rcourtman/Pulse/main/install.sh | bash -s -- --version v4.15.0-rc.1 # Docker docker pull rcourtman/pulse:v4.15.0-rc.1 docker run -d --name pulse -p 7655:7655 -v pulse-data:/etc/pulse rcourtman/pulse:v4.15.0-rc.1

Downloads

Pre-built binaries available below for linux-amd64, linux-arm64, and linux-armv7.

v4.14.0

05 Sep 18:28

Choose a tag to compare

What's Changed

Improvements

  • Better handling of unavailable storage resources
  • Improved cluster connectivity handling when endpoints are not resolvable
  • Yellow status indicator for degraded cluster connectivity
  • Skip Windows System Reserved partitions in disk usage calculation
  • Auto-detect public URL for webhook notifications when not explicitly configured
  • Added Pushover notification template

Bug Fixes

  • Attempted to address fresh PVE installations without VMs in installer
  • Attempted to address rate limiting on essential real-time endpoints
  • Attempted to address webhook header inputs losing focus after keystroke
  • Attempted to address password changes when behind proxy Basic Auth
  • Attempted to address VM-specific errors marking cluster nodes unhealthy
  • Attempted to address QEMU agent errors affecting cluster health status
  • Attempted to address webhook JSON parsing errors across services
  • Attempted to address 404 errors when updating or deleting webhooks
  • Attempted to address Gotify webhook links to use full Pulse URL
  • Attempted to address storage timeouts by increasing from 60s to 120s
  • Attempted to address PBS storage showing on wrong nodes
  • Attempted to address VMID 0 PBS backups identification
  • Attempted to address alert acknowledgment routing path
  • Attempted to address PBS backup monitoring enablement
  • Attempted to address username storage during login for password changes
  • Attempted to address "no healthy nodes available" storage error

UI Enhancements

  • Deduplicate identical storage entries in 'by storage' view
  • Properly handle shared vs local storage deduplication
  • Custom headers UI for webhook configuration
  • Test button for webhook creation form
  • Professional webhook templates without emojis

Installation

Install/Update:

# Install script (ProxmoxVE/LXC/systemd) curl -fsSL https://raw.githubusercontent.com/rcourtman/Pulse/main/install.sh | bash # Docker docker pull rcourtman/pulse:latest docker run -d --name pulse -p 7655:7655 -v pulse-data:/etc/pulse rcourtman/pulse:latest

Downloads

Pre-built binaries available below for linux-amd64, linux-arm64, and linux-armv7.

v4.14.0-rc.2

04 Sep 20:53

Choose a tag to compare

v4.14.0-rc.2 Pre-release
Pre-release

What's Changed

This RC addresses several issues reported by users, particularly around webhook functionality and cluster node health monitoring.

Bug Fixes

  • Potential fix for webhook header inputs losing focus when typing (addresses #412)
  • Potential fix for password changes when behind proxy Basic Auth (addresses #407)
  • Potential fix for VM-specific QEMU agent errors incorrectly marking cluster nodes as unhealthy (addresses #405)
  • Potential fix for rate limiting on essential real-time endpoints like status and metrics (addresses #419)
  • Fixed webhook form not closing after successfully adding a webhook
  • Fixed 404 errors when updating or deleting webhooks
  • Fixed JSON parsing errors in webhook notifications for all services (Discord, Telegram, ntfy, Gotify)
  • Fixed ntfy webhook header handling to prevent template syntax errors

New Features

  • Added test button to webhook creation form for testing webhook configurations before saving

Improvements

  • Auto-detect public URL for webhook notifications when not explicitly configured
  • Enhanced webhook templates for better reliability (removed emojis for professional appearance)
  • Improved Gotify webhook links to use full Pulse URL instead of relative paths (addresses #415)

Testing v4.14.0-rc.2:

# Install script curl -fsSL https://raw.githubusercontent.com/rcourtman/Pulse/main/install.sh | bash -s -- --version v4.14.0-rc.2 # Docker docker pull rcourtman/pulse:v4.14.0-rc.2 docker run -d --name pulse -p 7655:7655 -v pulse-data:/etc/pulse rcourtman/pulse:v4.14.0-rc.2

Downloads

Pre-built binaries available below for linux-amd64, linux-arm64, and linux-armv7.

v4.14.0-rc.1

04 Sep 17:00

Choose a tag to compare

v4.14.0-rc.1 Pre-release
Pre-release

What's Changed

New Features

  • Custom headers support for webhook notifications
  • Pushover notification template integration
  • Yellow status indicator for degraded cluster connectivity
  • Password reset functionality with secure documentation

Improvements

  • Enhanced Gotify and ntfy notifications with full Pulse URLs
  • Storage deduplication in 'by storage' view
  • Better PBS storage simulation in mock data
  • Increased timeout for storage operations (60s to 120s)
  • Skip Windows System Reserved partitions in disk usage calculation

Bug Fixes

  • Attempted to address storage operations failing with 'no healthy nodes' error
  • Potential fix for PBS storage showing on wrong nodes
  • Attempted fix for password change returning 401 error
  • Potential fix for alert acknowledgment routing path mismatch
  • PBS backups with VMID 0 now correctly identified as Host type
  • PBS backup monitoring enabled for all PBS instances
  • Corrected handling of non-shared local storage in 'by storage' view
  • Fixed PBS storage shared status detection

Testing v4.14.0-rc.1

Install script:

curl -fsSL https://raw.githubusercontent.com/rcourtman/Pulse/main/install.sh | bash -s -- --version v4.14.0-rc.1

Docker:

docker pull rcourtman/pulse:v4.14.0-rc.1 docker run -d --name pulse -p 7655:7655 -v pulse-data:/etc/pulse rcourtman/pulse:v4.14.0-rc.1

Downloads

Pre-built binaries available below for linux-amd64, linux-arm64, and linux-armv7.

v4.13.0

03 Sep 13:48

Choose a tag to compare

What's Changed

Improvements

  • Enhanced storage display with node names when grouped by storage
  • Improved mobile responsiveness for Settings and Guest URLs pages
  • Optimized default alert schedule settings for production use
  • Better alert acknowledgment synchronization across the UI
  • Increased API timeout to prevent deadline exceeded errors
  • Enhanced Gotify and ntfy webhook notifications with richer message details
  • Improved mock data system for development and testing

Bug Fixes

  • Attempted to address storage display issues with proper padding and borders (#410, #411, #385)
  • Potential fix for binary replacement reliability during updates (#406)
  • Attempted to address change password button not responding to clicks (#396)
  • Improved node disk stats reliability when GetNodeStatus fails (#402)
  • Fixed visual gaps in table rows with alert borders
  • Corrected tag indicator colors to update immediately on theme switching
  • Clarified update settings to indicate manual installation is required (#404)

Documentation

  • Added comprehensive VM disk stats troubleshooting guide
  • Updated webhook configuration documentation for Gotify and ntfy
  • Improved testing framework documentation

Installation

Install/Update:

# Install script (ProxmoxVE/LXC/systemd) curl -fsSL https://raw.githubusercontent.com/rcourtman/Pulse/main/install.sh | bash # Docker docker pull rcourtman/pulse:latest docker run -d --name pulse -p 7655:7655 -v pulse-data:/etc/pulse rcourtman/pulse:latest

Downloads

Pre-built binaries available below for linux-amd64, linux-arm64, and linux-armv7.

v4.12.1

31 Aug 21:33

Choose a tag to compare

What's Changed

Improvements

  • Performance - Parallel node polling for improved performance at scale
  • Installation - Improved install script reliability in unprivileged containers with better timeout handling

Bug Fixes

  • Attempted to address storage tab showing empty due to incorrect cluster storage filtering
  • Potential fix for install script hanging in certain network conditions

Documentation

  • Improved Telegram webhook configuration instructions and formatting

Installation

Install/Update:

# Install script (ProxmoxVE/LXC/systemd) curl -fsSL https://raw.githubusercontent.com/rcourtman/Pulse/main/install.sh | bash # Docker docker pull rcourtman/pulse:latest docker run -d --name pulse -p 7655:7655 -v pulse-data:/etc/pulse rcourtman/pulse:latest

Downloads

Pre-built binaries available below for linux-amd64, linux-arm64, and linux-armv7.

v4.12.0

31 Aug 18:17

Choose a tag to compare

What's Changed

New Features

  • ntfy.sh Webhook Support - Added support for ntfy.sh push notifications, allowing real-time alerts to mobile devices and desktop via the ntfy service (addresses discussion #228)

Improvements

  • Enhanced Diagnostics Export - Diagnostics now include comprehensive storage and backup information for better troubleshooting
  • Better Node Status Tracking - Improved connection status tracking for nodes (addresses #385)
  • VM Disk Usage Detection - Better detection of VM disk usage from guest agent data (addresses #367)

Bug Fixes

  • Potential fix for alert acknowledgement with special characters in IDs (addresses #380)
  • Fixed alert acknowledgement URL parsing issues
  • Fixed ntfy webhook to send plain text instead of JSON for proper compatibility
  • Fixed tag indicators to only show for guests that actually have tags
  • Fixed mock mode to prevent wiping production node configuration
  • Fixed alert checking for mock mode data (addresses #399)

Installation

Install/Update:

# Install script (ProxmoxVE/LXC/systemd) curl -fsSL https://raw.githubusercontent.com/rcourtman/Pulse/main/install.sh | bash # Docker docker pull rcourtman/pulse:latest docker run -d --name pulse -p 7655:7655 -v pulse-data:/etc/pulse rcourtman/pulse:latest

Downloads

Pre-built binaries available below for linux-amd64, linux-arm64, and linux-armv7.

v4.11.0

31 Aug 08:54

Choose a tag to compare

What's Changed

New Features

  • VLAN Support in Installer - Added optional VLAN configuration during installation for network-isolated setups

Bug Fixes

  • Attempted to address false positive alerts for powered-off VMs - Alerts should no longer trigger for stopped/paused VMs
  • Potential fix for storage timeout errors - Improved handling of slow storage operations with retry logic and configurable timeouts
  • Attempted to address password change issues - Password change now properly validates current password before allowing changes
  • Potential fix for storage/backup visibility - Enhanced storage polling to continue even when cluster API calls fail
  • Attempted to address webhook payload persistence - Custom payloads now clear when switching between webhook types
  • Potential fix for alert acknowledgment counts - Alert counts should update correctly after acknowledgment
  • Attempted to address HTTPS detection behind reverse proxy - Better protocol detection for Quick Security Setup
  • Potential fix for proxy auth privileges - Enforced admin requirements for write operations with proxy authentication
  • Attempted to address duplicate update prompts - Fixed issue where answering "No" to updates would prompt again
  • Fixed installer issues - Resolved duplicate main function and unbound variable errors

Improvements

  • Better Storage Monitoring - Increased default timeout to 45s and added CONNECTION_TIMEOUT environment variable for slow storage systems
  • Enhanced Logging - Added comprehensive storage polling logs to help diagnose issues
  • Clearer Installer Prompts - CIDR notation requirements are now explicitly stated in IP prompts

Installation

Install/Update:

# Install script (ProxmoxVE/LXC/systemd) curl -fsSL https://raw.githubusercontent.com/rcourtman/Pulse/main/install.sh | bash # Docker docker pull rcourtman/pulse:latest docker run -d --name pulse -p 7655:7655 -v pulse-data:/etc/pulse rcourtman/pulse:latest

Downloads

Pre-built binaries available below for linux-amd64, linux-arm64, and linux-armv7.

v4.10.2

30 Aug 12:44

Choose a tag to compare

What's Changed

Bug Fixes

  • Offline Node Handling - Added checks to prevent 595 authentication errors when accessing offline cluster nodes (addresses #379)
  • LXC Container Parsing - Fixed container status parsing and timeout issues
  • Auto-Update Setup - Fixed configuration when jq is not installed
  • UI Animations - Removed vertical translate animation that caused border misalignment

Improvements

  • Mobile UI - Improved responsive design for better mobile experience
  • Node Selection - Enhanced visual feedback when selecting nodes in summary table
  • Documentation - Updated screenshots and simplified project naming

Installation

Install/Update:

# Install script (ProxmoxVE/LXC/systemd) curl -fsSL https://raw.githubusercontent.com/rcourtman/Pulse/main/install.sh | bash # Docker docker pull rcourtman/pulse:latest docker run -d --name pulse -p 7655:7655 -v pulse-data:/etc/pulse rcourtman/pulse:latest

Downloads

Pre-built binaries available below for linux-amd64, linux-arm64, and linux-armv7.