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/1231/
Build Number: 1231
Build Status:  Failure
Triggered By: Started by timer

-------------------------------------
Changes Since Last Success:
-------------------------------------
Changes for Build #1231
[Eitan Raviv] network: host post install - rerun wait for up




-----------------
Failed Tests:
-----------------
1 tests failed.
FAILED:  
basic-suite-master.test-scenarios.test_004_basic_sanity.test_import_template_as_vm

Error Message:
AssertionError: False != True after 600 seconds

Stack Trace:
engine = <ovirtsdk4.services.SystemService object at 0x7f6fcb952898>
event_id = [1165], timeout = 600

    @contextlib.contextmanager
    def wait_for_event(engine, event_id, timeout=assertions.LONG_TIMEOUT):
        '''
        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:36: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

engine = <ovirtsdk4.services.SystemService object at 0x7f6fcb952898>
correlation_id = 'test_validate_ova_import_temp', vm_name = 'imported_temp'
imported_url = 'ova:///var/tmp/ova_temp.ova', storage_domain = 'nfs'
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:935: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <ovirtsdk4.services.ExternalVmImportsService object at 0x7f6fcb849780>
import_ = <ovirtsdk4.types.ExternalVmImport object at 0x7f6fcb83a7b8>
headers = None, query = {'correlation_id': 'test_validate_ova_import_temp'}
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 0x7f6fcb849780>
object = <ovirtsdk4.types.ExternalVmImport object at 0x7f6fcb83a7b8>
headers = {}, query = {'correlation_id': 'test_validate_ova_import_temp'}
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 0x7f6fcb7d20f0>

    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 0x7f6fcb7d2fd0>

    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 0x7f6fcb849780>
response = <ovirtsdk4.http.Response object at 0x7f6fcb7d2fd0>

    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 0x7f6fcb7d2fd0>
detail = <ovirtsdk4.types.Fault object at 0x7f6fcb7d2128>

    @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 0x7f6fcba39128>
ost_cluster_name = 'test-cluster'

    @order_by(_TEST_LIST)
    def test_import_template_as_vm(engine_api, ost_cluster_name):
        _import_ova(engine_api.system_service(),
                    "test_validate_ova_import_temp",
                    IMPORTED_TEMP_NAME,
                    IMPORTED_TEMP_OVA_NAME,
                    SD_NFS_NAME,
>                   ost_cluster_name)

basic-suite-master/test-scenarios/test_004_basic_sanity.py:973: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
basic-suite-master/test-scenarios/test_004_basic_sanity.py:935: 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
    timeout
ost_utils/ost_utils/assertions.py:86: in assert_true_within
    assert_equals_within(func, True, timeout, allowed_exceptions)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

func = <function wait_for_event.<locals>.<lambda> at 0x7f6fcb98fa60>
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:59: AssertionError
_______________________________________________
Infra mailing list -- [email protected]
To unsubscribe send an email to [email protected]
Privacy Statement: https://www.ovirt.org/privacy-policy.html
oVirt Code of Conduct: 
https://www.ovirt.org/community/about/community-guidelines/
List Archives: 
https://lists.ovirt.org/archives/list/[email protected]/message/KZALLSXYHKK2PGZXSWU2LZC45HMQ3U6M/

Reply via email to