Add comprehensive validation and error messages to the Seafile MySQL backup hook:
- Add timeout (5min) to prevent mysqldump from hanging indefinitely
- Validate SEAFILE_DB_PASSWORD is set before attempting dump
- Verify Docker container exists and is running before execution
- Fix file verification bug (check correct output filename)
- Add detailed logging for easier troubleshooting
- Use set -e for fail-fast behavior
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Implement Uptime Kuma Push Monitor support with separate hook files
following separation of concerns principle.
Changes:
- Add UPTIME_KUMA_PUSH_URL to .env.example
- Create dedicated uptime-kuma-success.sh hook
- Create dedicated uptime-kuma-error.sh hook
- Update config.yaml to call both ntfy and Uptime Kuma hooks
- Each notification service has its own file for modularity
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Replace repository path with backup size in ntfy success notifications to
provide more useful information about backup completion.
Changes:
- Add backup size retrieval using borgmatic info command
- Display original size in notification instead of repository path
- Fallback to "taille inconnue" if size cannot be determined
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Replace deprecated argument-based parameter passing with environment variables
and dynamic data retrieval for archive names and error messages.
Changes:
- Remove "{archive_name}" and "{error}" placeholders from config.yaml
- Update ntfy-success.sh to retrieve archive name via borgmatic list
- Update ntfy-error.sh to extract error messages from systemd logs
- Add repository information to both notification types
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>