feat: SIGHUP hot reload for headless config updates
Add signal handler that calls rehash() on SIGHUP, logging results instead of sending to a client. Useful for systemd and container environments where no IRC client is attached. Update docs with channel key config, hot reload section, and roadmap checkoffs. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -74,8 +74,9 @@ PASS <password> # authenticate (all networks)
|
||||
/msg *bouncer REHASH # reload config file
|
||||
/msg *bouncer ADDNETWORK name host=h port=N tls=yes nick=n channels=#a,#b
|
||||
/msg *bouncer DELNETWORK name # remove network
|
||||
/msg *bouncer AUTOJOIN net +#chan # add to autojoin
|
||||
/msg *bouncer AUTOJOIN net -#chan # remove from autojoin
|
||||
/msg *bouncer AUTOJOIN net +#chan # add to autojoin
|
||||
/msg *bouncer AUTOJOIN net +#chan key # add with channel key
|
||||
/msg *bouncer AUTOJOIN net -#chan # remove from autojoin
|
||||
```
|
||||
|
||||
### NickServ
|
||||
@@ -174,6 +175,13 @@ notify_proxy = false # use SOCKS5 for notifications
|
||||
|
||||
Only fires when no clients are attached.
|
||||
|
||||
## Hot Reload
|
||||
|
||||
```bash
|
||||
kill -HUP $(pidof bouncer) # reload config via signal
|
||||
/msg *bouncer REHASH # reload config via command
|
||||
```
|
||||
|
||||
## Config Skeleton
|
||||
|
||||
```toml
|
||||
@@ -201,6 +209,7 @@ host / port
|
||||
[networks.<name>] # repeatable
|
||||
host / port / tls
|
||||
nick / channels / autojoin
|
||||
channel_keys # keys for +k channels
|
||||
password # optional, IRC server PASS
|
||||
```
|
||||
|
||||
|
||||
Reference in New Issue
Block a user