v0.4.0 — Renewable TLS directory
Certificates that renew themselves. The Hub can now take its TLS material from a LetsEncrypt-style directory and reload it when it is renewed — matching omnyshell hub start --tls-dir.
omnyserver hub start --tls-dir /etc/letsencrypt/live/hub.example.com \
--api-token api-secret --grant node-account:node-token:nodeAdded
hub start --tls-dir <dir>: readsfullchain.pem+privkey.pemfrom the directory instead of--cert/--key. The files are re-checked periodically and, when a renewal changes them, the Hub rebinds its listener with the fresh certificate — no restart, with established connections draining on the old listener. Passing--tls-dirtogether with--cert/--keyis an error, and the Hub still refuses to start without one of the two (no insecure mode).HubConfig.tlsDirectoryandHubConfig.tlsReloadInterval, the embedded equivalent. Exactly one ofsecurityContextortlsDirectorymust be given.
Changed
HubConfig.securityContextis now nullable and no longerrequired(atlsDirectorymay take its place). Existing code that passes asecurityContextis unaffected.
Full changelog: v0.3.1...v0.4.0