Skip to content

deploy(d-miner): version-controlled user-systemd units for sampler + notify engine - #576

Merged
frstrtr merged 1 commit into
masterfrom
dashboard/d-miner-systemd-units
Jul 4, 2026
Merged

deploy(d-miner): version-controlled user-systemd units for sampler + notify engine#576
frstrtr merged 1 commit into
masterfrom
dashboard/d-miner-systemd-units

Conversation

@frstrtr

@frstrtr frstrtr commented Jun 27, 2026

Copy link
Copy Markdown
Owner

What

Version-controlled user-systemd units for the D-MINER pipeline. The
D-MINER.1 presence sampler and D-MINER.5 notify engine are built and KAT-locked,
but had no reproducible deployment path — the sampler was hand-deployed on the
contabo prod node and the notify engine had none. This makes the pipeline
turn-on-able from the repo and keeps it per-node truthful.

deploy/systemd/:

  • c2pool-miner-sampler.service — long-running D-MINER.1 sampler
  • c2pool-miner-rollup.{service,timer} — nightly per-worker/day rollup (00:10)
  • c2pool-miner-notify.{service,timer} — D-MINER.5 engine run, every 5 min
  • c2pool-miner-daily.{service,timer} — daily-summary (08:00, after rollup)
  • c2pool-miner.env.example + README.md — per-node config + install steps

Why per-node honest

Every path, /local_stats URL, and SMTP/transport setting lives in
~/.config/c2pool/miner.env; nothing is baked into the units, so each node
points at its own dashboard + DB + relay (charter: per-node truthful, config-
driven not hardcoded).

Safety

Additive only — no script or consensus code touched. Units validate clean with
systemd-analyze verify; engine selftest still 15/15. The notify timer runs
run every 5 min, safe against the 15-min offline-min default + hourly throttle.

Notes

  • Email-spine transport; V36 P2P relay (D-MINER.6) and Telegram plug into the
    engine adapter later with no unit change.
  • Web/ops layer, non-consensus → normal merge; surfaced for operator awareness.

@frstrtr
frstrtr force-pushed the dashboard/d-miner-systemd-units branch from 6ee1098 to 49b9d3a Compare June 28, 2026 01:02
…notify engine

D-MINER.1 sampler and D-MINER.5 notify engine are built and KAT-locked but had
no reproducible deployment path: the sampler was hand-deployed as user-systemd
on the contabo prod node, the notify engine had none. Capture both as config-
driven user units so the pipeline is turn-on-able and per-node truthful.

deploy/systemd/:
  * c2pool-miner-sampler.service   long-running D-MINER.1 sampler
  * c2pool-miner-rollup.{service,timer}   nightly per-worker/day rollup (00:10)
  * c2pool-miner-notify.{service,timer}   D-MINER.5 engine run, every 5 min
  * c2pool-miner-daily.{service,timer}    daily-summary (08:00, after rollup)
  * c2pool-miner.env.example + README.md  per-node config, no hardcoded paths

All paths/URLs/SMTP live in ~/.config/c2pool/miner.env so each node points at
its own dashboard + DB + relay. Additive only; engine selftest still 15/15.
@frstrtr
frstrtr force-pushed the dashboard/d-miner-systemd-units branch from 49b9d3a to 04b4ed5 Compare July 2, 2026 05:57
@frstrtr
frstrtr merged commit a1d74ee into master Jul 4, 2026
32 of 33 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant