[oVirt Jenkins] ovirt-system-tests_basic-suite-master_nightly - Build # 840 - Failure!

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_nightly/... Build Number: 840 Build Status: Failure Triggered By: Started by timer ------------------------------------- Changes Since Last Success: ------------------------------------- Changes for Build #840 [Martin Necas] ansble: Fix the suite [Nir Soffer] mock_runner: Support repos without module metadata ----------------- Failed Tests: ----------------- 1 tests failed. FAILED: basic-suite-master.test-scenarios.test_004_basic_sanity.test_import_vm1 Error Message: AssertionError: False != True after 600 seconds Stack Trace: engine = <ovirtsdk4.services.SystemService object at 0x7f7360038320> event_id = [1165] @contextlib.contextmanager def wait_for_event(engine, event_id): ''' event_id could either be an int - a single event ID or a list - multiple event IDs that all will be checked ''' events = engine.events_service() last_event = int(events.list(max=2)[0].id) try:
yield
../ost_utils/ost_utils/engine_utils.py:38: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ engine = <ovirtsdk4.services.SystemService object at 0x7f7360038320> correlation_id = 'test_validate_ova_import_vm', vm_name = 'imported_vm' imported_url = 'ova:///var/tmp/ova_vm.ova', storage_domain = 'iscsi' cluster_name = 'test-cluster' def _import_ova(engine, correlation_id, vm_name, imported_url, storage_domain, cluster_name): sd = engine.storage_domains_service().list(search='name={}'.format(storage_domain))[0] cluster = engine.clusters_service().list(search='name={}'.format(cluster_name))[0] imports_service = engine.external_vm_imports_service() host = test_utils.get_first_active_host_by_name(engine) with engine_utils.wait_for_event(engine, 1165): # IMPORTEXPORT_STARTING_IMPORT_VM imports_service.add( types.ExternalVmImport( name=vm_name, provider=types.ExternalVmProviderType.KVM, url=imported_url, cluster=types.Cluster( id=cluster.id ), storage_domain=types.StorageDomain( id=sd.id ), host=types.Host( id=host.id ), sparse=True
), async=True, query={'correlation_id': correlation_id}
) ../basic-suite-master/test-scenarios/test_004_basic_sanity.py:863: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <ovirtsdk4.services.ExternalVmImportsService object at 0x7f736008b4a8> import_ = <ovirtsdk4.types.ExternalVmImport object at 0x7f735b7bd898> headers = None, query = {'correlation_id': 'test_validate_ova_import_vm'} wait = True, kwargs = {'async': True} def add( self, import_, headers=None, query=None, wait=True, **kwargs ): """ This operation is used to import a virtual machine from external hypervisor, such as KVM, XEN or VMware. For example import of a virtual machine from VMware can be facilitated using the following request: [source] ---- POST /externalvmimports ---- With request body of type <<types/external_vm_import,ExternalVmImport>>, for example: [source,xml] ---- <external_vm_import> <vm> <name>my_vm</name> </vm> <cluster id="360014051136c20574f743bdbd28177fd" /> <storage_domain id="8bb5ade5-e988-4000-8b93-dbfc6717fe50" /> <name>vm_name_as_is_in_vmware</name> <sparse>true</sparse> <username>vmware_user</username> <password>123456</password> <provider>VMWARE</provider> <url>vpx://wmware_user@vcenter-host/DataCenter/Cluster/esxi-host?no_verify=1</url> <drivers_iso id="virtio-win-1.6.7.iso" /> </external_vm_import> ---- """ # Check the types of the parameters: Service._check_types([ ('import_', import_, types.ExternalVmImport), ]) # Build the URL: query = query or {} # Send the request and wait for the response:
return self._internal_add(import_, headers, query, wait)
/usr/lib64/python3.6/site-packages/ovirtsdk4/services.py:10453: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <ovirtsdk4.services.ExternalVmImportsService object at 0x7f736008b4a8> object = <ovirtsdk4.types.ExternalVmImport object at 0x7f735b7bd898> headers = {}, query = {'correlation_id': 'test_validate_ova_import_vm'} wait = True def _internal_add(self, object, headers=None, query=None, wait=None): """ Executes an `add` method. """ # Populate the headers: headers = headers or {} # Send the request and wait for the response: request = http.Request(method='POST', path=self._path, query=query, headers=headers) request.body = writer.Writer.write(object, indent=True) context = self._connection.send(request) def callback(response): if response.code in [200, 201, 202]: return self._internal_read_body(response) else: self._check_fault(response) future = Future(self._connection, context, callback)
return future.wait() if wait else future
/usr/lib64/python3.6/site-packages/ovirtsdk4/service.py:232: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <ovirtsdk4.service.Future object at 0x7f736007bba8> def wait(self): """ Waits till the result of the operation that created this future is available. """ response = self._connection.wait(self._context)
return self._code(response)
/usr/lib64/python3.6/site-packages/ovirtsdk4/service.py:55: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ response = <ovirtsdk4.http.Response object at 0x7f736007bbe0> def callback(response): if response.code in [200, 201, 202]: return self._internal_read_body(response) else:
self._check_fault(response)
/usr/lib64/python3.6/site-packages/ovirtsdk4/service.py:229: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <ovirtsdk4.services.ExternalVmImportsService object at 0x7f736008b4a8> response = <ovirtsdk4.http.Response object at 0x7f736007bbe0> def _check_fault(self, response): """ Reads the response body assuming that it contains a fault message, converts it to an exception and raises it. This method is intended for internal use by other components of the SDK. Refrain from using it directly, as backwards compatibility isn't guaranteed. """ body = self._internal_read_body(response) if isinstance(body, types.Fault):
self._raise_error(response, body)
/usr/lib64/python3.6/site-packages/ovirtsdk4/service.py:132: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ response = <ovirtsdk4.http.Response object at 0x7f736007bbe0> detail = <ovirtsdk4.types.Fault object at 0x7f736007b208> @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 "[Internal Engine Error]". HTTP response code is 400. /usr/lib64/python3.6/site-packages/ovirtsdk4/service.py:118: Error During handling of the above exception, another exception occurred: engine_api = <ovirtsdk4.Connection object at 0x7f73600382e8> @order_by(_TEST_LIST) def test_import_vm1(engine_api): _import_ova(engine_api.system_service(), "test_validate_ova_import_vm", IMPORTED_VM_NAME, IMPORTED_OVA_NAME, SD_ISCSI_NAME,
TEST_CLUSTER)
../basic-suite-master/test-scenarios/test_004_basic_sanity.py:874: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ../basic-suite-master/test-scenarios/test_004_basic_sanity.py:863: in _import_ova ), async=True, query={'correlation_id': correlation_id} /usr/lib64/python3.6/contextlib.py:99: in __exit__ self.gen.throw(type, value, traceback) ../ost_utils/ost_utils/engine_utils.py:44: in wait_for_event lambda: ../ost_utils/ost_utils/assertions.py:98: in assert_true_within_long assert_equals_within_long(func, True, allowed_exceptions) ../ost_utils/ost_utils/assertions.py:83: in assert_equals_within_long func, value, LONG_TIMEOUT, allowed_exceptions=allowed_exceptions _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ func = <function wait_for_event.<locals>.<lambda> at 0x7f73610ca840> value = True, timeout = 600, allowed_exceptions = [], initial_wait = 0 error_message = 'False != True after 600 seconds' def assert_equals_within( func, value, timeout, allowed_exceptions=None, initial_wait=10, error_message=None ): allowed_exceptions = allowed_exceptions or [] res = '<no-result-obtained>' with _EggTimer(timeout) as timer: while not timer.elapsed(): try: res = func() if res == value: return except Exception as exc: if _instance_of_any(exc, allowed_exceptions): time.sleep(3) continue LOGGER.exception("Unhandled exception in %s", func) raise if initial_wait == 0: time.sleep(3) else: time.sleep(initial_wait) initial_wait = 0 try: if error_message is None: error_message = '%s != %s after %s seconds' % (res, value, timeout)
raise AssertionError(error_message)
E AssertionError: False != True after 600 seconds ../ost_utils/ost_utils/assertions.py:61: AssertionError

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_nightly/... Build Number: 841 Build Status: Still Failing Triggered By: Started by timer ------------------------------------- Changes Since Last Success: ------------------------------------- Changes for Build #840 [Martin Necas] ansble: Fix the suite [Nir Soffer] mock_runner: Support repos without module metadata Changes for Build #841 [Martin Necas] ansble: Fix the suite ----------------- Failed Tests: ----------------- 1 tests failed. FAILED: basic-suite-master.test-scenarios.test_004_basic_sanity.test_import_vm1 Error Message: AssertionError: False != True after 600 seconds Stack Trace: engine = <ovirtsdk4.services.SystemService object at 0x7fb9c388e048> event_id = [1165] @contextlib.contextmanager def wait_for_event(engine, event_id): ''' event_id could either be an int - a single event ID or a list - multiple event IDs that all will be checked ''' events = engine.events_service() last_event = int(events.list(max=2)[0].id) try:
yield
../ost_utils/ost_utils/engine_utils.py:38: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ engine = <ovirtsdk4.services.SystemService object at 0x7fb9c388e048> correlation_id = 'test_validate_ova_import_vm', vm_name = 'imported_vm' imported_url = 'ova:///var/tmp/ova_vm.ova', storage_domain = 'iscsi' cluster_name = 'test-cluster' def _import_ova(engine, correlation_id, vm_name, imported_url, storage_domain, cluster_name): sd = engine.storage_domains_service().list(search='name={}'.format(storage_domain))[0] cluster = engine.clusters_service().list(search='name={}'.format(cluster_name))[0] imports_service = engine.external_vm_imports_service() host = test_utils.get_first_active_host_by_name(engine) with engine_utils.wait_for_event(engine, 1165): # IMPORTEXPORT_STARTING_IMPORT_VM imports_service.add( types.ExternalVmImport( name=vm_name, provider=types.ExternalVmProviderType.KVM, url=imported_url, cluster=types.Cluster( id=cluster.id ), storage_domain=types.StorageDomain( id=sd.id ), host=types.Host( id=host.id ), sparse=True
), async=True, query={'correlation_id': correlation_id}
) ../basic-suite-master/test-scenarios/test_004_basic_sanity.py:863: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <ovirtsdk4.services.ExternalVmImportsService object at 0x7fb9c2783048> import_ = <ovirtsdk4.types.ExternalVmImport object at 0x7fb9c2783f28> headers = None, query = {'correlation_id': 'test_validate_ova_import_vm'} wait = True, kwargs = {'async': True} def add( self, import_, headers=None, query=None, wait=True, **kwargs ): """ This operation is used to import a virtual machine from external hypervisor, such as KVM, XEN or VMware. For example import of a virtual machine from VMware can be facilitated using the following request: [source] ---- POST /externalvmimports ---- With request body of type <<types/external_vm_import,ExternalVmImport>>, for example: [source,xml] ---- <external_vm_import> <vm> <name>my_vm</name> </vm> <cluster id="360014051136c20574f743bdbd28177fd" /> <storage_domain id="8bb5ade5-e988-4000-8b93-dbfc6717fe50" /> <name>vm_name_as_is_in_vmware</name> <sparse>true</sparse> <username>vmware_user</username> <password>123456</password> <provider>VMWARE</provider> <url>vpx://wmware_user@vcenter-host/DataCenter/Cluster/esxi-host?no_verify=1</url> <drivers_iso id="virtio-win-1.6.7.iso" /> </external_vm_import> ---- """ # Check the types of the parameters: Service._check_types([ ('import_', import_, types.ExternalVmImport), ]) # Build the URL: query = query or {} # Send the request and wait for the response:
return self._internal_add(import_, headers, query, wait)
/usr/lib64/python3.6/site-packages/ovirtsdk4/services.py:10453: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <ovirtsdk4.services.ExternalVmImportsService object at 0x7fb9c2783048> object = <ovirtsdk4.types.ExternalVmImport object at 0x7fb9c2783f28> headers = {}, query = {'correlation_id': 'test_validate_ova_import_vm'} wait = True def _internal_add(self, object, headers=None, query=None, wait=None): """ Executes an `add` method. """ # Populate the headers: headers = headers or {} # Send the request and wait for the response: request = http.Request(method='POST', path=self._path, query=query, headers=headers) request.body = writer.Writer.write(object, indent=True) context = self._connection.send(request) def callback(response): if response.code in [200, 201, 202]: return self._internal_read_body(response) else: self._check_fault(response) future = Future(self._connection, context, callback)
return future.wait() if wait else future
/usr/lib64/python3.6/site-packages/ovirtsdk4/service.py:232: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <ovirtsdk4.service.Future object at 0x7fb9c2783ef0> def wait(self): """ Waits till the result of the operation that created this future is available. """ response = self._connection.wait(self._context)
return self._code(response)
/usr/lib64/python3.6/site-packages/ovirtsdk4/service.py:55: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ response = <ovirtsdk4.http.Response object at 0x7fb9c27d8ac8> def callback(response): if response.code in [200, 201, 202]: return self._internal_read_body(response) else:
self._check_fault(response)
/usr/lib64/python3.6/site-packages/ovirtsdk4/service.py:229: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <ovirtsdk4.services.ExternalVmImportsService object at 0x7fb9c2783048> response = <ovirtsdk4.http.Response object at 0x7fb9c27d8ac8> def _check_fault(self, response): """ Reads the response body assuming that it contains a fault message, converts it to an exception and raises it. This method is intended for internal use by other components of the SDK. Refrain from using it directly, as backwards compatibility isn't guaranteed. """ body = self._internal_read_body(response) if isinstance(body, types.Fault):
self._raise_error(response, body)
/usr/lib64/python3.6/site-packages/ovirtsdk4/service.py:132: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ response = <ovirtsdk4.http.Response object at 0x7fb9c27d8ac8> detail = <ovirtsdk4.types.Fault object at 0x7fb9c27d88d0> @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 "[Internal Engine Error]". HTTP response code is 400. /usr/lib64/python3.6/site-packages/ovirtsdk4/service.py:118: Error During handling of the above exception, another exception occurred: engine_api = <ovirtsdk4.Connection object at 0x7fb9c388e208> @order_by(_TEST_LIST) def test_import_vm1(engine_api): _import_ova(engine_api.system_service(), "test_validate_ova_import_vm", IMPORTED_VM_NAME, IMPORTED_OVA_NAME, SD_ISCSI_NAME,
TEST_CLUSTER)
../basic-suite-master/test-scenarios/test_004_basic_sanity.py:874: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ../basic-suite-master/test-scenarios/test_004_basic_sanity.py:863: in _import_ova ), async=True, query={'correlation_id': correlation_id} /usr/lib64/python3.6/contextlib.py:99: in __exit__ self.gen.throw(type, value, traceback) ../ost_utils/ost_utils/engine_utils.py:44: in wait_for_event lambda: ../ost_utils/ost_utils/assertions.py:98: in assert_true_within_long assert_equals_within_long(func, True, allowed_exceptions) ../ost_utils/ost_utils/assertions.py:83: in assert_equals_within_long func, value, LONG_TIMEOUT, allowed_exceptions=allowed_exceptions _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ func = <function wait_for_event.<locals>.<lambda> at 0x7fb9c1f0a048> value = True, timeout = 600, allowed_exceptions = [], initial_wait = 0 error_message = 'False != True after 600 seconds' def assert_equals_within( func, value, timeout, allowed_exceptions=None, initial_wait=10, error_message=None ): allowed_exceptions = allowed_exceptions or [] res = '<no-result-obtained>' with _EggTimer(timeout) as timer: while not timer.elapsed(): try: res = func() if res == value: return except Exception as exc: if _instance_of_any(exc, allowed_exceptions): time.sleep(3) continue LOGGER.exception("Unhandled exception in %s", func) raise if initial_wait == 0: time.sleep(3) else: time.sleep(initial_wait) initial_wait = 0 try: if error_message is None: error_message = '%s != %s after %s seconds' % (res, value, timeout)
raise AssertionError(error_message)
E AssertionError: False != True after 600 seconds ../ost_utils/ost_utils/assertions.py:61: AssertionError

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_nightly/... Build Number: 842 Build Status: Still Failing Triggered By: Started by timer ------------------------------------- Changes Since Last Success: ------------------------------------- Changes for Build #840 [Martin Necas] ansble: Fix the suite [Nir Soffer] mock_runner: Support repos without module metadata Changes for Build #841 [Martin Necas] ansble: Fix the suite Changes for Build #842 [Martin Necas] ansble: Fix the suite ----------------- Failed Tests: ----------------- 1 tests failed. FAILED: basic-suite-master.test-scenarios.test_004_basic_sanity.test_import_vm1 Error Message: AssertionError: False != True after 600 seconds Stack Trace: engine = <ovirtsdk4.services.SystemService object at 0x7f7b229a8e80> event_id = [1165] @contextlib.contextmanager def wait_for_event(engine, event_id): ''' event_id could either be an int - a single event ID or a list - multiple event IDs that all will be checked ''' events = engine.events_service() last_event = int(events.list(max=2)[0].id) try:
yield
../ost_utils/ost_utils/engine_utils.py:38: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ engine = <ovirtsdk4.services.SystemService object at 0x7f7b229a8e80> correlation_id = 'test_validate_ova_import_vm', vm_name = 'imported_vm' imported_url = 'ova:///var/tmp/ova_vm.ova', storage_domain = 'iscsi' cluster_name = 'test-cluster' def _import_ova(engine, correlation_id, vm_name, imported_url, storage_domain, cluster_name): sd = engine.storage_domains_service().list(search='name={}'.format(storage_domain))[0] cluster = engine.clusters_service().list(search='name={}'.format(cluster_name))[0] imports_service = engine.external_vm_imports_service() host = test_utils.get_first_active_host_by_name(engine) with engine_utils.wait_for_event(engine, 1165): # IMPORTEXPORT_STARTING_IMPORT_VM imports_service.add( types.ExternalVmImport( name=vm_name, provider=types.ExternalVmProviderType.KVM, url=imported_url, cluster=types.Cluster( id=cluster.id ), storage_domain=types.StorageDomain( id=sd.id ), host=types.Host( id=host.id ), sparse=True
), async=True, query={'correlation_id': correlation_id}
) ../basic-suite-master/test-scenarios/test_004_basic_sanity.py:863: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <ovirtsdk4.services.ExternalVmImportsService object at 0x7f7b22a0bc50> import_ = <ovirtsdk4.types.ExternalVmImport object at 0x7f7b22a0bf60> headers = None, query = {'correlation_id': 'test_validate_ova_import_vm'} wait = True, kwargs = {'async': True} def add( self, import_, headers=None, query=None, wait=True, **kwargs ): """ This operation is used to import a virtual machine from external hypervisor, such as KVM, XEN or VMware. For example import of a virtual machine from VMware can be facilitated using the following request: [source] ---- POST /externalvmimports ---- With request body of type <<types/external_vm_import,ExternalVmImport>>, for example: [source,xml] ---- <external_vm_import> <vm> <name>my_vm</name> </vm> <cluster id="360014051136c20574f743bdbd28177fd" /> <storage_domain id="8bb5ade5-e988-4000-8b93-dbfc6717fe50" /> <name>vm_name_as_is_in_vmware</name> <sparse>true</sparse> <username>vmware_user</username> <password>123456</password> <provider>VMWARE</provider> <url>vpx://wmware_user@vcenter-host/DataCenter/Cluster/esxi-host?no_verify=1</url> <drivers_iso id="virtio-win-1.6.7.iso" /> </external_vm_import> ---- """ # Check the types of the parameters: Service._check_types([ ('import_', import_, types.ExternalVmImport), ]) # Build the URL: query = query or {} # Send the request and wait for the response:
return self._internal_add(import_, headers, query, wait)
/usr/lib64/python3.6/site-packages/ovirtsdk4/services.py:10453: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <ovirtsdk4.services.ExternalVmImportsService object at 0x7f7b22a0bc50> object = <ovirtsdk4.types.ExternalVmImport object at 0x7f7b22a0bf60> headers = {}, query = {'correlation_id': 'test_validate_ova_import_vm'} wait = True def _internal_add(self, object, headers=None, query=None, wait=None): """ Executes an `add` method. """ # Populate the headers: headers = headers or {} # Send the request and wait for the response: request = http.Request(method='POST', path=self._path, query=query, headers=headers) request.body = writer.Writer.write(object, indent=True) context = self._connection.send(request) def callback(response): if response.code in [200, 201, 202]: return self._internal_read_body(response) else: self._check_fault(response) future = Future(self._connection, context, callback)
return future.wait() if wait else future
/usr/lib64/python3.6/site-packages/ovirtsdk4/service.py:232: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <ovirtsdk4.service.Future object at 0x7f7b22a199b0> def wait(self): """ Waits till the result of the operation that created this future is available. """ response = self._connection.wait(self._context)
return self._code(response)
/usr/lib64/python3.6/site-packages/ovirtsdk4/service.py:55: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ response = <ovirtsdk4.http.Response object at 0x7f7b22a19b70> def callback(response): if response.code in [200, 201, 202]: return self._internal_read_body(response) else:
self._check_fault(response)
/usr/lib64/python3.6/site-packages/ovirtsdk4/service.py:229: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <ovirtsdk4.services.ExternalVmImportsService object at 0x7f7b22a0bc50> response = <ovirtsdk4.http.Response object at 0x7f7b22a19b70> def _check_fault(self, response): """ Reads the response body assuming that it contains a fault message, converts it to an exception and raises it. This method is intended for internal use by other components of the SDK. Refrain from using it directly, as backwards compatibility isn't guaranteed. """ body = self._internal_read_body(response) if isinstance(body, types.Fault):
self._raise_error(response, body)
/usr/lib64/python3.6/site-packages/ovirtsdk4/service.py:132: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ response = <ovirtsdk4.http.Response object at 0x7f7b22a19b70> detail = <ovirtsdk4.types.Fault object at 0x7f7b22a19a90> @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 "[Internal Engine Error]". HTTP response code is 400. /usr/lib64/python3.6/site-packages/ovirtsdk4/service.py:118: Error During handling of the above exception, another exception occurred: engine_api = <ovirtsdk4.Connection object at 0x7f7b229a8ba8> @order_by(_TEST_LIST) def test_import_vm1(engine_api): _import_ova(engine_api.system_service(), "test_validate_ova_import_vm", IMPORTED_VM_NAME, IMPORTED_OVA_NAME, SD_ISCSI_NAME,
TEST_CLUSTER)
../basic-suite-master/test-scenarios/test_004_basic_sanity.py:874: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ../basic-suite-master/test-scenarios/test_004_basic_sanity.py:863: in _import_ova ), async=True, query={'correlation_id': correlation_id} /usr/lib64/python3.6/contextlib.py:99: in __exit__ self.gen.throw(type, value, traceback) ../ost_utils/ost_utils/engine_utils.py:44: in wait_for_event lambda: ../ost_utils/ost_utils/assertions.py:98: in assert_true_within_long assert_equals_within_long(func, True, allowed_exceptions) ../ost_utils/ost_utils/assertions.py:83: in assert_equals_within_long func, value, LONG_TIMEOUT, allowed_exceptions=allowed_exceptions _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ func = <function wait_for_event.<locals>.<lambda> at 0x7f7b23a65d90> value = True, timeout = 600, allowed_exceptions = [], initial_wait = 0 error_message = 'False != True after 600 seconds' def assert_equals_within( func, value, timeout, allowed_exceptions=None, initial_wait=10, error_message=None ): allowed_exceptions = allowed_exceptions or [] res = '<no-result-obtained>' with _EggTimer(timeout) as timer: while not timer.elapsed(): try: res = func() if res == value: return except Exception as exc: if _instance_of_any(exc, allowed_exceptions): time.sleep(3) continue LOGGER.exception("Unhandled exception in %s", func) raise if initial_wait == 0: time.sleep(3) else: time.sleep(initial_wait) initial_wait = 0 try: if error_message is None: error_message = '%s != %s after %s seconds' % (res, value, timeout)
raise AssertionError(error_message)
E AssertionError: False != True after 600 seconds ../ost_utils/ost_utils/assertions.py:61: AssertionError

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_nightly/... Build Number: 843 Build Status: Fixed Triggered By: Started by timer ------------------------------------- Changes Since Last Success: ------------------------------------- Changes for Build #840 [Martin Necas] ansble: Fix the suite [Nir Soffer] mock_runner: Support repos without module metadata Changes for Build #841 [Martin Necas] ansble: Fix the suite Changes for Build #842 [Martin Necas] ansble: Fix the suite Changes for Build #843 [Michal Skrivanek] lagofy: cleanup other suites using lago_cleanup [Galit Rosenthal] Remove he suites (except he suite master and node-ng) ----------------- Failed Tests: ----------------- All tests passed
participants (1)
-
jenkins@jenkins.phx.ovirt.org