stopping – event signalling that a job is stopping
event is generated by the Upstart
daemon when an instance of a job begins stopping. The
environment variable contains the job name, and the
environment variable contains the instance name which will be empty for
If the job is stopping normally, the
environment variable will be
otherwise if the job is stopping because it has failed it will be
When the job has failed, the process that failed will be given in the
environment variable. This may be
pre-start, post-start, main, pre-stop or post-stop;
it may also be the special value
to indicate that the job is stopping because it hit the respawn limit.
Finally in the case of a failed job, one of either
may be given to indicate the cause of the stop. Either
will contain the exit status code of the process, or
will contain the name of the signal that the process received. The
job configuration stanza can be used to prevent particular exit status
values or signals resulting in a failed job, see
for more information.
is given for a failed process, it is because the process failed to spawn
(for example, file not found). See the system logs for the error.
will wait for all services started by this event to be running, all tasks
started by this event to have finished and all jobs stopped by this event
to be stopped before allowing the job to continue stopping.
This allows jobs to depend on other jobs, safely stopping themselves before
their dependency goes away. This event is typically combined with the
event by services.
Job configuration files may use the
stanza to export environment variables from their own environment into
for more details.
A service that wishes to depend on another service might use:
start on started apache
stop on stopping apache
A task that must be run before another task or service is stopped might
start on stopping postgresql RESULT=ok