Skip to content

Releases: morfredus/morfNotify

morfNotify - v0.6.7

Choose a tag to compare

@morfredus morfredus released this 10 Oct 14:22

morfNotify 0.6.7

  • Hardened systemd unit (pilot of the parc hardening): ProtectSystem=strict, ProtectHome=yes, PrivateTmp=yes, NoNewPrivileges=yes. The filesystem is read-only for the service except LogsDirectory=morfnotify (/var/log/morfnotify, owned by the service account).
  • Default log destination moved to /var/log/morfnotify/morfnotify.log (example config). The old /var/log/morfnotify.log sat in a root-owned directory the service could never write to. An installed config keeps its own value: edit file in /etc/morfsystem/morfnotify/morfnotify.json and restart.

morfNotify - v0.6.4

Choose a tag to compare

@morfredus morfredus released this 29 Sep 14:37

morfNotify 0.6.4

  • Vendored morfDeploy 0.21.0. An update now brings the installed config fully up to the example: new keys also reach modules already present (matched by id), documentation comments follow the example, and keys a version declares in removed_keys (service.json) are deleted after a backup.

morfNotify - v0.6.3

Choose a tag to compare

@morfredus morfredus released this 27 Sep 14:53

morfNotify 0.6.3

  • Re-vendored morfBeacon to 0.7.2 (documentation-only release; include/ and src/ unchanged).

morfNotify - v0.6.0

Choose a tag to compare

@morfredus morfredus released this 25 Sep 20:31

morfNotify 0.6.0

  • Default targets. targets is now optional in POST /notify. Without it, morfNotify routes the notification itself: default_targets from its config, else the shared fleet list /etc/morfsystem/alert-targets (re-read on each call), else telegram, the same fallback as morfMonitor and morf-alert. The 202 response then carries "defaulted": true. This lets a device that cannot read the fleet config (an ESP32 such as MeteoHub) send notifications. Backward compatible: morfnotify/1 unchanged, explicit targets behave as before.
  • notification capability announced in the morfBeacon heartbeat, as listed in the morfBeacon protocol registry, so producers find morfNotify by capability, never by name. First consumer: MeteoHub's "probe battery to replace" alert.

morfNotify - v0.5.2

Choose a tag to compare

@morfredus morfredus released this 14 Sep 11:44

morfNotify 0.5.2

  • Re-vendored morfDeploy to 0.20.6. The VERSION is bumped so the source tag matches the rebuilt artifact: two commits (the morfDeploy re-vendor and an exec-bit restore) had landed on 0.5.1 after its tag, so the built .deb no longer matched v0.5.1 and the release provenance check refused to publish it. No runtime behaviour change.

morfNotify - v0.5.1

Choose a tag to compare

@morfredus morfredus released this 07 Sep 21:49

morfNotify 0.5.1

  • Resync vendored morfBeacon to 0.7.1. Picks up the async /status reply fix: the beacon status server no longer blocks the event loop draining a reply to a slow client, so the heartbeat can no longer be starved (which produced false "service down" alerts across the parc). No API change.

morfNotify - v0.5.0

Choose a tag to compare

@morfredus morfredus released this 05 Sep 22:46

morfNotify 0.5.0

  • systemd -> morfNotify alert bridge, so a hard failure (a service process that dies) raises a Telegram alert instantly and event-driven, without depending on any poller. morfNotify ships and installs a generic template unit morf-alert@.service and the morf-alert script (to /usr/lib/morfsystem/morfnotify/), placed on install/update (Linux, root; best-effort - never breaks the install). A service opts in with one line in its own unit: OnFailure=morf-alert@%n.service. On failure, systemd runs the bridge, which reads the unit's state (Result, SubState, ExecMainStatus, NRestarts) and a short journal tail and POSTs an error-level notification to POST /notify. This is the "hard failure" path (process dead), complementary to morfMonitor's "functional failure" path (process up, API unresponsive); morfDashboard is no longer a required link in the alert chain. Targets default to telegram, overridable via /etc/morfsystem/alert-targets or the MORF_ALERT_TARGETS env var; the morfNotify URL via MORFNOTIFY_URL.

morfNotify - v0.4.3

Choose a tag to compare

@morfredus morfredus released this 03 Sep 21:54

morfNotify 0.4.3

  • Re-vendored morfDeploy 0.20.5 (opt-in arm64 cross-packaging and the sysroot .shlibs Depends resolution). The VERSION is bumped so the source tag matches the rebuilt artifact after this vendored-tooling update; without it the release provenance check rejects a package built past the previous tag.

morfNotify - v0.4.2

Choose a tag to compare

@morfredus morfredus released this 22 Aug 15:02

morfNotify 0.4.2

  • Enregistrement des compilations au niveau CMake (record_compile) : la durée de compile est signalée à morfAnalytics quel que soit le déclencheur (cmake --build direct, morf upgrade, déploiement morfDeploy).

morfNotify - v0.4.0

Choose a tag to compare

@morfredus morfredus released this 20 Aug 09:48

morfNotify 0.4.0

  • Mise à jour de la copie vendorée de morfDeploy 0.14.0 pour le packaging avec provenance vérifiée.