# Copyright (c) 2011 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

description     "Job to trigger standard system services"
author          "chromium-os-dev@chromium.org"

# This job is used as a milestone marker for other jobs that want to
# start once at system boot, but don't want to delay bringing up
# the login screen.  Jobs depending on this job should provide a
# service that is not needed at login and not specific to a user
# session, but that should start once at boot time, possibly staying
# up for the life of the system.
#
# NOTE: jobs depending on this job can assume that boot-services
# have been started.
#
# Standard usage:
#   start on starting system-services
#   stop on stopping system-services
# Jobs that normally terminate in a bounded time (i.e. don't use
# 'respawn') should omit the 'stop on' stanza.

start on stopped boot-complete and started boot-services
stop on starting halt or starting reboot

# We only want to start once, but 'stopped boot-complete' happens
# every time Chrome displays the login screen.  To avoid firing
# every time, we omit the main process:  upstart marks us running
# on the first event, and ignores all subsequent events until we
# stop.
