Repository navigation
feat: add independent Gatus monitoring and healthcheck integration - #40
Conversation
There was a problem hiding this comment.
Agent review
The Gatus dashboard is not bound to loopback as the README says. It will listen on all interfaces by default, which exposes the internal service topology and health. See the inline comment.
Generated by Pull Request Review for #40 · copilot · auto · 14.7 AIC · ⌖ 0.504 AIC · ⊞ 6.9K
There was a problem hiding this comment.
Agent review
Suggestion: approve. I did not find any high-confidence correctness, security, regression, or missing-test issues in this diff.
Generated by Pull Request Review for #40 · copilot · auto · 18 AIC · ⌖ 0.504 AIC · ⊞ 6.9K
Superseded by updated review from same workflow.
DenizAltunkapan
left a comment
There was a problem hiding this comment.
The independent systemd setup and the explicit loopback dashboard binding fit the current deployment architecture; the earlier dashboard-exposure finding is fixed. However, two operational issues need correction before merging: the default Cloud check only tests the Angular SPA, and the documented backup integration does not pass HC_BACKUP_UUID to its hook. Reviewed against current main (5fa791b); the branch is 8 commits behind but conflict-free. Shell syntax checks passed. I reproduced the backup hook exiting 0 without invoking curl when HC_BACKUP_UUID is not inherited, and invoking curl when explicitly exported (using a stub, no external request). No pull-request CI runs were returned for this head. Please add validation that a Cloud backend outage makes its check fail and that the documented backup service setup sends a heartbeat after successful completion.
There was a problem hiding this comment.
Agent review
Suggestion: approve. I did not find any high-confidence correctness, security, regression, or missing-test issues in this diff.
Generated by Pull Request Review for #40 · copilot · auto · 17.3 AIC · ⌖ 0.502 AIC · ⊞ 7.1K
DenizAltunkapan
left a comment
There was a problem hiding this comment.
Both previous blockers are addressed. The Cloud probe now requires the backend's expected 404/body through /cloud-api/, matching the Secure Send controller, exception handler and database lookup. The documented backup drop-in supplies HC_BACKUP_UUID and uses ExecStartPost after the oneshot backup succeeds. Rechecked YAML, loopback binding and shell syntax; stub-curl tests pass for successful ping, unset UUID and HTTP failure propagation. Reviewed against current main (791b8e9); no merge conflicts or further blocking findings. No regular PR CI runs were returned for this head. Live URL/stop-start and real heartbeat checks remain deployment-host verification.
Summary
Linked Issue
Closes #32
Testing
go installand locally started the dashboard.curland the documented environment file; it invoked the expected healthchecks.io URL. An unset UUID produces a warning and no request.Notes