diff options
| author | St33v <github@f3rr3t.com> | 2026-03-15 15:48:10 +1100 |
|---|---|---|
| committer | St33v <github@f3rr3t.com> | 2026-03-15 15:48:10 +1100 |
| commit | 96a9cd525e7caf46704ba2240c1c86f6892e3aaf (patch) | |
| tree | 11f022a651adc766256e00d4dd8bf18f4ab46e35 /systemd | |
| parent | 078d16785d7b027aead68f59d1c1b4dd18cd5267 (diff) | |
Add deployment config and strengthen synopticChart.sh
- Inline DeriveTime from func/deriveTimeString.sh; delete func/
- Add set -euo pipefail, quoting, and stderr for error messages
- Archive PDFs to /var/lib/synoptic/archive/raw/ after conversion
- Publish PNG to /srv/www/synopticLatest.png
- Add systemd units: synoptic.{service,timer}, synoptic-retry.{service,timer}
- Timer fires at 02:10, 08:10, 14:10, 20:10 UTC (2h after BOM publish slots)
- Add nginx site config for pestrel.com
- Add setup.sh (run once on VPS as root) and deploy.sh (run from cr4y)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Diffstat (limited to 'systemd')
| -rw-r--r-- | systemd/synoptic-retry.service | 12 | ||||
| -rw-r--r-- | systemd/synoptic-retry.timer | 8 | ||||
| -rw-r--r-- | systemd/synoptic.service | 13 | ||||
| -rw-r--r-- | systemd/synoptic.timer | 9 |
4 files changed, 42 insertions, 0 deletions
diff --git a/systemd/synoptic-retry.service b/systemd/synoptic-retry.service new file mode 100644 index 0000000..ed46d41 --- /dev/null +++ b/systemd/synoptic-retry.service @@ -0,0 +1,12 @@ +[Unit] +Description=Retry download and render BOM synoptic chart (after failure) + +[Service] +Type=oneshot +User=st33v +WorkingDirectory=/var/lib/synoptic +ExecStart=/opt/synoptic/synopticChart.sh +ExecStopPost=/bin/sh -c 'STATUS=SUCCESS; [ "$$EXIT_STATUS" != "0" ] && STATUS=FAILURE; logger -t synoptic-retry -p user.err "synoptic-retry $$STATUS exit=$$EXIT_STATUS"' +SyslogIdentifier=synoptic-retry +StandardOutput=journal +StandardError=journal diff --git a/systemd/synoptic-retry.timer b/systemd/synoptic-retry.timer new file mode 100644 index 0000000..fc93089 --- /dev/null +++ b/systemd/synoptic-retry.timer @@ -0,0 +1,8 @@ +[Unit] +Description=Retry synoptic chart download 15 minutes after failure + +[Timer] +OnActiveSec=15min + +[Install] +WantedBy=timers.target diff --git a/systemd/synoptic.service b/systemd/synoptic.service new file mode 100644 index 0000000..33e7237 --- /dev/null +++ b/systemd/synoptic.service @@ -0,0 +1,13 @@ +[Unit] +Description=Download and render BOM synoptic chart +OnFailure=synoptic-retry.timer + +[Service] +Type=oneshot +User=st33v +WorkingDirectory=/var/lib/synoptic +ExecStart=/opt/synoptic/synopticChart.sh +ExecStopPost=/bin/sh -c 'STATUS=SUCCESS; [ "$$EXIT_STATUS" != "0" ] && STATUS=FAILURE; logger -t synoptic -p user.err "synoptic $$STATUS exit=$$EXIT_STATUS"' +SyslogIdentifier=synoptic +StandardOutput=journal +StandardError=journal diff --git a/systemd/synoptic.timer b/systemd/synoptic.timer new file mode 100644 index 0000000..4884078 --- /dev/null +++ b/systemd/synoptic.timer @@ -0,0 +1,9 @@ +[Unit] +Description=Run synoptic chart download at 02:10, 08:10, 14:10, 20:10 UTC + +[Timer] +OnCalendar=*-*-* 02,08,14,20:10:00 UTC +Persistent=true + +[Install] +WantedBy=timers.target |
