fix: correct webhook icon URLs and add release notes

- Fix Discord webhook templates to use logo.svg instead of non-existent favicon.svg
- Add comprehensive release notes for v4.3.0 about embedded frontend breaking change
- Document migration path and benefits of embedded frontend

The embedded frontend is a significant architectural improvement that eliminates
path-related issues but requires clear communication to users about the change.
This commit is contained in:
Pulse Monitor
2025-08-12 12:59:02 +00:00
parent d5d359ce45
commit cf3fefabda
2 changed files with 44 additions and 2 deletions
+42
View File
@@ -0,0 +1,42 @@
# Pulse v4.3.0 Release Notes
## ⚠️ BREAKING CHANGES
### Frontend Now Embedded in Binary
Starting with v4.3.0, the frontend is embedded directly in the Pulse binary. This is a significant architectural change that simplifies deployment but has some implications:
**What Changed:**
- Frontend files are now compiled into the Go binary at build time
- No separate `frontend-modern/` directory needed
- Single binary deployment - truly portable
- Smaller release tarballs
**Migration Notes:**
- **For manual installations**: Simply replace your binary. The old `frontend-modern/` directory can be deleted
- **For Docker users**: No changes needed, containers will work as normal
- **For developers**: Frontend changes now require recompiling the Go binary (use `scripts/rebuild-frontend.sh`)
- **Auto-updates**: Will work seamlessly from v4.2.1 to v4.3.0+
**Benefits:**
- Eliminates redirect loop issues (#304)
- No more path resolution problems
- Simpler installation and deployment
- Consistent behavior across all installation methods
- Reduced deployment size
## Features
- Embedded frontend for simplified single-binary deployment
- Improved installation experience
## Bug Fixes
- Fixed redirect loops in various installation scenarios (#304)
- Fixed path resolution issues with community scripts vs manual installs
## Technical Details
The frontend is embedded using Go's `embed` package. During the build process:
1. Frontend is built with npm
2. Built files are copied to `internal/api/frontend-modern/`
3. Go compiler embeds these files into the binary
4. Runtime serves embedded files directly from memory
This change makes Pulse a true single-binary application, eliminating an entire class of deployment issues.
+2 -2
View File
@@ -22,7 +22,7 @@ func GetWebhookTemplates() []WebhookTemplate {
Headers: map[string]string{"Content-Type": "application/json"},
PayloadTemplate: `{
"username": "Pulse Monitoring",
"avatar_url": "https://raw.githubusercontent.com/rcourtman/Pulse/main/frontend-modern/public/favicon.svg",
"avatar_url": "https://raw.githubusercontent.com/rcourtman/Pulse/main/frontend-modern/public/logo.svg",
"embeds": [{
"title": "Pulse Alert: {{.Level | title}}",
"description": "{{.Message}}",
@@ -39,7 +39,7 @@ func GetWebhookTemplates() []WebhookTemplate {
"timestamp": "{{.Timestamp}}",
"footer": {
"text": "Pulse Monitoring",
"icon_url": "https://raw.githubusercontent.com/rcourtman/Pulse/main/frontend-modern/public/favicon.svg"
"icon_url": "https://raw.githubusercontent.com/rcourtman/Pulse/main/frontend-modern/public/logo.svg"
}
}]
}`,