kvarnctl
is a binary available for UNIX systems. It commnicates with your
Kvarn instances to execute commands with arguments.
Downloads are available. Nightly Linux downloads are available on GitHub actions.
Commands
These correspond to plugins.
shutdown
Shut the Kvarn instance down.
If the graceful-shutdown
cargo feature is enabled, this
performs a graceful shutdown (no connections are abruptly terminated). You can
implement your own shutdown mechanism.
ping
Pings Kvarn. The response will be all the arguments joined with spaces
reload
Starts a new instance in place and performs a graceful shutdown. Requires both
the capabilities necessitated by shutdown
and that the OS is UNIX
& !Solaris & !illumos. This is also what
is required by handover.
If handover isn’t available, there will be a small gap where no listener is
online - if someone requests the webpage during the ~0.4s window, they get a
Server couldn't be reached
error from their browser.
If the argument wait
is passed (kvarnctl reload wait
), the command doesn’t
return until the old instance has been shut down.
wait
Waits for the Kvarn instance to shut down.
clear
Format: kvarnctl clear <method> (<host> <file/URI>)
Clears caches. Methods available are all
, files
, responses
(these
optionally take a host to clear), and two which clear a specific resource,
file
and response
.
Waiting for Kvarn to turn off
If you want to wait for when Kvarn turns off, use the --wait
flag. The
advantage of using the flag instead of the command is that the command returns
when an instance is shut down. The flag handles reloads, so it’ll still wait
after a reload, for a shutdown
(or anything else that makes Kvarn shut down).
This is accomplished by trying to reconnect once the
wait
command returns.
Path
By default, Kvarn listens on /run/user/<uid>/kvarn.sock
for users and
/run/kvarn.sock
for root users. You can
change this.
Disable
You can also disable the IPC altogether.