Re: s6 vs shell wrappers for client connections

From: Laurent Bercot <>
Date: Thu, 12 Jan 2023 00:51:24 +0000

>if s6-svstat myserver; then
> client_binary
> send_email_to_admin
> faux_client_binary

  Please don't do this.

  - As Steve would be able to tell you if he had read the documentation
page for s6-svstat (,
"s6-svstat myserver"'s exit code does not mirror whether myserver is
running or not. If myserver is a live service directory, s6-svstat
will print a line to stdout summarizing the status of the service,
then exit 0. Zero, even if the service is down, so client_binary
will fail.
  s6-svstat will only exit nonzero if an error occurs or if no
supervisor is running on myserver, which is not what this script
aims to test.

  - It is good to notify the admin when something on the system is not
working correctly. Doing it automatically from a script, however, is
not a good idea. Spamming the admin's mailbox via automated messages
is an great way to get yourself ignored at best (which defeats the
purpose of reporting bugs) or banned at worst.

  - If you're using s6, as I said earlier, you're supposed to be able
to assume that myserver is running, and you don't have to write
such wrappers, even ones that would work.

Received on Thu Jan 12 2023 - 01:51:24 CET

This archive was generated by hypermail 2.4.0 : Thu Jan 12 2023 - 01:51:55 CET