- Added secure config export/import with passphrase-based encryption
- CLI commands: pulse config export/import with AES-256-GCM encryption
- Auto-import on Docker startup via PULSE_INIT_CONFIG_FILE/DATA env vars
- API endpoints /api/config/export and /api/config/import (require API_TOKEN)
- Configs remain encrypted throughout export/import process
- Perfect for GitOps, CI/CD, and infrastructure as code workflows
This allows users to configure Pulse once via UI, export the encrypted
config, and deploy it automatically to multiple instances without
manual reconfiguration.
Addresses #249 - Config management for automation enthusiasts
ConfigPersistence was initialized with empty string instead of cfg.DataPath,
causing webhooks to save to /etc/pulse instead of PULSE_DATA_DIR.
This affected Docker deployments where /data is the persistent volume.
Fixes#249
- Fixed VERSION file not being included in Docker image
- Fixed config persistence using wrong directory in Docker (/etc/pulse instead of /data)
- Config now correctly uses PULSE_DATA_DIR environment variable
- Explain security reasons for not allowing credential export
- Add best practices for configuration management
- Clarify that this is intentional, not a missing feature
- Fix port mapping from 7655:3000 to 7655:7655
- Fix healthcheck to use correct port 7655
- Remove pulse_config volume as it's not needed in v4
- All configuration is stored in /data directory
- Parse user@realm from token name if provided in full format
- Better handle various token input formats
- Require user info for token auth (either in token name or user field)
- Fix realm defaulting logic for different auth types
- Remove temporary action items, issue responses, and Docker Hub description
- Move PROXMOX_HELPER_ISSUE.md to docs/ folder
- Add TODO comment to temporary-helper.sh for future removal
- Keep only essential files in root directory
- Note that PR for Proxmox helper script has been submitted
- Create response templates for all open issues
- Update README to reflect fix is in progress
- Add GetDataDir() function to respect PULSE_DATA_DIR environment variable
- Update all hardcoded /var/lib/pulse paths to use configurable data directory
- Fix circular import by moving GetDataDir to utils package
- Ensures Docker containers can properly persist configuration and alerts
- API endpoints are an implementation detail not needed by most users
- Keeps README focused on installation and usage
- Developers can find API info in the code or create separate API docs if needed
- Updated screenshot script with improved dark mode detection and forcing
- Regenerated all 8 documentation screenshots in dark mode
- Screenshots now properly show the dark theme interface
- Fixed theme switching logic to ensure consistent dark mode capture
- Fixes moderate security vulnerability in esbuild (GHSA-67mh-4wv8-2f99)
- Updates vite from 5.4.19 to 6.3.5 which includes esbuild 0.25.0
- esbuild vulnerability allowed any website to send requests to dev server
- Frontend build tested and working correctly with new version
- Add Docker builder container info to CLAUDE.md
- Add quick Docker build commands for releases
- Enhance RELEASE_CHECKLIST.md with all Docker tag variations
- Add note about verifying Dockerfile paths (cmd/pulse vs cmd/pulse/)
- Include Docker builder container setup instructions
- Add ARMv7 architecture support to Docker documentation
- Update Docker run commands to use single volume mount
- Add Docker tag information and architecture details
- List all supported architectures (AMD64, ARM64, ARMv7)
- Add server/index.js that shows clear migration instructions
- Prevents v3 from running with partial v4 files
- Users see clear error message in logs with migration steps
- Update build script to include shim in releases
- Support both UPDATE_CHANNEL and PULSE_UPDATE_CHANNEL env vars
- Add logging when update channel is overridden from environment
- Fixes RC channel detection in containerized deployments
- Updated build-release.sh to create universal tarball with all architectures
- Use pulse-wrapper.sh as main executable that auto-detects architecture
- Wrapper automatically cleans up unused architecture binaries
- Single tarball works for amd64, arm64, and armv7
- Compatible with Proxmox helper script expectations
- Detect Node.js based installations (any version before v4)
- Block auto-update with migration required message
- Add detailed migration instructions to install.sh
- Check for .env, node_modules, old services, etc.
- Direct users to create fresh installation for v4
- Remove private repo references from update validation
- Change GitHub API URL back to public repo (rcourtman/Pulse)
- This reverts the test changes made for private repo update testing