oVirt Jenkins CI Server has posted comments on this change.
Change subject: xmlrpc: marshalling of Long type
......................................................................
Patch Set 2:
Build Failed
http://jenkins.ovirt.org/job/vdsm_master_unit-tests_created/13409/ : FAILURE
http://jenkins.ovirt.org/job/vdsm_master_pep8_gerrit/13248/ : SUCCESS
http://jenkins.ovirt.org/job/vdsm_master_unit_tests_gerrit_el/12458/ : FAILURE
--
To view, visit http://gerrit.ovirt.org/34856
To unsubscribe, visit http://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I56341566e4add6a093ba89eb81e09ee9e7a631b1
Gerrit-PatchSet: 2
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Piotr Kliczewski <piotr.kliczewski(a)gmail.com>
Gerrit-Reviewer: Antoni Segura Puimedon <asegurap(a)redhat.com>
Gerrit-Reviewer: Martin Sivák <msivak(a)redhat.com>
Gerrit-Reviewer: Nir Soffer <nsoffer(a)redhat.com>
Gerrit-Reviewer: Piotr Kliczewski <piotr.kliczewski(a)gmail.com>
Gerrit-Reviewer: Saggi Mizrahi <smizrahi(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-Reviewer: oVirt Jenkins CI Server
Gerrit-HasComments: No
Nir Soffer has posted comments on this change.
Change subject: xmlrpc: marshalling of Long type
......................................................................
Patch Set 2: Code-Review-1
vdsm must support older engines which cannot handle such values.
--
To view, visit http://gerrit.ovirt.org/34856
To unsubscribe, visit http://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I56341566e4add6a093ba89eb81e09ee9e7a631b1
Gerrit-PatchSet: 2
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Piotr Kliczewski <piotr.kliczewski(a)gmail.com>
Gerrit-Reviewer: Antoni Segura Puimedon <asegurap(a)redhat.com>
Gerrit-Reviewer: Martin Sivák <msivak(a)redhat.com>
Gerrit-Reviewer: Nir Soffer <nsoffer(a)redhat.com>
Gerrit-Reviewer: Piotr Kliczewski <piotr.kliczewski(a)gmail.com>
Gerrit-Reviewer: Saggi Mizrahi <smizrahi(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-Reviewer: oVirt Jenkins CI Server
Gerrit-HasComments: No
Antoni Segura Puimedon has posted comments on this change.
Change subject: xmlrpc: marshalling of Long type
......................................................................
Patch Set 2: Code-Review-1
(1 comment)
http://gerrit.ovirt.org/#/c/34856/2/vdsm/rpc/BindingXMLRPC.py
File vdsm/rpc/BindingXMLRPC.py:
Line 46:
Line 47:
Line 48: class BindingXMLRPC(object):
Line 49: def __init__(self, cif, log, port):
Line 50: xmlrpclib.Marshaller.dispatch[type(0L)] = (
I'd much rather have you do:
import types # in line 28.
xmlrpclib.Marshaller.dispatch[types.LongType] = (...
Line 51: lambda _, v, w: w(_STRING_VALUE % v)
Line 52: )
Line 53: self.cif = cif
Line 54: self.log = log
--
To view, visit http://gerrit.ovirt.org/34856
To unsubscribe, visit http://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I56341566e4add6a093ba89eb81e09ee9e7a631b1
Gerrit-PatchSet: 2
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Piotr Kliczewski <piotr.kliczewski(a)gmail.com>
Gerrit-Reviewer: Antoni Segura Puimedon <asegurap(a)redhat.com>
Gerrit-Reviewer: Martin Sivák <msivak(a)redhat.com>
Gerrit-Reviewer: Piotr Kliczewski <piotr.kliczewski(a)gmail.com>
Gerrit-Reviewer: Saggi Mizrahi <smizrahi(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-Reviewer: oVirt Jenkins CI Server
Gerrit-HasComments: Yes
Martin Sivák has posted comments on this change.
Change subject: xmlrpc: marshalling of Long type
......................................................................
Patch Set 1: Code-Review-1
(2 comments)
http://gerrit.ovirt.org/#/c/34856/1/vdsm/rpc/BindingXMLRPC.py
File vdsm/rpc/BindingXMLRPC.py:
Line 41: _glusterEnabled = True
Line 42: except ImportError:
Line 43: _glusterEnabled = False
Line 44:
Line 45: value = "<value><string>%s</string></value>\n"
I would probably use _STRING_VALUE or something like that
Line 46:
Line 47:
Line 48: class BindingXMLRPC(object):
Line 49: def __init__(self, cif, log, port):
Line 1040: (self.merge, 'merge'),
Line 1041: (self.vmUpdateVmPolicy, 'updateVmPolicy'),
Line 1042: (self.vmSetIoTune, 'setIoTune'),
Line 1043: (self.vmGetIoTunePolicy, 'getIoTunePolicy'),
Line 1044: (self.floatTest, 'floatTest'))
This does seem to be a leftover from development..
Line 1045:
Line 1046: def getIrsMethods(self):
Line 1047: return ((self.domainActivate, 'activateStorageDomain'),
Line 1048: (self.domainAttach, 'attachStorageDomain'),
--
To view, visit http://gerrit.ovirt.org/34856
To unsubscribe, visit http://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I56341566e4add6a093ba89eb81e09ee9e7a631b1
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Piotr Kliczewski <piotr.kliczewski(a)gmail.com>
Gerrit-Reviewer: Antoni Segura Puimedon <asegurap(a)redhat.com>
Gerrit-Reviewer: Martin Sivák <msivak(a)redhat.com>
Gerrit-Reviewer: Piotr Kliczewski <piotr.kliczewski(a)gmail.com>
Gerrit-Reviewer: Saggi Mizrahi <smizrahi(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-Reviewer: oVirt Jenkins CI Server
Gerrit-HasComments: Yes
oVirt Jenkins CI Server has posted comments on this change.
Change subject: xmlrpc: marshalling of Long type
......................................................................
Patch Set 1:
Build Failed
http://jenkins.ovirt.org/job/vdsm_master_unit-tests_created/13408/ : FAILURE
http://jenkins.ovirt.org/job/vdsm_master_pep8_gerrit/13247/ : SUCCESS
http://jenkins.ovirt.org/job/vdsm_master_unit_tests_gerrit_el/12457/ : FAILURE
--
To view, visit http://gerrit.ovirt.org/34856
To unsubscribe, visit http://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I56341566e4add6a093ba89eb81e09ee9e7a631b1
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Piotr Kliczewski <piotr.kliczewski(a)gmail.com>
Gerrit-Reviewer: Antoni Segura Puimedon <asegurap(a)redhat.com>
Gerrit-Reviewer: Martin Sivák <msivak(a)redhat.com>
Gerrit-Reviewer: Piotr Kliczewski <piotr.kliczewski(a)gmail.com>
Gerrit-Reviewer: Saggi Mizrahi <smizrahi(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-Reviewer: oVirt Jenkins CI Server
Gerrit-HasComments: No
Hello Douglas Schilling Landgraf, David Caro, Dan Kenigsberg,
I'd like you to do a code review. Please visit
http://gerrit.ovirt.org/34766
to review the following change.
Change subject: Adding the possibility to skip checks on rpmbuild
......................................................................
Adding the possibility to skip checks on rpmbuild
This way you can build the rpms skipping the tests just defining the variable
with_check to 0 when running rpmbuild, also skipping checks by default when
building on el* based hosts
Change-Id: I674ae8f8e5ff8b21a0175197bd42e61af6075afd
Signed-off-by: David Caro <dcaroest(a)redhat.com>
Reviewed-on: http://gerrit.ovirt.org/29213
Reviewed-by: Dan Kenigsberg <danken(a)redhat.com>
Reviewed-by: Douglas Schilling Landgraf <dougsland(a)redhat.com>
---
M vdsm.spec.in
1 file changed, 8 insertions(+), 1 deletion(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/66/34766/1
diff --git a/vdsm.spec.in b/vdsm.spec.in
index 4490d8f..e83572c 100644
--- a/vdsm.spec.in
+++ b/vdsm.spec.in
@@ -20,6 +20,11 @@
# touch configure.ac or Makefile.am.
%{!?enable_autotools:%define enable_autotools 0}
+# Skips check since rhel default repos lack pep8 and pyflakes
+%if ! 0%{?rhel}
+%global with_check 1
+%endif
+
# Required paths
%if 0%{?fedora} >= 18
%global _polkitdir %{_datadir}/polkit-1/rules.d
@@ -105,7 +110,7 @@
BuildRequires: libtool
%endif
-%if !0%{?rhel}
+%if 0%{?with_check}
BuildRequires: pyflakes
BuildRequires: python-pep8
%endif
@@ -717,7 +722,9 @@
%endif
%check
+%if 0%{?with_check}
make check
+%endif
%clean
rm -rf %{buildroot}
--
To view, visit http://gerrit.ovirt.org/34766
To unsubscribe, visit http://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I674ae8f8e5ff8b21a0175197bd42e61af6075afd
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: ovirt-3.5
Gerrit-Owner: Yaniv Bronhaim <ybronhei(a)redhat.com>
Gerrit-Reviewer: Dan Kenigsberg <danken(a)redhat.com>
Gerrit-Reviewer: David Caro <dcaroest(a)redhat.com>
Gerrit-Reviewer: Douglas Schilling Landgraf <dougsland(a)redhat.com>
Antoni Segura Puimedon has uploaded a new change for review.
Change subject: net_tests: Move network unit tests into package
......................................................................
net_tests: Move network unit tests into package
This patch brings together the network unit tests under a directory
to improve the organization and as a possible step for a future
cohesive network package with code and tests.
Change-Id: I6960ce365d67ab4bb0a5475d7957e6117bef7e60
Signed-off-by: Antoni S. Puimedon <asegurap(a)redhat.com>
---
M configure.ac
M tests/Makefile.am
A tests/network/Makefile.am
R tests/network/apiTests.py
R tests/network/ipwrapperTests.py
R tests/network/modelsTests.py
R tests/network/netconfTests.py
R tests/network/netconfpersistenceTests.py
R tests/network/netinfoTests.py
R tests/network/netmaskconversions
R tests/network/tcTests.py
R tests/network/tc_filter_show.out
M tests/run_tests_local.sh.in
13 files changed, 63 insertions(+), 15 deletions(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/74/26874/1
diff --git a/configure.ac b/configure.ac
index 12828be..944e17f 100644
--- a/configure.ac
+++ b/configure.ac
@@ -267,6 +267,7 @@
lib/zombiereaper/Makefile
tests/Makefile
tests/functional/Makefile
+ tests/network/Makefile
vds_bootstrap/Makefile
vdsm-tool/Makefile
vdsm/Makefile
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 39c6cad..6fb834f 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -1,5 +1,5 @@
#
-# Copyright 2012 Red Hat, Inc.
+# Copyright 2012-2014 Red Hat, Inc.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -20,7 +20,7 @@
include $(top_srcdir)/build-aux/Makefile.subs
-SUBDIRS = functional
+SUBDIRS = functional network
test_modules = \
alignmentScanTests.py \
@@ -29,7 +29,6 @@
cPopenTests.py \
capsTests.py \
clientifTests.py \
- configNetworkTests.py \
fileVolumeTests.py \
fileUtilTests.py \
fuserTests.py \
@@ -38,7 +37,6 @@
glusterTestData.py \
guestagentTests.py \
hooksTests.py \
- ipwrapperTests.py \
iscsiTests.py \
jsonRpcTests.py \
jsonRpcUtils.py \
@@ -52,10 +50,6 @@
mkimageTests.py \
monkeypatchTests.py \
mountTests.py \
- netconfpersistenceTests.py \
- netconfTests.py \
- netinfoTests.py \
- netmodelsTests.py \
outOfProcessTests.py \
parted_utils_tests.py \
permutationTests.py \
@@ -66,7 +60,6 @@
securableTests.py \
sslTests.py \
storageMailboxTests.py \
- tcTests.py \
toolTests.py \
transportWrapperTests.py \
utilsTests.py \
@@ -111,8 +104,6 @@
glusterVolumeTasks.xml \
lvs_3386c6f2-926f-42c4-839c-38287fac8998.out \
mem_info.out \
- netmaskconversions \
- tc_filter_show.out \
$(NULL)
dist_vdsmtests_PYTHON = \
diff --git a/tests/network/Makefile.am b/tests/network/Makefile.am
new file mode 100644
index 0000000..f241a4b
--- /dev/null
+++ b/tests/network/Makefile.am
@@ -0,0 +1,53 @@
+#
+# Copyright 2014 Red Hat, Inc.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+#
+# Refer to the README and COPYING files for full details of the license
+#
+
+net_testsdir = ${vdsmtestsdir}/network
+
+dist_net_tests_PYTHON = \
+ apiTests.py \
+ ipwrapperTests.py \
+ netconfpersistenceTests.py \
+ netconfTests.py \
+ netinfoTests.py \
+ modelsTests.py \
+ tcTests.py \
+ $(NULL)
+
+MODULES = \
+ network/apiTests.py \
+ network/ipwrapperTests.py \
+ network/netconfpersistenceTests.py \
+ network/netconfTests.py \
+ network/netinfoTests.py \
+ network/modelsTests.py \
+ network/tcTests.py \
+ $(NULL)
+
+
+
+dist_net_tests_DATA = \
+ netmaskconversions \
+ tc_filter_show.out \
+ $(NULL)
+
+check-local:
+ @echo '*** Running network tests. To skip this step place NOSE_EXCLUDE=.* ***'
+ @echo '*** into your environment. Do not submit untested code! ***'
+ $(top_srcdir)/tests/run_tests_local.sh $(MODULES)
diff --git a/tests/configNetworkTests.py b/tests/network/apiTests.py
similarity index 100%
rename from tests/configNetworkTests.py
rename to tests/network/apiTests.py
diff --git a/tests/ipwrapperTests.py b/tests/network/ipwrapperTests.py
similarity index 100%
rename from tests/ipwrapperTests.py
rename to tests/network/ipwrapperTests.py
diff --git a/tests/netmodelsTests.py b/tests/network/modelsTests.py
similarity index 98%
rename from tests/netmodelsTests.py
rename to tests/network/modelsTests.py
index a2a3ee3..5da708b 100644
--- a/tests/netmodelsTests.py
+++ b/tests/network/modelsTests.py
@@ -34,7 +34,7 @@
from monkeypatch import MonkeyPatch
-class TestNetmodels(TestCaseBase):
+class TestModels(TestCaseBase):
def testIsVlanIdValid(self):
vlanIds = ('badValue', Vlan.MAX_ID + 1)
diff --git a/tests/netconfTests.py b/tests/network/netconfTests.py
similarity index 100%
rename from tests/netconfTests.py
rename to tests/network/netconfTests.py
diff --git a/tests/netconfpersistenceTests.py b/tests/network/netconfpersistenceTests.py
similarity index 100%
rename from tests/netconfpersistenceTests.py
rename to tests/network/netconfpersistenceTests.py
diff --git a/tests/netinfoTests.py b/tests/network/netinfoTests.py
similarity index 100%
rename from tests/netinfoTests.py
rename to tests/network/netinfoTests.py
diff --git a/tests/netmaskconversions b/tests/network/netmaskconversions
similarity index 100%
rename from tests/netmaskconversions
rename to tests/network/netmaskconversions
diff --git a/tests/tcTests.py b/tests/network/tcTests.py
similarity index 100%
rename from tests/tcTests.py
rename to tests/network/tcTests.py
diff --git a/tests/tc_filter_show.out b/tests/network/tc_filter_show.out
similarity index 100%
rename from tests/tc_filter_show.out
rename to tests/network/tc_filter_show.out
diff --git a/tests/run_tests_local.sh.in b/tests/run_tests_local.sh.in
index 0a229c0..787d9b2 100644
--- a/tests/run_tests_local.sh.in
+++ b/tests/run_tests_local.sh.in
@@ -3,8 +3,11 @@
PYTHON_EXE="@PYTHON@"
fi
-if [ ! -f @top_srcdir@/tests/jsonrpc-tests.server.crt ] || [ ! -f @top_srcdir@/tests/jsonrpc-tests.server.csr ] || [ ! -f @top_srcdir@/tests/jsonrpc-tests.server.key ]; then
- @top_srcdir@/tests/makecert.sh
+# The following line is taken from http://stackoverflow.com/a/246128/206009
+DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
+
+if [ ! -f "$DIR/jsonrpc-tests.server.crt" ] || [ ! -f "$DIR/jsonrpc-tests.server.csr" ] || [ ! -f "$DIR/jsonrpc-tests.server.key" ]; then
+ $DIR/makecert.sh
fi
-PYTHONDONTWRITEBYTECODE=1 LC_ALL=C PYTHONPATH="@top_srcdir@/lib:@top_srcdir@/vdsm:@top_srcdir@/client:@top_srcdir@/vdsm_api:$PYTHONPATH" "$PYTHON_EXE" @top_srcdir@/tests/testrunner.py --local-modules $@
+PYTHONDONTWRITEBYTECODE=1 LC_ALL=C PYTHONPATH="$DIR/../lib:$DIR/../vdsm:$DIR/../client:$DIR/../vdsm_api:$PYTHONPATH" "$PYTHON_EXE" $DIR/testrunner.py --local-modules $@
--
To view, visit http://gerrit.ovirt.org/26874
To unsubscribe, visit http://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I6960ce365d67ab4bb0a5475d7957e6117bef7e60
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Antoni Segura Puimedon <asegurap(a)redhat.com>
Francesco Romani has uploaded a new change for review.
Change subject: vm: move device setup into __init__
......................................................................
vm: move device setup into __init__
Device hierarchy should never change except fot hotplug/hotunplug.
Besides avoiding RuntimeError, this is more correct and safer.
Change-Id: I5e5a8e7916bb0c0d2519949397a5c1c64085e08e
Signed-off-by: Francesco Romani <fromani(a)redhat.com>
---
M tests/vmTestsData.py
M tests/vmfakelib.py
M vdsm/clientIF.py
M vdsm/virt/vm.py
4 files changed, 38 insertions(+), 15 deletions(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/53/34753/1
diff --git a/tests/vmTestsData.py b/tests/vmTestsData.py
index 3316598..bb84412 100644
--- a/tests/vmTestsData.py
+++ b/tests/vmTestsData.py
@@ -29,7 +29,7 @@
'smp': '1', 'cpuPinning': {}, 'numaTune': {}, 'maxVCpus': '160',
'tabletEnable': False,
'displayNetwork': 'mydisp', 'custom': {},
- 'guestNumaNodes': []},
+ 'guestNumaNodes': [], 'devices': []},
"""<?xml version="1.0" encoding="utf-8"?>
<domain type="kvm">
@@ -50,6 +50,11 @@
path="/var/lib/libvirt/qemu/channels/%(vmId)s.org.qemu.guest_agent.0"/>
</channel>
<input bus="ps2" type="mouse"/>
+ <memballoon model="none"/>
+ <graphics autoport="yes" passwd="*****"
+ passwdValidTo="1970-01-01T00:00:01" port="-1" type="vnc">
+ <listen network="vdsm-mydisp" type="network"/>
+ </graphics>
</devices>
<os>
<type arch="x86_64" machine="pc">hvm</type>
@@ -93,7 +98,7 @@
'smp': '1', 'cpuPinning': {}, 'numaTune': {}, 'maxVCpus': '160',
'tabletEnable': False,
'displayNetwork': 'mydisp', 'custom': {},
- 'guestNumaNodes': []},
+ 'guestNumaNodes': [], 'devices': []},
"""<?xml version="1.0" encoding="utf-8"?>
<domain type="kvm"
@@ -116,6 +121,11 @@
</channel>
<input bus="usb" type="mouse"/>
<emulator>/usr/bin/qemu-system-ppc64</emulator>
+ <memballoon model="none"/>
+ <graphics autoport="yes" passwd="*****"
+ passwdValidTo="1970-01-01T00:00:01" port="-1" type="vnc">
+ <listen network="vdsm-mydisp" type="network"/>
+ </graphics>
</devices>
<os>
<type arch="ppc64" machine="pc">hvm</type>
diff --git a/tests/vmfakelib.py b/tests/vmfakelib.py
index 83c5b7a..1baa681 100644
--- a/tests/vmfakelib.py
+++ b/tests/vmfakelib.py
@@ -169,6 +169,8 @@
(libvirtconnection, 'get', Connection)]):
vmParams = {'vmId': 'TESTING'}
vmParams.update({} if params is None else params)
+ if 'devices' not in vmParams:
+ vmParams['devices'] = tuple()
cif = ClientIF()
fake = vm.Vm(cif, vmParams)
cif.vmContainer[fake.id] = fake
diff --git a/vdsm/clientIF.py b/vdsm/clientIF.py
index 440e5e7..30a38da 100644
--- a/vdsm/clientIF.py
+++ b/vdsm/clientIF.py
@@ -457,8 +457,7 @@
try:
# Do not prepare volumes when system goes down
if self._enabled:
- vmObj.preparePaths(
- vmObj.buildConfDevices()[vm.DISK_DEVICES])
+ vmObj.preparePaths(vmObj.getDiskDevicesConf())
except:
self.log.error("Vm %s recovery failed",
vmId, exc_info=True)
diff --git a/vdsm/virt/vm.py b/vdsm/virt/vm.py
index 05b15e9..05ee6b0 100644
--- a/vdsm/virt/vm.py
+++ b/vdsm/virt/vm.py
@@ -1302,6 +1302,8 @@
self._liveMergeCleanupThreads = {}
self._shutdownReason = None
+ self._setupDevices()
+
def _get_lastStatus(self):
PAUSED_STATES = (vmstatus.POWERING_DOWN, vmstatus.REBOOT_IN_PROGRESS,
vmstatus.UP)
@@ -1516,7 +1518,7 @@
'type': GRAPHICS_DEVICES,
'device': (
'spice'
- if self.conf['display'] in ('qxl', 'qxlnc')
+ if self.conf.get('display') in ('qxl', 'qxlnc')
else 'vnc'),
'specParams': makeSpecParams(self.conf)}]
@@ -2643,20 +2645,30 @@
except Exception:
self.log.warning('failed to set Vm niceness', exc_info=True)
+ def _setupDevices(self):
+ devices = self.buildConfDevices()
+
+ if not self.recovering:
+ self._updateDevices(devices)
+
+ for devType, devClass in self.DeviceMapping:
+ for dev in devices[devType]:
+ self._devices[devType].append(devClass(self.conf, self.log,
+ **dev))
+
def _run(self):
self.log.info("VM wrapper has started")
- devices = self.buildConfDevices()
- self._updateDiskSizes(devices[DISK_DEVICES])
+ drives = list(self.getDiskDevicesConf())
+ self._updateDiskSizes(drives)
# recovery flow note:
# we do not start disk stats collection here since
# in the recovery flow irs may not be ready yet.
# Disk stats collection is started from clientIF at the end
# of the recovery process.
if not self.recovering:
- self.preparePaths(devices[DISK_DEVICES])
- self._prepareTransientDisks(devices[DISK_DEVICES])
- self._updateDevices(devices)
+ self.preparePaths(drives)
+ self._prepareTransientDisks(drives)
# We need to save conf here before we actually run VM.
# It's not enough to save conf only on status changes as we did
# before, because if vdsm will restarted between VM run and conf
@@ -2664,11 +2676,6 @@
# So, to get proper device objects during VM recovery flow
# we must to have updated conf before VM run
self.saveState()
-
- for devType, devClass in self.DeviceMapping:
- for dev in devices[devType]:
- self._devices[devType].append(devClass(self.conf, self.log,
- **dev))
# We should set this event as a last part of drives initialization
self._pathsPreparedEvent.set()
@@ -5362,6 +5369,11 @@
if dev['type'] == BALLOON_DEVICES:
yield dev
+ def getDiskDevicesConf(self):
+ for dev in self.conf['devices']:
+ if dev['type'] == DISK_DEVICES:
+ yield dev
+
@property
def sdIds(self):
"""
--
To view, visit http://gerrit.ovirt.org/34753
To unsubscribe, visit http://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I5e5a8e7916bb0c0d2519949397a5c1c64085e08e
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Francesco Romani <fromani(a)redhat.com>