automation(a)ovirt.org has posted comments on this change.
Change subject: vm: event: send status event on RTC update
......................................................................
Patch Set 1:
* Update tracker::IGNORE, no Bug-Url found
* Check Bug-Url::WARN, no bug url found, make sure header matches 'Bug-Url: ' and is a valid url.
* Check merged to previous::IGNORE, Not in stable branch (['ovirt-3.5', 'ovirt-3.4', 'ovirt-3.3'])
--
To view, visit https://gerrit.ovirt.org/43310
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I2e17262812547ea64365aa4fe77b64d27d579de5
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
automation(a)ovirt.org has posted comments on this change.
Change subject: vm: event: send status event on reboot
......................................................................
Patch Set 1:
* Update tracker::IGNORE, no Bug-Url found
* Check Bug-Url::WARN, no bug url found, make sure header matches 'Bug-Url: ' and is a valid url.
* Check merged to previous::IGNORE, Not in stable branch (['ovirt-3.5', 'ovirt-3.4', 'ovirt-3.3'])
--
To view, visit https://gerrit.ovirt.org/43309
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I748b187228a39e55982c1b7d05ab47681481801c
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
automation(a)ovirt.org has posted comments on this change.
Change subject: vm: event: introduce _send_event helper
......................................................................
Patch Set 2:
* Update tracker::IGNORE, no Bug-Url found
* Check Bug-Url::WARN, no bug url found, make sure header matches 'Bug-Url: ' and is a valid url.
* Check merged to previous::IGNORE, Not in stable branch (['ovirt-3.5', 'ovirt-3.4', 'ovirt-3.3'])
--
To view, visit https://gerrit.ovirt.org/43287
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I4c25ba9f520e6409cc06e99a2450d2c0d98c26fb
Gerrit-PatchSet: 2
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
automation(a)ovirt.org has posted comments on this change.
Change subject: vm: event: emit event on setDownStatus
......................................................................
Patch Set 3:
* Update tracker::IGNORE, no Bug-Url found
* Check Bug-Url::WARN, no bug url found, make sure header matches 'Bug-Url: ' and is a valid url.
* Check merged to previous::IGNORE, Not in stable branch (['ovirt-3.5', 'ovirt-3.4', 'ovirt-3.3'])
--
To view, visit https://gerrit.ovirt.org/43270
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I9a99d074461bcc2b61d15dd46f7d020abbe48afe
Gerrit-PatchSet: 3
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: Michal Skrivanek <michal.skrivanek(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
automation(a)ovirt.org has posted comments on this change.
Change subject: vm: event: emit event on domDependentInit
......................................................................
Patch Set 3:
* Update tracker::IGNORE, no Bug-Url found
* Check Bug-Url::WARN, no bug url found, make sure header matches 'Bug-Url: ' and is a valid url.
* Check merged to previous::IGNORE, Not in stable branch (['ovirt-3.5', 'ovirt-3.4', 'ovirt-3.3'])
--
To view, visit https://gerrit.ovirt.org/43269
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: Ie379911a374a9ba3e82658592c295f7a9a0ac8a0
Gerrit-PatchSet: 3
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: Michal Skrivanek <michal.skrivanek(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
automation(a)ovirt.org has posted comments on this change.
Change subject: virt: events: extract function to make event info
......................................................................
Patch Set 3:
* Update tracker::IGNORE, no Bug-Url found
* Check Bug-Url::WARN, no bug url found, make sure header matches 'Bug-Url: ' and is a valid url.
* Check merged to previous::IGNORE, Not in stable branch (['ovirt-3.5', 'ovirt-3.4', 'ovirt-3.3'])
--
To view, visit https://gerrit.ovirt.org/43268
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: If60e8422d06fb1ff45a846858856ad68d52fd6ce
Gerrit-PatchSet: 3
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: Michal Skrivanek <michal.skrivanek(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
automation(a)ovirt.org has posted comments on this change.
Change subject: vm: event: add minimal running stats to status
......................................................................
Patch Set 2:
* Update tracker::IGNORE, no Bug-Url found
* Check Bug-Url::WARN, no bug url found, make sure header matches 'Bug-Url: ' and is a valid url.
* Check merged to previous::IGNORE, Not in stable branch (['ovirt-3.5', 'ovirt-3.4', 'ovirt-3.3'])
--
To view, visit https://gerrit.ovirt.org/43290
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I894a1b10d3cc3dd33664ea9f0842cbc7f1eb07b3
Gerrit-PatchSet: 2
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
automation(a)ovirt.org has posted comments on this change.
Change subject: vm: event: emit event on guest status change
......................................................................
Patch Set 2:
* Update tracker::IGNORE, no Bug-Url found
* Check Bug-Url::WARN, no bug url found, make sure header matches 'Bug-Url: ' and is a valid url.
* Check merged to previous::IGNORE, Not in stable branch (['ovirt-3.5', 'ovirt-3.4', 'ovirt-3.3'])
--
To view, visit https://gerrit.ovirt.org/43289
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: Ib98d64a250a6d2de70f7fe5206e5a0ad648c151d
Gerrit-PatchSet: 2
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
Michal Skrivanek has posted comments on this change.
Change subject: vm: emit event when domDependentInit is done
......................................................................
Patch Set 2:
(1 comment)
https://gerrit.ovirt.org/#/c/43269/2/vdsm/virt/vm.py
File vdsm/virt/vm.py:
Line 775: self.recovering = False
Line 776: self.saveState()
Line 777:
Line 778: self._send_event(
Line 779: self._getVmStatus(),
I wonder...
is it better to send the status we see right now (which could have been changed since 763) or always send an explicit UP ?
Line 780: **self._getRunningVmStats()
Line 781: )
Line 782:
Line 783: except MissingLibvirtDomainError as e:
--
To view, visit https://gerrit.ovirt.org/43269
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: Ie379911a374a9ba3e82658592c295f7a9a0ac8a0
Gerrit-PatchSet: 2
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: Michal Skrivanek <michal.skrivanek(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: Yes
Michal Skrivanek has posted comments on this change.
Change subject: vm: event: emit event on setDownStatus
......................................................................
Patch Set 2:
(3 comments)
https://gerrit.ovirt.org/#/c/43270/2/vdsm/virt/vm.py
File vdsm/virt/vm.py:
Line 1308: exitMessage, exitReasonCode)
Line 1309: # DoubleDownError is protecting us here
Line 1310: event_data = self._getExitedVmStats()
Line 1311: except DoubleDownError:
Line 1312: event_data = {}
> is this really needed?
I don't think so. it raises when another lastStatus = DOWN happens...which is the first thing here at line 1298
Line 1313: pass
Line 1314: try:
Line 1315: self.guestAgent.stop()
Line 1316: except Exception:
Line 1316: except Exception:
Line 1317: pass
Line 1318: self.saveState()
Line 1319: if event_data:
Line 1320: self._send_event(
too long for a single line?
Line 1321: vmstatus.DOWN,
Line 1322: **event_data
Line 1323: )
Line 1324:
Line 1367: def _getExitedVmStats(self):
Line 1368: stats = {
Line 1369: 'exitCode': self.conf['exitCode'],
Line 1370: 'exitMessage': self.conf['exitMessage'],
Line 1371: 'exitReason': self.conf['exitReason']
whitespace or I just don't understand gerrit diff?
Line 1372: }
Line 1373: if 'timeOffset' in self.conf:
Line 1374: stats['timeOffset'] = self.conf['timeOffset']
Line 1375: return stats
--
To view, visit https://gerrit.ovirt.org/43270
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I9a99d074461bcc2b61d15dd46f7d020abbe48afe
Gerrit-PatchSet: 2
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: Michal Skrivanek <michal.skrivanek(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: Yes
Michal Skrivanek has posted comments on this change.
Change subject: virt: events: extract function to make event info
......................................................................
Patch Set 2: Code-Review+1
--
To view, visit https://gerrit.ovirt.org/43268
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: If60e8422d06fb1ff45a846858856ad68d52fd6ce
Gerrit-PatchSet: 2
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: Michal Skrivanek <michal.skrivanek(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
Francesco Romani has posted comments on this change.
Change subject: vm: event: report minimal running vm stats
......................................................................
Patch Set 1:
(3 comments)
https://gerrit.ovirt.org/#/c/43290/1//COMMIT_MSG
Commit Message:
Line 3: AuthorDate: 2015-07-07 14:59:30 +0200
Line 4: Commit: Francesco Romani <fromani(a)redhat.com>
Line 5: CommitDate: 2015-07-07 17:08:53 +0200
Line 6:
Line 7: vm: event: report minimal running vm stats
confusing and obscure. Rephrase.
Line 8:
Line 9: When we receive an event from libvirt, we still
Line 10: send back an event to Engine, to make sure
Line 11: we are not losing any event.
Line 7: vm: event: report minimal running vm stats
Line 8:
Line 9: When we receive an event from libvirt, we still
Line 10: send back an event to Engine, to make sure
Line 11: we are not losing any event.
ok, and what about races with events sent by vm?
We will deliver only one event thanks with eventLock, and we not lie to Engine, but there is a risk to lose the extra data.
Line 12:
Line 13: Change-Id: I894a1b10d3cc3dd33664ea9f0842cbc7f1eb07b3
https://gerrit.ovirt.org/#/c/43290/1/vdsm/virt/vm.py
File vdsm/virt/vm.py:
Line 381: def send_status_event(self):
Line 382: self._send_event(
Line 383: self._getVmStatus(),
Line 384: **self._getUpVmStats()
Line 385: )
ok, but probably better to call this explicitely per-recognized lifecycle events (in clientIF).
Line 386:
Line 387: def _send_event(self, vm_status, **kwargs);
Line 388: event_data = {}
Line 389: with self._eventLock:
--
To view, visit https://gerrit.ovirt.org/43290
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I894a1b10d3cc3dd33664ea9f0842cbc7f1eb07b3
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: Yes
Francesco Romani has posted comments on this change.
Change subject: vm: event: emit event on setDownStatus
......................................................................
Patch Set 2:
(2 comments)
https://gerrit.ovirt.org/#/c/43270/2/vdsm/virt/vm.py
File vdsm/virt/vm.py:
Line 1308: exitMessage, exitReasonCode)
Line 1309: # DoubleDownError is protecting us here
Line 1310: event_data = self._getExitedVmStats()
Line 1311: except DoubleDownError:
Line 1312: event_data = {}
is this really needed?
Line 1313: pass
Line 1314: try:
Line 1315: self.guestAgent.stop()
Line 1316: except Exception:
Line 1355: stats['status'] = self._getVmStatus()
Line 1356: stats.update(self._getGuestStats())
Line 1357: return stats
Line 1358:
Line 1359: def _getDownVmStats(self):
split in a separate patch?
Line 1360: stats = {
Line 1361: 'vmId': self.conf['vmId'],
Line 1362: 'status': self.lastStatus
Line 1363: }
--
To view, visit https://gerrit.ovirt.org/43270
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I9a99d074461bcc2b61d15dd46f7d020abbe48afe
Gerrit-PatchSet: 2
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: Yes
Francesco Romani has posted comments on this change.
Change subject: vm: event: introduce _send_event helper
......................................................................
Patch Set 1:
(1 comment)
https://gerrit.ovirt.org/#/c/43287/1/vdsm/virt/vm.py
File vdsm/virt/vm.py:
Line 383: self._getVmStatus()
Line 384: )
Line 385:
Line 386: def _send_event(self, vm_status, **kwargs);
Line 387: event_data = {}
useful but unneeded rename - drop or move it in a separate trivial patch
Line 388: with self._eventLock:
Line 389: if vm_status != self._evaluatedStatus:
Line 390: self._evaluatedStatus = vm_status
Line 391: current_status = self.lastStatus
--
To view, visit https://gerrit.ovirt.org/43287
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I4c25ba9f520e6409cc06e99a2450d2c0d98c26fb
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: Yes
Francesco Romani has posted comments on this change.
Change subject: freeze: Avoid unneeded freeze during snapshot
......................................................................
Patch Set 4: Code-Review+1
(1 comment)
looks OK. please add annotation to schema, see comment inside.
https://gerrit.ovirt.org/#/c/43293/4/vdsm/rpc/vdsmapi-schema.json
File vdsm/rpc/vdsmapi-schema.json:
Line 7881: # @snapMemory: #optional str representation of the volumes in which
Line 7882: # the memory dump and vm configuration should be saved
Line 7883: #
Line 7884: # @frozen: #optional Boolean value set to true if the vm is frozen
Line 7885: # and does not need to be freezed during the snapshot.
please add
(new in version 4.17.0)
Line 7886: #
Line 7887: # Since: 4.10.0
Line 7888: ##
Line 7889: {'command': {'class': 'VM', 'name': 'snapshot'},
--
To view, visit https://gerrit.ovirt.org/43293
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I328470f700ab74daeed5375c0ade83628d16c387
Gerrit-PatchSet: 4
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Nir Soffer <nsoffer(a)redhat.com>
Gerrit-Reviewer: Adam Litke <alitke(a)redhat.com>
Gerrit-Reviewer: Allon Mureinik <amureini(a)redhat.com>
Gerrit-Reviewer: Dan Kenigsberg <danken(a)redhat.com>
Gerrit-Reviewer: Daniel Erez <derez(a)redhat.com>
Gerrit-Reviewer: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: Jenkins CI
Gerrit-Reviewer: Maor Lipchuk <mlipchuk(a)redhat.com>
Gerrit-Reviewer: Michal Skrivanek <mskrivan(a)redhat.com>
Gerrit-Reviewer: Nir Soffer <nsoffer(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: Yes
automation(a)ovirt.org has posted comments on this change.
Change subject: migration: replace boolean with proper Events
......................................................................
Patch Set 5:
* Update tracker::IGNORE, no Bug-Url found
* Check Bug-Url::WARN, no bug url found, make sure header matches 'Bug-Url: ' and is a valid url.
* Check merged to previous::IGNORE, Not in stable branch (['ovirt-3.5', 'ovirt-3.4', 'ovirt-3.3'])
--
To view, visit https://gerrit.ovirt.org/42887
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I02639749ab884c3542c4d29715756044d777f738
Gerrit-PatchSet: 5
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: Jenkins CI
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
automation(a)ovirt.org has posted comments on this change.
Change subject: freeze: Avoid unneeded freeze during snapshot
......................................................................
Patch Set 4:
* Update tracker::IGNORE, no Bug-Url found
* Check Bug-Url::WARN, no bug url found, make sure header matches 'Bug-Url: ' and is a valid url.
* Check merged to previous::IGNORE, Not in stable branch (['ovirt-3.5', 'ovirt-3.4', 'ovirt-3.3'])
--
To view, visit https://gerrit.ovirt.org/43293
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I328470f700ab74daeed5375c0ade83628d16c387
Gerrit-PatchSet: 4
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Nir Soffer <nsoffer(a)redhat.com>
Gerrit-Reviewer: Adam Litke <alitke(a)redhat.com>
Gerrit-Reviewer: Allon Mureinik <amureini(a)redhat.com>
Gerrit-Reviewer: Dan Kenigsberg <danken(a)redhat.com>
Gerrit-Reviewer: Daniel Erez <derez(a)redhat.com>
Gerrit-Reviewer: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: Jenkins CI
Gerrit-Reviewer: Maor Lipchuk <mlipchuk(a)redhat.com>
Gerrit-Reviewer: Michal Skrivanek <mskrivan(a)redhat.com>
Gerrit-Reviewer: Nir Soffer <nsoffer(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
automation(a)ovirt.org has posted comments on this change.
Change subject: freeze: Avoid unneeded freeze during snapshot
......................................................................
Patch Set 3:
* Update tracker::IGNORE, no Bug-Url found
* Check Bug-Url::WARN, no bug url found, make sure header matches 'Bug-Url: ' and is a valid url.
* Check merged to previous::IGNORE, Not in stable branch (['ovirt-3.5', 'ovirt-3.4', 'ovirt-3.3'])
--
To view, visit https://gerrit.ovirt.org/43293
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I328470f700ab74daeed5375c0ade83628d16c387
Gerrit-PatchSet: 3
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Nir Soffer <nsoffer(a)redhat.com>
Gerrit-Reviewer: Adam Litke <alitke(a)redhat.com>
Gerrit-Reviewer: Allon Mureinik <amureini(a)redhat.com>
Gerrit-Reviewer: Dan Kenigsberg <danken(a)redhat.com>
Gerrit-Reviewer: Daniel Erez <derez(a)redhat.com>
Gerrit-Reviewer: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: Jenkins CI
Gerrit-Reviewer: Maor Lipchuk <mlipchuk(a)redhat.com>
Gerrit-Reviewer: Michal Skrivanek <mskrivan(a)redhat.com>
Gerrit-Reviewer: Nir Soffer <nsoffer(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
automation(a)ovirt.org has posted comments on this change.
Change subject: freeze: Avoid unneeded freeze during snapshot
......................................................................
Patch Set 2:
* Update tracker::IGNORE, no Bug-Url found
* Check Bug-Url::WARN, no bug url found, make sure header matches 'Bug-Url: ' and is a valid url.
* Check merged to previous::IGNORE, Not in stable branch (['ovirt-3.5', 'ovirt-3.4', 'ovirt-3.3'])
--
To view, visit https://gerrit.ovirt.org/43293
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I328470f700ab74daeed5375c0ade83628d16c387
Gerrit-PatchSet: 2
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Nir Soffer <nsoffer(a)redhat.com>
Gerrit-Reviewer: Adam Litke <alitke(a)redhat.com>
Gerrit-Reviewer: Allon Mureinik <amureini(a)redhat.com>
Gerrit-Reviewer: Dan Kenigsberg <danken(a)redhat.com>
Gerrit-Reviewer: Daniel Erez <derez(a)redhat.com>
Gerrit-Reviewer: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: Maor Lipchuk <mlipchuk(a)redhat.com>
Gerrit-Reviewer: Michal Skrivanek <mskrivan(a)redhat.com>
Gerrit-Reviewer: Nir Soffer <nsoffer(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
Adam Litke has uploaded a new change for review.
Change subject: StorageDomainManifest: introduce class heirarchy
......................................................................
StorageDomainManifest: introduce class heirarchy
Many of the functions in the StorageDomain class family serve to provide
information about the storage domain and its contents (ie. images and
volumes). Other functions manipulate image or volume metadata in a
fine-grained, reusable way (ie. extendVolume). As we refactor the
storage code to operate without an SPM the new code will benefit from
reusing these Storage Domain "manifest" functions.
In order to make reuse clean and safe, we want to refactor the
StorageDomain class by splitting the reusable elements into a
StorageDomainManifest class. The StorageDomain object will initialize
and use a StorageDomainManifest object for much of its normal
operations. Meanwhile, the new SDM code may use a StorageDomainManifest
object directly without having access to the non-sharable parts of
StorageDomain.
In an effort to reduce churn during the refactoring, when moving a
method into its new class, I will leave behind a stub in the original
class which simply passes the call through to the method's new location.
Once all code has been refactored, I'll remove stubs for any methods
which are not currently accessed outside of the class.
Change-Id: Ia275424a8d423722efb229a4d8545f035fe5fa51
Signed-off-by: Adam Litke <alitke(a)redhat.com>
---
M vdsm/storage/blockSD.py
M vdsm/storage/fileSD.py
M vdsm/storage/imageRepository/formatConverter.py
M vdsm/storage/sd.py
4 files changed, 64 insertions(+), 19 deletions(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/93/41993/1
diff --git a/vdsm/storage/blockSD.py b/vdsm/storage/blockSD.py
index 490b624..8674dba 100644
--- a/vdsm/storage/blockSD.py
+++ b/vdsm/storage/blockSD.py
@@ -395,14 +395,22 @@
return {'mdathreshold': mda_free_ok, 'mdavalid': mda_size_ok}
-class BlockStorageDomain(sd.StorageDomain):
+class BlockStorageDomainManifest(sd.StorageDomainManifest):
mountpoint = os.path.join(sd.StorageDomain.storage_repository,
sd.DOMAIN_MNT_POINT, sd.BLOCKSD_DIR)
def __init__(self, sdUUID):
domaindir = os.path.join(self.mountpoint, sdUUID)
metadata = selectMetadata(sdUUID)
- sd.StorageDomain.__init__(self, sdUUID, domaindir, metadata)
+ sd.StorageDomainManifest.__init__(self, sdUUID, domaindir, metadata)
+
+
+class BlockStorageDomain(sd.StorageDomain):
+ ManifestClass = BlockStorageDomainManifest
+
+ def __init__(self, sdUUID):
+ manifest = self.ManifestClass(sdUUID)
+ sd.StorageDomain.__init__(self, manifest)
lvm.activateLVs(self.sdUUID, SPECIAL_LVS)
self.metavol = lvm.lvPath(self.sdUUID, sd.METADATA)
@@ -1316,7 +1324,7 @@
def refresh(self):
self.refreshDirTree()
lvm.invalidateVG(self.sdUUID)
- self._metadata = selectMetadata(self.sdUUID)
+ self.replaceMetadata(selectMetadata(self.sdUUID))
@staticmethod
def findDomainPath(sdUUID):
diff --git a/vdsm/storage/fileSD.py b/vdsm/storage/fileSD.py
index 9ceda8d..6add0f4 100644
--- a/vdsm/storage/fileSD.py
+++ b/vdsm/storage/fileSD.py
@@ -145,26 +145,34 @@
PersistentDict(FileMetadataRW(metafile)), FILE_SD_MD_FIELDS)
-class FileStorageDomain(sd.StorageDomain):
+class FileStorageDomainManifest(sd.StorageDomainManifest):
def __init__(self, domainPath):
+ sdUUID = os.path.basename(domainPath)
+
# Using glob might look like the simplest thing to do but it isn't
# If one of the mounts is stuck it'll cause the entire glob to fail
# and you wouldn't be able to access any domain
self.log.debug("Reading domain in path %s", domainPath)
self.mountpoint = os.path.dirname(domainPath)
self.remotePath = os.path.basename(self.mountpoint)
+ domaindir = os.path.join(self.mountpoint, sdUUID)
self.metafile = os.path.join(domainPath, sd.DOMAIN_META_DATA,
sd.METADATA)
-
- sdUUID = os.path.basename(domainPath)
- validateFileSystemFeatures(sdUUID, self.mountpoint)
-
metadata = FileSDMetadata(self.metafile)
- domaindir = os.path.join(self.mountpoint, sdUUID)
- sd.StorageDomain.__init__(self, sdUUID, domaindir, metadata)
+ sd.StorageDomainManifest.__init__(self, sdUUID, domaindir, metadata)
- if not self.oop.fileUtils.pathExists(self.metafile):
- raise se.StorageDomainMetadataNotFound(sdUUID, self.metafile)
+
+class FileStorageDomain(sd.StorageDomain):
+ ManifestClass = FileStorageDomainManifest
+
+ def __init__(self, domainPath):
+ manifest = self.ManifestClass(domainPath)
+ validateFileSystemFeatures(manifest.sdUUID, manifest.mountpoint)
+ sd.StorageDomain.__init__(self, manifest)
+
+ if not self.oop.fileUtils.pathExists(manifest.metafile):
+ raise se.StorageDomainMetadataNotFound(manifest.sdUUID,
+ manifest.metafile)
self.imageGarbageCollector()
self._registerResourceNamespaces()
@@ -259,7 +267,7 @@
})
def getReadDelay(self):
- stats = misc.readspeed(self.metafile, 4096)
+ stats = misc.readspeed(self.manifest.metafile, 4096)
return stats['seconds']
def getFileList(self, pattern, caseSensitive):
@@ -537,7 +545,7 @@
return True
def getRemotePath(self):
- return self.remotePath
+ return self.manifest.remotePath
def getRealPath(self):
"""
diff --git a/vdsm/storage/imageRepository/formatConverter.py b/vdsm/storage/imageRepository/formatConverter.py
index b0720ca..5aaafef 100644
--- a/vdsm/storage/imageRepository/formatConverter.py
+++ b/vdsm/storage/imageRepository/formatConverter.py
@@ -60,7 +60,7 @@
if chkMetadata[sd.DMDK_VERSION] == int(targetVersion):
# Switching to the newMetadata (successful upgrade), the oldMetadata
# was cleared after all.
- domain._metadata = chkMetadata
+ domain.replaceMetadata(chkMetadata)
log.debug("Conversion of domain %s to tag based metadata completed, "
"target version = %s", domain.sdUUID, targetVersion)
else:
diff --git a/vdsm/storage/sd.py b/vdsm/storage/sd.py
index a771abf..ab86987 100644
--- a/vdsm/storage/sd.py
+++ b/vdsm/storage/sd.py
@@ -291,6 +291,15 @@
}
+class StorageDomainManifest(object):
+ log = logging.getLogger("Storage.StorageDomainManifest")
+
+ def __init__(self, sdUUID, domaindir, metadata):
+ self.sdUUID = sdUUID
+ self.domaindir = domaindir
+ self._metadata = metadata
+
+
class StorageDomain(object):
log = logging.getLogger("Storage.StorageDomain")
storage_repository = config.get('irs', 'repository')
@@ -304,10 +313,8 @@
3: (clusterlock.SANLock, True),
}
- def __init__(self, sdUUID, domaindir, metadata):
- self.sdUUID = sdUUID
- self.domaindir = domaindir
- self._metadata = metadata
+ def __init__(self, manifest):
+ self.manifest = manifest
self._lock = threading.Lock()
self.stat = None
self._clusterLock = self._makeClusterLock()
@@ -316,6 +323,28 @@
if self.stat:
threading.Thread(target=self.stat.stop).start()
+ @property
+ def sdUUID(self):
+ return self.manifest.sdUUID
+
+ @property
+ def domaindir(self):
+ return self.manifest.domaindir
+
+ @property
+ def mountpoint(self):
+ return self.manifest.mountpoint
+
+ @property
+ def _metadata(self):
+ return self.manifest._metadata
+
+ def replaceMetadata(self, md):
+ """
+ Used by FormatConverter to replace the metadata reader/writer
+ """
+ self.manifest._metadata = md
+
def prepareMailbox(self):
"""
This method has been introduced in order to prepare the mailbox
--
To view, visit https://gerrit.ovirt.org/41993
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: Ia275424a8d423722efb229a4d8545f035fe5fa51
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Adam Litke <alitke(a)redhat.com>
Nir Soffer has uploaded a new change for review.
Change subject: password: Allow pickling of protected password
......................................................................
password: Allow pickling of protected password
In commit 862d6440176c (password: Prevent password logging and
persisting), we bloked pickling of protected passwords, to prevent
accidental persisting of sensitive information.
Turns out that when using iSCSI CHAP authentication, supervdsm is
running iscsi.readSessionInfo(), returning a protected password. Under
the hood, it tries to pickle the results and fails.
We raise a very clear error when trying to pickle a ProtectePassword:
TypeError: ProtectedPassword object cannot be pickled
However, this error is swallowed in supervdsm or in the underlying
multiprocessing magic, and we get this unhelpful error in vdsm:
RuntimeError: Broken communication with supervdsm. Failed call to
readSessionInfo
Since we run lot of code via supervdsm, and returning objects
transparently is extremely convenient, it seems that blocking pickling
was not a good idea.
This patch enables pickling of ProtectedPassword, fixing iSCSI storage
when using CHAP authentication.
Change-Id: I198f418d88348a2bae33b71e323a9741ae295d30
Signed-off-by: Nir Soffer <nsoffer(a)redhat.com>
---
M lib/vdsm/password.py
M tests/passwordsTests.py
2 files changed, 3 insertions(+), 6 deletions(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/56/43256/1
diff --git a/lib/vdsm/password.py b/lib/vdsm/password.py
index 52588b1..9e0756d 100644
--- a/lib/vdsm/password.py
+++ b/lib/vdsm/password.py
@@ -33,10 +33,6 @@
def __ne__(self, other):
return not self.__eq__(other)
- def __getstate__(self):
- """ Do not serialize the the real password """
- raise TypeError("ProtectedPassword object cannot be pickled")
-
def __str__(self):
return "********"
diff --git a/tests/passwordsTests.py b/tests/passwordsTests.py
index 33bec3e..418d634 100644
--- a/tests/passwordsTests.py
+++ b/tests/passwordsTests.py
@@ -51,9 +51,10 @@
p2 = ProtectedPassword("12345678")
self.assertFalse(p1 != p2)
- def test_no_pickle(self):
+ def test_pickle_copy(self):
p1 = ProtectedPassword("12345678")
- self.assertRaises(TypeError, pickle.dumps, p1)
+ p2 = pickle.loads(pickle.dumps(p1))
+ self.assertEqual(p1, p2)
def test_no_marshal(self):
p1 = ProtectedPassword("12345678")
--
To view, visit https://gerrit.ovirt.org/43256
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I198f418d88348a2bae33b71e323a9741ae295d30
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Nir Soffer <nsoffer(a)redhat.com>
automation(a)ovirt.org has posted comments on this change.
Change subject: ceph: Support OVF_STORE upload for ceph.
......................................................................
Patch Set 2:
* Update tracker::IGNORE, no Bug-Url found
* Check Bug-Url::WARN, no bug url found, make sure header matches 'Bug-Url: ' and is a valid url.
* Check merged to previous::IGNORE, Not in stable branch (['ovirt-3.5', 'ovirt-3.4', 'ovirt-3.3'])
--
To view, visit https://gerrit.ovirt.org/43296
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: Iffcc1af9861a5580786340c2e5a325d1663b3a5e
Gerrit-PatchSet: 2
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Maor Lipchuk <mlipchuk(a)redhat.com>
Gerrit-Reviewer: Allon Mureinik <amureini(a)redhat.com>
Gerrit-Reviewer: Daniel Erez <derez(a)redhat.com>
Gerrit-Reviewer: Nir Soffer <nsoffer(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
automation(a)ovirt.org has posted comments on this change.
Change subject: ceph: Support OVF_STORE upload for ceph.
......................................................................
Patch Set 1:
* Update tracker::IGNORE, no Bug-Url found
* Check Bug-Url::WARN, no bug url found, make sure header matches 'Bug-Url: ' and is a valid url.
* Check merged to previous::IGNORE, Not in stable branch (['ovirt-3.5', 'ovirt-3.4', 'ovirt-3.3'])
--
To view, visit https://gerrit.ovirt.org/43296
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: Iffcc1af9861a5580786340c2e5a325d1663b3a5e
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Maor Lipchuk <mlipchuk(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
Nir Soffer has posted comments on this change.
Change subject: freeze: Avoid unneeded freeze during snapshot
......................................................................
Patch Set 1:
(1 comment)
https://gerrit.ovirt.org/#/c/43293/1/vdsm/virt/vm.py
File vdsm/virt/vm.py:
Line 3123
Line 3124
Line 3125
Line 3126
Line 3127
This is not needed since we have same cleanup code in the finally in line 3153
--
To view, visit https://gerrit.ovirt.org/43293
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I328470f700ab74daeed5375c0ade83628d16c387
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Nir Soffer <nsoffer(a)redhat.com>
Gerrit-Reviewer: Adam Litke <alitke(a)redhat.com>
Gerrit-Reviewer: Allon Mureinik <amureini(a)redhat.com>
Gerrit-Reviewer: Dan Kenigsberg <danken(a)redhat.com>
Gerrit-Reviewer: Daniel Erez <derez(a)redhat.com>
Gerrit-Reviewer: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: Maor Lipchuk <mlipchuk(a)redhat.com>
Gerrit-Reviewer: Michal Skrivanek <mskrivan(a)redhat.com>
Gerrit-Reviewer: Nir Soffer <nsoffer(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: Yes
Nir Soffer has posted comments on this change.
Change subject: freeze: Avoid unneeded freeze during snapshot
......................................................................
Patch Set 1:
I'm not very happy with this version - it is little too big, and make messy code even more messy. Basically this is here so engine side can tested while we refine the implementation.
--
To view, visit https://gerrit.ovirt.org/43293
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I328470f700ab74daeed5375c0ade83628d16c387
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Nir Soffer <nsoffer(a)redhat.com>
Gerrit-Reviewer: Adam Litke <alitke(a)redhat.com>
Gerrit-Reviewer: Allon Mureinik <amureini(a)redhat.com>
Gerrit-Reviewer: Dan Kenigsberg <danken(a)redhat.com>
Gerrit-Reviewer: Daniel Erez <derez(a)redhat.com>
Gerrit-Reviewer: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: Maor Lipchuk <mlipchuk(a)redhat.com>
Gerrit-Reviewer: Michal Skrivanek <mskrivan(a)redhat.com>
Gerrit-Reviewer: Nir Soffer <nsoffer(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
automation(a)ovirt.org has posted comments on this change.
Change subject: freeze: Avoid unneeded freeze during snapshot
......................................................................
Patch Set 1:
* Update tracker::IGNORE, no Bug-Url found
* Check Bug-Url::WARN, no bug url found, make sure header matches 'Bug-Url: ' and is a valid url.
* Check merged to previous::IGNORE, Not in stable branch (['ovirt-3.5', 'ovirt-3.4', 'ovirt-3.3'])
--
To view, visit https://gerrit.ovirt.org/43293
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I328470f700ab74daeed5375c0ade83628d16c387
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Nir Soffer <nsoffer(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
automation(a)ovirt.org has posted comments on this change.
Change subject: migration: replace boolean with proper Events
......................................................................
Patch Set 4:
* Update tracker::IGNORE, no Bug-Url found
* Check Bug-Url::WARN, no bug url found, make sure header matches 'Bug-Url: ' and is a valid url.
* Check merged to previous::IGNORE, Not in stable branch (['ovirt-3.5', 'ovirt-3.4', 'ovirt-3.3'])
--
To view, visit https://gerrit.ovirt.org/42887
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I02639749ab884c3542c4d29715756044d777f738
Gerrit-PatchSet: 4
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: Jenkins CI
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
Ido Barkan has uploaded a new change for review.
Change subject: net: ignore bondingOptions in persistent networks.
......................................................................
net: ignore bondingOptions in persistent networks.
Up until https://gerrit.ovirt.org/#/c/42146/ bondingOptions were
mistakenly part of persistent network attributes. So, if we are
upgrading from an older enough version, we should drop this entry
it the copied persistent networks.
Change-Id: I1c29d4e6c109d4fa7b2d293133b8551e423ec139
Signed-off-by: Ido Barkan <ibarkan(a)redhat.com>
---
M lib/vdsm/netconfpersistence.py
1 file changed, 5 insertions(+), 0 deletions(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/33/43233/1
diff --git a/lib/vdsm/netconfpersistence.py b/lib/vdsm/netconfpersistence.py
index 9b041ae..fa59edb 100644
--- a/lib/vdsm/netconfpersistence.py
+++ b/lib/vdsm/netconfpersistence.py
@@ -366,6 +366,11 @@
bond_attr.get('options'))
bond_attr['options'] = self._netinfo.bondOptsForIfcfg(
normalized_opts)
+ # before d18e2f10 bondingOptions were also part of networks, so in case
+ # we are upgrading from an older version, they should be ignored if
+ # they exist.
+ for net_attr in config_copy.networks.itervalues():
+ net_attr.pop('bondingOptions')
def _normalize_bonding_nics(self, config_copy):
for bond_attr in config_copy.bonds.itervalues():
--
To view, visit https://gerrit.ovirt.org/43233
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I1c29d4e6c109d4fa7b2d293133b8551e423ec139
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Ido Barkan <ibarkan(a)redhat.com>
Piotr Kliczewski has uploaded a new change for review.
Change subject: xmlrpc: do not block forever when waiting on incoming messages
......................................................................
xmlrpc: do not block forever when waiting on incoming messages
get_request method is used in BaseServer#_handle_request_noblock and it
is explicitly stated in docstring that the method should not block.
We can't use xmlrpc built-in timeout handling because we detect a
protocol and pass socket for processing.
Change-Id: I295e3099ea06d786741164e1f240f4662631bf8a
Signed-off-by: pkliczewski <piotr.kliczewski(a)gmail.com>
---
M lib/vdsm/xmlrpc.py
M vdsm/rpc/bindingxmlrpc.py
2 files changed, 8 insertions(+), 1 deletion(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/15/42915/2
diff --git a/lib/vdsm/xmlrpc.py b/lib/vdsm/xmlrpc.py
index b98282b..6036527 100644
--- a/lib/vdsm/xmlrpc.py
+++ b/lib/vdsm/xmlrpc.py
@@ -128,7 +128,11 @@
self.queue.put((connected_socket, socket_address))
def get_request(self):
- return self.queue.get(True)
+ """
+ We do not want to block so we wait 3 seconds for incoming
+ requests and Empty exception is raised.
+ """
+ return self.queue.get(block=True, timeout=3)
def server_close(self):
self.queue.put((None, None))
diff --git a/vdsm/rpc/bindingxmlrpc.py b/vdsm/rpc/bindingxmlrpc.py
index 21a545d..6e68c19 100644
--- a/vdsm/rpc/bindingxmlrpc.py
+++ b/vdsm/rpc/bindingxmlrpc.py
@@ -24,6 +24,7 @@
import logging
import libvirt
import threading
+import Queue
import re
import sys
@@ -66,6 +67,8 @@
while self._enabled:
try:
self.server.handle_request()
+ except Queue.Empty:
+ pass
except Exception as e:
if e[0] != EINTR:
self.log.error("xml-rpc handler exception",
--
To view, visit https://gerrit.ovirt.org/42915
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I295e3099ea06d786741164e1f240f4662631bf8a
Gerrit-PatchSet: 2
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Piotr Kliczewski <piotr.kliczewski(a)gmail.com>
Gerrit-Reviewer: Dan Kenigsberg <danken(a)redhat.com>
Gerrit-Reviewer: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: Piotr Kliczewski <piotr.kliczewski(a)gmail.com>
Gerrit-Reviewer: Yaniv Bronhaim <ybronhei(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
automation(a)ovirt.org has posted comments on this change.
Change subject: vm: event: report minimal running vm stats
......................................................................
Patch Set 1:
* Update tracker::IGNORE, no Bug-Url found
* Check Bug-Url::WARN, no bug url found, make sure header matches 'Bug-Url: ' and is a valid url.
* Check merged to previous::IGNORE, Not in stable branch (['ovirt-3.5', 'ovirt-3.4', 'ovirt-3.3'])
--
To view, visit https://gerrit.ovirt.org/43290
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I894a1b10d3cc3dd33664ea9f0842cbc7f1eb07b3
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
automation(a)ovirt.org has posted comments on this change.
Change subject: vm: event: emit event on guest status change
......................................................................
Patch Set 1:
* Update tracker::IGNORE, no Bug-Url found
* Check Bug-Url::WARN, no bug url found, make sure header matches 'Bug-Url: ' and is a valid url.
* Check merged to previous::IGNORE, Not in stable branch (['ovirt-3.5', 'ovirt-3.4', 'ovirt-3.3'])
--
To view, visit https://gerrit.ovirt.org/43289
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: Ib98d64a250a6d2de70f7fe5206e5a0ad648c151d
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
automation(a)ovirt.org has posted comments on this change.
Change subject: vm: event: introduce _send_event helper
......................................................................
Patch Set 1:
* Update tracker::IGNORE, no Bug-Url found
* Check Bug-Url::WARN, no bug url found, make sure header matches 'Bug-Url: ' and is a valid url.
* Check merged to previous::IGNORE, Not in stable branch (['ovirt-3.5', 'ovirt-3.4', 'ovirt-3.3'])
--
To view, visit https://gerrit.ovirt.org/43287
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I4c25ba9f520e6409cc06e99a2450d2c0d98c26fb
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
automation(a)ovirt.org has posted comments on this change.
Change subject: vm: event: emit event on setDownStatus
......................................................................
Patch Set 2:
* Update tracker::IGNORE, no Bug-Url found
* Check Bug-Url::WARN, no bug url found, make sure header matches 'Bug-Url: ' and is a valid url.
* Check merged to previous::IGNORE, Not in stable branch (['ovirt-3.5', 'ovirt-3.4', 'ovirt-3.3'])
--
To view, visit https://gerrit.ovirt.org/43270
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I9a99d074461bcc2b61d15dd46f7d020abbe48afe
Gerrit-PatchSet: 2
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
automation(a)ovirt.org has posted comments on this change.
Change subject: vm: emit event when domDependentInit is done
......................................................................
Patch Set 2:
* Update tracker::IGNORE, no Bug-Url found
* Check Bug-Url::WARN, no bug url found, make sure header matches 'Bug-Url: ' and is a valid url.
* Check merged to previous::IGNORE, Not in stable branch (['ovirt-3.5', 'ovirt-3.4', 'ovirt-3.3'])
--
To view, visit https://gerrit.ovirt.org/43269
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: Ie379911a374a9ba3e82658592c295f7a9a0ac8a0
Gerrit-PatchSet: 2
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
automation(a)ovirt.org has posted comments on this change.
Change subject: virt: events: extract function to make event info
......................................................................
Patch Set 2:
* Update tracker::IGNORE, no Bug-Url found
* Check Bug-Url::WARN, no bug url found, make sure header matches 'Bug-Url: ' and is a valid url.
* Check merged to previous::IGNORE, Not in stable branch (['ovirt-3.5', 'ovirt-3.4', 'ovirt-3.3'])
--
To view, visit https://gerrit.ovirt.org/43268
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: If60e8422d06fb1ff45a846858856ad68d52fd6ce
Gerrit-PatchSet: 2
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
Ido Barkan has uploaded a new change for review.
Change subject: net: SetupNetworks small cleanups.
......................................................................
net: SetupNetworks small cleanups.
Extracted the logic that alters network parameters for bonding and nics
to functions, did some internal renaming and few small cleanups.
Change-Id: Ib054e144dccbff40b40b5967dca0bf840bce8ab9
Signed-off-by: Ido Barkan <ibarkan(a)redhat.com>
---
M lib/vdsm/netconfpersistence.py
M vdsm/network/api.py
2 files changed, 55 insertions(+), 28 deletions(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/22/42022/1
diff --git a/lib/vdsm/netconfpersistence.py b/lib/vdsm/netconfpersistence.py
index 656a588..cdb6d2e 100644
--- a/lib/vdsm/netconfpersistence.py
+++ b/lib/vdsm/netconfpersistence.py
@@ -413,5 +413,6 @@
else: # isolated bridged network
return []
+
def unicodize(d):
return json.loads(json.dumps(d))
diff --git a/vdsm/network/api.py b/vdsm/network/api.py
index 828d67c..3eee1e8 100755
--- a/vdsm/network/api.py
+++ b/vdsm/network/api.py
@@ -608,27 +608,6 @@
configurator.configureBond(bond)
-def _buildBondOptions(bondName, bondings, _netinfo):
- logger = logging.getLogger("_buildBondOptions")
-
- bond = {}
- if bondings.get(bondName):
- bond['nics'] = bondings[bondName]['nics']
- bond['bondingOptions'] = bondings[bondName].get('options', None)
- elif bondName in _netinfo.bondings:
- # We may not receive any information about the bonding device if it is
- # unchanged. In this case check whether this bond exists on host and
- # take its parameters.
- logger.debug("Fetching bond %r info", bondName)
- existingBond = _netinfo.bondings[bondName]
- bond['nics'] = existingBond['slaves']
- bond['bondingOptions'] = existingBond['cfg'].get('BONDING_OPTS', None)
- else:
- raise ConfigNetworkError(ne.ERR_BAD_PARAMS, "No bonding option given, "
- "nor existing bond %s found." % bondName)
- return bond
-
-
def _buildSetupHookDict(req_networks, req_bondings, req_options):
hook_dict = {'request': {'networks': dict(req_networks),
@@ -675,17 +654,14 @@
if 'remove' in attrs:
continue
- d = dict(attrs)
- if 'bonding' in d:
- d.update(_buildBondOptions(d['bonding'], bondings, _netinfo))
- else:
- d['nics'] = [d.pop('nic')] if 'nic' in d else []
- d['force'] = force
+ _verify_bond_params(attrs, bondings, _netinfo)
+ net_attr = update_underlying_device_params(attrs, bondings, _netinfo)
+ net_attr['force'] = force
logger.debug("Adding network %r", network)
try:
_addNetwork(network, configurator=configurator,
- implicitBonding=True, _netinfo=_netinfo, **d)
+ implicitBonding=True, _netinfo=_netinfo, **net_attr)
except ConfigNetworkError as cne:
if cne.errCode == ne.ERR_FAILED_IFUP:
logger.debug("Adding network %r failed. Running "
@@ -697,6 +673,56 @@
_netinfo.updateDevices() # Things like a bond mtu can change
+def _verify_bond_params(attrs, bondings, _netinfo):
+ if 'bonding' in attrs:
+ bondName = attrs['bonding']
+ if bondName not in bondings and bondName not in _netinfo.bondings:
+ raise ConfigNetworkError(
+ ne.ERR_BAD_PARAMS, "No bonding option given, nor existing "
+ "bond %s found." % bondName)
+
+
+def update_underlying_device_params(attrs, bondings, _netinfo):
+ """update a specific network attributes with relevant bonding/ nic
+ info."""
+ net_attr = dict(attrs)
+ if 'bonding' in net_attr:
+ net_attr.update(build_bond_options(
+ net_attr['bonding'], bondings, _netinfo))
+ else:
+ net_attr['nics'] = (
+ [net_attr.pop('nic')] if 'nic' in net_attr else [])
+ return net_attr
+
+
+def build_bond_options(bond_name, bondings, _netinfo):
+ """If VDSM is alsed to cinfigure a network over a bonding there are 2
+ options:
+ 1. VDSM needs to create this bond. This is indicated by describing the bond
+ and it's nics in the 'bonding' dictionary.
+ 2. Bonding already exists on the host. This is indicated bu just naming
+ the bonding name in the network attributes dictionary. In this case
+ VDSM tries to get bonding options and nics from the kernel. User might
+ add extra configuration to change an existing bond.
+ Etherway, bonding name, options and nics are places in the network
+ attributes before given to the configurator. This is also how the network
+ is persisted VDSM.
+ """
+ bond = {}
+ non_existing_bond = bondings.get(bond_name)
+ if non_existing_bond:
+ bond['nics'] = non_existing_bond['nics']
+ bond['bondingOptions'] = non_existing_bond.get('options')
+ else:
+ # bondName must be in _netinfo.bondings at this point
+ logging.debug("Fetching bond %r info", bond_name)
+ existing_bond = _netinfo.bondings[bond_name]
+ bond['nics'] = existing_bond['slaves']
+ bond['bondingOptions'] = existing_bond['cfg'].get('BONDING_OPTS')
+
+ return bond
+
+
def _get_connectivity_timeout(options):
return int(options.get('connectivityTimeout',
CONNECTIVITY_TIMEOUT_DEFAULT))
--
To view, visit https://gerrit.ovirt.org/42022
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: Ib054e144dccbff40b40b5967dca0bf840bce8ab9
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Ido Barkan <ibarkan(a)redhat.com>
Dan Kenigsberg has submitted this change and it was merged.
Change subject: snapshot: Add VM.freeze() and VM.thaw() verbs
......................................................................
snapshot: Add VM.freeze() and VM.thaw() verbs
This patch adds new verbs exposing Vm.freeze() and Vm.thaw(), required
for taking a snapshot of network disks (such as Ceph).
Change-Id: I44c4237841e44548f48f626f4241d3f2e484930e
Signed-off-by: Nir Soffer <nsoffer(a)redhat.com>
Reviewed-on: https://gerrit.ovirt.org/43058
Reviewed-by: Michal Skrivanek <michal.skrivanek(a)redhat.com>
Reviewed-by: Francesco Romani <fromani(a)redhat.com>
Reviewed-by: Martin Polednik <mpolednik(a)redhat.com>
Continuous-Integration: Jenkins CI
Reviewed-by: Vinzenz Feenstra <vfeenstr(a)redhat.com>
Tested-by: Daniel Erez <derez(a)redhat.com>
Reviewed-by: Dan Kenigsberg <danken(a)redhat.com>
---
M vdsm/API.py
M vdsm/rpc/bindingxmlrpc.py
M vdsm/rpc/vdsmapi-schema.json
3 files changed, 48 insertions(+), 0 deletions(-)
Approvals:
Nir Soffer: Verified
Daniel Erez: Verified
Jenkins CI: Passed CI tests
Vinzenz Feenstra: Looks good to me, but someone else must approve
Dan Kenigsberg: Looks good to me, approved
Francesco Romani: Looks good to me, but someone else must approve
Michal Skrivanek: Looks good to me, but someone else must approve
Martin Polednik: Looks good to me, but someone else must approve
--
To view, visit https://gerrit.ovirt.org/43058
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: I44c4237841e44548f48f626f4241d3f2e484930e
Gerrit-PatchSet: 8
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Nir Soffer <nsoffer(a)redhat.com>
Gerrit-Reviewer: Adam Litke <alitke(a)redhat.com>
Gerrit-Reviewer: Allon Mureinik <amureini(a)redhat.com>
Gerrit-Reviewer: Dan Kenigsberg <danken(a)redhat.com>
Gerrit-Reviewer: Daniel Erez <derez(a)redhat.com>
Gerrit-Reviewer: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: Jenkins CI
Gerrit-Reviewer: Maor Lipchuk <mlipchuk(a)redhat.com>
Gerrit-Reviewer: Martin Polednik <mpolednik(a)redhat.com>
Gerrit-Reviewer: Michal Skrivanek <michal.skrivanek(a)redhat.com>
Gerrit-Reviewer: Nir Soffer <nsoffer(a)redhat.com>
Gerrit-Reviewer: Vinzenz Feenstra <vfeenstr(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Nir Soffer has uploaded a new change for review.
Change subject: snapshot: Start the snapshot module
......................................................................
snapshot: Start the snapshot module
This module will hold the code taking a vm snapshot. Currently it
include only the GuestAgent class, responsible for freezing and thawing
guest file systems during a snapshot.
This module is an attempt to add testable vm code without adding more
code to the Vm class.
Change-Id: I8e4c54f461039de99823c3b80a10be0a960c4273
Signed-off-by: Nir Soffer <nsoffer(a)redhat.com>
---
M debian/vdsm.install
M tests/Makefile.am
A tests/vmSnapshotTests.py
M tests/vmfakelib.py
M vdsm.spec.in
M vdsm/virt/Makefile.am
A vdsm/virt/snapshot.py
7 files changed, 117 insertions(+), 0 deletions(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/18/43018/1
diff --git a/debian/vdsm.install b/debian/vdsm.install
index 35fcba7..aac35c0 100644
--- a/debian/vdsm.install
+++ b/debian/vdsm.install
@@ -152,6 +152,7 @@
./usr/share/vdsm/virt/periodic.py
./usr/share/vdsm/virt/sampling.py
./usr/share/vdsm/virt/secret.py
+./usr/share/vdsm/virt/snapshot.py
./usr/share/vdsm/virt/vm.py
./usr/share/vdsm/virt/vmchannels.py
./usr/share/vdsm/virt/vmexitreason.py
diff --git a/tests/Makefile.am b/tests/Makefile.am
index b9b8e72..a472ee6 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -110,6 +110,7 @@
vmApiTests.py \
vmfakelibTests.py \
vmMigrationTests.py \
+ vmSnapshotTests.py \
vmSecretTests.py \
vmStorageTests.py \
vmTests.py \
diff --git a/tests/vmSnapshotTests.py b/tests/vmSnapshotTests.py
new file mode 100644
index 0000000..23f0c9b
--- /dev/null
+++ b/tests/vmSnapshotTests.py
@@ -0,0 +1,41 @@
+#
+# Copyright 2015 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
+#
+
+import logging
+from testlib import VdsmTestCase
+import vmfakelib
+from virt import snapshot
+
+
+class SnapshotGuestAgentTests(VdsmTestCase):
+
+ def test_freeze_filesystems(self):
+ dom = vmfakelib.Domain()
+ guest = snapshot.GuestAgent(dom, logging.getLogger())
+ guest.freeze_filesystems()
+ self.assertEqual(dom.__recording__,
+ [("fsFreeze", (), {"mountpoints": None})])
+
+ def test_thaw_filesystems(self):
+ dom = vmfakelib.Domain()
+ guest = snapshot.GuestAgent(dom, logging.getLogger())
+ guest.thaw_filesystems()
+ self.assertEqual(dom.__recording__,
+ [("fsThaw", (), {"mountpoints": None})])
diff --git a/tests/vmfakelib.py b/tests/vmfakelib.py
index 2c841ca..cfdea00 100644
--- a/tests/vmfakelib.py
+++ b/tests/vmfakelib.py
@@ -244,6 +244,14 @@
def getDowntimes(self):
return self._downtimes
+ @recorded
+ def fsFreeze(self, mountpoints=None, flags=0):
+ self._failIfRequested()
+
+ @recorded
+ def fsThaw(self, mountpoints=None, flags=0):
+ self._failIfRequested()
+
class GuestAgent(object):
def __init__(self):
diff --git a/vdsm.spec.in b/vdsm.spec.in
index 2f5ffc8..91ffcbb 100644
--- a/vdsm.spec.in
+++ b/vdsm.spec.in
@@ -921,6 +921,7 @@
%{_datadir}/%{vdsm_name}/virt/periodic.py*
%{_datadir}/%{vdsm_name}/virt/sampling.py*
%{_datadir}/%{vdsm_name}/virt/secret.py*
+%{_datadir}/%{vdsm_name}/virt/snapshot.py*
%{_datadir}/%{vdsm_name}/virt/vmchannels.py*
%{_datadir}/%{vdsm_name}/virt/vmstats.py*
%{_datadir}/%{vdsm_name}/virt/vmstatus.py*
diff --git a/vdsm/virt/Makefile.am b/vdsm/virt/Makefile.am
index 745e7dc..aec4981 100644
--- a/vdsm/virt/Makefile.am
+++ b/vdsm/virt/Makefile.am
@@ -31,6 +31,7 @@
periodic.py \
sampling.py \
secret.py \
+ snapshot.py \
vm.py \
vmchannels.py \
vmexitreason.py \
diff --git a/vdsm/virt/snapshot.py b/vdsm/virt/snapshot.py
new file mode 100644
index 0000000..2629ed6
--- /dev/null
+++ b/vdsm/virt/snapshot.py
@@ -0,0 +1,64 @@
+#
+# Copyright 2015 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
+#
+
+"""
+snapshot - take vm snapshot
+
+This module will implement vm snapshot. Currently it only contains the
+GuestAgent class, implementing filesystem freezing and thawing, using during a
+snapshot flow.
+"""
+
+
+class GuestAgent(object):
+ """
+ For consistent snapshot, we must freeze the guest filesystems before the
+ snapshot, and thaw them when the snapshot is done. These operations are
+ implemented by a guest agent, and application specific code on the guest.
+
+ If a guest agent supporiting these operation is not installed or libvirt
+ fail to communicate with the guest agent, these operations will fail.
+ """
+
+ def __init__(self, dom, log):
+ self._dom = dom
+ self._log = log
+
+ def freeze_filesystems(self, mountpoints=None):
+ """
+ Freeze specified filesystems within the guest (hence guest agent may be
+ required depending on hypervisor used).
+
+ If mountpoints is None every mounted filesystem on the guest is frozen.
+ """
+ self._log.info("Freezing guest filesystems (moutpoints=%s)",
+ mountpoints)
+ self._dom.fsFreeze(mountpoints=mountpoints)
+
+ def thaw_filesystems(self, mountpoints=None):
+ """
+ Thaw specified filesystems within the guest (hence guest agent may be
+ required depending on hypervisor used).
+
+ If mountpoints is None every mounted filesystem on the guest is thawed.
+ """
+ self._log.info("Thawing guest filesystems (moutpoints=%s)",
+ mountpoints)
+ self._dom.fsThaw(mountpoints=mountpoints)
--
To view, visit https://gerrit.ovirt.org/43018
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I8e4c54f461039de99823c3b80a10be0a960c4273
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Nir Soffer <nsoffer(a)redhat.com>
Ondřej Svoboda has uploaded a new change for review.
Change subject: network: disable IPv6 via sysctl if no IPv6 functionality was requested
......................................................................
network: disable IPv6 via sysctl if no IPv6 functionality was requested
This applies to bridges. On CentOS/RHEL 7, disable_ipv6=0 is the default
so bridges allowed IPv6 traffic even though it was not enabled by setting
a static address or using DHCPv6.
Change-Id: I2314d4bc120c15af44ff9e20c9281ab69c84ad0a
Bug-Url: https://bugzilla.redhat.com/1219363
Signed-off-by: Ondřej Svoboda <osvoboda(a)redhat.com>
---
M tests/functional/networkTests.py
M vdsm/network/configurators/ifcfg.py
M vdsm/network/configurators/iproute2.py
3 files changed, 13 insertions(+), 0 deletions(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/52/43252/1
diff --git a/tests/functional/networkTests.py b/tests/functional/networkTests.py
index f3dff3f..94ee4db 100644
--- a/tests/functional/networkTests.py
+++ b/tests/functional/networkTests.py
@@ -1685,6 +1685,9 @@
if 6 in families:
self.assertIn(IPv6_ADDRESS_AND_CIDR, test_net['ipv6addrs'])
self.assertEqual(IPv6_GATEWAY, test_net['ipv6gateway'])
+ else:
+ # VDSM disables IPv6 via sysctl if IPv6 is not requested
+ self.assertEqual([], test_net['ipv6addrs'])
delete = {NETWORK_NAME: {'remove': True}}
status, msg = self.vdsm_net.setupNetworks(delete, {}, {})
self.assertEqual(status, SUCCESS, msg)
diff --git a/vdsm/network/configurators/ifcfg.py b/vdsm/network/configurators/ifcfg.py
index e008994..1b36199 100644
--- a/vdsm/network/configurators/ifcfg.py
+++ b/vdsm/network/configurators/ifcfg.py
@@ -35,6 +35,7 @@
from vdsm import constants
from vdsm import ipwrapper
from vdsm import netinfo
+from vdsm import sysctl
from vdsm import utils
from vdsm.netconfpersistence import RunningConfig
@@ -93,6 +94,10 @@
bridge.port.configure(**opts)
self._addSourceRoute(bridge)
_ifup(bridge)
+ if not bridge.ipv6.address and not bridge.ipv6.ipv6autoconf and (
+ not bridge.ipv6.dhcpv6):
+ # disallow IPv6 traffic on the bridge if IPv6 is not requested
+ sysctl.disable_ipv6(bridge.name)
def configureVlan(self, vlan, **opts):
self.configApplier.addVlan(vlan, **opts)
diff --git a/vdsm/network/configurators/iproute2.py b/vdsm/network/configurators/iproute2.py
index 9a8b751..31b1cf4 100644
--- a/vdsm/network/configurators/iproute2.py
+++ b/vdsm/network/configurators/iproute2.py
@@ -25,6 +25,7 @@
from vdsm.constants import EXT_BRCTL
from vdsm.ipwrapper import routeAdd, routeDel, ruleAdd, ruleDel, IPRoute2Error
from vdsm.netconfpersistence import RunningConfig
+from vdsm import sysctl
from vdsm.utils import CommandPath
from vdsm.utils import execCmd
@@ -72,6 +73,10 @@
self.configApplier.addBridgePort(bridge)
DynamicSourceRoute.addInterfaceTracking(bridge)
self.configApplier.setIfaceConfigAndUp(bridge)
+ if not bridge.ipv6.address and not bridge.ipv6.ipv6autoconf and (
+ not bridge.ipv6.dhcpv6):
+ # disallow IPv6 traffic on the bridge if IPv6 is not requested
+ sysctl.disable_ipv6(bridge.name)
self._addSourceRoute(bridge)
if 'custom' in opts and 'bridge_opts' in opts['custom']:
self.configApplier._setBridgeOpts(bridge,
--
To view, visit https://gerrit.ovirt.org/43252
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I2314d4bc120c15af44ff9e20c9281ab69c84ad0a
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Ondřej Svoboda <osvoboda(a)redhat.com>
Francesco Romani has uploaded a new change for review.
Change subject: api: use recommended logging
......................................................................
api: use recommended logging
Update the logging in setLogLevel to use
less convoluted and more modern idiom.
Change-Id: I91c3b4aa3344b5093d13fb11e017394cf0bf52b2
Signed-off-by: Francesco Romani <fromani(a)redhat.com>
---
M vdsm/API.py
1 file changed, 1 insertion(+), 2 deletions(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/22/38422/1
diff --git a/vdsm/API.py b/vdsm/API.py
index 42c471e..6b8da3a 100644
--- a/vdsm/API.py
+++ b/vdsm/API.py
@@ -1369,8 +1369,7 @@
Doesn't survive a restart
"""
- logging.getLogger('clientIF.setLogLevel').info('Setting loglevel '
- 'to %s' % level)
+ logging.info('Setting loglevel to %s', level)
handlers = logging.getLogger().handlers
[fileHandler] = [h for h in handlers if
isinstance(h, logging.FileHandler)]
--
To view, visit https://gerrit.ovirt.org/38422
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I91c3b4aa3344b5093d13fb11e017394cf0bf52b2
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Francesco Romani <fromani(a)redhat.com>
automation(a)ovirt.org has posted comments on this change.
Change subject: vm: event: emit event on setDownStatus
......................................................................
Patch Set 1:
* Update tracker::IGNORE, no Bug-Url found
* Check Bug-Url::WARN, no bug url found, make sure header matches 'Bug-Url: ' and is a valid url.
* Check merged to previous::IGNORE, Not in stable branch (['ovirt-3.5', 'ovirt-3.4', 'ovirt-3.3'])
--
To view, visit https://gerrit.ovirt.org/43270
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I9a99d074461bcc2b61d15dd46f7d020abbe48afe
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
automation(a)ovirt.org has posted comments on this change.
Change subject: vm: emit event when domDependentInit is done
......................................................................
Patch Set 1:
* Update tracker::IGNORE, no Bug-Url found
* Check Bug-Url::WARN, no bug url found, make sure header matches 'Bug-Url: ' and is a valid url.
* Check merged to previous::IGNORE, Not in stable branch (['ovirt-3.5', 'ovirt-3.4', 'ovirt-3.3'])
--
To view, visit https://gerrit.ovirt.org/43269
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: Ie379911a374a9ba3e82658592c295f7a9a0ac8a0
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
automation(a)ovirt.org has posted comments on this change.
Change subject: virt: events: extract function to make event info
......................................................................
Patch Set 1:
* Update tracker::IGNORE, no Bug-Url found
* Check Bug-Url::WARN, no bug url found, make sure header matches 'Bug-Url: ' and is a valid url.
* Check merged to previous::IGNORE, Not in stable branch (['ovirt-3.5', 'ovirt-3.4', 'ovirt-3.3'])
--
To view, visit https://gerrit.ovirt.org/43268
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: If60e8422d06fb1ff45a846858856ad68d52fd6ce
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
Douglas Schilling Landgraf has posted comments on this change.
Change subject: vdsm-reg: remove the sub-project
......................................................................
Patch Set 1: Verified+1
I could generate vdsm without vdsm-reg package.
RIP vdsm-reg.
--
To view, visit https://gerrit.ovirt.org/43254
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I5d19ddb0e65657515e2dc0eb9eeae320d8d6bf71
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Douglas Schilling Landgraf <dougsland(a)redhat.com>
Gerrit-Reviewer: Dan Kenigsberg <danken(a)redhat.com>
Gerrit-Reviewer: Douglas Schilling Landgraf <dougsland(a)redhat.com>
Gerrit-Reviewer: Jenkins CI
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
automation(a)ovirt.org has posted comments on this change.
Change subject: vdsm-reg: remove the sub-project
......................................................................
Patch Set 1:
* Update tracker::#1231379::OK
* Check Bug-Url::OK
* Check Public Bug::#1231379::OK, public bug
* Check Product::#1231379::OK, Correct product Red Hat Enterprise Virtualization Manager
* Check TR::SKIP, not in a monitored branch (ovirt-3.5 ovirt-3.4 ovirt-3.3 ovirt-3.2)
* Check merged to previous::IGNORE, Not in stable branch (['ovirt-3.5', 'ovirt-3.4', 'ovirt-3.3'])
--
To view, visit https://gerrit.ovirt.org/43254
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I5d19ddb0e65657515e2dc0eb9eeae320d8d6bf71
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Douglas Schilling Landgraf <dougsland(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
Piotr Kliczewski has uploaded a new change for review.
Change subject: tests: restore default timeout value
......................................................................
tests: restore default timeout value
CI machines are overloaded with work so we need to give the test a bit
more time before we assume that the response not arrived.
Change-Id: Ia9edf74e5a06f8ceb8e64000dcaea9dee8247bae
Signed-off-by: pkliczewski <piotr.kliczewski(a)gmail.com>
---
M tests/jsonRpcTests.py
1 file changed, 1 insertion(+), 1 deletion(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/18/42918/1
diff --git a/tests/jsonRpcTests.py b/tests/jsonRpcTests.py
index 3606bba..7bd6dbc 100644
--- a/tests/jsonRpcTests.py
+++ b/tests/jsonRpcTests.py
@@ -41,7 +41,7 @@
JsonRpcRequest
-CALL_TIMEOUT = 3
+CALL_TIMEOUT = 15
CALL_ID = '2c8134fd-7dd4-4cfc-b7f8-6b7549399cb6'
--
To view, visit https://gerrit.ovirt.org/42918
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: Ia9edf74e5a06f8ceb8e64000dcaea9dee8247bae
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Piotr Kliczewski <piotr.kliczewski(a)gmail.com>
Dan Kenigsberg has uploaded a new change for review.
Change subject: net: maintain legacy addNetwork/delNetwork APIs
......................................................................
net: maintain legacy addNetwork/delNetwork APIs
commits 43a6b9 and 167b02 changed the signature of addNetwork and
delNetwork respectively. This must not happen, as Engine 3.5 uses
argument names in its API.
With http://www.ovirt.org/Features/HostNetworkingApi implemented in
engine-3.6, no one is going to call Vdsm's addNetwork/delNetwork any
more. However, we must keep backward compatibility as long as engine-3.5
is supported.
Bug-Url: https://bugzilla.redhat.com/1229632
Change-Id: I2eaf2b41e3e1c88721d855af0ccc3abd6c200034
Signed-off-by: Dan Kenigsberg <danken(a)redhat.com>
---
M vdsm/API.py
1 file changed, 4 insertions(+), 2 deletions(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/87/43187/1
diff --git a/vdsm/API.py b/vdsm/API.py
index 89f35ac..eafceb7 100644
--- a/vdsm/API.py
+++ b/vdsm/API.py
@@ -1453,13 +1453,14 @@
finally:
self._cif._networkSemaphore.release()
- def addNetwork(self, network, vlan=None, bond=None, nics=None,
+ def addNetwork(self, bridge, vlan=None, bond=None, nics=None,
options=None):
"""Add a new network to this vds.
Network topology is network--[vlan--][bond--]nics.
vlan(number) and bond are optional - pass the empty string to discard
them. """
+ network = bridge
if options is None:
options = {}
@@ -1501,9 +1502,10 @@
finally:
self._cif._networkSemaphore.release()
- def delNetwork(self, network, vlan=None, bond=None, nics=None,
+ def delNetwork(self, bridge, vlan=None, bond=None, nics=None,
options=None):
"""Delete a network from this vds."""
+ network = bridge
if options is None:
options = {}
self.translateNetOptionsToNew(options)
--
To view, visit https://gerrit.ovirt.org/43187
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I2eaf2b41e3e1c88721d855af0ccc3abd6c200034
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Dan Kenigsberg <danken(a)redhat.com>
Francesco Romani has uploaded a new change for review.
Change subject: migration: avoid stacktrace on known errors
......................................................................
migration: avoid stacktrace on known errors
In migration code, if VM.migrationCreate() fails on destination host,
we raise RuntimeError to abort the normal flow.
However, in the recovery flow, we inconditionally log the stacktrace
of the exception we catched.
This is good for troubleshooiting, but it is a little pointless in
this specific use case: we know already and precisely what failed.
This patch adds a special-purpose exception for this specific, yet
important, failure scenario, and avoids the stacktrace only when
catching this exception.
Change-Id: Ib35cf08a305018912991a47d0de645395a177e9e
Signed-off-by: Francesco Romani <fromani(a)redhat.com>
---
M vdsm/virt/migration.py
1 file changed, 12 insertions(+), 2 deletions(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/63/43063/1
diff --git a/vdsm/virt/migration.py b/vdsm/virt/migration.py
index b8e155f..7ea8753 100644
--- a/vdsm/virt/migration.py
+++ b/vdsm/virt/migration.py
@@ -52,6 +52,12 @@
VIR_MIGRATE_PARAM_GRAPHICS_URI = 'graphics_uri'
+class MigrationDestinationSetupError(RuntimeError):
+ """
+ Failed to create migration destination VM.
+ """
+
+
class SourceThread(threading.Thread):
"""
A thread that takes care of migration on the source vdsm.
@@ -295,6 +301,9 @@
if '_migrationParams' in self._vm.conf:
del self._vm.conf['_migrationParams']
SourceThread._ongoingMigrations.release()
+ except MigrationDestinationSetupError as e:
+ self._recover(str(e))
+ # we know what happened, no need to dump hollow stack trace
except Exception as e:
self._recover(str(e))
self.log.exception("Failed to migrate")
@@ -326,8 +335,9 @@
if result['status']['code']:
self.status = result
- raise RuntimeError('migration destination error: ' +
- result['status']['message'])
+ raise MigrationDestinationSetupError(
+ 'migration destination error: ' +
+ result['status']['message'])
if config.getboolean('vars', 'ssl'):
transport = 'tls'
else:
--
To view, visit https://gerrit.ovirt.org/43063
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: Ib35cf08a305018912991a47d0de645395a177e9e
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Francesco Romani <fromani(a)redhat.com>
Hello Dan Kenigsberg,
I'd like you to do a code review. Please visit
https://gerrit.ovirt.org/39780
to review the following change.
Change subject: supervdsm: Add zombiereaper to supervdsm
......................................................................
supervdsm: Add zombiereaper to supervdsm
Supervdsm uses multiprocessing.Process to impersonate other users and
check access. To avoid waiting on the subprocesses, we add all
subprocesses that were not waited upon to zombiereaper.
Change-Id: I938a1f2bc70fceab2c69bc8b3d8c0724a9da7720
Bug-url: https://bugzilla.redhat.com/show_bug.cgi?id=841486
Signed-off-by: Dima Kuznetsov <dkuznets(a)redhat.com>
Reviewed-on: http://gerrit.ovirt.org/28915
Reviewed-by: Dan Kenigsberg <danken(a)redhat.com>
Signed-off-by: Dima Kuznetsov <dkuznets(a)redhat.com>
---
M vdsm/supervdsmServer
1 file changed, 27 insertions(+), 14 deletions(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/80/39780/1
diff --git a/vdsm/supervdsmServer b/vdsm/supervdsmServer
index 3cdbf71..b8b6ff7 100755
--- a/vdsm/supervdsmServer
+++ b/vdsm/supervdsmServer
@@ -32,6 +32,7 @@
import logging
import logging.config
from vdsm.infra import sigutils
+from vdsm.infra import zombiereaper
import numaUtils
@@ -236,23 +237,34 @@
proc = Process(target=child, args=(hisPipe,))
proc.start()
- if not pipe.poll(RUN_AS_TIMEOUT):
- try:
- os.kill(proc.pid, signal.SIGKILL)
- except OSError as e:
- # If it didn't fail because process is already dead
- if e.errno != errno.ESRCH:
- raise
+ needReaping = True
+ try:
+ if not pipe.poll(RUN_AS_TIMEOUT):
+ try:
- raise Timeout()
+ os.kill(proc.pid, signal.SIGKILL)
+ except OSError as e:
+ # Don't add to zombiereaper of PID no longer exists
+ if e.errno == errno.ESRCH:
+ needReaping = False
+ else:
+ raise
- res, err = pipe.recv()
- pipe.send("Bye")
- proc.terminate()
- if err is not None:
- raise err
+ raise Timeout()
- return res
+ res, err = pipe.recv()
+ pipe.send("Bye")
+ proc.terminate()
+
+ if err is not None:
+ raise err
+
+ return res
+
+ finally:
+ # Add to zombiereaper if process has not been waited upon
+ if proc.exitcode is None and needReaping:
+ zombiereaper.autoReapPID(proc.pid)
@logDecorator
def validateAccess(self, user, groups, *args, **kwargs):
@@ -465,6 +477,7 @@
if not config.getboolean('vars', 'core_dump_enable'):
resource.setrlimit(resource.RLIMIT_CORE, (0, 0))
sigutils.register()
+ zombiereaper.registerSignalHandler()
def bind(func):
def wrapper(_SuperVdsm, *args, **kwargs):
--
To view, visit https://gerrit.ovirt.org/39780
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I938a1f2bc70fceab2c69bc8b3d8c0724a9da7720
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Dima Kuznetsov <dkuznets(a)redhat.com>
Gerrit-Reviewer: Dan Kenigsberg <danken(a)redhat.com>
Dima Kuznetsov has uploaded a new change for review.
Change subject: tool: Remove upstart handling in libvirt configurator
......................................................................
tool: Remove upstart handling in libvirt configurator
libvirt configurator used to check if upstart is available and configure
libvirtd using initctl.
Since systemd is now the system manager on Debian Jessie, RHEL7 and
Ubuntu Vivid, we no longer have to support sysvinit/upstart.
Change-Id: Ic71430103cb04a5636b4b41371852cbf68495db7
Signed-off-by: Dima Kuznetsov <dkuznets(a)redhat.com>
---
M lib/vdsm/tool/configurators/libvirt.py
1 file changed, 0 insertions(+), 61 deletions(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/20/40420/1
diff --git a/lib/vdsm/tool/configurators/libvirt.py b/lib/vdsm/tool/configurators/libvirt.py
index e182231..5b14cea 100644
--- a/lib/vdsm/tool/configurators/libvirt.py
+++ b/lib/vdsm/tool/configurators/libvirt.py
@@ -17,11 +17,8 @@
# Refer to the README and COPYING files for full details of the license
#
import errno
-import filecmp
import os
import uuid
-import rpm
-import shutil
import sys
from vdsm.config import config
@@ -39,7 +36,6 @@
ConfigFile,
ParserWrapper,
)
-from .. import service
from .. validate_ovirt_certs import validate_ovirt_certs
from ... import utils
from ... import constants
@@ -58,8 +54,6 @@
def configure():
- _sysvToUpstart()
-
if utils.isOvirtNode():
if not os.path.exists(constants.P_VDSM_CERT):
raise InvalidRun(
@@ -117,61 +111,6 @@
cfile['path'] for cfile in FILES.values()
if cfile['persisted']
]
-
-
-def _sysvToUpstart():
- """
- On RHEL 6, libvirtd can be started by either SysV init or Upstart.
- We prefer upstart because it respawns libvirtd if libvirtd
- crashed.
- """
- def iterateLibvirtFiles():
- ts = rpm.TransactionSet()
- for name in ['libvirt', 'libvirt-daemon']:
- for matches in ts.dbMatch('name', name):
- for filename in matches[rpm.RPMTAG_FILENAMES]:
- yield filename
-
- def reloadConfiguration():
- rc, out, err = utils.execCmd((INITCTL,
- "reload-configuration"))
- if rc != 0:
- sys.stdout.write(out)
- sys.stderr.write(err)
- raise InvalidRun(
- "Failed to reload upstart configuration.")
-
- INITCTL = '/sbin/initctl'
- LIBVIRTD_UPSTART = 'libvirtd.upstart'
- TARGET = os.path.join(constants.SYSCONF_PATH, "init/libvirtd.conf")
-
- if os.path.isfile(INITCTL) and os.access(INITCTL, os.X_OK):
- # libvirtd package does not provide libvirtd.upstart,
- # this could happen in Ubuntu or other distro,
- # so continue to use system default init mechanism
- packaged = ''
- for fname in iterateLibvirtFiles():
- if os.path.basename(fname) == LIBVIRTD_UPSTART:
- packaged = fname
- break
-
- if os.path.isfile(packaged):
- if not os.path.isfile(TARGET):
- service.service_stop('libvirtd')
- if (not os.path.isfile(TARGET) or
- not filecmp.cmp(packaged, TARGET)):
- oldmod = None
- if os.path.isfile(TARGET):
- oldmod = os.stat(TARGET).st_mode
-
- utils.unpersist(TARGET)
- shutil.copyfile(packaged, TARGET)
- utils.persist(TARGET)
-
- if (oldmod is not None and
- oldmod != os.stat(TARGET).st_mode):
- os.chmod(TARGET, oldmod)
- reloadConfiguration()
def _isSslConflict():
--
To view, visit https://gerrit.ovirt.org/40420
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: Ic71430103cb04a5636b4b41371852cbf68495db7
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Dima Kuznetsov <dkuznets(a)redhat.com>
automation(a)ovirt.org has posted comments on this change.
Change subject: snapshot: Add VM.freeze() and VM.thaw() verbs
......................................................................
Patch Set 7:
* Update tracker::IGNORE, no Bug-Url found
* Check Bug-Url::WARN, no bug url found, make sure header matches 'Bug-Url: ' and is a valid url.
* Check merged to previous::IGNORE, Not in stable branch (['ovirt-3.5', 'ovirt-3.4', 'ovirt-3.3'])
--
To view, visit https://gerrit.ovirt.org/43058
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I44c4237841e44548f48f626f4241d3f2e484930e
Gerrit-PatchSet: 7
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Nir Soffer <nsoffer(a)redhat.com>
Gerrit-Reviewer: Adam Litke <alitke(a)redhat.com>
Gerrit-Reviewer: Allon Mureinik <amureini(a)redhat.com>
Gerrit-Reviewer: Dan Kenigsberg <danken(a)redhat.com>
Gerrit-Reviewer: Daniel Erez <derez(a)redhat.com>
Gerrit-Reviewer: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: Jenkins CI
Gerrit-Reviewer: Maor Lipchuk <mlipchuk(a)redhat.com>
Gerrit-Reviewer: Martin Polednik <mpolednik(a)redhat.com>
Gerrit-Reviewer: Michal Skrivanek <michal.skrivanek(a)redhat.com>
Gerrit-Reviewer: Nir Soffer <nsoffer(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
Nir Soffer has uploaded a new change for review.
Change subject: tests: Record fake domain calls in a list
......................................................................
tests: Record fake domain calls in a list
Keeping calls in a list allows testing of multiple calls. We can check
how many time a methods was called, what args and kwargs were used on
each call, and we can verify the correct order of the calls.
Change-Id: I279a1fd7a2e07b7adef4f446c9487a51d9df21f4
Signed-off-by: Nir Soffer <nsoffer(a)redhat.com>
---
M tests/vmTests.py
M tests/vmfakelib.py
2 files changed, 3 insertions(+), 3 deletions(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/98/42998/1
diff --git a/tests/vmTests.py b/tests/vmTests.py
index a6b23ac..e1e7f1a 100644
--- a/tests/vmTests.py
+++ b/tests/vmTests.py
@@ -1488,7 +1488,7 @@
target = 256
res = testvm.setBalloonTarget(target) # just to fit in 80 cols
self.assertEqual(res['status']['code'], 0)
- self.assertEqual(testvm._dom.calls['setMemory'][0], target)
+ self.assertEqual(testvm._dom.calls, [('setMemory', (target,), {})])
def testVmWithoutDom(self):
with fake.VM() as testvm:
diff --git a/tests/vmfakelib.py b/tests/vmfakelib.py
index ece0a42..2e44fb1 100644
--- a/tests/vmfakelib.py
+++ b/tests/vmfakelib.py
@@ -173,7 +173,7 @@
self._domState = domState
self._domReason = domReason
self._vmId = vmId
- self.calls = {}
+ self.calls = []
self._diskErrors = {}
self._downtimes = []
@@ -226,7 +226,7 @@
def setMemory(self, target):
self._failIfRequested()
- self.calls['setMemory'] = (target,)
+ self.calls.append(('setMemory', (target,), {}))
def setDiskErrors(self, diskErrors):
self._diskErrors = diskErrors
--
To view, visit https://gerrit.ovirt.org/42998
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I279a1fd7a2e07b7adef4f446c9487a51d9df21f4
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Nir Soffer <nsoffer(a)redhat.com>
Ala Hino has uploaded a new change for review.
Change subject: build: Change dependency on glusterfs-cli and glusterfs-fuse
......................................................................
build: Change dependency on glusterfs-cli and glusterfs-fuse
Originally, glusterfs-cli and glusterfs-fuse were required only
when not building vdsm on RHEV.
We changed the spec file to always require
gluster-cli and glusterfs-fuse in order to use gluster get volume
info api to implement mounting gluster backup servers
(https://gerrit.ovirt.org/40665).
However, requiring these dependencies fails vdsm build on ppc64le.
This patch revert requiring glusterfs-cli and glusterfs-fuse
dependencies as were originally defined.
Change-Id: I4cf424e7055ad071561d037b65972dde3b1b0b8b
Signed-off-by: Ala Hino <ahino(a)redhat.com>
---
M vdsm.spec.in
1 file changed, 3 insertions(+), 4 deletions(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/97/43097/1
diff --git a/vdsm.spec.in b/vdsm.spec.in
index a4dc9f1..defee9e 100644
--- a/vdsm.spec.in
+++ b/vdsm.spec.in
@@ -235,10 +235,6 @@
Requires: qemu-img >= 2:2.0.0-1
%endif # rhel
-# GlusterFS client-side RPMs needed for Gluster SD
-Requires: glusterfs-cli >= %{gluster_version}
-Requires: glusterfs-fuse >= %{gluster_version}
-
Requires: psmisc >= 22.6-15
Requires: bridge-utils
Requires: sos
@@ -590,6 +586,7 @@
VDSM hook used for applying IPv6 configuration through custom network
properties
+# GlusterFS client-side RPMs needed for Gluster SD
%if 0%{?with_gluster}
%package gluster
Summary: Gluster Plugin for VDSM
@@ -597,6 +594,8 @@
Requires: glusterfs-server >= %{gluster_version}
Requires: glusterfs-api >= %{gluster_version}
Requires: glusterfs-geo-replication >= %{gluster_version}
+Requires: glusterfs-cli >= %{gluster_version}
+Requires: glusterfs-fuse >= %{gluster_version}
Requires: python-magic
Requires: python-blivet
Requires: xfsprogs
--
To view, visit https://gerrit.ovirt.org/43097
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I4cf424e7055ad071561d037b65972dde3b1b0b8b
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Ala Hino <ahino(a)redhat.com>
automation(a)ovirt.org has posted comments on this change.
Change subject: snapshot: Add VM.freeze() and VM.thaw() verbs
......................................................................
Patch Set 6:
* Update tracker::IGNORE, no Bug-Url found
* Check Bug-Url::WARN, no bug url found, make sure header matches 'Bug-Url: ' and is a valid url.
* Check merged to previous::IGNORE, Not in stable branch (['ovirt-3.5', 'ovirt-3.4', 'ovirt-3.3'])
--
To view, visit https://gerrit.ovirt.org/43058
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I44c4237841e44548f48f626f4241d3f2e484930e
Gerrit-PatchSet: 6
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Nir Soffer <nsoffer(a)redhat.com>
Gerrit-Reviewer: Adam Litke <alitke(a)redhat.com>
Gerrit-Reviewer: Allon Mureinik <amureini(a)redhat.com>
Gerrit-Reviewer: Dan Kenigsberg <danken(a)redhat.com>
Gerrit-Reviewer: Daniel Erez <derez(a)redhat.com>
Gerrit-Reviewer: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: Jenkins CI
Gerrit-Reviewer: Maor Lipchuk <mlipchuk(a)redhat.com>
Gerrit-Reviewer: Martin Polednik <mpolednik(a)redhat.com>
Gerrit-Reviewer: Michal Skrivanek <michal.skrivanek(a)redhat.com>
Gerrit-Reviewer: Nir Soffer <nsoffer(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
Francesco Romani has posted comments on this change.
Change subject: snapshot: Add VM.freeze() and VM.thaw() verbs
......................................................................
Patch Set 5: Code-Review+1
--
To view, visit https://gerrit.ovirt.org/43058
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I44c4237841e44548f48f626f4241d3f2e484930e
Gerrit-PatchSet: 5
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Nir Soffer <nsoffer(a)redhat.com>
Gerrit-Reviewer: Adam Litke <alitke(a)redhat.com>
Gerrit-Reviewer: Allon Mureinik <amureini(a)redhat.com>
Gerrit-Reviewer: Dan Kenigsberg <danken(a)redhat.com>
Gerrit-Reviewer: Daniel Erez <derez(a)redhat.com>
Gerrit-Reviewer: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: Jenkins CI
Gerrit-Reviewer: Maor Lipchuk <mlipchuk(a)redhat.com>
Gerrit-Reviewer: Martin Polednik <mpolednik(a)redhat.com>
Gerrit-Reviewer: Michal Skrivanek <michal.skrivanek(a)redhat.com>
Gerrit-Reviewer: Nir Soffer <nsoffer(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
automation(a)ovirt.org has posted comments on this change.
Change subject: snapshot: Add VM.freeze() and VM.thaw() verbs
......................................................................
Patch Set 5:
* Update tracker::IGNORE, no Bug-Url found
* Check Bug-Url::WARN, no bug url found, make sure header matches 'Bug-Url: ' and is a valid url.
* Check merged to previous::IGNORE, Not in stable branch (['ovirt-3.5', 'ovirt-3.4', 'ovirt-3.3'])
--
To view, visit https://gerrit.ovirt.org/43058
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I44c4237841e44548f48f626f4241d3f2e484930e
Gerrit-PatchSet: 5
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Nir Soffer <nsoffer(a)redhat.com>
Gerrit-Reviewer: Adam Litke <alitke(a)redhat.com>
Gerrit-Reviewer: Allon Mureinik <amureini(a)redhat.com>
Gerrit-Reviewer: Dan Kenigsberg <danken(a)redhat.com>
Gerrit-Reviewer: Daniel Erez <derez(a)redhat.com>
Gerrit-Reviewer: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: Jenkins CI
Gerrit-Reviewer: Maor Lipchuk <mlipchuk(a)redhat.com>
Gerrit-Reviewer: Martin Polednik <mpolednik(a)redhat.com>
Gerrit-Reviewer: Michal Skrivanek <michal.skrivanek(a)redhat.com>
Gerrit-Reviewer: Nir Soffer <nsoffer(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
automation(a)ovirt.org has posted comments on this change.
Change subject: migration: replace boolean with proper Events
......................................................................
Patch Set 3:
* Update tracker::IGNORE, no Bug-Url found
* Check Bug-Url::WARN, no bug url found, make sure header matches 'Bug-Url: ' and is a valid url.
* Check merged to previous::IGNORE, Not in stable branch (['ovirt-3.5', 'ovirt-3.4', 'ovirt-3.3'])
--
To view, visit https://gerrit.ovirt.org/42887
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I02639749ab884c3542c4d29715756044d777f738
Gerrit-PatchSet: 3
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: Jenkins CI
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
Hello Shmuel Melamud,
I'd like you to do a code review. Please visit
https://gerrit.ovirt.org/42881
to review the following change.
Change subject: virt: Safe device type check for console device
......................................................................
virt: Safe device type check for console device
In Vm._getUnderlyingConsoleDeviceInfo() console device is searched
through the self.conf['devices'] list by checking 'device' field of each
element. Usage of dev['device'] expression for this is unsafe, because
for some devices (RNG device, for example) this key may be absent and
KeyError will be raised. Replaced this by dev.get('device') which is
safe.
Change-Id: I6a0c1adc6c3b2ab8d50b6e3ac712ce2dcf04cc6c
Bug-Url: https://bugzilla.redhat.com/show_bug.cgi?id=1233825
Signed-off-by: Shmuel Melamud <smelamud(a)redhat.com>
---
M vdsm/virt/vm.py
1 file changed, 1 insertion(+), 1 deletion(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/81/42881/1
diff --git a/vdsm/virt/vm.py b/vdsm/virt/vm.py
index 4977d28..91cb1a0 100644
--- a/vdsm/virt/vm.py
+++ b/vdsm/virt/vm.py
@@ -3908,7 +3908,7 @@
dev.alias = alias
for dev in self.conf['devices']:
- if dev['device'] == hwclass.CONSOLE and \
+ if dev.get('device') == hwclass.CONSOLE and \
not dev.get('alias'):
dev['alias'] = alias
--
To view, visit https://gerrit.ovirt.org/42881
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I6a0c1adc6c3b2ab8d50b6e3ac712ce2dcf04cc6c
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Shmuel Leib Melamud <smelamud(a)redhat.com>
Gerrit-Reviewer: Shmuel Melamud <smelamud(a)redhat.com>
automation(a)ovirt.org has posted comments on this change.
Change subject: adding StorageDomain.removeVmData()
......................................................................
Patch Set 1:
* Update tracker::IGNORE, no Bug-Url found
* Check Bug-Url::WARN, no bug url found, make sure header matches 'Bug-Url: ' and is a valid url.
* Check merged to previous::IGNORE, Not in stable branch (['ovirt-3.5', 'ovirt-3.4', 'ovirt-3.3'])
--
To view, visit https://gerrit.ovirt.org/43154
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: Ic53b19a43850341ee488b50fbb339fdf68c1a048
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Liron Aravot <laravot(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
automation(a)ovirt.org has posted comments on this change.
Change subject: adding StorageDomain.activateHsm()
......................................................................
Patch Set 1:
* Update tracker::IGNORE, no Bug-Url found
* Check Bug-Url::WARN, no bug url found, make sure header matches 'Bug-Url: ' and is a valid url.
* Check merged to previous::IGNORE, Not in stable branch (['ovirt-3.5', 'ovirt-3.4', 'ovirt-3.3'])
--
To view, visit https://gerrit.ovirt.org/43153
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I68eccd300b8ba0cc45b2485f978eb3ae367c16e2
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Liron Aravot <laravot(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
automation(a)ovirt.org has posted comments on this change.
Change subject: adding StorageDomain.updateVmData()
......................................................................
Patch Set 4:
* Update tracker::IGNORE, no Bug-Url found
* Check Bug-Url::WARN, no bug url found, make sure header matches 'Bug-Url: ' and is a valid url.
* Check merged to previous::IGNORE, Not in stable branch (['ovirt-3.5', 'ovirt-3.4', 'ovirt-3.3'])
--
To view, visit https://gerrit.ovirt.org/42930
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: Id79e7d6375e60216d1eb9a58e5a5c087db98625f
Gerrit-PatchSet: 4
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Liron Aravot <laravot(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
automation(a)ovirt.org has posted comments on this change.
Change subject: adding the StorageDomain.upgradeVersion verb
......................................................................
Patch Set 6:
* Update tracker::IGNORE, no Bug-Url found
* Check Bug-Url::WARN, no bug url found, make sure header matches 'Bug-Url: ' and is a valid url.
* Check merged to previous::IGNORE, Not in stable branch (['ovirt-3.5', 'ovirt-3.4', 'ovirt-3.3'])
--
To view, visit https://gerrit.ovirt.org/42478
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: Id8fb87c6e04e48072ec90d07a0f4c7a61411a808
Gerrit-PatchSet: 6
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Liron Aravot <laravot(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
Ido Barkan has uploaded a new change for review.
Change subject: net: run dhclient in its own process group.
......................................................................
net: run dhclient in its own process group.
This is done to prevent systemd from killing supervdsm dhclient child
processes during supervdsm stop (or restart). Forking dhclient in
its own process group prevents systemd from doing this.
Since dhclient is deliberately killed either directly by supervdsm or
indirectly by executing ifdown on a device and since executing a
process in a different process group is harmless, the separate
cgroup is now the default behaviour.
This patch also fixes https://bugzilla.redhat.com/show_bug
.cgi?id=1187244 in a less clumsy way than KillMode=process.
Change-Id: I82848a36b52cd8e9dec188d865ef86edc4bb7488
Signed-off-by: Ido Barkan <ibarkan(a)redhat.com>
Bug-Url: https://bugzilla.redhat.com/show_bug.cgi?id=1228322
---
M init/systemd/vdsm-network.service.in
M vdsm/network/configurators/dhclient.py
M vdsm/network/configurators/ifcfg.py
3 files changed, 20 insertions(+), 10 deletions(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/05/43005/1
diff --git a/init/systemd/vdsm-network.service.in b/init/systemd/vdsm-network.service.in
index 722a2b4..3c992f3 100644
--- a/init/systemd/vdsm-network.service.in
+++ b/init/systemd/vdsm-network.service.in
@@ -9,7 +9,6 @@
EnvironmentFile=-/etc/sysconfig/vdsm
ExecStartPre=@BINDIR@/vdsm-tool --vvverbose --append --logfile=@VDSMLOGDIR@/upgrade.log upgrade-unified-persistence
ExecStart=@BINDIR@/vdsm-tool restore-nets
-KillMode=process
RemainAfterExit=yes
[Install]
diff --git a/vdsm/network/configurators/dhclient.py b/vdsm/network/configurators/dhclient.py
index 67f7eba..d71b5ff 100644
--- a/vdsm/network/configurators/dhclient.py
+++ b/vdsm/network/configurators/dhclient.py
@@ -25,12 +25,15 @@
import signal
import threading
+from vdsm import cmdutils
from vdsm import ipwrapper
from vdsm import netinfo
from vdsm.utils import CommandPath
from vdsm.utils import execCmd
from vdsm.utils import pgrep
from vdsm.utils import rmFile
+
+DHCLIENT_CGROUP = 'vdsm-dhclient'
class DhcpClient(object):
@@ -39,7 +42,7 @@
LEASE_FILE = os.path.join(LEASE_DIR, 'dhclient{0}--{1}.lease')
DHCLIENT = CommandPath('dhclient', '/sbin/dhclient')
- def __init__(self, iface, family=4):
+ def __init__(self, iface, family=4, cgroup=DHCLIENT_CGROUP):
self.iface = iface
self.family = family
self.pidFile = self.PID_FILE % (family, self.iface)
@@ -47,14 +50,16 @@
os.mkdir(self.LEASE_DIR)
self.leaseFile = self.LEASE_FILE.format(
'' if family == 4 else '6', self.iface)
+ self._cgroup = cgroup
def _dhclient(self):
# Ask dhclient to stop any dhclient running for the device
if os.path.exists(os.path.join(netinfo.NET_PATH, self.iface)):
kill_dhclient(self.iface, self.family)
- rc, out, err = execCmd([self.DHCLIENT.cmd, '-%s' % self.family,
- '-1', '-pf', self.pidFile,
- '-lf', self.leaseFile, self.iface])
+ cmd = [self.DHCLIENT.cmd, '-%s' % self.family, '-1', '-pf',
+ self.pidFile, '-lf', self.leaseFile, self.iface]
+ cmd = cmdutils.systemd_run(cmd, scope=True, slice=self._cgroup)
+ rc, out, err = execCmd(cmd)
return rc, out, err
def start(self, blocking):
diff --git a/vdsm/network/configurators/ifcfg.py b/vdsm/network/configurators/ifcfg.py
index e76be51..450a6d1 100644
--- a/vdsm/network/configurators/ifcfg.py
+++ b/vdsm/network/configurators/ifcfg.py
@@ -33,6 +33,7 @@
from libvirt import libvirtError, VIR_ERR_NO_NETWORK
from vdsm.config import config
+from vdsm import cmdutils
from vdsm import constants
from vdsm import ipwrapper
from vdsm import netinfo
@@ -740,9 +741,14 @@
return rc
-def _exec_ifup(iface_name):
+def _exec_ifup(iface_name, cgroup=dhclient.DHCLIENT_CGROUP):
"""Bring up an interface"""
- rc, out, err = utils.execCmd([constants.EXT_IFUP, iface_name], raw=False)
+ cmd = [constants.EXT_IFUP, iface_name]
+
+ if cgroup is not None:
+ cmd = cmdutils.systemd_run(cmd, scope=True, slice=cgroup)
+
+ rc, out, err = utils.execCmd(cmd, raw=False)
if rc != 0:
# In /etc/sysconfig/network-scripts/ifup* the last line usually
@@ -750,16 +756,16 @@
raise ConfigNetworkError(ERR_FAILED_IFUP, out[-1] if out else '')
-def _ifup(iface):
+def _ifup(iface, cgroup=dhclient.DHCLIENT_CGROUP):
if not iface.blockingdhcp and (iface.ipv4.bootproto == 'dhcp' or
iface.ipv6.dhcpv6):
# wait for dhcp in another thread, so vdsm won't get stuck (BZ#498940)
t = threading.Thread(target=_exec_ifup, name='ifup-waiting-on-dhcp',
- args=(iface.name,))
+ args=(iface.name, cgroup))
t.daemon = True
t.start()
else:
- _exec_ifup(iface.name)
+ _exec_ifup(iface.name, cgroup)
def _restore_default_bond_options(bond_name, desired_options):
--
To view, visit https://gerrit.ovirt.org/43005
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I82848a36b52cd8e9dec188d865ef86edc4bb7488
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Ido Barkan <ibarkan(a)redhat.com>
Michal Skrivanek has posted comments on this change.
Change subject: snapshot: Add VM.freeze() and VM.thaw() apis.
......................................................................
Patch Set 4: Code-Review-1
(1 comment)
https://gerrit.ovirt.org/#/c/43058/4/vdsm/virt/vm.py
File vdsm/virt/vm.py:
Line 2872: conf.update(driveParams)
Line 2873: self.saveState()
Line 2874:
Line 2875: def freeze(self):
Line 2876: guest = snapshot.GuestAgent(self._dom, self.log)
as noted in the other patch - you can easily do it right here (we don't really need yet another wrapper just to pass arguments further. We already have API.py)
or delegate to the current guest agent class (which is a different agent, but it does handle connection/socket to qemu-ga, so why not...)
Or alternatively implement that functionality in "our" guest agent which would delegate to qemu-ga internally. Advantage is that unlike libvirt we are a bit better in handling non responding cases
Line 2877: return guest.freeze_filesystems()
Line 2878:
Line 2879: def thaw(self):
Line 2880: guest = snapshot.GuestAgent(self._dom, self.log)
--
To view, visit https://gerrit.ovirt.org/43058
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I44c4237841e44548f48f626f4241d3f2e484930e
Gerrit-PatchSet: 4
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Nir Soffer <nsoffer(a)redhat.com>
Gerrit-Reviewer: Adam Litke <alitke(a)redhat.com>
Gerrit-Reviewer: Allon Mureinik <amureini(a)redhat.com>
Gerrit-Reviewer: Dan Kenigsberg <danken(a)redhat.com>
Gerrit-Reviewer: Daniel Erez <derez(a)redhat.com>
Gerrit-Reviewer: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: Jenkins CI
Gerrit-Reviewer: Maor Lipchuk <mlipchuk(a)redhat.com>
Gerrit-Reviewer: Martin Polednik <mpolednik(a)redhat.com>
Gerrit-Reviewer: Michal Skrivanek <michal.skrivanek(a)redhat.com>
Gerrit-Reviewer: Nir Soffer <nsoffer(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: Yes
Yaniv Bronhaim has uploaded a new change for review.
Change subject: load_needed_modules verb is not required
......................................................................
load_needed_modules verb is not required
Since ovirt-3.6 systemd takes care for loading required kernel modules during
installation by using vdsm-modules-load.d.conf
Change-Id: I44e4624c354401116040b3fd5bbb54b6f31ee727
Signed-off-by: Yaniv Bronhaim <ybronhei(a)redhat.com>
---
M .gitignore
M debian/vdsm-python.install
M init/vdsmd_init_common.sh.in
M lib/vdsm/tool/Makefile.am
D lib/vdsm/tool/load_needed_modules.py.in
M vdsm-tool/vdsm-tool.1.in
M vdsm.spec.in
7 files changed, 0 insertions(+), 87 deletions(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/40/43040/1
diff --git a/.gitignore b/.gitignore
index 3fef689..0f5305f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -36,7 +36,6 @@
init/vdsmd_init_common.sh
lib/vdsm/config.py
lib/vdsm/constants.py
-lib/vdsm/tool/load_needed_modules.py
lib/vdsm/tool/validate_ovirt_certs.py
lib/vdsm/vdscli.py
lib/vdsm/vdsm.conf.sample
diff --git a/debian/vdsm-python.install b/debian/vdsm-python.install
index 57d5033..d9402c3 100644
--- a/debian/vdsm-python.install
+++ b/debian/vdsm-python.install
@@ -35,7 +35,6 @@
./usr/lib/python2.7/dist-packages/vdsm/tool/dump_bonding_defaults.py
./usr/lib/python2.7/dist-packages/vdsm/tool/dump_volume_chains.py
./usr/lib/python2.7/dist-packages/vdsm/tool/configurator.py
-./usr/lib/python2.7/dist-packages/vdsm/tool/load_needed_modules.py
./usr/lib/python2.7/dist-packages/vdsm/tool/nwfilter.py
./usr/lib/python2.7/dist-packages/vdsm/tool/passwd.py
./usr/lib/python2.7/dist-packages/vdsm/tool/register.py
diff --git a/init/vdsmd_init_common.sh.in b/init/vdsmd_init_common.sh.in
index 43d0db5..47372fd 100644
--- a/init/vdsmd_init_common.sh.in
+++ b/init/vdsmd_init_common.sh.in
@@ -153,13 +153,6 @@
}
-task_load_needed_modules(){
- if ! _has_systemd; then
- "${VDSM_TOOL}" load-needed-modules
- fi
-}
-
-
task_dump_bonding_defaults(){
"${VDSM_TOOL}" dump-bonding-defaults
}
@@ -301,9 +294,6 @@
case "$1" in
--pre-start)
- # If dump_bonding_defaults is desired (for the uneliminable possibility
- # of added bonding options or tweaked kernel defaults) it has to be run
- # after load_needed_modules (modprobe bonding).
# NetworkManager must not crash on nmcli conn delete.
run_tasks " \
mkdirs \
@@ -318,7 +308,6 @@
syslog_available \
nwfilter \
dummybr \
- load_needed_modules \
tune_system \
test_space \
test_lo \
diff --git a/lib/vdsm/tool/Makefile.am b/lib/vdsm/tool/Makefile.am
index d93156e..c8979ca 100644
--- a/lib/vdsm/tool/Makefile.am
+++ b/lib/vdsm/tool/Makefile.am
@@ -22,12 +22,10 @@
include $(top_srcdir)/build-aux/Makefile.subs
EXTRA_DIST = \
- load_needed_modules.py.in \
validate_ovirt_certs.py.in \
$(NULL)
nodist_vdsmtool_PYTHON = \
- load_needed_modules.py \
validate_ovirt_certs.py \
$(NULL)
diff --git a/lib/vdsm/tool/load_needed_modules.py.in b/lib/vdsm/tool/load_needed_modules.py.in
deleted file mode 100644
index dc7d533..0000000
--- a/lib/vdsm/tool/load_needed_modules.py.in
+++ /dev/null
@@ -1,60 +0,0 @@
-# Copyright IBM, Corp. 2012
-# Copyright 2013-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
-#
-
-
-from __future__ import absolute_import
-import os.path
-
-from . import expose, ExtraArgsError
-from ..utils import execCmd
-
-
-EX_MODPROBE = '@MODPROBE_PATH@'
-
-
-def _exec_command(argv):
- """
- This function executes a given shell command.
- """
- rc, out, err = execCmd(argv, raw=True)
- if rc != 0:
- raise RuntimeError(
- "Execute command %s failed: %s" % (argv, err)
- )
-
-
-def _enable_softdog():
- if not os.path.exists('/dev/watchdog'):
- _exec_command([EX_MODPROBE, 'softdog'])
-
-
-@expose('load-needed-modules')
-def load_needed_modules(*args):
- """
- load-needed-modules
- Load needed modules
- """
-
- if len(args) > 1:
- raise ExtraArgsError()
-
- for mod in ['bridge', 'tun', 'bonding', '8021q']:
- _exec_command([EX_MODPROBE, mod])
- _enable_softdog()
diff --git a/vdsm-tool/vdsm-tool.1.in b/vdsm-tool/vdsm-tool.1.in
index d29dc1e..571abc8 100644
--- a/vdsm-tool/vdsm-tool.1.in
+++ b/vdsm-tool/vdsm-tool.1.in
@@ -72,13 +72,6 @@
Defines a dummy bridge on a libvirt network.
.RE
.TP
-Options for the \fIload_needed_modules\fP module:
-.RS
-.TP
-.B load-needed-modules
-Loads the required modules.
-.RE
-.TP
Options for the \fInwfilter\fP module:
.RS
.TP
diff --git a/vdsm.spec.in b/vdsm.spec.in
index 2f5ffc8..e6bf872 100644
--- a/vdsm.spec.in
+++ b/vdsm.spec.in
@@ -1189,11 +1189,6 @@
%{_datadir}/%{vdsm_name}/config.py*
%{_datadir}/%{vdsm_name}/netinfo.py*
%endif
-%if 0%{?with_systemd}
-%exclude %{python_sitelib}/%{vdsm_name}/tool/load_needed_modules.py*
-%else
-%{python_sitelib}/%{vdsm_name}/tool/load_needed_modules.py*
-%endif
%{python_sitelib}/%{vdsm_name}/tool/configfile.py*
%{python_sitelib}/%{vdsm_name}/tool/dummybr.py*
%{python_sitelib}/%{vdsm_name}/tool/dump_bonding_defaults.py*
--
To view, visit https://gerrit.ovirt.org/43040
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I44e4624c354401116040b3fd5bbb54b6f31ee727
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Yaniv Bronhaim <ybronhei(a)redhat.com>
Francesco Romani has uploaded a new change for review.
Change subject: jsonrpc: vdscli: migration: fix migrationCreate
......................................................................
jsonrpc: vdscli: migration: fix migrationCreate
In virt migration code, we do logic on the return
value of VM.migrationCreate API, and we expect it
to be a proper response, so with ['status']['code']
field, plus all the extra fields that APIs can add
(see schema for examples).
Current jsonrpc code strips all but the extra fields,
so jsonrpcvdscli has to force fit a success code.
This patch simplify the code by just passing around
a copy of the raw data, leveraging the response module.
This way the code is both simpler and more conformant
to the old XML-RPC vdscli API.
Change-Id: Ie9288d367c519830f6510a2d1b2a5fc1e410949c
Signed-off-by: Francesco Romani <fromani(a)redhat.com>
---
M lib/vdsm/jsonrpcvdscli.py
1 file changed, 6 insertions(+), 5 deletions(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/70/42970/1
diff --git a/lib/vdsm/jsonrpcvdscli.py b/lib/vdsm/jsonrpcvdscli.py
index 595c584..8ef1cbf 100644
--- a/lib/vdsm/jsonrpcvdscli.py
+++ b/lib/vdsm/jsonrpcvdscli.py
@@ -26,6 +26,8 @@
JsonRpcRequest, \
JsonRpcNoResponseError
+from vdsm import response
+
_COMMAND_CONVERTER = {
'ping': 'Host.ping',
@@ -58,13 +60,12 @@
if resp.error is not None:
return resp.error
- return resp.result
+ return response.success(**resp.result)
def migrationCreate(self, params):
- self._callMethod('migrationCreate',
- params['vmId'],
- params)
- return {'status': {'code': 0}}
+ return self._callMethod('migrationCreate',
+ params['vmId'],
+ params)
def __getattr__(self, methodName):
return partial(self._callMethod, methodName)
--
To view, visit https://gerrit.ovirt.org/42970
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: Ie9288d367c519830f6510a2d1b2a5fc1e410949c
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Francesco Romani <fromani(a)redhat.com>
Francesco Romani has posted comments on this change.
Change subject: snapshot: Add VM.freeze() and VM.thaw() apis.
......................................................................
Patch Set 4: Code-Review+1
once 43018 is ready, this is straightforward. Conditional ACK :)
--
To view, visit https://gerrit.ovirt.org/43058
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I44c4237841e44548f48f626f4241d3f2e484930e
Gerrit-PatchSet: 4
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Nir Soffer <nsoffer(a)redhat.com>
Gerrit-Reviewer: Adam Litke <alitke(a)redhat.com>
Gerrit-Reviewer: Allon Mureinik <amureini(a)redhat.com>
Gerrit-Reviewer: Dan Kenigsberg <danken(a)redhat.com>
Gerrit-Reviewer: Daniel Erez <derez(a)redhat.com>
Gerrit-Reviewer: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: Jenkins CI
Gerrit-Reviewer: Maor Lipchuk <mlipchuk(a)redhat.com>
Gerrit-Reviewer: Martin Polednik <mpolednik(a)redhat.com>
Gerrit-Reviewer: Michal Skrivanek <michal.skrivanek(a)redhat.com>
Gerrit-Reviewer: Nir Soffer <nsoffer(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
Nir Soffer has posted comments on this change.
Change subject: snapshot: Add VM.freeze() and VM.thaw() apis.
......................................................................
Patch Set 4:
This version updates the apis to remove the mountpoints parameter.
--
To view, visit https://gerrit.ovirt.org/43058
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I44c4237841e44548f48f626f4241d3f2e484930e
Gerrit-PatchSet: 4
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Nir Soffer <nsoffer(a)redhat.com>
Gerrit-Reviewer: Adam Litke <alitke(a)redhat.com>
Gerrit-Reviewer: Allon Mureinik <amureini(a)redhat.com>
Gerrit-Reviewer: Dan Kenigsberg <danken(a)redhat.com>
Gerrit-Reviewer: Daniel Erez <derez(a)redhat.com>
Gerrit-Reviewer: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: Jenkins CI
Gerrit-Reviewer: Maor Lipchuk <mlipchuk(a)redhat.com>
Gerrit-Reviewer: Martin Polednik <mpolednik(a)redhat.com>
Gerrit-Reviewer: Michal Skrivanek <michal.skrivanek(a)redhat.com>
Gerrit-Reviewer: Nir Soffer <nsoffer(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
automation(a)ovirt.org has posted comments on this change.
Change subject: snapshot: Add VM.freeze() and VM.thaw() apis.
......................................................................
Patch Set 4:
* Update tracker::IGNORE, no Bug-Url found
* Check Bug-Url::WARN, no bug url found, make sure header matches 'Bug-Url: ' and is a valid url.
* Check merged to previous::IGNORE, Not in stable branch (['ovirt-3.5', 'ovirt-3.4', 'ovirt-3.3'])
--
To view, visit https://gerrit.ovirt.org/43058
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I44c4237841e44548f48f626f4241d3f2e484930e
Gerrit-PatchSet: 4
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Nir Soffer <nsoffer(a)redhat.com>
Gerrit-Reviewer: Adam Litke <alitke(a)redhat.com>
Gerrit-Reviewer: Allon Mureinik <amureini(a)redhat.com>
Gerrit-Reviewer: Dan Kenigsberg <danken(a)redhat.com>
Gerrit-Reviewer: Daniel Erez <derez(a)redhat.com>
Gerrit-Reviewer: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: Jenkins CI
Gerrit-Reviewer: Maor Lipchuk <mlipchuk(a)redhat.com>
Gerrit-Reviewer: Martin Polednik <mpolednik(a)redhat.com>
Gerrit-Reviewer: Michal Skrivanek <michal.skrivanek(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
Francesco Romani has uploaded a new change for review.
Change subject: virt: tolerate missing ovirt-vmconsole group
......................................................................
virt: tolerate missing ovirt-vmconsole group
To support the virtio serial console feature,
VDSM must bind the virtio channel to an unix
domain socket, and fix its permissions and
group in order to let ovirt-vmconsole-host
connect to that socket.
ovirt-vmconsole-host it is a soft dependency.
VDSM should happily run without that package,
but incorrectly assumed the ovirt-vmconsole
group existed in the system
This patch lift this requirement:
VDSM still try to fix the group of the socket,
but if the group doesn't exist, it happily
goes ahead.
Change-Id: I55b708953e5871053f0063bb82434c5c0dcb6103
Related-To: https://bugzilla.redhat.com/show_bug.cgi?id=1223671
Signed-off-by: Francesco Romani <fromani(a)redhat.com>
---
M vdsm/virt/vmdevices/core.py
1 file changed, 8 insertions(+), 3 deletions(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/51/42451/1
diff --git a/vdsm/virt/vmdevices/core.py b/vdsm/virt/vmdevices/core.py
index a847ce0..4d56005 100644
--- a/vdsm/virt/vmdevices/core.py
+++ b/vdsm/virt/vmdevices/core.py
@@ -99,9 +99,14 @@
def prepare(self):
if self._path:
- supervdsm.getProxy().prepareVmChannel(
- self._path,
- constants.OVIRT_VMCONSOLE_GROUP)
+ try:
+ supervdsm.getProxy().prepareVmChannel(
+ self._path,
+ constants.OVIRT_VMCONSOLE_GROUP)
+ except KeyError:
+ self.log.warn('unknown group %s, permissions not updated',
+ constants.OVIRT_VMCONSOLE_GROUP)
+
def cleanup(self):
if self._path:
--
To view, visit https://gerrit.ovirt.org/42451
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I55b708953e5871053f0063bb82434c5c0dcb6103
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Francesco Romani <fromani(a)redhat.com>
automation(a)ovirt.org has posted comments on this change.
Change subject: migration: replace boolean with proper Events
......................................................................
Patch Set 2:
* Update tracker::IGNORE, no Bug-Url found
* Check Bug-Url::WARN, no bug url found, make sure header matches 'Bug-Url: ' and is a valid url.
* Check merged to previous::IGNORE, Not in stable branch (['ovirt-3.5', 'ovirt-3.4', 'ovirt-3.3'])
--
To view, visit https://gerrit.ovirt.org/42887
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I02639749ab884c3542c4d29715756044d777f738
Gerrit-PatchSet: 2
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
automation(a)ovirt.org has posted comments on this change.
Change subject: adding StorageDomain.removeVmData()
......................................................................
Patch Set 2:
* Update tracker::IGNORE, no Bug-Url found
* Check Bug-Url::WARN, no bug url found, make sure header matches 'Bug-Url: ' and is a valid url.
* Check merged to previous::IGNORE, Not in stable branch (['ovirt-3.5', 'ovirt-3.4', 'ovirt-3.3'])
--
To view, visit https://gerrit.ovirt.org/43103
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: Ic964ac5c9cb57df881b895356a203529ab2a171a
Gerrit-PatchSet: 2
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Liron Aravot <laravot(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
Hello Adam Litke,
I'd like you to do a code review. Please visit
https://gerrit.ovirt.org/42968
to review the following change.
Change subject: Balloon should not work when guest agent is not present
......................................................................
Balloon should not work when guest agent is not present
StatAvg returns 0 when there is no data available. We need to use Stat
here so we get None and properly fail the condition.
Change-Id: Ic164043259a2936243e572c14705afa064f92171
Bug-Url: https://bugzilla.redhat.com/show_bug.cgi?id=1232669
Signed-off-by: Martin Sivak <msivak(a)redhat.com>
Reviewed-on: https://gerrit.ovirt.org/42207
Continuous-Integration: Jenkins CI
Reviewed-by: Adam Litke <alitke(a)redhat.com>
---
M vdsm/mom.d/02-balloon.policy
1 file changed, 1 insertion(+), 1 deletion(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/68/42968/1
diff --git a/vdsm/mom.d/02-balloon.policy b/vdsm/mom.d/02-balloon.policy
index 570c751..b1af0d5 100644
--- a/vdsm/mom.d/02-balloon.policy
+++ b/vdsm/mom.d/02-balloon.policy
@@ -116,7 +116,7 @@
})
(with Guests guest
- (if (valid guest.balloon_cur (guest.StatAvg "mem_unused"))
+ (if (valid guest.balloon_cur (guest.Stat "mem_unused"))
(balloon_logic guest)
(debug "Memory information is missing, ballooning for" guest "disabled")))
--
To view, visit https://gerrit.ovirt.org/42968
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: Ic164043259a2936243e572c14705afa064f92171
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: ovirt-3.5
Gerrit-Owner: Martin Sivák <msivak(a)redhat.com>
Gerrit-Reviewer: Adam Litke <alitke(a)redhat.com>
automation(a)ovirt.org has posted comments on this change.
Change subject: snapshot: Add VM.freeze() and VM.thaw() apis.
......................................................................
Patch Set 3:
* Update tracker::IGNORE, no Bug-Url found
* Check Bug-Url::WARN, no bug url found, make sure header matches 'Bug-Url: ' and is a valid url.
* Check merged to previous::IGNORE, Not in stable branch (['ovirt-3.5', 'ovirt-3.4', 'ovirt-3.3'])
--
To view, visit https://gerrit.ovirt.org/43058
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I44c4237841e44548f48f626f4241d3f2e484930e
Gerrit-PatchSet: 3
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Nir Soffer <nsoffer(a)redhat.com>
Gerrit-Reviewer: Adam Litke <alitke(a)redhat.com>
Gerrit-Reviewer: Allon Mureinik <amureini(a)redhat.com>
Gerrit-Reviewer: Dan Kenigsberg <danken(a)redhat.com>
Gerrit-Reviewer: Daniel Erez <derez(a)redhat.com>
Gerrit-Reviewer: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: Maor Lipchuk <mlipchuk(a)redhat.com>
Gerrit-Reviewer: Martin Polednik <mpolednik(a)redhat.com>
Gerrit-Reviewer: Michal Skrivanek <michal.skrivanek(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
automation(a)ovirt.org has posted comments on this change.
Change subject: adding StorageDomain.removeVmData()
......................................................................
Patch Set 1:
* Update tracker::IGNORE, no Bug-Url found
* Check Bug-Url::WARN, no bug url found, make sure header matches 'Bug-Url: ' and is a valid url.
* Check merged to previous::IGNORE, Not in stable branch (['ovirt-3.5', 'ovirt-3.4', 'ovirt-3.3'])
--
To view, visit https://gerrit.ovirt.org/43103
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: Ic964ac5c9cb57df881b895356a203529ab2a171a
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Liron Aravot <laravot(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
automation(a)ovirt.org has posted comments on this change.
Change subject: adding StorageDomain.activateHsm()
......................................................................
Patch Set 1:
* Update tracker::IGNORE, no Bug-Url found
* Check Bug-Url::WARN, no bug url found, make sure header matches 'Bug-Url: ' and is a valid url.
* Check merged to previous::IGNORE, Not in stable branch (['ovirt-3.5', 'ovirt-3.4', 'ovirt-3.3'])
--
To view, visit https://gerrit.ovirt.org/43102
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: Ic661b44b060ddfeeb2a2caedb2662c6102b950e0
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Liron Aravot <laravot(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
automation(a)ovirt.org has posted comments on this change.
Change subject: adding StorageDomain.updateVmData()
......................................................................
Patch Set 3:
* Update tracker::IGNORE, no Bug-Url found
* Check Bug-Url::WARN, no bug url found, make sure header matches 'Bug-Url: ' and is a valid url.
* Check merged to previous::IGNORE, Not in stable branch (['ovirt-3.5', 'ovirt-3.4', 'ovirt-3.3'])
--
To view, visit https://gerrit.ovirt.org/42930
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: Id79e7d6375e60216d1eb9a58e5a5c087db98625f
Gerrit-PatchSet: 3
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Liron Aravot <laravot(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
automation(a)ovirt.org has posted comments on this change.
Change subject: snapshot: Add VM.freeze() and VM.thaw() apis.
......................................................................
Patch Set 2:
* Update tracker::IGNORE, no Bug-Url found
* Check Bug-Url::WARN, no bug url found, make sure header matches 'Bug-Url: ' and is a valid url.
* Check merged to previous::IGNORE, Not in stable branch (['ovirt-3.5', 'ovirt-3.4', 'ovirt-3.3'])
--
To view, visit https://gerrit.ovirt.org/43058
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I44c4237841e44548f48f626f4241d3f2e484930e
Gerrit-PatchSet: 2
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Nir Soffer <nsoffer(a)redhat.com>
Gerrit-Reviewer: Adam Litke <alitke(a)redhat.com>
Gerrit-Reviewer: Allon Mureinik <amureini(a)redhat.com>
Gerrit-Reviewer: Dan Kenigsberg <danken(a)redhat.com>
Gerrit-Reviewer: Daniel Erez <derez(a)redhat.com>
Gerrit-Reviewer: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: Maor Lipchuk <mlipchuk(a)redhat.com>
Gerrit-Reviewer: Martin Polednik <mpolednik(a)redhat.com>
Gerrit-Reviewer: Michal Skrivanek <michal.skrivanek(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
Martin Polednik has uploaded a new change for review.
Change subject: hostdev: fix address type for generic devices
......................................................................
hostdev: fix address type for generic devices
Change 155e823f refactored some common elements of generic and
interface passthrough, but added type to address element only in case
of interface. Using default empty type led to invalid address being
generated.
Change-Id: Icf9e3f801e219c6a3cb4d54a77a288bd770a3697
Signed-off-by: Martin Polednik <mpolednik(a)redhat.com>
---
M vdsm/virt/vmdevices/hostdevice.py
1 file changed, 4 insertions(+), 1 deletion(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/41/43041/1
diff --git a/vdsm/virt/vmdevices/hostdevice.py b/vdsm/virt/vmdevices/hostdevice.py
index 2817250..38b9cc4 100644
--- a/vdsm/virt/vmdevices/hostdevice.py
+++ b/vdsm/virt/vmdevices/hostdevice.py
@@ -85,7 +85,10 @@
type=CAPABILITY_TO_XML_ATTR[self._deviceParams['capability']])
source = hostdev.appendChildWithArgs('source')
- self._add_source_address(source)
+ self._add_source_address(
+ source,
+ type=CAPABILITY_TO_XML_ATTR[self._deviceParams['capability']]
+ )
return hostdev
--
To view, visit https://gerrit.ovirt.org/43041
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: Icf9e3f801e219c6a3cb4d54a77a288bd770a3697
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Martin Polednik <mpolednik(a)redhat.com>
Michal Skrivanek has posted comments on this change.
Change subject: snapshot: Add VM.freeze() and VM.thaw() apis.
......................................................................
Patch Set 1:
why do we want to expose freeze/thaw in API?
--
To view, visit https://gerrit.ovirt.org/43058
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I44c4237841e44548f48f626f4241d3f2e484930e
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Nir Soffer <nsoffer(a)redhat.com>
Gerrit-Reviewer: Adam Litke <alitke(a)redhat.com>
Gerrit-Reviewer: Allon Mureinik <amureini(a)redhat.com>
Gerrit-Reviewer: Dan Kenigsberg <danken(a)redhat.com>
Gerrit-Reviewer: Daniel Erez <derez(a)redhat.com>
Gerrit-Reviewer: Francesco Romani <fromani(a)redhat.com>
Gerrit-Reviewer: Maor Lipchuk <mlipchuk(a)redhat.com>
Gerrit-Reviewer: Martin Polednik <mpolednik(a)redhat.com>
Gerrit-Reviewer: Michal Skrivanek <michal.skrivanek(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-HasComments: No
Alon Bar-Lev has posted comments on this change.
Change subject: Revised the format of output from the vdsm-tool vdsm-id command.
......................................................................
Patch Set 1:
guys, this is just adding new line.
--
To view, visit https://gerrit.ovirt.org/34583
To unsubscribe, visit https://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I7379e969881931aaa4745dedf85ddfb61487f4a4
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Andrew Dahms <andrewjdahms(a)gmail.com>
Gerrit-Reviewer: Alon Bar-Lev <alonbl(a)redhat.com>
Gerrit-Reviewer: Dan Kenigsberg <danken(a)redhat.com>
Gerrit-Reviewer: Jenkins CI
Gerrit-Reviewer: Yaniv Bronhaim <ybronhei(a)redhat.com>
Gerrit-Reviewer: automation(a)ovirt.org
Gerrit-Reviewer: mooli tayer <mtayer(a)redhat.com>
Gerrit-HasComments: No