Hello community,

here is the log from the commit of package virt-manager for openSUSE:Factory 
checked in at 2014-07-26 09:41:56
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/virt-manager (Old)
 and      /work/SRC/openSUSE:Factory/.virt-manager.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "virt-manager"

Changes:
--------
--- /work/SRC/openSUSE:Factory/virt-manager/virt-manager.changes        
2014-07-18 14:04:07.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.virt-manager.new/virt-manager.changes   
2014-07-26 09:42:03.000000000 +0200
@@ -1,0 +2,21 @@
+Tue Jul 22 16:36:11 MDT 2014 - carn...@suse.com
+
+- bnc#888251 - sles 12 Xen PV guest fails to install using network
+  NFS install method 
+  virtinst-nfs-install-sanitize.patch
+
+-------------------------------------------------------------------
+Tue Jul 22 09:17:12 MDT 2014 - carn...@suse.com
+
+- bnc#887868 - libvirt: shouldn't detect pool's status while
+  connecting to hypervisor 
+  virtinst-refresh_before_fetch_pool.patch (Chun Yan Liu)
+
+-------------------------------------------------------------------
+Thu Jul 21 09:38:19 MDT 2014 - carn...@suse.com
+
+- bnc#888173 - KVM: Unable to install: no console output from
+  virt-install
+  virtman-add-s390x-arch-support.patch
+
+-------------------------------------------------------------------

New:
----
  virtinst-nfs-install-sanitize.patch
  virtinst-refresh_before_fetch_pool.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ virt-manager.spec ++++++
--- /var/tmp/diff_new_pack.cKllw1/_old  2014-07-26 09:42:05.000000000 +0200
+++ /var/tmp/diff_new_pack.cKllw1/_new  2014-07-26 09:42:05.000000000 +0200
@@ -15,7 +15,6 @@
 # Please submit bugfixes or comments via http://bugs.opensuse.org/
 #
 
-
 %define with_guestfs       0
 %define askpass_package    "openssh-askpass"
 %define qemu_user          "qemu"
@@ -28,7 +27,7 @@
 
 Name:           virt-manager
 Version:        1.0.1
-Release:        0
+Release:        10.5
 Summary:        Virtual Machine Manager
 License:        GPL-2.0+
 Group:          System/Monitoring
@@ -119,6 +118,8 @@
 Patch161:       virtinst-xenbus-disk-index-fix.patch
 Patch162:       virtinst-set-cache-mode-unsafe-for-install.patch
 Patch163:       virtinst-add-default-rng-device.patch
+Patch164:       virtinst-refresh_before_fetch_pool.patch
+Patch165:       virtinst-nfs-install-sanitize.patch
 BuildArch:      noarch
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 
@@ -290,6 +291,8 @@
 %patch161 -p1
 %patch162 -p1
 %patch163 -p1
+%patch164 -p1
+%patch165 -p1
 
 %build
 %if %{qemu_user}

++++++ virtinst-add-default-rng-device.patch ++++++
--- /var/tmp/diff_new_pack.cKllw1/_old  2014-07-26 09:42:05.000000000 +0200
+++ /var/tmp/diff_new_pack.cKllw1/_new  2014-07-26 09:42:05.000000000 +0200
@@ -1,8 +1,10 @@
 bnc#885308
 
---- virt-manager-1.0.1/virtinst/guest.py.orig  2014-07-17 15:40:21.724772127 
-0600
-+++ virt-manager-1.0.1/virtinst/guest.py       2014-07-17 15:40:27.921811664 
-0600
-@@ -625,6 +625,15 @@ class Guest(XMLBuilder):
+Index: virt-manager-1.0.1/virtinst/guest.py
+===================================================================
+--- virt-manager-1.0.1.orig/virtinst/guest.py
++++ virt-manager-1.0.1/virtinst/guest.py
+@@ -627,6 +627,15 @@ class Guest(XMLBuilder):
              return
          self.add_device(virtinst.VirtualGraphics(self.conn))
  
@@ -18,7 +20,7 @@
      def add_default_devices(self):
          self.add_default_graphics()
          self.add_default_video_device()
-@@ -632,6 +641,7 @@ class Guest(XMLBuilder):
+@@ -634,6 +643,7 @@ class Guest(XMLBuilder):
          self.add_default_console_device()
          self.add_default_usb_controller()
          self.add_default_channels()

++++++ virtinst-nfs-install-sanitize.patch ++++++
bnc#888251

Index: virt-manager-1.0.1/virtinst/util.py
===================================================================
--- virt-manager-1.0.1.orig/virtinst/util.py
+++ virt-manager-1.0.1/virtinst/util.py
@@ -626,3 +626,22 @@ def getInstallRepos(enabled_sources_only
         zypper_output.insert(0, dom0_inst_source)
     return (index_dom0, zypper_output)
 
+def sanitize_url(url):
+    """
+    Do nothing for http or ftp, but make sure nfs is in the expected format
+    """
+    if url.startswith("nfs://"):
+        # Convert RFC compliant NFS      nfs://server/path/to/distro
+        # to what mount/anaconda expect  nfs:server:/path/to/distro
+        # and carry the latter form around internally
+        url = "nfs:" + url[6:]
+
+        # If we need to add the : after the server
+        index = url.find("/", 4)
+        if index == -1:
+            raise ValueError(_("Invalid NFS format: No path specified."))
+        if url[index - 1] != ":":
+            url = url[:index] + ":" + url[index:]
+
+    return url
+
Index: virt-manager-1.0.1/virtinst/distroinstaller.py
===================================================================
--- virt-manager-1.0.1.orig/virtinst/distroinstaller.py
+++ virt-manager-1.0.1/virtinst/distroinstaller.py
@@ -50,6 +50,8 @@ def _sanitize_url(url):
     """
     Do nothing for http or ftp, but make sure nfs is in the expected format
     """
+    # This sanitize will be done later
+    return url
     if url.startswith("nfs://"):
         # Convert RFC compliant NFS      nfs://server/path/to/distro
         # to what mount/anaconda expect  nfs:server:/path/to/distro
Index: virt-manager-1.0.1/virtinst/urlfetcher.py
===================================================================
--- virt-manager-1.0.1.orig/virtinst/urlfetcher.py
+++ virt-manager-1.0.1/virtinst/urlfetcher.py
@@ -33,6 +33,7 @@ import urlparse
 import urlgrabber.grabber as grabber
 
 from virtinst import osdict
+from virtinst import util
 
 
 #########################################################################
@@ -210,7 +211,8 @@ class _MountedImageFetcher(_LocalImageFe
 
         logging.debug("Preparing mount at " + self.srcdir)
         if self.location.startswith("nfs:"):
-            cmd = [mountcmd, "-o", "ro", self.location[4:], self.srcdir]
+            url = util.sanitize_url(self.location)
+            cmd = [mountcmd, "-o", "ro", url[4:], self.srcdir]
         else:
             if stat.S_ISBLK(os.stat(self.location)[stat.ST_MODE]):
                 mountopt = "ro"
++++++ virtinst-refresh_before_fetch_pool.patch ++++++
Refresh pools status before fetch_pools.

Currently, when connecting to hypervisor, if there are pools active
but in fact target path already deleted (or for other reasons the
pool is not working), libvirtd not refresh status yet, fetch_pools
will fail, that will cause "connecting to hypervisor" process
reporting error and exit. The whole connection work failed.

With the patch, always refresh pool status before fetch pools. Let
the libvirtd pool status reflect the reality, avoid the non-synced
status affects the hypervisor connection.

Signed-off-by: Chunyan Liu <cy...@suse.com>

Index: virt-manager-1.0.1/virtinst/pollhelpers.py
===================================================================
--- virt-manager-1.0.1.orig/virtinst/pollhelpers.py
+++ virt-manager-1.0.1/virtinst/pollhelpers.py
@@ -138,6 +138,19 @@ def fetch_pools(backend, origmap, build_
 
     if backend.check_support(
             backend.SUPPORT_CONN_LISTALLSTORAGEPOOLS):
+
+        # Refresh pools before poll_helper. For those
+        # 'active' but target path not exist (or other reasons
+        # causing the pool not working), but libvirtd not
+        # refresh the status, this will make it refreshed
+        # and mark that pool as 'inactive'.
+        objs = backend.listAllStoragePools()
+        for obj in objs:
+            try:
+                obj.refresh(0)
+            except Exception, e:
+                pass
+
         return _new_poll_helper(origmap, name,
                                 backend.listAllStoragePools,
                                 "UUIDString", build_func)
++++++ virtinst-set-qemu-emulator.patch ++++++
--- /var/tmp/diff_new_pack.cKllw1/_old  2014-07-26 09:42:05.000000000 +0200
+++ /var/tmp/diff_new_pack.cKllw1/_new  2014-07-26 09:42:05.000000000 +0200
@@ -10,7 +10,7 @@
  import logging
  
  import urlgrabber.progress as progress
-@@ -727,14 +728,22 @@ class Guest(XMLBuilder):
+@@ -729,14 +730,22 @@ class Guest(XMLBuilder):
              self.emulator = None
              return
  

++++++ virtman-add-s390x-arch-support.patch ++++++
--- /var/tmp/diff_new_pack.cKllw1/_old  2014-07-26 09:42:05.000000000 +0200
+++ /var/tmp/diff_new_pack.cKllw1/_new  2014-07-26 09:42:05.000000000 +0200
@@ -42,23 +42,29 @@
          self.skip_default_sound = False
          self.skip_default_usbredir = False
 -        self.skip_default_graphics = False
-+        if self.os.arch == "s390x":
++        if self.os.is_s390x():
 +            self.skip_default_graphics = True
 +        else:
 +            self.skip_default_graphics = False
          self.x86_cpu_default = self.cpu.SPECIAL_MODE_HOST_MODEL_ONLY
  
          self._os_variant = None
-@@ -553,7 +556,7 @@ class Guest(XMLBuilder):
+@@ -549,11 +552,13 @@ class Guest(XMLBuilder):
+             self.conn.check_support(
+             self.conn.SUPPORT_CONN_VIRTIO_CONSOLE)):
+             dev.target_type = "virtio"
++        elif self.os.is_s390x():
++            dev.target_type = "sclp"
+ 
          self.add_device(dev)
  
      def add_default_video_device(self):
 -        if self.os.is_container():
-+        if self.os.is_container() or self.os.arch == "s390x":
++        if self.os.is_container() or self.os.is_s390x():
              return
          if self.get_devices("video"):
              return
-@@ -598,7 +601,7 @@ class Guest(XMLBuilder):
+@@ -598,7 +603,7 @@ class Guest(XMLBuilder):
              return
          if self.os.is_container():
              return
@@ -67,12 +73,12 @@
              return
          self.add_device(virtinst.VirtualGraphics(self.conn))
  
-@@ -804,7 +807,7 @@ class Guest(XMLBuilder):
+@@ -804,7 +809,7 @@ class Guest(XMLBuilder):
          if not self._lookup_osdict_key(key, False):
              return False
  
 -        if self.os.is_x86():
-+        if self.os.is_x86() or self.os.arch == "s390x":
++        if self.os.is_x86() or self.os.is_s390x():
              return True
          if (self.os.is_arm_vexpress() and
              self.os.dtb and

-- 
To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org
For additional commands, e-mail: opensuse-commit+h...@opensuse.org

Reply via email to