Improve CLI and daemon lifecycle usability
This commit is contained in:
parent
afec7063db
commit
f61cb44dad
14 changed files with 1028 additions and 204 deletions
|
|
@ -26,6 +26,8 @@ accept and live-sync tasks, releases native docs/gossip/blob handles, calls
|
|||
`Endpoint::close().await`, and removes the local control socket. The same
|
||||
cleanup path runs when the serving loop returns an error, preventing stale
|
||||
socket files and unclosed endpoint clones from becoming restart behavior.
|
||||
Foreground daemons handle Ctrl-C, and Unix daemons also handle the SIGTERM used
|
||||
by user service managers, through this same graceful shutdown path.
|
||||
|
||||
The local metadata store is SQLite product state. `geth-store` tracks a numeric
|
||||
`schema_version` in the `meta` table and applies ordered migrations up to the
|
||||
|
|
@ -44,6 +46,14 @@ daemon. The initial backends are systemd user units on Linux, launchd user agent
|
|||
on macOS, and per-user scheduled tasks on Windows. Geth does not install itself
|
||||
as a privileged system service.
|
||||
|
||||
The common service lifecycle is available directly as `geth daemon
|
||||
install|start|stop|status|uninstall`; the nested service commands remain the
|
||||
advanced and compatibility surface. `geth daemon run --ephemeral` creates a
|
||||
temporary home, reports how another CLI process can select it with `--home`, and
|
||||
removes it after a normal foreground shutdown. Ephemeral mode still starts the
|
||||
same daemon-owned Iroh endpoint and local control stack; it is not a second
|
||||
runtime or transport path.
|
||||
|
||||
## Iroh-Only Remote Communication
|
||||
|
||||
Remote geth node-to-node communication is Iroh-only. The daemon will own one
|
||||
|
|
|
|||
Loading…
Reference in a new issue