Switch back to init.d for Ubuntu 14.04
Upstart is dead moving forward, just skip using it until systemd is default for Debian. Change-Id: I3ca250523d2871097001df0c76b3b83f57eb5c99 Signed-off-by: Paul Belanger <pabelanger@redhat.com>
This commit is contained in:
parent
1360549636
commit
617c03797c
|
@ -62,7 +62,6 @@ nodepool_pip_version:
|
|||
|
||||
# tasks/service.yaml
|
||||
nodepool_file_nodepool_service_group: root
|
||||
nodepool_file_nodepool_service_mode: "0644"
|
||||
nodepool_file_nodepool_service_owner: root
|
||||
|
||||
nodepool_service_enabled: yes
|
||||
|
|
|
@ -0,0 +1,154 @@
|
|||
#! /bin/sh
|
||||
### BEGIN INIT INFO
|
||||
# Provides: nodepool
|
||||
# Required-Start: $remote_fs $syslog
|
||||
# Required-Stop: $remote_fs $syslog
|
||||
# Default-Start: 2 3 4 5
|
||||
# Default-Stop: 0 1 6
|
||||
# Short-Description: Nodepool
|
||||
# Description: Trunk gating system
|
||||
### END INIT INFO
|
||||
|
||||
# PATH should only include /usr/* if it runs after the mountnfs.sh script
|
||||
PATH=/sbin:/usr/sbin:/bin:/usr/bin:/usr/local/bin
|
||||
DESC="Nodepool"
|
||||
NAME=nodepool
|
||||
DAEMON=/usr/local/bin/nodepoold
|
||||
PIDFILE=/var/run/$NAME/$NAME.pid
|
||||
SCRIPTNAME=/etc/init.d/$NAME
|
||||
USER=nodepool
|
||||
|
||||
# Exit if the package is not installed
|
||||
[ -x "$DAEMON" ] || exit 0
|
||||
|
||||
# Read configuration variable file if it is present
|
||||
[ -r /etc/default/$NAME ] && . /etc/default/$NAME
|
||||
|
||||
# Load the VERBOSE setting and other rcS variables
|
||||
. /lib/init/vars.sh
|
||||
|
||||
# Define LSB log_* functions.
|
||||
# Depend on lsb-base (>= 3.0-6) to ensure that this file is present.
|
||||
. /lib/lsb/init-functions
|
||||
|
||||
#
|
||||
# Function that starts the daemon/service
|
||||
#
|
||||
do_start()
|
||||
{
|
||||
# Return
|
||||
# 0 if daemon has been started
|
||||
# 1 if daemon was already running
|
||||
# 2 if daemon could not be started
|
||||
mkdir -p /var/run/$NAME
|
||||
chown $USER /var/run/$NAME
|
||||
start-stop-daemon --start --quiet --pidfile $PIDFILE -c $USER --exec $DAEMON --test > /dev/null \
|
||||
|| return 1
|
||||
start-stop-daemon --start --quiet --pidfile $PIDFILE -c $USER --exec $DAEMON -- \
|
||||
$DAEMON_ARGS \
|
||||
|| return 2
|
||||
# Add code here, if necessary, that waits for the process to be ready
|
||||
# to handle requests from services started subsequently which depend
|
||||
# on this one. As a last resort, sleep for some time.
|
||||
}
|
||||
|
||||
#
|
||||
# Function that stops the daemon/service
|
||||
#
|
||||
do_stop()
|
||||
{
|
||||
# Return
|
||||
# 0 if daemon has been stopped
|
||||
# 1 if daemon was already stopped
|
||||
# 2 if daemon could not be stopped
|
||||
# other if a failure occurred
|
||||
start-stop-daemon --stop --signal 9 --pidfile $PIDFILE
|
||||
RETVAL="$?"
|
||||
[ "$RETVAL" = 2 ] && return 2
|
||||
rm -f /var/run/$NAME/*
|
||||
return "$RETVAL"
|
||||
}
|
||||
|
||||
#
|
||||
# Function that stops the daemon/service
|
||||
#
|
||||
do_graceful_stop()
|
||||
{
|
||||
PID=`cat $PIDFILE`
|
||||
kill -INT $PID
|
||||
|
||||
# wait until really stopped
|
||||
if [ -n "${PID:-}" ]; then
|
||||
i=0
|
||||
while kill -0 "${PID:-}" 2> /dev/null; do
|
||||
if [ $i -eq '0' ]; then
|
||||
echo -n " ... waiting "
|
||||
else
|
||||
echo -n "."
|
||||
fi
|
||||
i=$(($i+1))
|
||||
sleep 1
|
||||
done
|
||||
fi
|
||||
|
||||
rm -f /var/run/$NAME/*
|
||||
}
|
||||
|
||||
#
|
||||
# Function that sends a SIGHUP to the daemon/service
|
||||
#
|
||||
do_reload() {
|
||||
#
|
||||
# If the daemon can reload its configuration without
|
||||
# restarting (for example, when it is sent a SIGHUP),
|
||||
# then implement that here.
|
||||
#
|
||||
start-stop-daemon --stop --signal 1 --quiet --pidfile $PIDFILE --name $NAME
|
||||
return 0
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
[ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC" "$NAME"
|
||||
do_start
|
||||
case "$?" in
|
||||
0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
|
||||
2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
|
||||
esac
|
||||
;;
|
||||
stop)
|
||||
[ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME"
|
||||
do_stop
|
||||
case "$?" in
|
||||
0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
|
||||
2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
|
||||
esac
|
||||
;;
|
||||
status)
|
||||
status_of_proc "$DAEMON" "$NAME" && exit 0 || exit $?
|
||||
;;
|
||||
reload|force-reload)
|
||||
#
|
||||
# If do_reload() is not implemented then leave this commented out
|
||||
# and leave 'force-reload' as an alias for 'restart'.
|
||||
#
|
||||
log_daemon_msg "Reloading $DESC" "$NAME"
|
||||
do_reload
|
||||
log_end_msg $?
|
||||
;;
|
||||
restart)
|
||||
#
|
||||
# If the "reload" option is implemented then remove the
|
||||
# 'force-reload' alias
|
||||
#
|
||||
log_daemon_msg "Restarting $DESC" "$NAME"
|
||||
do_graceful_stop
|
||||
do_start
|
||||
;;
|
||||
*)
|
||||
echo "Usage: $SCRIPTNAME {start|stop|status|restart|force-reload}" >&2
|
||||
exit 3
|
||||
;;
|
||||
esac
|
||||
|
||||
:
|
|
@ -1,20 +0,0 @@
|
|||
# nodepool - Manage a pool of nodes for a distributed test infrastructure
|
||||
#
|
||||
# Nodepool is a system for launching single-use test nodes on demand based on
|
||||
# images built with cached data.
|
||||
|
||||
description "Manage a pool of nodes for a distributed test infrastructure"
|
||||
|
||||
start on runlevel [2345]
|
||||
stop on runlevel [!2345]
|
||||
|
||||
expect fork
|
||||
respawn
|
||||
|
||||
setgid nodepool
|
||||
setuid nodepool
|
||||
|
||||
script
|
||||
. /etc/default/nodepool
|
||||
exec /usr/bin/nodepoold -d -l /etc/nodepool/logging.conf
|
||||
end script
|
|
@ -17,6 +17,11 @@
|
|||
nodepool_file_nodepool_service_dest: "{{ __nodepool_file_nodepool_service_dest }}"
|
||||
when: nodepool_file_nodepool_service_dest is not defined
|
||||
|
||||
- name: Define nodepool_file_nodepool_service_mode.
|
||||
set_fact:
|
||||
nodepool_file_nodepool_service_mode: "{{ __nodepool_file_nodepool_service_mode }}"
|
||||
when: nodepool_file_nodepool_service_mode is not defined
|
||||
|
||||
- name: Define nodepool_file_nodepool_service_src.
|
||||
set_fact:
|
||||
nodepool_file_nodepool_service_src: "{{ __nodepool_file_nodepool_service_src }}"
|
||||
|
|
|
@ -121,9 +121,9 @@
|
|||
- nodepool_git_dest_stat.stat.exists
|
||||
- nodepool_git_dest_stat.stat.isdir
|
||||
|
||||
- name: Register /etc/init/nodepool.conf
|
||||
- name: Register /etc/init.d/nodepool
|
||||
stat:
|
||||
path: /etc/init/nodepool.conf
|
||||
path: /etc/init.d/nodepool
|
||||
register: debian_nodepool_service_stat
|
||||
when: ansible_os_family == 'Debian'
|
||||
|
||||
|
@ -134,7 +134,7 @@
|
|||
- debian_nodepool_service_stat.stat.isreg
|
||||
- debian_nodepool_service_stat.stat.pw_name == 'root'
|
||||
- debian_nodepool_service_stat.stat.gr_name == 'root'
|
||||
- debian_nodepool_service_stat.stat.mode == '0644'
|
||||
- debian_nodepool_service_stat.stat.mode == '0755'
|
||||
when: ansible_os_family == 'Debian'
|
||||
|
||||
- name: Register /etc/systemd/system/nodepool.service
|
||||
|
@ -152,3 +152,7 @@
|
|||
- redhat_nodepool_service_stat.stat.gr_name == 'root'
|
||||
- redhat_nodepool_service_stat.stat.mode == '0644'
|
||||
when: ansible_os_family == 'RedHat'
|
||||
|
||||
- name: Ensure nodepoold is running.
|
||||
shell: /usr/sbin/service nodepool status
|
||||
tags: skip_ansible_lint
|
||||
|
|
|
@ -33,5 +33,6 @@ __nodepool_build_depends:
|
|||
- python-pip
|
||||
- zlib1g-dev
|
||||
|
||||
__nodepool_file_nodepool_service_dest: /etc/init/nodepool.conf
|
||||
__nodepool_file_nodepool_service_src: ../files/etc/init/nodepool.conf
|
||||
__nodepool_file_nodepool_service_dest: /etc/init.d/nodepool
|
||||
__nodepool_file_nodepool_service_mode: "0755"
|
||||
__nodepool_file_nodepool_service_src: ../files/etc/init.d/nodepool
|
||||
|
|
|
@ -25,4 +25,5 @@ __nodepool_build_depends:
|
|||
- zlib-devel
|
||||
|
||||
__nodepool_file_nodepool_service_dest: /etc/systemd/system/nodepool.service
|
||||
__nodepool_file_nodepool_service_mode: "0644"
|
||||
__nodepool_file_nodepool_service_src: ../files/etc/systemd/system/nodepool.service
|
||||
|
|
Loading…
Reference in New Issue