action #71137
closedosd deployment fails due to python-openqa_client failing in OBS
Description
Observation¶
[ 38s] + py.test-3.6 --ignore=_build.python2 --ignore=_build.python3 --ignore=_build.pypy3 -v
[ 38s] ============================= test session starts ==============================
[ 38s] platform linux -- Python 3.6.10, pytest-3.10.1, py-1.8.1, pluggy-0.13.1 -- /usr/bin/python3
[ 38s] cachedir: .pytest_cache
[ 38s] rootdir: /home/abuild/rpmbuild/BUILD/python-openqa_client-4.1.1, inifile:
[ 38s] collecting ... collected 17 items
[ 38s]
[ 38s] tests/test_client.py::TestClient::test_config_hosts[config_hosts0] PASSED [ 5%]
[ 38s] tests/test_client.py::TestClient::test_config_hosts[config_hosts1] PASSED [ 11%]
[ 39s] tests/test_client.py::TestClient::test_config_hosts[config_hosts2] PASSED [ 17%]
[ 39s] tests/test_client.py::TestClient::test_config_hosts[config_hosts3] PASSED [ 23%]
[ 39s] tests/test_client.py::TestClient::test_config_hosts[config_hosts4] PASSED [ 29%]
[ 39s] tests/test_client.py::TestClient::test_config_hosts[config_hosts5] PASSED [ 35%]
[ 39s] tests/test_client.py::TestClient::test_config_hosts[config_hosts6] PASSED [ 41%]
[ 39s] tests/test_client.py::TestClient::test_noconfig_host PASSED [ 47%]
[ 39s] tests/test_client.py::TestClient::test_add_auth_headers FAILED [ 52%]
[ 39s] tests/test_client.py::TestClient::test_do_request_ok PASSED [ 58%]
[ 39s] tests/test_client.py::TestClient::test_do_request_ok_no_parse PASSED [ 64%]
[ 39s] tests/test_client.py::TestClient::test_do_request_ok_yaml PASSED [ 70%]
[ 39s] tests/test_client.py::TestClient::test_do_request_not_ok PASSED [ 76%]
[ 39s] tests/test_client.py::TestClient::test_do_request_error PASSED [ 82%]
[ 39s] tests/test_client.py::TestClient::test_openqa_request PASSED [ 88%]
[ 39s] tests/test_client.py::TestClient::test_find_clones PASSED [ 94%]
[ 39s] tests/test_client.py::TestClient::test_get_jobs PASSED [100%]
[ 39s]
[ 39s] =================================== FAILURES ===================================
[ 39s] _______________________ TestClient.test_add_auth_headers _______________________
[ 39s]
[ 39s] args = (<test_client.TestClient object at 0x7fd2ea219dd8>,)
[ 39s] kwargs = {'simple_config': None}
[ 39s]
[ 39s] def wrapper(*args, **kwargs):
[ 39s] > with self:
[ 39s]
[ 39s] /usr/lib/python3.6/site-packages/freezegun/api.py:494:
[ 39s] _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
[ 39s] /usr/lib/python3.6/site-packages/freezegun/api.py:365: in __enter__
[ 39s] return self.start()
[ 39s] /usr/lib/python3.6/site-packages/freezegun/api.py:425: in start
[ 39s] attribute_value = getattr(module, module_attribute)
[ 39s] /usr/lib/python3.6/site-packages/pkg_resources/_vendor/six.py:92: in __get__
[ 39s] result = self._resolve()
[ 39s] /usr/lib/python3.6/site-packages/pkg_resources/_vendor/six.py:115: in _resolve
[ 39s] return _import_module(self.mod)
[ 39s] /usr/lib/python3.6/site-packages/pkg_resources/_vendor/six.py:82: in _import_module
[ 39s] __import__(name)
[ 39s] _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
[ 39s]
[ 39s] import sys, os
[ 39s] from sysconfig import get_path
[ 39s]
[ 39s] failed_map_path = os.path.join(get_path('stdlib'), '_import_failed', 'import_failed.map')
[ 39s]
[ 39s] if __spec__:
[ 39s] failed_name = __spec__.name
[ 39s] else:
[ 39s] failed_name = __name__
[ 39s]
[ 39s] > for line in open(failed_map_path):
[ 39s] E FileNotFoundError: [Errno 2] No such file or directory: '/home/abuild/rpmbuild/BUILD/python-openqa_client-4.1.1/tests/data/home/_import_failed/import_failed.map'
[ 39s]
[ 39s] /usr/lib64/python3.6/_import_failed/dbm.py:11: FileNotFoundError
Acceptance criteria¶
- AC1: osd-deployment can pass again
- AC2: the python-openqa_client package build result is succeeded in OBS
Problem¶
this blocks automatic osd deployment as visible in https://gitlab.suse.de/openqa/osd-deployment/-/jobs/255111
Suggestions¶
- Fix tests of python-openqa_client. As an alternative we could exclude python-openqa_client from the checks of osd-deployment but this is making it unnecessarily complicated in my eyes
Updated by livdywan over 4 years ago
- Using Python 3.6 on Leap 15.1
tests/test_client.py:test_add_auth_headers
failsfreezegun.freeze_time("2020-02-27")
raises an exception in six
/usr/lib64/python3.6/_import_failed/dbm.py:11:
FileNotFoundError: [Errno 2] No such file or directory: '/home/abuild/rpmbuild/BUILD/python-openqa_client-4.1.1/tests/data/home/_import_failed/import_failed.map'
I can't reproduce this running tox
(zypper in python3.6 tox
). Also wondering about the purpose of _import_failed
here, I can't seem to locate this anywhere.
Updated by mkittler over 4 years ago
- Status changed from Workable to Resolved
- Assignee changed from livdywan to mkittler
I did osc linkpac openSUSE:Leap:15.2 python-freezegun devel:openQA:Leap:15.1
and the build succeeds again: https://build.opensuse.org/package/show/devel:openQA/python-openqa_client
So python-freezegun
was the problematic dependency. I've tried to link from openSUSE:Factory
first (as we usually do) but the build failed for Leap 15.1.
I've retried the GitLab job and it succeeded: https://gitlab.suse.de/openqa/osd-deployment/-/jobs/255256
So we should be able to continue with the OSD deployment.
@cdywan Sorry for taking over but I was just curious about this problem and as it affects the OSD deployment it also seemed useful to follow my idea for the cause of the failure.