Fix creating storage paths if directory is all digits (bz #1069351)
Properly close connection if tick fails (bz #1069351) virt-manager: Handle unrefreshed storage pools (bz #1070883) Fix unsetting 'auto resize' console property
This commit is contained in:
parent
192ee79c50
commit
90230fbec6
@ -0,0 +1,44 @@
|
|||||||
|
From c7312ce1f5f13d77daf922924cef2f4f7b550e42 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Martin Kletzander <mkletzan@redhat.com>
|
||||||
|
Date: Tue, 18 Feb 2014 11:38:56 +0100
|
||||||
|
Subject: [PATCH] addhardware: generate target only if not customizing
|
||||||
|
|
||||||
|
Commit 078e1a4d0503d98884b5b61df83021941bf32e8d changed the fact that
|
||||||
|
disk target was generated only when adding new disk, not when current
|
||||||
|
disk is being customized, so fix that back.
|
||||||
|
|
||||||
|
Signed-off-by: Martin Kletzander <mkletzan@redhat.com>
|
||||||
|
(cherry picked from commit bc5d84b0407257b1e257e7cabaf619430a7e8f83)
|
||||||
|
---
|
||||||
|
virtManager/addhardware.py | 6 ++++--
|
||||||
|
1 file changed, 4 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/virtManager/addhardware.py b/virtManager/addhardware.py
|
||||||
|
index ecb5fc8..b1f6251 100644
|
||||||
|
--- a/virtManager/addhardware.py
|
||||||
|
+++ b/virtManager/addhardware.py
|
||||||
|
@@ -1471,20 +1471,22 @@ class vmmAddHardware(vmmGObjectUI):
|
||||||
|
return disk
|
||||||
|
|
||||||
|
try:
|
||||||
|
+ used = []
|
||||||
|
disk.bus = bus
|
||||||
|
if cache:
|
||||||
|
disk.driver_cache = cache
|
||||||
|
|
||||||
|
# Generate target
|
||||||
|
if not self.is_customize_dialog:
|
||||||
|
- used = []
|
||||||
|
disks = (self.vm.get_disk_devices() +
|
||||||
|
self.vm.get_disk_devices(inactive=True))
|
||||||
|
for d in disks:
|
||||||
|
used.append(d.target)
|
||||||
|
|
||||||
|
prefer_ctrl = self._set_disk_controller(disk, controller_model, disks)
|
||||||
|
- disk.generate_target(used, prefer_ctrl)
|
||||||
|
+
|
||||||
|
+ if not self.is_customize_dialog:
|
||||||
|
+ disk.generate_target(used, prefer_ctrl)
|
||||||
|
|
||||||
|
except Exception, e:
|
||||||
|
return self.err.val_err(_("Storage parameter error."), e)
|
@ -0,0 +1,29 @@
|
|||||||
|
From f6756e8367757301d095dc35fbe477f234ba20d1 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Cole Robinson <crobinso@redhat.com>
|
||||||
|
Date: Tue, 25 Feb 2014 14:54:06 -0500
|
||||||
|
Subject: [PATCH] Don't forbid object names that are only all numbers (bz
|
||||||
|
1067127)
|
||||||
|
|
||||||
|
Just let libvirt error, since in the case of things like storage pools
|
||||||
|
this is totally legitimate.
|
||||||
|
|
||||||
|
(cherry picked from commit 3efbefe91a1ec23cbcf3d4f5a72a02fab87daa83)
|
||||||
|
---
|
||||||
|
virtinst/util.py | 4 ----
|
||||||
|
1 file changed, 4 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/virtinst/util.py b/virtinst/util.py
|
||||||
|
index 31ccd38..2fe00d3 100644
|
||||||
|
--- a/virtinst/util.py
|
||||||
|
+++ b/virtinst/util.py
|
||||||
|
@@ -140,10 +140,6 @@ def validate_uuid(val):
|
||||||
|
|
||||||
|
|
||||||
|
def validate_name(name_type, val):
|
||||||
|
- if re.match("^[0-9]+$", val):
|
||||||
|
- raise ValueError(_("%s name can not be only numeric characters") %
|
||||||
|
- name_type)
|
||||||
|
-
|
||||||
|
# Rather than try and match libvirt's regex, just forbid things we
|
||||||
|
# know don't work
|
||||||
|
forbid = [" "]
|
@ -0,0 +1,69 @@
|
|||||||
|
From 74e0b06cb64009b5253e8ed54b1e56f1343cb85c Mon Sep 17 00:00:00 2001
|
||||||
|
From: Cole Robinson <crobinso@redhat.com>
|
||||||
|
Date: Tue, 25 Feb 2014 15:17:34 -0500
|
||||||
|
Subject: [PATCH] engine: Fix closing connection when tick() fails (bz 1069351)
|
||||||
|
|
||||||
|
(cherry picked from commit ce64d037bff56db994fedd065a9a34b8e827dda2)
|
||||||
|
---
|
||||||
|
virtManager/engine.py | 39 ++++++++++++++++++++++++---------------
|
||||||
|
1 file changed, 24 insertions(+), 15 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/virtManager/engine.py b/virtManager/engine.py
|
||||||
|
index cef3d20..0e5e15d 100644
|
||||||
|
--- a/virtManager/engine.py
|
||||||
|
+++ b/virtManager/engine.py
|
||||||
|
@@ -344,30 +344,39 @@ class vmmEngine(vmmGObject):
|
||||||
|
return 1
|
||||||
|
|
||||||
|
def _tick_single_conn(self, conn, kwargs):
|
||||||
|
+ e = None
|
||||||
|
try:
|
||||||
|
conn.tick(**kwargs)
|
||||||
|
except KeyboardInterrupt:
|
||||||
|
raise
|
||||||
|
- except libvirt.libvirtError, e:
|
||||||
|
- from_remote = getattr(libvirt, "VIR_FROM_REMOTE", None)
|
||||||
|
- from_rpc = getattr(libvirt, "VIR_FROM_RPC", None)
|
||||||
|
- sys_error = getattr(libvirt, "VIR_ERR_SYSTEM_ERROR", None)
|
||||||
|
+ except Exception, e:
|
||||||
|
+ pass
|
||||||
|
+
|
||||||
|
+ if e is None:
|
||||||
|
+ return
|
||||||
|
|
||||||
|
+ from_remote = getattr(libvirt, "VIR_FROM_REMOTE", None)
|
||||||
|
+ from_rpc = getattr(libvirt, "VIR_FROM_RPC", None)
|
||||||
|
+ sys_error = getattr(libvirt, "VIR_ERR_SYSTEM_ERROR", None)
|
||||||
|
+
|
||||||
|
+ dom = -1
|
||||||
|
+ code = -1
|
||||||
|
+ if isinstance(e, libvirt.libvirtError):
|
||||||
|
dom = e.get_error_domain()
|
||||||
|
code = e.get_error_code()
|
||||||
|
|
||||||
|
- if (dom in [from_remote, from_rpc] and
|
||||||
|
- code in [sys_error]):
|
||||||
|
- logging.exception("Could not refresh connection %s",
|
||||||
|
- conn.get_uri())
|
||||||
|
- logging.debug("Closing connection since libvirtd "
|
||||||
|
- "appears to have stopped")
|
||||||
|
- else:
|
||||||
|
- error_msg = _("Error polling connection '%s': %s") \
|
||||||
|
- % (conn.get_uri(), e)
|
||||||
|
- self.idle_add(lambda: self.err.show_err(error_msg))
|
||||||
|
+ if (dom in [from_remote, from_rpc] and
|
||||||
|
+ code in [sys_error]):
|
||||||
|
+ logging.exception("Could not refresh connection %s",
|
||||||
|
+ conn.get_uri())
|
||||||
|
+ logging.debug("Closing connection since libvirtd "
|
||||||
|
+ "appears to have stopped")
|
||||||
|
+ else:
|
||||||
|
+ error_msg = _("Error polling connection '%s': %s") \
|
||||||
|
+ % (conn.get_uri(), e)
|
||||||
|
+ self.idle_add(lambda: self.err.show_err(error_msg))
|
||||||
|
|
||||||
|
- self.idle_add(conn.close)
|
||||||
|
+ self.idle_add(conn.close)
|
||||||
|
|
||||||
|
|
||||||
|
def increment_window_counter(self, src):
|
@ -0,0 +1,39 @@
|
|||||||
|
From 84c1bd12297b366a7187592ca29cc03cb1daf3c5 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Cole Robinson <crobinso@redhat.com>
|
||||||
|
Date: Thu, 27 Feb 2014 13:16:21 -0500
|
||||||
|
Subject: [PATCH] vmm connection: Handle missing storage volumes (bz 1070883)
|
||||||
|
|
||||||
|
Similar to what was done in a808bd669293ac66047a716b2e84a5a64c99667b
|
||||||
|
for the virtinst connection wrapper.
|
||||||
|
|
||||||
|
(cherry picked from commit f67df117017e6de855a8c0e900e47fe920dfaa48)
|
||||||
|
---
|
||||||
|
virtManager/connection.py | 15 +++++++++++----
|
||||||
|
1 file changed, 11 insertions(+), 4 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/virtManager/connection.py b/virtManager/connection.py
|
||||||
|
index 6f6c838..96dfa1c 100644
|
||||||
|
--- a/virtManager/connection.py
|
||||||
|
+++ b/virtManager/connection.py
|
||||||
|
@@ -172,10 +172,17 @@ class vmmConnection(vmmGObject):
|
||||||
|
self._backend.cb_fetch_all_pools = (
|
||||||
|
lambda: [obj.get_xmlobj(refresh_if_nec=False)
|
||||||
|
for obj in self.pools.values()])
|
||||||
|
- self._backend.cb_fetch_all_vols = (
|
||||||
|
- lambda: [obj.get_xmlobj(refresh_if_nec=False)
|
||||||
|
- for pool in self.pools.values()
|
||||||
|
- for obj in pool.get_volumes(refresh=False).values()])
|
||||||
|
+
|
||||||
|
+ def fetch_all_vols():
|
||||||
|
+ ret = []
|
||||||
|
+ for pool in self.pools.values():
|
||||||
|
+ for vol in pool.get_volumes(refresh=False).values():
|
||||||
|
+ try:
|
||||||
|
+ ret.append(vol.get_xmlobj(refresh_if_nec=False))
|
||||||
|
+ except libvirt.libvirtError, e:
|
||||||
|
+ logging.debug("Fetching volume XML failed: %s", e)
|
||||||
|
+ return ret
|
||||||
|
+ self._backend.cb_fetch_all_vols = fetch_all_vols
|
||||||
|
|
||||||
|
def clear_cache(pools=False):
|
||||||
|
if not pools:
|
@ -0,0 +1,25 @@
|
|||||||
|
From 4daa270c84825f41583e313b5b64bb10e6eae639 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Cole Robinson <crobinso@redhat.com>
|
||||||
|
Date: Fri, 28 Feb 2014 11:46:05 -0500
|
||||||
|
Subject: [PATCH] console: Fix unsetting 'resize-guest' property from UI
|
||||||
|
|
||||||
|
Reported in the followup of bz 754559
|
||||||
|
|
||||||
|
(cherry picked from commit 4a2493f1e4bede671eac713081f61965f036d6ed)
|
||||||
|
---
|
||||||
|
virtManager/console.py | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/virtManager/console.py b/virtManager/console.py
|
||||||
|
index 6ac8abc..5199f5a 100644
|
||||||
|
--- a/virtManager/console.py
|
||||||
|
+++ b/virtManager/console.py
|
||||||
|
@@ -1092,7 +1092,7 @@ class vmmConsolePages(vmmGObjectUI):
|
||||||
|
|
||||||
|
def resizeguest_ui_changed_cb(self, src):
|
||||||
|
# Called from details.py
|
||||||
|
- if not src.get_active():
|
||||||
|
+ if not src.get_sensitive():
|
||||||
|
return
|
||||||
|
|
||||||
|
val = int(self.widget("details-menu-view-resizeguest").get_active())
|
@ -20,7 +20,7 @@
|
|||||||
|
|
||||||
|
|
||||||
%define _version 1.0.0
|
%define _version 1.0.0
|
||||||
%define _release 2
|
%define _release 3
|
||||||
|
|
||||||
|
|
||||||
# This macro is used for the continuous automated builds. It just
|
# This macro is used for the continuous automated builds. It just
|
||||||
@ -45,8 +45,17 @@ Patch0001: 0001-connect-Fix-connecting-to-lxc-URI.patch
|
|||||||
# Fix issues creating ppc64 guests
|
# Fix issues creating ppc64 guests
|
||||||
Patch0002: 0002-create-Fix-non-x86-qemu-kvm-guest-creation.patch
|
Patch0002: 0002-create-Fix-non-x86-qemu-kvm-guest-creation.patch
|
||||||
Patch0003: 0003-caps-Simplify-guest-lookup-routines.patch
|
Patch0003: 0003-caps-Simplify-guest-lookup-routines.patch
|
||||||
# Fix generating disk targets from customize->addhw
|
|
||||||
Patch0004: 0004-create-Don-t-alter-caps-machine-list.patch
|
Patch0004: 0004-create-Don-t-alter-caps-machine-list.patch
|
||||||
|
# Fix generating disk targets from customize->addhw
|
||||||
|
Patch0005: 0005-addhardware-generate-target-only-if-not-customizing.patch
|
||||||
|
# Fix creating storage paths if directory is all digits (bz #1069351)
|
||||||
|
Patch0006: 0006-Don-t-forbid-object-names-that-are-only-all-numbers-.patch
|
||||||
|
# Properly close connection if tick fails (bz #1069351)
|
||||||
|
Patch0007: 0007-engine-Fix-closing-connection-when-tick-fails-bz-106.patch
|
||||||
|
# virt-manager: Handle unrefreshed storage pools (bz #1070883)
|
||||||
|
Patch0008: 0008-vmm-connection-Handle-missing-storage-volumes-bz-107.patch
|
||||||
|
# Fix unsetting 'auto resize' console property
|
||||||
|
Patch0009: 0009-console-Fix-unsetting-resize-guest-property-from-UI.patch
|
||||||
BuildArch: noarch
|
BuildArch: noarch
|
||||||
|
|
||||||
|
|
||||||
@ -118,8 +127,17 @@ machine).
|
|||||||
# Fix issues creating ppc64 guests
|
# Fix issues creating ppc64 guests
|
||||||
%patch0002 -p1
|
%patch0002 -p1
|
||||||
%patch0003 -p1
|
%patch0003 -p1
|
||||||
# Fix generating disk targets from customize->addhw
|
|
||||||
%patch0004 -p1
|
%patch0004 -p1
|
||||||
|
# Fix generating disk targets from customize->addhw
|
||||||
|
%patch0005 -p1
|
||||||
|
# Fix creating storage paths if directory is all digits (bz #1069351)
|
||||||
|
%patch0006 -p1
|
||||||
|
# Properly close connection if tick fails (bz #1069351)
|
||||||
|
%patch0007 -p1
|
||||||
|
# virt-manager: Handle unrefreshed storage pools (bz #1070883)
|
||||||
|
%patch0008 -p1
|
||||||
|
# Fix unsetting 'auto resize' console property
|
||||||
|
%patch0009 -p1
|
||||||
|
|
||||||
%build
|
%build
|
||||||
%if %{qemu_user}
|
%if %{qemu_user}
|
||||||
@ -229,6 +247,12 @@ fi
|
|||||||
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Fri Feb 28 2014 Cole Robinson <crobinso@redhat.com> - 1.0.0-3
|
||||||
|
- Fix creating storage paths if directory is all digits (bz #1069351)
|
||||||
|
- Properly close connection if tick fails (bz #1069351)
|
||||||
|
- virt-manager: Handle unrefreshed storage pools (bz #1070883)
|
||||||
|
- Fix unsetting 'auto resize' console property
|
||||||
|
|
||||||
* Tue Feb 18 2014 Cole Robinson <crobinso@redhat.com> - 1.0.0-2
|
* Tue Feb 18 2014 Cole Robinson <crobinso@redhat.com> - 1.0.0-2
|
||||||
- Fix open connection->lxc
|
- Fix open connection->lxc
|
||||||
- Fix issues creating ppc64 guests
|
- Fix issues creating ppc64 guests
|
||||||
|
Loading…
Reference in New Issue
Block a user