diff --git a/.ci/azure/linux.yml b/.ci/azure/linux.yml index 56446104976..71e464358fc 100644 --- a/.ci/azure/linux.yml +++ b/.ci/azure/linux.yml @@ -4,7 +4,7 @@ trigger: - master - releases/* paths: - exclude: + exclude: - docs/ - /**/docs/* - /**/*.md @@ -15,7 +15,7 @@ pr: - master - releases/* paths: - exclude: + exclude: - docs/ - /**/docs/* - /**/*.md @@ -265,10 +265,11 @@ jobs: - script: | export DATA_PATH=$(MODELS_PATH) export MODELS_PATH=$(MODELS_PATH) - # because of static build libgna is needed for python binary - export LD_LIBRARY_PATH=$(REPO_DIR)/temp/gna_03.00.00.1455.2/linux/x64:$(INSTALL_TEST_DIR): \ - $(INSTALL_DIR)/python/python3.8:$LD_LIBRARY_PATH + # because of static build libgna is needed for python binary and mock_py frontend library + export LD_LIBRARY_PATH=$(REPO_DIR)/temp/gna_03.00.00.1455.2/linux/x64:$(INSTALL_TEST_DIR):$LD_LIBRARY_PATH + # For python imports to import pybind_mock_frontend export PYTHONPATH=$(INSTALL_TEST_DIR):$(INSTALL_DIR)/python/python3.8:$PYTHONPATH + # For frontend manager to load mock_py library export OV_FRONTEND_PATH=$(INSTALL_TEST_DIR) python3 -m pytest -sv $(INSTALL_TEST_DIR)/pyopenvino $(PYTHON_STATIC_ARGS) \ --junitxml=$(INSTALL_TEST_DIR)/TEST-Pyngraph.xml \ diff --git a/.ci/azure/linux_debian.yml b/.ci/azure/linux_debian.yml index 740d4b332f5..d98199e5a4d 100644 --- a/.ci/azure/linux_debian.yml +++ b/.ci/azure/linux_debian.yml @@ -4,7 +4,7 @@ trigger: - master - releases/* paths: - exclude: + exclude: - docs/ - /**/docs/* - /**/*.md @@ -15,7 +15,7 @@ pr: - master - releases/* paths: - exclude: + exclude: - docs/ - /**/docs/* - /**/*.md @@ -60,6 +60,7 @@ jobs: LAYER_TESTS_DIR: $(INSTALL_TEST_DIR)/layer_tests SAMPLES_INSTALL_DIR: /usr/share/openvino/samples PYTHON_SAMPLES_INSTALL_DIR: $(INSTALL_DIR)/share/openvino/samples/python + PYTHON_WHEEL_INSTALL_DIR: $HOME/.local/lib/python3.8/site-packages TMP_DIR: /mnt/tmp SHARE_DIR: /mount/cinfsshare/onnxtestdata CCACHE_DIR: $(SHARE_DIR)/ccache/master/linux @@ -241,10 +242,16 @@ jobs: - script: | export DATA_PATH=$(MODELS_PATH) export MODELS_PATH=$(MODELS_PATH) - # for libopenvino_template_extension.so - export LD_LIBRARY_PATH=$(INSTALL_TEST_DIR):$LD_LIBRARY_PATH - export PYTHONPATH=$(INSTALL_TEST_DIR):$(INSTALL_DIR)/python/python3.8:$PYTHONPATH - export OV_FRONTEND_PATH=$(INSTALL_TEST_DIR) + # Required by python imports to load requires libraries + # - tests install dir for mock_py + # - OpenVINO wheel installation dir for others frontend required by mock_py (is not part of wheel pkg) + export LD_LIBRARY_PATH=$(PYTHON_WHEEL_INSTALL_DIR)/openvino/libs:$(INSTALL_TEST_DIR):$LD_LIBRARY_PATH + # For frontend manager to load frontend libraries: + # - tests install dir for mock_py + # - OpenVINO wheel installation dir for others frontend (not required if this variable is not set) + export OV_FRONTEND_PATH=$(PYTHON_WHEEL_INSTALL_DIR)/openvino/libs:$(INSTALL_TEST_DIR) + # For python imports to import pybind_mock_frontend + export PYTHONPATH=$(INSTALL_TEST_DIR):$PYTHONPATH python3 -m pytest -s $(INSTALL_TEST_DIR)/pyopenvino \ --junitxml=$(INSTALL_TEST_DIR)/TEST-Pyngraph.xml \ --ignore=$(INSTALL_TEST_DIR)/pyopenvino/tests/test_utils/test_utils.py \ diff --git a/src/bindings/python/tests/test_frontend/test_frontend_extension.py b/src/bindings/python/tests/test_frontend/test_frontend_extension.py index 950ed0c5c22..6cdc890465c 100644 --- a/src/bindings/python/tests/test_frontend/test_frontend_extension.py +++ b/src/bindings/python/tests/test_frontend/test_frontend_extension.py @@ -32,8 +32,8 @@ def skip_if_frontend_is_disabled(frontend): if frontend not in imported_frontends: return pytest.mark.skip( reason=f"Cannot import frontend {frontend}. Check paths in:" - f" LD_LIBRARY_PATH={os.environ['LD_LIBRARY_PATH']}" - f", PYTHONPATH={os.environ['PYTHONPATH']}") + f" LD_LIBRARY_PATH={os.environ.get('LD_LIBRARY_PATH','')}" + f", PYTHONPATH={os.environ.get('PYTHONPATH','')}") return pytest.mark.skipif(frontend not in fem.get_available_front_ends(), reason=f"Frontend {frontend} is disabled") diff --git a/src/bindings/python/tests/test_frontend/test_frontendmanager.py b/src/bindings/python/tests/test_frontend/test_frontendmanager.py index f232672a0a3..77f096f8ad7 100644 --- a/src/bindings/python/tests/test_frontend/test_frontendmanager.py +++ b/src/bindings/python/tests/test_frontend/test_frontendmanager.py @@ -32,8 +32,8 @@ except Exception: fem = FrontEndManager() mock_needed = pytest.mark.skipif(not mock_available, reason="Mock frontend is not available. Check paths in:" - f" LD_LIBRARY_PATH={os.environ['LD_LIBRARY_PATH']}" - f", PYTHONPATH={os.environ['PYTHONPATH']}") + f" LD_LIBRARY_PATH={os.environ.get('LD_LIBRARY_PATH','')}" + f", PYTHONPATH={os.environ.get('PYTHONPATH','')}") MOCK_PY_FRONTEND_NAME = "mock_py"