Prerelease for libvirt-0.10.0

Snapshot before 0.10.0 expected beginning of september
This commit is contained in:
Daniel Veillard 2012-08-08 22:45:35 +08:00
parent f4e752a385
commit f463598b24
4 changed files with 142 additions and 70 deletions

View File

@ -1,46 +0,0 @@
From efe6c8021146d046846ead5b5efc9828d97c1ceb Mon Sep 17 00:00:00 2001
From: Christophe Fergeau <cfergeau@redhat.com>
Date: Thu, 12 Jul 2012 13:52:36 +0200
Subject: [PATCH] Fix daemon auto-spawning
Commit 32a9aac switched libvirt to use the XDG base directories
to locate most of its data/config. In particular, the per-user socket
for qemu:///session is now stored in the XDG runtime directory.
This directory is located by looking at the XDG_RUNTIME_DIR environment
variable, with a fallback to ~/.cache/libvirt if this variable is not
set.
When the daemon is autospawned because a client application wants
to use qemu:///session, the daemon is ran in a clean environment
which does not contain XDG_RUNTIME_DIR. It will create its socket
in ~/.cache/libvirt. If the client application has XDG_RUNTIME_DIR
set, it will not look for the socket in the fallback place, and will
fail to connect to the autospawned daemon.
This patch adds XDG_RUNTIME_DIR to the daemon environment before
auto-starting it. I've done this in virNetSocketForkDaemon rather
than in virCommandAddEnvPassCommon as I wasn't sure we want to pass
these variables to other commands libvirt spawns. XDG_CACHE_HOME
and XDG_CONFIG_HOME are also added to the daemon env as it makes use
of those as well.
---
src/rpc/virnetsocket.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/src/rpc/virnetsocket.c b/src/rpc/virnetsocket.c
index 0b32ffe..08dfbb0 100644
--- a/src/rpc/virnetsocket.c
+++ b/src/rpc/virnetsocket.c
@@ -97,6 +97,9 @@ static int virNetSocketForkDaemon(const char *binary)
NULL);
virCommandAddEnvPassCommon(cmd);
+ virCommandAddEnvPass(cmd, "XDG_CACHE_HOME");
+ virCommandAddEnvPass(cmd, "XDG_CONFIG_HOME");
+ virCommandAddEnvPass(cmd, "XDG_RUNTIME_DIR");
virCommandClearCaps(cmd);
virCommandDaemonize(cmd);
ret = virCommandRun(cmd, NULL);
--
1.7.10.4

View File

@ -0,0 +1,67 @@
commit 1d170d3f9afce53b748acdbc0612758bba39aa35
Author: Eric Blake <eblake@redhat.com>
Date: Wed Aug 1 11:00:35 2012 -0600
build: commit to 0.10.0 release naming
With 0.10.0-rc0 out the door, we are committed to the next version
number.
* src/libvirt_public.syms (LIBVIRT_0.9.14): Rename...
(LIBVIRT_0.10.0): ...to this.
* docs/formatdomain.html.in: Fix fallout.
* src/openvz/openvz_driver.c (openvzDriver): Likewise.
* src/remote/remote_driver.c (remote_driver): Likewise.
diff --git a/docs/formatdomain.html.in b/docs/formatdomain.html.in
index c834577..f97c630 100644
--- a/docs/formatdomain.html.in
+++ b/docs/formatdomain.html.in
@@ -780,7 +780,7 @@
CPU model will fail. Supported values for <code>fallback</code>
attribute are: <code>allow</code> (this is the default), and
<code>forbid</code>. The optional <code>vendor_id</code> attribute
- (<span class="since">Since 0.9.14</span>) can be used to set the
+ (<span class="since">Since 0.10.0</span>) can be used to set the
vendor id seen by the guest. It must be exactly 12 characters long.
If not set the vendor id of the host is used. Typical possible
values are "AuthenticAMD" and "GenuineIntel".</dd>
diff --git a/src/libvirt_public.syms b/src/libvirt_public.syms
index 5004182..e3ba119 100644
--- a/src/libvirt_public.syms
+++ b/src/libvirt_public.syms
@@ -544,7 +544,7 @@ LIBVIRT_0.9.13 {
virDomainSnapshotRef;
} LIBVIRT_0.9.11;
-LIBVIRT_0.9.14 {
+LIBVIRT_0.10.0 {
global:
virDomainGetHostname;
virConnectRegisterCloseCallback;
diff --git a/src/openvz/openvz_driver.c b/src/openvz/openvz_driver.c
index 4cc7f46..48b5219 100644
--- a/src/openvz/openvz_driver.c
+++ b/src/openvz/openvz_driver.c
@@ -2170,7 +2170,7 @@ static virDriver openvzDriver = {
.domainIsUpdated = openvzDomainIsUpdated, /* 0.8.6 */
.isAlive = openvzIsAlive, /* 0.9.8 */
.domainUpdateDeviceFlags = openvzDomainUpdateDeviceFlags, /* 0.9.13 */
- .domainGetHostname = openvzDomainGetHostname, /* 0.9.14 */
+ .domainGetHostname = openvzDomainGetHostname, /* 0.10.0 */
};
int openvzRegister(void) {
diff --git a/src/remote/remote_driver.c b/src/remote/remote_driver.c
index 9354cb4..b9e2127 100644
--- a/src/remote/remote_driver.c
+++ b/src/remote/remote_driver.c
@@ -5366,7 +5366,7 @@ static virDriver remote_driver = {
.domainGetDiskErrors = remoteDomainGetDiskErrors, /* 0.9.10 */
.domainSetMetadata = remoteDomainSetMetadata, /* 0.9.10 */
.domainGetMetadata = remoteDomainGetMetadata, /* 0.9.10 */
- .domainGetHostname = remoteDomainGetHostname, /* 0.9.14 */
+ .domainGetHostname = remoteDomainGetHostname, /* 0.10.0 */
};
static virNetworkDriver network_driver = {

View File

@ -67,21 +67,27 @@
%define with_esx 0%{!?_without_esx:1}
%define with_hyperv 0%{!?_without_hyperv:1}
%define with_xenapi 0%{!?_without_xenapi:1}
%define with_parallels 0%{!?_without_parallels:1}
# Then the secondary host drivers, which run inside libvirtd
%define with_network 0%{!?_without_network:%{server_drivers}}
%define with_storage_fs 0%{!?_without_storage_fs:%{server_drivers}}
%define with_storage_lvm 0%{!?_without_storage_lvm:%{server_drivers}}
%define with_storage_iscsi 0%{!?_without_storage_iscsi:%{server_drivers}}
%define with_storage_disk 0%{!?_without_storage_disk:%{server_drivers}}
%define with_storage_mpath 0%{!?_without_storage_mpath:%{server_drivers}}
%define with_network 0%{!?_without_network:%{server_drivers}}
%define with_storage_fs 0%{!?_without_storage_fs:%{server_drivers}}
%define with_storage_lvm 0%{!?_without_storage_lvm:%{server_drivers}}
%define with_storage_iscsi 0%{!?_without_storage_iscsi:%{server_drivers}}
%define with_storage_disk 0%{!?_without_storage_disk:%{server_drivers}}
%define with_storage_mpath 0%{!?_without_storage_mpath:%{server_drivers}}
%if 0%{?fedora} >= 16
%define with_storage_rbd 0%{!?_without_storage_rbd:%{server_drivers}}
%define with_storage_rbd 0%{!?_without_storage_rbd:%{server_drivers}}
%else
%define with_storage_rbd 0
%define with_storage_rbd 0
%endif
%define with_numactl 0%{!?_without_numactl:%{server_drivers}}
%define with_selinux 0%{!?_without_selinux:%{server_drivers}}
%if 0%{?fedora} >= 17
%define with_storage_sheepdog 0%{!?_without_storage_sheepdog:%{server_drivers}}
%else
%define with_storage_sheepdog 0
%endif
%define with_numactl 0%{!?_without_numactl:%{server_drivers}}
%define with_selinux 0%{!?_without_selinux:%{server_drivers}}
# A few optional bits off by default, we enable later
%define with_polkit 0%{!?_without_polkit:0}
@ -131,6 +137,7 @@
%define with_xenapi 0
%define with_libxl 0
%define with_hyperv 0
%define with_parallels 0
%endif
# Fedora 17 / RHEL-7 are first where we use systemd. Although earlier
@ -224,6 +231,7 @@
%define with_storage_iscsi 0
%define with_storage_mpath 0
%define with_storage_rbd 0
%define with_storage_sheepdog 0
%define with_storage_disk 0
%endif
@ -300,8 +308,8 @@
Summary: Library providing a simple virtualization API
Name: libvirt
Version: 0.9.13
Release: 3%{?dist}%{?extra_release}
Version: 0.10.0
Release: 0rc0%{?dist}%{?extra_release}
License: LGPLv2+
Group: Development/Libraries
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
@ -310,10 +318,8 @@ URL: http://libvirt.org/
%if %(echo %{version} | grep -o \\. | wc -l) == 3
%define mainturl stable_updates/
%endif
Source: http://libvirt.org/sources/%{?mainturl}libvirt-%{version}.tar.gz
# Upstream patch to fix RHBZ#842114. Can be removed in 0.9.14.
Patch0: 0001-Fix-daemon-auto-spawning.patch
Source: http://libvirt.org/sources/%{?mainturl}libvirt-%{version}-rc0.tar.gz
Patch0: libvirt-0.10.0-rc0-release-naming.patch
%if %{with_libvirtd}
Requires: libvirt-daemon = %{version}-%{release}
@ -323,8 +329,30 @@ Requires: libvirt-daemon-config-network = %{version}-%{release}
%if %{with_nwfilter}
Requires: libvirt-daemon-config-nwfilter = %{version}-%{release}
%endif
# XXX when we turn on driver modules, we need to add
# deps on each driver (Requires: libvirt-daemon-drv-qemu)
%if %{with_driver_modules}
%if %{with_libxl}
Requires: libvirt-daemon-driver-libxl = %{version}-%{release}
%endif
%if %{with_lxc}
Requires: libvirt-daemon-driver-lxc = %{version}-%{release}
%endif
%if %{with_qemu}
Requires: libvirt-daemon-driver-qemu = %{version}-%{release}
%endif
%if %{with_uml}
Requires: libvirt-daemon-driver-uml = %{version}-%{release}
%endif
%if %{with_xen}
Requires: libvirt-daemon-driver-xen = %{version}-%{release}
%endif
Requires: libvirt-daemon-driver-interface = %{version}-%{release}
Requires: libvirt-daemon-driver-secret = %{version}-%{release}
Requires: libvirt-daemon-driver-storage = %{version}-%{release}
Requires: libvirt-daemon-driver-network = %{version}-%{release}
Requires: libvirt-daemon-driver-nodedev = %{version}-%{release}
Requires: libvirt-daemon-driver-nwfilter = %{version}-%{release}
%endif
%endif
Requires: libvirt-client = %{version}-%{release}
@ -610,6 +638,10 @@ Requires: device-mapper
# For RBD support
Requires: ceph
%endif
%if %{with_storage_sheepdog}
# For Sheepdog support
Requires: sheepdog
%endif
%if %{with_cgconfig}
Requires: libcgroup
%endif
@ -737,7 +769,9 @@ Summary: Qemu driver plugin for the libvirtd daemon
Group: Development/Libraries
Requires: libvirt-daemon = %{version}-%{release}
# There really is a hard cross-driver dependency here
%if %{with_driver_modules}
Requires: libvirt-daemon-driver-network = %{version}-%{release}
%endif
%description daemon-driver-qemu
The qemu driver plugin for the libvirtd daemon, providing
@ -752,7 +786,9 @@ Summary: LXC driver plugin for the libvirtd daemon
Group: Development/Libraries
Requires: libvirt-daemon = %{version}-%{release}
# There really is a hard cross-driver dependency here
%if %{with_driver_modules}
Requires: libvirt-daemon-driver-network = %{version}-%{release}
%endif
%description daemon-driver-lxc
The LXC driver plugin for the libvirtd daemon, providing
@ -985,7 +1021,6 @@ of recent versions of Linux (and other OSes).
%prep
%setup -q
%patch0 -p1
%build
@ -1041,6 +1076,10 @@ of recent versions of Linux (and other OSes).
%define _without_vmware --without-vmware
%endif
%if ! %{with_parallels}
%define _without_parallels --without-parallels
%endif
%if ! %{with_polkit}
%define _without_polkit --without-polkit
%endif
@ -1089,6 +1128,10 @@ of recent versions of Linux (and other OSes).
%define _without_storage_rbd --without-storage-rbd
%endif
%if ! %{with_storage_sheepdog}
%define _without_storage_sheepdog --without-storage-sheepdog
%endif
%if ! %{with_numactl}
%define _without_numactl --without-numactl
%endif
@ -1179,6 +1222,7 @@ autoreconf -if
%{?_without_esx} \
%{?_without_hyperv} \
%{?_without_vmware} \
%{?_without_parallels} \
%{?_without_network} \
%{?_with_rhel5_api} \
%{?_without_storage_fs} \
@ -1187,6 +1231,7 @@ autoreconf -if
%{?_without_storage_disk} \
%{?_without_storage_mpath} \
%{?_without_storage_rbd} \
%{?_without_storage_sheepdog} \
%{?_without_numactl} \
%{?_without_numad} \
%{?_without_capng} \
@ -1284,11 +1329,13 @@ rm -fr %{buildroot}
%check
cd tests
# These 3 tests don't current work in a mock build root
for i in nodeinfotest daemon-conf seclabeltest
make
# These tests don't current work in a mock build root
for i in nodeinfotest seclabeltest virdrivermoduletest
do
rm -f $i
printf "#!/bin/sh\nexit 0\n" > $i
printf 'int main(void) { return(0); }' > $i.c
printf '#!/bin/sh\nexit 0\n' > $i
chmod +x $i
done
make check
@ -1369,7 +1416,7 @@ fi
/sbin/chkconfig --add libvirtd
if [ "$1" -ge "1" ]; then
/sbin/service libvirtd condrestart > /dev/null 2>&1
/sbin/service libvirtd condrestart > /dev/null 2>&1
fi
%endif
@ -1797,6 +1844,10 @@ rm -f $RPM_BUILD_ROOT%{_sysconfdir}/sysctl.d/libvirtd
%endif
%changelog
* Wed Aug 8 2012 Daniel Veillard <veillard@redhat.com> - 0.10.0-0rc0
- snapshot before 0.10.0 in a few weeks
- adds the parallel driver support
* Mon Jul 23 2012 Richard W.M. Jones <rjones@redhat.com> - 0.9.13-3
- Add upstream patch to fix RHBZ#842114.

View File

@ -1 +1 @@
86cbe53ee662e3b9e8bb0c63c737ba27 libvirt-0.9.13.tar.gz
75fffe250104c44e23a6bf8e4925311f libvirt-0.10.0-rc0.tar.gz