Project:
https://jenkins.ovirt.org/job/ovirt-system-tests_basic-suite-master_nightly/
Build:
https://jenkins.ovirt.org/job/ovirt-system-tests_basic-suite-master_night...
Build Number: 1207
Build Status: Still Failing
Triggered By: Started by timer
-------------------------------------
Changes Since Last Success:
-------------------------------------
Changes for Build #1201
[Michal Skrivanek] hc: Use non-lago deployment in hc suite
Changes for Build #1202
[Michal Skrivanek] hc: Use non-lago deployment in hc suite
Changes for Build #1203
[Michal Skrivanek] hc: Use non-lago deployment in hc suite
Changes for Build #1204
[Michal Skrivanek] hc: Use non-lago deployment in hc suite
Changes for Build #1205
[Michal Skrivanek] hc: Use non-lago deployment in hc suite
Changes for Build #1206
[Michal Skrivanek] hc: Use non-lago deployment in hc suite
Changes for Build #1207
[Michal Skrivanek] hc: Use non-lago deployment in hc suite
-----------------
Failed Tests:
-----------------
1 tests failed.
FAILED:
basic-suite-master.test-scenarios.test_007_sd_reattach.test_deactivate_storage_domain
Error Message:
ovirtsdk4.Error: Fault reason is "Operation Failed". Fault detail is
"[Cannot deactivate Storage. Storage Domain OVF data is currently being
updated.]". HTTP response code is 409.
Stack Trace:
engine_api = <ovirtsdk4.Connection object at 0x7fdda3c6bb38>
@order_by(_TEST_LIST)
def test_deactivate_storage_domain(engine_api):
# TODO: uncomment once VnicSetup checks are fixed.
# TODO: this also seems to leave running tasks behind which break the
deactivation.
# TODO: it should be tested in multiple runs or properly waited for.
# VnicSetup.vnic_setup().init(engine_api.system_service(),
# VM2_NAME, DC_NAME, CLUSTER_NAME)
engine = engine_api.system_service()
dc = test_utils.data_center_service(engine_api.system_service(), DC_NAME)
correlation_id = 'deactivate_storage_domain'
def _deactivate_with_running_ovf_update_task():
try:
test_utils.get_attached_storage_domain(
dc, SD_SECOND_NFS_NAME, service=True).deactivate(
query={'correlation_id': correlation_id})
return True
except ovirtsdk4.Error as err:
# The storage domain's deactivation may fail if it has running tasks.
# In case of updating ovf_store disks task (UploadStream),
# ignore. Otherwise, raise the exception.
if 'UploadStream' not in err.args[0]:
raise
return False
assertions.assert_true_within_short(
_deactivate_with_running_ovf_update_task)
basic-suite-master/test-scenarios/test_007_sd_reattach.py:79:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
ost_utils/ost_utils/assertions.py:92: in assert_true_within_short
error_message=error_message)
ost_utils/ost_utils/assertions.py:74: in assert_equals_within_short
error_message=error_message
ost_utils/ost_utils/assertions.py:40: in assert_equals_within
res = func()
basic-suite-master/test-scenarios/test_007_sd_reattach.py:68: in
_deactivate_with_running_ovf_update_task
query={'correlation_id': correlation_id})
/usr/lib64/python3.6/site-packages/ovirtsdk4/services.py:3392: in deactivate
return self._internal_action(action, 'deactivate', None, headers, query,
wait)
/usr/lib64/python3.6/site-packages/ovirtsdk4/service.py:299: in _internal_action
return future.wait() if wait else future
/usr/lib64/python3.6/site-packages/ovirtsdk4/service.py:55: in wait
return self._code(response)
/usr/lib64/python3.6/site-packages/ovirtsdk4/service.py:296: in callback
self._check_fault(response)
/usr/lib64/python3.6/site-packages/ovirtsdk4/service.py:134: in _check_fault
self._raise_error(response, body.fault)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
response = <ovirtsdk4.http.Response object at 0x7fdda3c6bc88>
detail = <ovirtsdk4.types.Fault object at 0x7fdda3c6b160>
@staticmethod
def _raise_error(response, detail=None):
"""
Creates and raises an error containing the details of the given HTTP
response and fault.
This method is intended for internal use by other components of the
SDK. Refrain from using it directly, as backwards compatibility isn't
guaranteed.
"""
fault = detail if isinstance(detail, types.Fault) else None
msg = ''
if fault:
if fault.reason:
if msg:
msg += ' '
msg = msg + 'Fault reason is "%s".' % fault.reason
if fault.detail:
if msg:
msg += ' '
msg = msg + 'Fault detail is "%s".' % fault.detail
if response:
if response.code:
if msg:
msg += ' '
msg = msg + 'HTTP response code is %s.' % response.code
if response.message:
if msg:
msg += ' '
msg = msg + 'HTTP response message is "%s".' %
response.message
if isinstance(detail, six.string_types):
if msg:
msg += ' '
msg = msg + detail + '.'
class_ = Error
if response is not None:
if response.code in [401, 403]:
class_ = AuthError
elif response.code == 404:
class_ = NotFoundError
error = class_(msg)
error.code = response.code if response else None
error.fault = fault
raise error
E ovirtsdk4.Error: Fault reason is
"Operation Failed". Fault detail is "[Cannot deactivate Storage. Storage
Domain OVF data is currently being updated.]". HTTP response code is 409.
/usr/lib64/python3.6/site-packages/ovirtsdk4/service.py:118: Error