packages: xen/xen.spec, xen/blktapctrl.service (NEW), xen/blktapctrl.syscon...

baggins baggins at pld-linux.org
Wed Feb 29 14:44:29 CET 2012


Author: baggins                      Date: Wed Feb 29 13:44:29 2012 GMT
Module: packages                      Tag: HEAD
---- Log message:
- added POSIX-sh compatible init scripts
- added systemd services and configs
- drop hvm bcond, we have bcc on all relevant archs
- updated files
- merged udev into main package (there is no point splitting this on modern systems)
- build stubdom in build not in install
- stubdom must be built separately (no prefix and no CFLAGS redefining)

---- Files affected:
packages/xen:
   xen.spec (1.95 -> 1.96) , blktapctrl.service (NONE -> 1.1)  (NEW), blktapctrl.sysconfig (NONE -> 1.1)  (NEW), proc-xen.mount (NONE -> 1.1)  (NEW), var-lib-xenstored.mount (NONE -> 1.1)  (NEW), xen-watchdog.init (NONE -> 1.1)  (NEW), xen-watchdog.service (NONE -> 1.1)  (NEW), xen.logrotate (NONE -> 1.1)  (NEW), xenconsoled.init (NONE -> 1.1)  (NEW), xenconsoled.service (NONE -> 1.1)  (NEW), xenconsoled.sysconfig (NONE -> 1.1)  (NEW), xend.init (NONE -> 1.1)  (NEW), xend.service (NONE -> 1.1)  (NEW), xend.tmpfiles (NONE -> 1.1)  (NEW), xendomains.init (NONE -> 1.1)  (NEW), xenstored.init (NONE -> 1.1)  (NEW), xenstored.service (NONE -> 1.1)  (NEW), xenstored.sysconfig (NONE -> 1.1)  (NEW), xenstored.tmpfiles (NONE -> 1.1)  (NEW)

---- Diffs:

================================================================
Index: packages/xen/xen.spec
diff -u packages/xen/xen.spec:1.95 packages/xen/xen.spec:1.96
--- packages/xen/xen.spec:1.95	Wed Feb  8 19:20:39 2012
+++ packages/xen/xen.spec	Wed Feb 29 14:44:23 2012
@@ -4,9 +4,6 @@
 #  - most of the qemu config options aren't detected (curses, NPTL, vde, fdt)
 #  - package the ocaml stuff
 #
-# Conditional build:
-%bcond_without	hvm		# build with hvm (full virtualization) support
-
 %define	xen_extfiles_url	http://xenbits.xensource.com/xen-extfiles
 Summary:	Xen - a virtual machine monitor
 Summary(pl.UTF-8):	Xen - monitor maszyny wirtualnej
@@ -30,6 +27,25 @@
 # Source14-md5:	cd3f3eb54446be6003156158d51f4884
 Source15: %{xen_extfiles_url}/ipxe-git-v1.0.0.tar.gz
 # Source15-md5:	fb7df96781d337899066d82059346885
+Source30:	proc-xen.mount
+Source31:	var-lib-xenstored.mount
+Source32:	blktapctrl.service
+Source33:	blktapctrl.sysconfig
+Source34:	xenconsoled.service
+Source35:	xenconsoled.sysconfig
+Source36:	xenstored.service
+Source37:	xenstored.sysconfig
+Source38:	xenstored.tmpfiles
+Source39:	xend.service
+Source40:	xend.tmpfiles
+Source41:	xen-watchdog.service
+# sysvinit scripts
+Source50:	xend.init
+Source51:	xenconsoled.init
+Source52:	xenstored.init
+Source53:	xen-watchdog.init
+Source54:	xendomains.init
+Source55:	xen.logrotate
 Patch0:		%{name}-python_scripts.patch
 Patch1:		%{name}-symbols.patch
 Patch2:		%{name}-curses.patch
@@ -38,7 +54,7 @@
 URL:		http://www.cl.cam.ac.uk/Research/SRG/netos/xen/index.html
 BuildRequires:	SDL-devel
 BuildRequires:	acpica
-%{?with_hvm:BuildRequires:	bcc}
+BuildRequires:	bcc
 BuildRequires:	curl-devel
 BuildRequires:	e2fsprogs-devel
 BuildRequires:	gcc >= 5:3.4
@@ -73,6 +89,7 @@
 Requires:	util-linux
 Requires:	which
 Obsoletes:	xen-doc
+Obsoletes:	xen-udev
 ExclusiveArch:	%{ix86} %{x8664}
 BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
@@ -140,17 +157,6 @@
 %description static -l pl.UTF-8
 Statyczne biblioteki xena.
 
-%package udev
-Summary:	xen udev scripts
-Summary(pl.UTF-8):	Skrypty udev dla xena
-Group:		Applications/System
-
-%description udev
-xen udev scripts.
-
-%description udev -l pl.UTF-8
-Skrypty udev dla xena.
-
 %package xend
 Summary:	xend daemon
 Summary(pl.UTF-8):	Demon xend
@@ -199,21 +205,50 @@
 ln -s %{SOURCE15} tools/firmware/etherboot/ipxe.tar.gz
 
 %build
-CFLAGS="%{rpmcflags} -I/usr/include/ncurses" \
-CXXFLAGS="%{rpmcflags} -I/usr/include/ncurses" \
-%{__make} -j1 xen tools \
+export CFLAGS="%{rpmcflags} -I/usr/include/ncurses"
+export CXXFLAGS="%{rpmcflags} -I/usr/include/ncurses"
+
+%{__make} dist-xen dist-tools dist-docs \
+	prefix=%{_prefix} \
+	CC="%{__cc}" \
+	CXX="%{__cxx}"
+
+unset CFLAGS
+unset CXXFLAGS
+%{__make} -j1 dist-stubdom \
 	CC="%{__cc}" \
 	CXX="%{__cxx}"
 
 %install
 rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT/etc/xen/examples
+install -d $RPM_BUILD_ROOT/etc/xen/examples \
+	$RPM_BUILD_ROOT{/usr/lib/tmpfiles.d,%{systemdunitdir}}
 
-%{__make} install-xen install-tools install-stubdom install-docs \
-	CC="%{__cc}" \
-	CXX="%{__cxx}" \
+%{__make} -j1 install-xen install-tools install-stubdom install-docs \
+	prefix=%{_prefix} \
 	DESTDIR=$RPM_BUILD_ROOT
 
+install %{SOURCE30} $RPM_BUILD_ROOT%{systemdunitdir}/proc-xen.mount
+install %{SOURCE31} $RPM_BUILD_ROOT%{systemdunitdir}/var-lib-xenstored.mount
+install %{SOURCE32} $RPM_BUILD_ROOT%{systemdunitdir}/blktapctrl.service
+install %{SOURCE33} $RPM_BUILD_ROOT/etc/sysconfig/blktapctrl.sysconfig
+install %{SOURCE34} $RPM_BUILD_ROOT%{systemdunitdir}/xenconsoled.service
+install %{SOURCE35} $RPM_BUILD_ROOT/etc/sysconfig/xenconsoled.sysconfig
+install %{SOURCE36} $RPM_BUILD_ROOT%{systemdunitdir}/xenstored.service
+install %{SOURCE37} $RPM_BUILD_ROOT/etc/sysconfig/xenstored.sysconfig
+install %{SOURCE38} $RPM_BUILD_ROOT/usr/lib/tmpfiles.d/xenstored.conf
+install %{SOURCE39} $RPM_BUILD_ROOT%{systemdunitdir}/xend.service
+install %{SOURCE40} $RPM_BUILD_ROOT/usr/lib/tmpfiles.d/xend.conf
+install %{SOURCE41} $RPM_BUILD_ROOT%{systemdunitdir}/xen-watchdog.service
+# sysvinit scripts
+%{__rm} $RPM_BUILD_ROOT/etc/rc.d/init.d/*
+install %{SOURCE50} $RPM_BUILD_ROOT/etc/rc.d/init.d/xend
+install %{SOURCE51} $RPM_BUILD_ROOT/etc/rc.d/init.d/xenconsoled
+install %{SOURCE52} $RPM_BUILD_ROOT/etc/rc.d/init.d/xenstored
+install %{SOURCE53} $RPM_BUILD_ROOT/etc/rc.d/init.d/xen-watchdog
+install %{SOURCE54} $RPM_BUILD_ROOT/etc/rc.d/init.d/xendomains
+#install %{SOURCE55} $RPM_BUILD_ROOT/etc/logrotate.d/xen
+
 mv $RPM_BUILD_ROOT/etc/xen/{xmexample*,examples}
 
 cp -p tools/blktap/README{,.blktap}
@@ -235,7 +270,8 @@
 
 %post
 /sbin/chkconfig --add xen-watchdog
-/sbin/chkconfig --add xencommons
+/sbin/chkconfig --add xenconsoled
+/sbin/chkconfig --add xenstored
 /sbin/chkconfig --add xendomains
 
 %preun
@@ -243,8 +279,11 @@
 	%service xendomains stop
 	/sbin/chkconfig --del xendomains
 
-	%service xencommons stop
-	/sbin/chkconfig --del xencommons
+	%service xenconsoled stop
+	/sbin/chkconfig --del xenconsoled
+
+	%service xenstored stop
+	/sbin/chkconfig --del xenstored
 
 	%service xen-watchdog stop
 	/sbin/chkconfig --del xen-watchdog
@@ -271,10 +310,17 @@
 /boot/%{name}-syms-%{version}
 /boot/%{name}-%{version}.gz
 /boot/%{name}.gz
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/*
 %attr(754,root,root) /etc/rc.d/init.d/xen-watchdog
-%attr(754,root,root) /etc/rc.d/init.d/xencommons
+%attr(754,root,root) /etc/rc.d/init.d/xenconsoled
+%attr(754,root,root) /etc/rc.d/init.d/xenstored
 %attr(754,root,root) /etc/rc.d/init.d/xendomains
-%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/*
+%{systemdunitdir}/proc-xen.mount
+%{systemdunitdir}/var-lib-xenstored.mount
+%{systemdunitdir}/blktapctrl.service
+%{systemdunitdir}/xen-watchdog.service
+%{systemdunitdir}/xenconsoled.service
+%{systemdunitdir}/xenstored.service
 %dir %{_sysconfdir}/xen
 %dir %{_sysconfdir}/xen/auto
 %dir %{_sysconfdir}/xen/examples
@@ -284,6 +330,7 @@
 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/README*
 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/cpupool
 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/xl.conf
+%config(noreplace) %verify(not md5 mtime size) /etc/udev/*
 %attr(755,root,root) %{_bindir}/*
 %attr(755,root,root) %{_sbindir}/[bfgikloqtv]*
 %attr(755,root,root) %{_sbindir}/xen??*
@@ -294,14 +341,22 @@
 %attr(744,root,root) %{_libdir}/%{name}/bin/*
 %if "%{_lib}" != "lib"
 %dir %{_prefix}/lib/%{name}
+%dir %{_prefix}/lib/%{name}/bin
+%attr(755,root,root) %{_prefix}/lib/%{name}/bin/qemu-dm
+%attr(755,root,root) %{_prefix}/lib/%{name}/bin/stubdom-dm
+%attr(755,root,root) %{_prefix}/lib/%{name}/bin/stubdompath.sh
 %endif
 %dir %{_prefix}/lib/%{name}/boot
-%{?with_hvm:%attr(744,root,root) %{_prefix}/lib/%{name}/boot/hvmloader}
+%{_prefix}/lib/%{name}/boot/ioemu-stubdom.gz
+%{_prefix}/lib/%{name}/boot/pv-grub-x86_32.gz
+%{_prefix}/lib/%{name}/boot/pv-grub-x86_64.gz
+%attr(744,root,root) %{_prefix}/lib/%{name}/boot/hvmloader
 %{_datadir}/xen
 %{_mandir}/man?/*
 %{_sharedstatedir}/xen
 %{_sharedstatedir}/xenstored
 %dir /var/run/xenstored
+%{systemdtmpfilesdir}/xenstored.conf
 
 %files libs
 %defattr(644,root,root,755)
@@ -324,18 +379,16 @@
 %defattr(644,root,root,755)
 %{_libdir}/lib*.a
 
-%files udev
-%defattr(644,root,root,755)
-%config(noreplace) %verify(not md5 mtime size) /etc/udev/*
-
 %files xend
 %defattr(644,root,root,755)
 %attr(754,root,root) %{_sysconfdir}/rc.d/init.d/xend
+%{systemdunitdir}/xend.service
 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/xm*
 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/xend*
 %attr(755,root,root) %{_sbindir}/xend
 %attr(755,root,root) %{_sbindir}/xm
 %dir %attr(700,root,root) /var/run/xend
+%{systemdtmpfilesdir}/xend.conf
 
 %files -n python-xen
 %defattr(644,root,root,755)
@@ -367,6 +420,15 @@
 All persons listed below can be reached at <cvs_login>@pld-linux.org
 
 $Log$
+Revision 1.96  2012/02/29 13:44:23  baggins
+- added POSIX-sh compatible init scripts
+- added systemd services and configs
+- drop hvm bcond, we have bcc on all relevant archs
+- updated files
+- merged udev into main package (there is no point splitting this on modern systems)
+- build stubdom in build not in install
+- stubdom must be built separately (no prefix and no CFLAGS redefining)
+
 Revision 1.95  2012/02/08 18:20:39  mmazur
 - remove R: kernel(xen0)
 

================================================================
Index: packages/xen/blktapctrl.service
diff -u /dev/null packages/xen/blktapctrl.service:1.1
--- /dev/null	Wed Feb 29 14:44:29 2012
+++ packages/xen/blktapctrl.service	Wed Feb 29 14:44:23 2012
@@ -0,0 +1,15 @@
+[Unit]
+Description=blktapctrl daemon
+Requires=proc-xen.mount
+After=proc-xen.mount
+RefuseManualStop=true
+
+[Service]
+Type=forking
+Environment=BLKTAPCTRL_ARGS=
+EnvironmentFile=-/etc/sysconfig/blktapctrl
+ExecStartPre=/bin/grep -q control_d /proc/xen/capabilities
+ExecStart=/usr/sbin/blktapctrl $BLKTAPCTRL_ARGS
+
+[Install]
+WantedBy=multi-user.target

================================================================
Index: packages/xen/blktapctrl.sysconfig
diff -u /dev/null packages/xen/blktapctrl.sysconfig:1.1
--- /dev/null	Wed Feb 29 14:44:29 2012
+++ packages/xen/blktapctrl.sysconfig	Wed Feb 29 14:44:23 2012
@@ -0,0 +1 @@
+#BLKTAPCTRL_ARGS=

================================================================
Index: packages/xen/proc-xen.mount
diff -u /dev/null packages/xen/proc-xen.mount:1.1
--- /dev/null	Wed Feb 29 14:44:29 2012
+++ packages/xen/proc-xen.mount	Wed Feb 29 14:44:23 2012
@@ -0,0 +1,9 @@
+[Unit]
+Description=Mount /proc/xen files
+ConditionPathExists=/proc/xen
+RefuseManualStop=true
+
+[Mount]
+What=xenfs
+Where=/proc/xen
+Type=xenfs

================================================================
Index: packages/xen/var-lib-xenstored.mount
diff -u /dev/null packages/xen/var-lib-xenstored.mount:1.1
--- /dev/null	Wed Feb 29 14:44:29 2012
+++ packages/xen/var-lib-xenstored.mount	Wed Feb 29 14:44:23 2012
@@ -0,0 +1,9 @@
+[Unit]
+Description=mount xenstore file system
+ConditionPathExists=/proc/xen
+RefuseManualStop=true
+
+[Mount]
+What=xenstore
+Where=/var/lib/xenstored
+Type=tmpfs

================================================================
Index: packages/xen/xen-watchdog.init
diff -u /dev/null packages/xen/xen-watchdog.init:1.1
--- /dev/null	Wed Feb 29 14:44:29 2012
+++ packages/xen/xen-watchdog.init	Wed Feb 29 14:44:23 2012
@@ -0,0 +1,77 @@
+#!/bin/sh
+#
+# xen-watchdog		Run XEN domain watchdog daemon
+#
+# chkconfig:		2345 21 79
+# description:		Run XEN domain watchdog daemon
+# processname:		xenwatchdogd
+#
+### BEGIN INIT INFO
+# Provides:          xen-watchdog
+# Required-Start:    $syslog $remote_fs
+# Should-Start:      xend
+# Required-Stop:     $syslog $remote_fs
+# Should-Stop:       xend
+# Default-Start:     2 3 4 5
+# Default-Stop:      0 1 6
+# Short-Description: Start/stop xen-watchdog
+# Description:       Run XEN domain watchdog daemon.
+### END INIT INFO
+#
+
+# Source function library.
+. /etc/rc.d/init.d/functions
+
+start() {
+	if [ -f /var/lock/subsys/xen-watchdog ]; then
+		msg_already_running "XEN domain watchdog daemon"
+		return
+	fi
+	msg_starting "XEN domain watchdog daemon"
+
+	/usr/sbin/xenwatchdogd 30 15
+	RETVAL=$?
+	if [ $RETVAL -ne 0 ]; then
+		return 7
+	fi
+	touch /var/lock/subsys/xen-watchdog
+}
+
+stop() {
+	if [ ! -f /var/lock/subsys/xen-watchdog ]; then
+		msg_not_running "XEN domain watchdog daemon"
+		return
+	fi
+	msg_stopping "XEN domain watchdog daemon"
+
+	killproc xenwatchdogd -USR1
+	RETVAL=$?
+	rm -f /var/lock/subsys/xen-watchdog
+}
+
+RETVAL=0
+# See how we were called.
+case "$1" in
+  start)
+  	start
+	;;
+  stop)
+	stop
+	;;
+  restart)
+	stop
+	start
+	;;
+  status)
+	status xenwatchdogd
+	;;
+  condrestart)
+	stop
+	start
+	;;
+  *)
+	msg_usage "$0 {start|stop|status|restart|condrestart}"
+	exit 3
+esac
+
+exit $RETVAL

================================================================
Index: packages/xen/xen-watchdog.service
diff -u /dev/null packages/xen/xen-watchdog.service:1.1
--- /dev/null	Wed Feb 29 14:44:29 2012
+++ packages/xen/xen-watchdog.service	Wed Feb 29 14:44:23 2012
@@ -0,0 +1,12 @@
+[Unit]
+Description=Xen-watchdog - run xen watchdog daemon
+Requires=proc-xen.mount
+After=proc-xen.mount xend.service
+
+[Service]
+Type=forking
+ExecStart=/usr/sbin/xenwatchdogd 30 15
+KillSignal=USR1
+
+[Install]
+WantedBy=multi-user.target

================================================================
Index: packages/xen/xen.logrotate
diff -u /dev/null packages/xen/xen.logrotate:1.1
--- /dev/null	Wed Feb 29 14:44:29 2012
+++ packages/xen/xen.logrotate	Wed Feb 29 14:44:23 2012
@@ -0,0 +1,8 @@
+/var/log/xen/xend-debug.log
+/var/log/xen/xen-hotplug.log
+/var/log/xen/domain-builder-ng.log {
+	notifempty
+	missingok
+	copytruncate
+}
+

================================================================
Index: packages/xen/xenconsoled.init
diff -u /dev/null packages/xen/xenconsoled.init:1.1
--- /dev/null	Wed Feb 29 14:44:29 2012
+++ packages/xen/xenconsoled.init	Wed Feb 29 14:44:23 2012
@@ -0,0 +1,79 @@
+#!/bin/sh
+#
+# xenconsoled	Script to start and stop xenconsoled
+#
+# chkconfig:	2345 70 10
+# description:	Starts and stops xenconsoled
+### BEGIN INIT INFO
+# Provides:          xenconsoled
+# Required-Start:    $syslog $remote_fs
+# Should-Start:
+# Required-Stop:     $syslog $remote_fs
+# Should-Stop:
+# Default-Start:     2 3 4 5
+# Default-Stop:      0 1 6
+# Short-Description: Start/stop xenconsoled
+# Description:       Starts and stops the daemons neeeded for xl/xend
+### END INIT INFO
+
+# Source function library.
+. /etc/rc.d/init.d/functions
+
+# Read in configuration options.
+XENCONSOLED_ARGS=
+XENCONSOLED_LOG=none
+XENCONSOLED_LOG_DIR=/var/log/xen/console
+[ -f /etc/sysconfig/xenconsoled ] && . /etc/sysconfig/xenconsoled
+
+if [ "$1" = "start" -a -d /proc/xen -a ! -f /proc/xen/capabilities ] && \
+		! grep -qs '^xenfs ' /proc/mounts >/dev/null; then
+	mount -t xenfs xenfs /proc/xen
+fi
+
+grep -qs "control_d" /proc/xen/capabilities || exit 0
+
+start() {
+	if [ -f /var/lock/subsys/xenconsoled ]; then
+		msg_already_running xenconsoled
+		return
+	fi
+	msg_starting xenconsoled
+	daemon /usr/sbin/xenconsoled --pidfile=/var/run/xenconsoled.pid --log=${XENCONSOLED_LOG} --log-dir=${XENCONSOLED_LOG_DIR} $XENCONSOLED_ARGS
+	RETVAL=$?
+	[ $RETVAL -eq 0 ] && touch /var/lock/subsys/xenconsoled
+}
+
+stop() {
+	if [ ! -f /var/lock/subsys/xenconsoled ]; then
+		msg_not_running xenconsoled
+		return
+	fi
+	msg_stopping xenconsoled
+	killproc --pidfile /var/run/xenconsoled.pid xenconsoled
+	RETVAL=$?
+	rm -f /var/run/xenconsoled.pid >/dev/null 2>&1
+	rm -f /var/lock/subsys/xenconsoled >/dev/null 2>&1
+}
+
+RETVAL=0
+# See how we were called.
+case "$1" in
+  start)
+	start
+	;;
+  status)
+        status xenconsoled
+	;;
+  stop)
+	stop
+	;;
+  force-reload|restart)
+        stop
+	start
+	;;
+  *)
+	msg_usage "$0 {start|stop|status|restart|force-reload}"
+	exit 3
+esac
+
+exit $RETVAL

================================================================
Index: packages/xen/xenconsoled.service
diff -u /dev/null packages/xen/xenconsoled.service:1.1
--- /dev/null	Wed Feb 29 14:44:29 2012
+++ packages/xen/xenconsoled.service	Wed Feb 29 14:44:23 2012
@@ -0,0 +1,17 @@
+[Unit]
+Description=Xenconsoled - handles logging from guest consoles and hypervisor
+Requires=proc-xen.mount
+After=proc-xen.mount xenstored.service
+
+[Service]
+Type=simple
+Environment=XENCONSOLED_ARGS=
+Environment=XENCONSOLED_LOG=none
+Environment=XENCONSOLED_LOG_DIR=/var/log/xen/console
+EnvironmentFile=-/etc/sysconfig/xenconsoled
+PIDFile=/var/run/xenconsoled.pid
+ExecStartPre=/bin/grep -q control_d /proc/xen/capabilities
+ExecStart=/usr/sbin/xenconsoled --log=${XENCONSOLED_LOG} --log-dir=${XENCONSOLED_LOG_DIR} $XENCONSOLED_ARGS
+
+[Install]
+WantedBy=multi-user.target

================================================================
Index: packages/xen/xenconsoled.sysconfig
diff -u /dev/null packages/xen/xenconsoled.sysconfig:1.1
--- /dev/null	Wed Feb 29 14:44:29 2012
+++ packages/xen/xenconsoled.sysconfig	Wed Feb 29 14:44:23 2012
@@ -0,0 +1,7 @@
+# Log xenconsoled messages (none|guest console only|hypervisor messages only|both)
+#XENCONSOLED_LOG=[none|guest|hv|all]
+
+# Location to store guest & hypervisor logs
+#XENCONSOLED_LOG_DIR=/var/log/xen/console
+
+#XENCONSOLED_ARGS=

================================================================
Index: packages/xen/xend.init
diff -u /dev/null packages/xen/xend.init:1.1
--- /dev/null	Wed Feb 29 14:44:29 2012
+++ packages/xen/xend.init	Wed Feb 29 14:44:23 2012
@@ -0,0 +1,117 @@
+#!/bin/sh
+#
+# xend		Script to start and stop the Xen control daemon.
+#
+# chkconfig:	2345 98 01
+# description:	Starts and stops the Xen control daemon.
+#
+### BEGIN INIT INFO
+# Provides:          xend
+# Required-Start:    $syslog $remote_fs xenstored xenconsoled 
+# Should-Start:
+# Required-Stop:     $syslog $remote_fs xenstored xenconsoled 
+# Should-Stop:
+# Default-Start:     2 3 4 5
+# Default-Stop:      0 1 6
+# Short-Description: Start/stop xend
+# Description:       Starts and stops the Xen control daemon.
+### END INIT INFO
+
+waitfordaemon() {
+	i=1
+	rets=10
+	/usr/sbin/xend status
+	while [ $? -ne 0 -a $i -lt $rets ]; do
+		sleep 1
+		i=$(($i + 1))
+		/usr/sbin/xend status
+	done
+	return $?
+}
+
+start() {
+	if [ -f /var/lock/subsys/xend ]; then
+		msg_already_running "Xen control daemon"
+		return
+	fi
+	if [ ! -f /var/lock/subsys/xenconsoled -o ! -f /var/lock/subsys/xenstored ]; then
+		echo "xenconsoled and xenstored must be started first"
+		return
+	fi
+	show "Starting Xen control daemon"
+	busy
+	/usr/sbin/xend start
+	waitfordaemon
+	RETVAL=$?
+	if [ $RETVAL -eq 0 ]; then
+		touch /var/lock/subsys/xend
+		ok
+	else
+		fail
<<Diff was trimmed, longer than 597 lines>>

---- CVS-web:
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/xen/xen.spec?r1=1.95&r2=1.96&f=u



More information about the pld-cvs-commit mailing list