Hello community,
here is the log from the commit of package libvirt for openSUSE:Factory
checked in at Sat Jan 15 02:54:56 CET 2011.
--------
--- libvirt/libvirt.changes 2010-12-11 00:34:43.000000000 +0100
+++ libvirt/libvirt.changes 2011-01-14 23:41:35.000000000 +0100
@@ -1,0 +2,31 @@
+Fri Jan 14 15:39:16 MST 2011 - jfehlig@novell.com
+
+- Fix generation of dnsmasq's --dhcp-hostsfile option
+ a43c7338-dnsmasq-hostfile-fix.patch
+- Disable yajl support as the library does not yet exist in
+ SuSE distros.
+
+-------------------------------------------------------------------
+Tue Jan 11 16:40:27 MST 2011 - jfehlig@novell.com
+
+- Support libvirt-guests on SuSE distros
+ use-libvirt-guests-on-suse.patch
+ bnc#653398
+
+-------------------------------------------------------------------
+Mon Jan 3 13:12:21 MST 2011 - jfehlig@novell.com
+
+- Update to libvirt 0.8.7
+ - Preliminary support for VirtualBox 4.0
+ - IPv6 support
+ - Add VMware Workstation and Player driver
+ - Add network disk support
+
+-------------------------------------------------------------------
+Wed Dec 22 14:41:46 MST 2010 - jfehlig@novell.com
+
+- Fix VNC port reservation race in qemu driver
+ c58b1056-init-bitmap-size.patch
+ bnc#659431
+
+-------------------------------------------------------------------
calling whatdependson for head-i586
Old:
----
45147ca3-macvtap-warning.patch
474b1c14-macvtap-undefined.patch
libvirt-0.8.6.tar.bz2
New:
----
a43c7338-dnsmasq-hostfile-fix.patch
libvirt-0.8.7.tar.bz2
use-libvirt-guests-on-suse.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libvirt.spec ++++++
--- /var/tmp/diff_new_pack.N7u8H7/_old 2011-01-15 02:49:14.000000000 +0100
+++ /var/tmp/diff_new_pack.N7u8H7/_new 2011-01-15 02:49:14.000000000 +0100
@@ -1,7 +1,7 @@
#
-# spec file for package libvirt (Version 0.8.6)
+# spec file for package libvirt
#
-# Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -39,6 +39,8 @@
%define with_selinux 1
%define with_apparmor 0
# options
+# still no yajl json library
+%define with_yajl 0
%if 0%{?suse_version} >= 1130
%define with_capng 1
%else
@@ -46,12 +48,10 @@
%endif
%if 0%{?suse_version} >= 1140
%define with_netcf 1
-%define with_yajl 1
%define with_macvtap 1
%define with_virtualport 1
%else
%define with_netcf 0
-%define with_yajl 0
%define with_macvtap 0
%define with_virtualport 0
%endif
@@ -144,7 +144,7 @@
License: LGPLv2.1+
Group: Development/Libraries/C and C++
AutoReqProv: yes
-Version: 0.8.6
+Version: 0.8.7
Release: 1
Summary: A C toolkit to interract with the virtualization capabilities of Linux
# The client side, i.e. shared libs and virsh are in a subpackage
@@ -169,8 +169,7 @@
Source0: %{name}-%{version}.tar.bz2
Source1: libvirtd.init
# Upstream patches
-Patch0: 45147ca3-macvtap-warning.patch
-Patch1: 474b1c14-macvtap-undefined.patch
+Patch0: a43c7338-dnsmasq-hostfile-fix.patch
# Need to go upstream
Patch100: xen-name-for-devid.patch
Patch102: clone.patch
@@ -179,6 +178,7 @@
Patch105: xend-disk-order.patch
# Our patches
Patch200: libvirtd-defaults.patch
+Patch201: use-libvirt-guests-on-suse.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
@@ -283,13 +283,13 @@
%prep
%setup -q
%patch0 -p1
-%patch1 -p1
%patch100 -p1
%patch102
%patch103 -p1
%patch104 -p1
%patch105 -p1
%patch200 -p1
+%patch201 -p1
%build
%if ! %{with_xen}
@@ -422,10 +422,11 @@
ln_dupes .%{_docdir}/%{name}
ln_dupes ./usr/share/locale
)
-# init script
+# init scripts
mkdir -p $RPM_BUILD_ROOT/etc/init.d
install %SOURCE1 $RPM_BUILD_ROOT/etc/init.d/libvirtd
ln -s /etc/init.d/libvirtd $RPM_BUILD_ROOT/usr/sbin/rclibvirtd
+ln -s /etc/init.d/libvirt-guests $RPM_BUILD_ROOT/usr/sbin/rclibvirt-guests
%find_lang %{name}
%clean
@@ -435,6 +436,7 @@
/sbin/ldconfig
%if 0%{?sles_version}
%{fillup_and_insserv -f -y libvirtd}
+%{fillup_only -n libvirt-guests}
%endif
%preun
@@ -511,6 +513,9 @@
%{_bindir}/virt-xml-validate
%{_bindir}/virt-pki-validate
%{_libdir}/lib*.so.*
+%{_localstatedir}/adm/fillup-templates/sysconfig.libvirt-guests
+%config /etc/init.d/libvirt-guests
+%{_sbindir}/rclibvirt-guests
%dir %{_datadir}/libvirt/
%dir %{_datadir}/libvirt/schemas/
++++++ a43c7338-dnsmasq-hostfile-fix.patch ++++++
commit a43c7338d8772aa3a5bc0ec5914d3c28c20447c3
Author: Kay Schubert
Date: Thu Jan 6 09:14:58 2011 +0100
bridge: Fix generation of dnsmasq's --dhcp-hostsfile option
I added a host definition to a network definition:
<network>
<name>Lokal</name>
<uuid>2074f379-b82c-423f-9ada-305d8088daaa</uuid>
<bridge name='virbr1' stp='on' delay='0' />
<ip address='192.168.180.1' netmask='255.255.255.0'>
<dhcp>
<range start='192.168.180.128' end='192.168.180.254' />
<host mac='23:74:00:03:42:02' name='somevm' ip='192.168.180.10' />
</dhcp>
</ip>
</network>
But due to the wrong if-statement the argument --dhcp-hostsfile doesn't get
added to the dnsmasq command. The patch below fixes it for me.
diff --git a/AUTHORS b/AUTHORS
index b204bd6..721b8f8 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -142,6 +142,7 @@ Patches have also been contributed by:
Josh Durgin
Roopa Prabhu
Paweł Krześniak
+ Kay Schubert
[....send patches to get your name here....]
diff --git a/src/network/bridge_driver.c b/src/network/bridge_driver.c
index 7d43ef5..4c64a74 100644
--- a/src/network/bridge_driver.c
+++ b/src/network/bridge_driver.c
@@ -524,7 +524,7 @@ networkBuildDnsmasqArgv(virNetworkObjPtr network,
goto cleanup;
}
- if (networkSaveDnsmasqHostsfile(ipdef, dctx, false) < 0) {
+ if (networkSaveDnsmasqHostsfile(ipdef, dctx, false) == 0) {
virCommandAddArgPair(cmd, "--dhcp-hostsfile",
dctx->hostsfile->path);
}
++++++ libvirt-0.8.6.tar.bz2 -> libvirt-0.8.7.tar.bz2 ++++++
libvirt/libvirt-0.8.6.tar.bz2 libvirt/libvirt-0.8.7.tar.bz2 differ: char 11, line 1
++++++ use-libvirt-guests-on-suse.patch ++++++
Index: libvirt-0.8.7/tools/Makefile.am
===================================================================
--- libvirt-0.8.7.orig/tools/Makefile.am
+++ libvirt-0.8.7/tools/Makefile.am
@@ -129,18 +129,18 @@ install-data-local: install-init
uninstall-local: uninstall-init
-if LIBVIRT_INIT_SCRIPT_RED_HAT
install-init: libvirt-guests.init
- mkdir -p $(DESTDIR)$(sysconfdir)/rc.d/init.d
+ mkdir -p $(DESTDIR)$(sysconfdir)/init.d
$(INSTALL_SCRIPT) libvirt-guests.init \
- $(DESTDIR)$(sysconfdir)/rc.d/init.d/libvirt-guests
- mkdir -p $(DESTDIR)$(sysconfdir)/sysconfig
+ $(DESTDIR)$(sysconfdir)/init.d/libvirt-guests
+ mkdir -p $(DESTDIR)/var/adm/fillup-templates
$(INSTALL_DATA) $(srcdir)/libvirt-guests.sysconf \
- $(DESTDIR)$(sysconfdir)/sysconfig/libvirt-guests
+ $(DESTDIR)/var/adm/fillup-templates/sysconfig.libvirt-guests
uninstall-init:
- rm -f $(DESTDIR)$(sysconfdir)/rc.d/init.d/libvirt-guests \
- $(DESTDIR)$(sysconfdir)/sysconfig/libvirt-guests
+ rm -f $(DESTDIR)$(sysconfdir)/init.d/libvirt-guests \
+ $(DESTDIR)$(sysconfdir)/sysconfig/libvirt-guests \
+ $(DESTDIR)/var/adm/fillup-templates/sysconfig.libvirt-guests
BUILT_SOURCES += libvirt-guests.init
@@ -152,11 +152,6 @@ libvirt-guests.init: libvirt-guests.init
< $< > $@-t && \
chmod a+x $@-t && \
mv $@-t $@
-else
-install-init:
-uninstall-init:
-libvirt-guests.init:
-endif # LIBVIRT_INIT_SCRIPT_RED_HAT
CLEANFILES = $(bin_SCRIPTS) $(man1_MANS)
Index: libvirt-0.8.7/tools/libvirt-guests.sysconf
===================================================================
--- libvirt-0.8.7.orig/tools/libvirt-guests.sysconf
+++ libvirt-0.8.7/tools/libvirt-guests.sysconf
@@ -1,15 +1,23 @@
+## Path: System/Virtualization/libvirt
+
+## Type: string
+## Default: default
# URIs to check for running guests
# example: URIS='default xen:/// vbox+tcp://host/system lxc:///'
-#URIS=default
+URIS=default
+## Type: string
+## Default: start
# action taken on host boot
# - start all guests which were running on shutdown are started on boot
# regardless on their autostart settings
# - ignore libvirt-guests init script won't start any guest on boot, however,
# guests marked as autostart will still be automatically started by
# libvirtd
-#ON_BOOT=start
+ON_BOOT=start
+## Type: string
+## Default: suspend
# action taken on host shutdown
# - suspend all running guests are suspended using virsh managedsave
# - shutdown all running guests are asked to shutdown. Please be careful with
@@ -18,7 +26,9 @@
# which just needs a long time to shutdown. When setting
# ON_SHUTDOWN=shutdown, you must also set SHUTDOWN_TIMEOUT to a
# value suitable for your guests.
-#ON_SHUTDOWN=suspend
+ON_SHUTDOWN=suspend
+## Type: integer
+## Default: 120
# number of seconds we're willing to wait for a guest to shut down
-#SHUTDOWN_TIMEOUT=0
+SHUTDOWN_TIMEOUT=120
Index: libvirt-0.8.7/tools/libvirt-guests.init.in
===================================================================
--- libvirt-0.8.7.orig/tools/libvirt-guests.init.in
+++ libvirt-0.8.7/tools/libvirt-guests.init.in
@@ -4,10 +4,10 @@
#
### BEGIN INIT INFO
# Provides: libvirt-guests
-# Required-Start: libvirtd
-# Required-Stop: libvirtd
-# Default-Start: 2 3 4 5
-# Default-Stop: 0 1 6
+# Required-Start: $network $remote_fs libvirtd
+# Required-Stop: $network $remote_fs libvirtd
+# Default-Start: 3 5
+# Default-Stop: 0 1 2 4 6
# Short-Description: suspend/resume libvirt guests on shutdown/boot
# Description: This is a script for suspending active libvirt guests
# on shutdown and resuming them on next boot
@@ -24,14 +24,13 @@
# See http://libvirt.org
#
+. /etc/rc.status
+rc_reset
+
sysconfdir=@sysconfdir@
localstatedir=@localstatedir@
libvirtd=@sbindir@/libvirtd
-# Source function library.
-test ! -r "$sysconfdir"/rc.d/init.d/functions ||
- . "$sysconfdir"/rc.d/init.d/functions
-
URIS=default
ON_BOOT=start
ON_SHUTDOWN=suspend
@@ -42,12 +41,10 @@ test -f "$sysconfdir"/sysconfig/libvirt-
LISTFILE="$localstatedir"/lib/libvirt/libvirt-guests
VAR_SUBSYS_LIBVIRT_GUESTS="$localstatedir"/lock/subsys/libvirt-guests
-RETVAL=0
-
retval() {
"$@"
if [ $? -ne 0 ]; then
- RETVAL=1
+ rc_failed 1
return 1
else
return 0
@@ -71,12 +68,31 @@ run_virsh_c() {
( export LC_ALL=C; run_virsh "$@" )
}
+await_daemon_up()
+{
+ uri=$1
+ i=1
+ rets=10
+ run_virsh $uri list > /dev/null 2>&1
+ while [ $? -ne 0 -a $i -lt $rets ]; do
+ sleep 1
+ echo -n .
+ i=$(($i + 1))
+ run_virsh $uri list > /dev/null 2>&1
+ done
+ if [ $i -eq $rets ]; then
+ echo $"libvirt-guests unable to connect to URI: $uri"
+ return 1
+ fi
+ return 0
+}
+
list_guests() {
uri=$1
list=$(run_virsh_c $uri list)
if [ $? -ne 0 ]; then
- RETVAL=1
+ rc_failed 1
return 1
fi
@@ -84,7 +100,7 @@ list_guests() {
for id in $(echo "$list" | awk 'NR > 2 {print $1}'); do
uuid=$(run_virsh_c $uri dominfo $id | awk '/^UUID:/{print $2}')
if [ -z "$uuid" ]; then
- RETVAL=1
+ rc_failed 1
return 1
fi
uuids="$uuids $uuid"
@@ -111,7 +127,7 @@ guest_is_on() {
guest_running=false
info=$(run_virsh_c $uri dominfo $uuid)
if [ $? -ne 0 ]; then
- RETVAL=1
+ rc_failed 1
return 1
fi
@@ -148,6 +164,12 @@ start() {
continue
fi
+ await_daemon_up $uri
+ if [ $? -ne 0 ]; then
+ echo $"Ignoring guests on $uri URI, can't connect"
+ continue
+ fi
+
echo $"Resuming guests on $uri URI..."
for guest in $list; do
name=$(guest_name $uri $guest)
@@ -227,7 +249,7 @@ stop() {
suspending=false
if [ $SHUTDOWN_TIMEOUT -le 0 ]; then
echo $"Shutdown action requested but SHUTDOWN_TIMEOUT was not set"
- RETVAL=6
+ rc_failed 6
return
fi
fi
@@ -291,14 +313,13 @@ gueststatus() {
rh_status() {
if [ -f "$LISTFILE" ]; then
echo $"stopped, with saved guests"
- RETVAL=3
+ rc_failed 3
else
if [ -f "$VAR_SUBSYS_LIBVIRT_GUESTS" ]; then
echo $"started"
else
echo $"stopped, with no saved guests"
fi
- RETVAL=0
fi
}
@@ -340,4 +361,4 @@ case "$1" in
usage
;;
esac
-exit $RETVAL
+rc_exit
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org