=head1 NAME
aa-setready - Set a service (un)ready
=head1 SYNOPSIS
B<aa-setready> [B<-D>] [B<-O> I<FILE|FD>] [B<-U> | B<-N>] I<SERVICEDIR>
=head1 OPTIONS
=over
=item B<-D, --double-output>
Enable double-output mode. Instead of using stdout for regular output, and
stderr for warnings and errors, everything is sent both to stdout and stderr.
This is intended to redirect stderr to a log file, so full output can be both
shown on console and logged.
B<Deprecation warning:> Note that this option has been deprecated and will be
removed in the next version; You should use B<--log-file> instead.
=item B<-h, --help>
Show help screen and exit.
=item B<-N, --unready>
Mark the service unready and emit event 'N' on I<event> fifodir.
=item B<-O, --log-file> I<FILE|FD>
Will duplicate all output (everything written to stdout or stderr) to the given
file or file descriptor. I<FILE|FD> can either be a (previously opened for
writing) file descriptor (must be > 2), or a file which will then be opened in
append mode.
=item B<-U, --ready>
Mark the service ready and emit event 'U' on I<event> fifodir. This is the
default.
=item B<-V, --version>
Show version information and exit.
=back
=head1 DESCRIPTION
B<aa-setready>(1) is a simple tool to mark a long-running service ready or
"unready".
Marking a service ready or unready means updating its s6 status file, and
emitting the corresponding event on the service's fifodir I<event>.
Unreadiness is meant for service that can stay up (running) but lose their ready
state (e.g. connection dropped).
Obviously you need to have the appropriate permissions to perform all the needed
tasks.
=head1 RETURN CODES
Return codes are somewhat unified inside B<anopa>. Odd return codes represent
fatal errors, and are detailled in B<anopa-rc>(1)
Possible even return codes for B<aa-setready>(1) are:
=over
=item B<2>
Failed to read s6 status file
=item B<4>
Service is not up
=item B<6>
Failed to init timestamp (needed for readiness timestamp, when marking ready)
=item B<8>
Failed to write s6 status file
=item B<10>
Failed to sent the event on I<event> fifodir
=back