canonical / bundle-kubeflow

Charmed Kubeflow
Apache License 2.0
103 stars 50 forks source link

Test environment fails using Selenium in Jammy #457

Closed mateoflorido closed 1 year ago

mateoflorido commented 2 years ago

Issue When running the tests in Jammy, Selenium ones fail because geckodriver package is not included due to the change of Firefox package to snap.

$ tox -e tests -- -m lite --username mateo --password password123                               
tests installed: absl-py==0.11.0,anyio==3.6.1,asttokens==2.0.5,attrs==21.4.0,backcall==0.2.0,bcrypt==3.2.2,blinker==1.4,cachetools==4.2.4,certifi==2021.10.8,cffi==1.15.0,charset-normalizer==2.0.12,click==7.1.2,cloudpickle==1.6.0,cryptography==37.0.2,decorator==5.1.1,Deprecated==1.2.13,docstring-parser==0.14.1,executing==0.8.3,fire==0.4.0,flaky==3.7.0,google-api-core==2.7.3,google-api-python-client==1.12.11,google-auth==1.35.0,google-auth-httplib2==0.1.0,google-cloud-core==2.3.0,google-cloud-storage==1.44.0,google-crc32c==1.3.0,google-resumable-media==2.3.2,googleapis-common-protos==1.56.1,h11==0.12.0,h2==4.1.0,hpack==4.0.0,httpcore==0.14.7,httplib2==0.20.4,httpx==0.22.0,hyperframe==6.0.1,idna==3.3,iniconfig==1.1.1,ipdb==0.13.9,ipython==8.3.0,jedi==0.18.1,Jinja2==3.1.2,jsonschema==3.2.0,juju==2.9.9,jujubundlelib==0.5.7,kaitaistruct==0.9,kfp==1.8.0,kfp-pipeline-spec==0.1.14,kfp-server-api==1.8.1,kubernetes==12.0.1,lightkube==0.10.2,lightkube-models==1.23.6.4,macaroonbakery==1.3.1,MarkupSafe==2.1.1,matplotlib-inline==0.1.3,mypy-extensions==0.4.3,oauthlib==3.2.0,packaging==21.3,paramiko==2.11.0,parso==0.8.3,pexpect==4.8.0,pickleshare==0.7.5,pluggy==0.13.1,prompt-toolkit==3.0.29,protobuf==3.20.1,ptyprocess==0.7.0,pure-eval==0.2.2,py==1.11.0,pyasn1==0.4.8,pyasn1-modules==0.2.8,pycparser==2.21,pydantic==1.9.0,Pygments==2.12.0,pymacaroons==0.13.0,PyNaCl==1.5.0,pyOpenSSL==22.0.0,pyparsing==3.0.9,pyRFC3339==1.1,pyrsistent==0.18.1,PySocks==1.7.1,pytest==6.2.3,pytest-asyncio==0.18.3,pytest-operator==0.19.1,python-dateutil==2.8.2,pytz==2022.1,PyYAML==5.3.1,requests==2.27.1,requests-oauthlib==1.3.1,requests-toolbelt==0.9.1,rfc3986==1.5.0,rsa==4.8,selenium==3.141.0,selenium-wire==4.3.1,sh==1.14.1,six==1.16.0,sniffio==1.2.0,stack-data==0.2.0,strip-hints==0.1.10,tabulate==0.8.9,termcolor==1.1.0,theblues==0.5.2,toml==0.10.2,toposort==1.7,traitlets==5.2.1.post0,typing-inspect==0.7.1,typing_extensions==4.2.0,uritemplate==3.0.1,urllib3==1.26.9,wcwidth==0.2.5,websocket-client==1.3.2,websockets==8.1,wrapt==1.14.1,wsproto==1.1.0
tests run-test-pre: PYTHONHASHSEED='1571910265'
tests run-test: commands[0] | pytest -v --tb native --show-capture=no -m lite --username mateo --password password123 /home/mateo/workspace/canonical/bundle-kubeflow/tests/
=============================================== test session starts ================================================
platform linux -- Python 3.9.12, pytest-6.2.3, py-1.11.0, pluggy-0.13.1 -- /home/mateo/workspace/canonical/bundle-kubeflow/.tox/tests/bin/python
cachedir: .tox/tests/.pytest_cache
rootdir: /home/mateo/workspace/canonical/bundle-kubeflow, configfile: pytest.ini
plugins: operator-0.19.1, anyio-3.6.1, asyncio-0.18.3, flaky-3.7.0
asyncio: mode=legacy
collected 6 items / 2 deselected / 4 selected                                                                      

tests/test_kubectl.py::test_all_charms_running 
-------------------------------------------------- live log setup --------------------------------------------------
INFO     pytest_operator.plugin:plugin.py:597 Adding model microk8s-localhost:test-kubectl-dv4y on cloud microk8s
PASSED                                                                                                       [ 25%]
tests/test_kubectl.py::test_crd_created_lite 
-------------------------------------------------- live log call ---------------------------------------------------
INFO     sh.command:sh.py:642 <Command '/snap/bin/juju-kubectl get crd -oyaml', pid 353435>: process started
PASSED                                                                                                       [ 50%]
------------------------------------------------ live log teardown -------------------------------------------------
INFO     pytest_operator.plugin:plugin.py:740 Model status:

Model              Controller          Cloud/Region        Version  SLA          Timestamp
test-kubectl-dv4y  microk8s-localhost  microk8s/localhost  2.9.29   unsupported  10:55:12-05:00

INFO     pytest_operator.plugin:plugin.py:746 Juju error logs:

INFO     pytest_operator.plugin:plugin.py:832 Resetting model test-kubectl-dv4y...
INFO     pytest_operator.plugin:plugin.py:837 Not waiting on reset to complete.
INFO     pytest_operator.plugin:plugin.py:811 Forgetting main...

tests/test_pipelines.py::test_pipelines[cowsay-cowsay_pipeline] ERROR                                        [ 75%]
tests/test_selenium.py::test_login 
-------------------------------------------------- live log setup --------------------------------------------------
INFO     root:test_selenium.py:46 Executing driver fixture
INFO     root:test_selenium.py:60 Using juju = /snap/bin/juju
INFO     root:test_selenium.py:72 Using url = http://10.64.140.43.nip.io/
INFO     root:test_selenium.py:82 Using dex-auth username = mateo
INFO     root:test_selenium.py:83 Using dex-auth dex_password = (not shown)
INFO     seleniumwire.backend:backend.py:53 Created proxy listening on 127.0.0.1:35129
ERROR                                                                                                        [100%]

====================================================== ERRORS ======================================================
_____________________________ ERROR at setup of test_pipelines[cowsay-cowsay_pipeline] _____________________________
Traceback (most recent call last):
  File "/home/mateo/workspace/canonical/bundle-kubeflow/.tox/tests/lib/python3.9/site-packages/lightkube/config/kubeconfig.py", line 175, in from_service_account
    token = account_dir.joinpath("token").read_text()
  File "/home/mateo/.pyenv/versions/3.9.12/lib/python3.9/pathlib.py", line 1266, in read_text
    with self.open(mode='r', encoding=encoding, errors=errors) as f:
  File "/home/mateo/.pyenv/versions/3.9.12/lib/python3.9/pathlib.py", line 1252, in open
    return io.open(self, mode, buffering, encoding, errors, newline,
  File "/home/mateo/.pyenv/versions/3.9.12/lib/python3.9/pathlib.py", line 1120, in _opener
    return self._accessor.open(self, flags, mode)
FileNotFoundError: [Errno 2] No such file or directory: '/var/run/secrets/kubernetes.io/serviceaccount/token'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/mateo/workspace/canonical/bundle-kubeflow/.tox/tests/lib/python3.9/site-packages/lightkube/config/kubeconfig.py", line 210, in from_env
    return KubeConfig.from_service_account(service_account=service_account)
  File "/home/mateo/workspace/canonical/bundle-kubeflow/.tox/tests/lib/python3.9/site-packages/lightkube/config/kubeconfig.py", line 178, in from_service_account
    raise exceptions.ConfigError(str(e))
lightkube.core.exceptions.ConfigError: [Errno 2] No such file or directory: '/var/run/secrets/kubernetes.io/serviceaccount/token'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/mateo/workspace/canonical/bundle-kubeflow/tests/test_pipelines.py", line 50, in lightkube_client
    client = lightkube.Client()
  File "/home/mateo/workspace/canonical/bundle-kubeflow/.tox/tests/lib/python3.9/site-packages/lightkube/core/client.py", line 43, in __init__
    self._client = GenericSyncClient(config, namespace=namespace, timeout=timeout, lazy=lazy,
  File "/home/mateo/workspace/canonical/bundle-kubeflow/.tox/tests/lib/python3.9/site-packages/lightkube/core/generic_client.py", line 82, in __init__
    config = KubeConfig.from_env().get()
  File "/home/mateo/workspace/canonical/bundle-kubeflow/.tox/tests/lib/python3.9/site-packages/lightkube/config/kubeconfig.py", line 212, in from_env
    return KubeConfig.from_file(os.environ.get('KUBECONFIG', default_config))
  File "/home/mateo/workspace/canonical/bundle-kubeflow/.tox/tests/lib/python3.9/site-packages/lightkube/config/kubeconfig.py", line 142, in from_file
    raise exceptions.ConfigError(f"Configuration file {fname} not found")
lightkube.core.exceptions.ConfigError: Configuration file ~/.kube/config not found
___________________________________________ ERROR at setup of test_login ___________________________________________
Traceback (most recent call last):
  File "/home/mateo/workspace/canonical/bundle-kubeflow/.tox/tests/lib/python3.9/site-packages/selenium/webdriver/common/service.py", line 72, in start
    self.process = subprocess.Popen(cmd, env=self.env,
  File "/home/mateo/.pyenv/versions/3.9.12/lib/python3.9/subprocess.py", line 951, in __init__
    self._execute_child(args, executable, preexec_fn, close_fds,
  File "/home/mateo/.pyenv/versions/3.9.12/lib/python3.9/subprocess.py", line 1821, in _execute_child
    raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'geckodriver'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/mateo/workspace/canonical/bundle-kubeflow/tests/test_selenium.py", line 102, in driver
    with webdriver.Firefox(**kwargs) as driver:
  File "/home/mateo/workspace/canonical/bundle-kubeflow/.tox/tests/lib/python3.9/site-packages/seleniumwire/webdriver.py", line 75, in __init__
    super().__init__(*args, **kwargs)
  File "/home/mateo/workspace/canonical/bundle-kubeflow/.tox/tests/lib/python3.9/site-packages/selenium/webdriver/firefox/webdriver.py", line 164, in __init__
    self.service.start()
  File "/home/mateo/workspace/canonical/bundle-kubeflow/.tox/tests/lib/python3.9/site-packages/selenium/webdriver/common/service.py", line 81, in start
    raise WebDriverException(
selenium.common.exceptions.WebDriverException: Message: 'geckodriver' executable needs to be in PATH. 

================================================= warnings summary =================================================
.tox/tests/lib/python3.9/site-packages/pytest_asyncio/plugin.py:191
  /home/mateo/workspace/canonical/bundle-kubeflow/.tox/tests/lib/python3.9/site-packages/pytest_asyncio/plugin.py:191: DeprecationWarning: The 'asyncio_mode' default value will change to 'strict' in future, please explicitly use 'asyncio_mode=strict' or 'asyncio_mode=auto' in pytest configuration file.
    config.issue_config_time_warning(LEGACY_MODE, stacklevel=2)

.tox/tests/lib/python3.9/site-packages/kfp/components/_python_op.py:268
  /home/mateo/workspace/canonical/bundle-kubeflow/.tox/tests/lib/python3.9/site-packages/kfp/components/_python_op.py:268: PendingDeprecationWarning: lib2to3 package is deprecated and may not be able to parse Python 3.10+
    from lib2to3 import fixer_base, refactor, fixer_util

-- Docs: https://docs.pytest.org/en/stable/warnings.html
============================================= short test summary info ==============================================
ERROR tests/test_pipelines.py::test_pipelines[cowsay-cowsay_pipeline] - lightkube.core.exceptions.ConfigError: Co...
ERROR tests/test_selenium.py::test_login - selenium.common.exceptions.WebDriverException: Message: 'geckodriver' ...
============================== 2 passed, 2 deselected, 2 warnings, 2 errors in 17.47s ==============================
ERROR: InvocationError for command /home/mateo/workspace/canonical/bundle-kubeflow/.tox/tests/bin/pytest -v --tb native --show-capture=no -m lite --username mateo --password password123 tests (exited with code 1)
_____________________________________________________ summary ______________________________________________________
ERROR:   tests: commands failed

I have tried to download the driver (also installing from cargo as stated in the project repo) and include it in the path. However, the error persists.

$ tox -e tests -- -m lite --username mateo --password password123
tests installed: absl-py==0.11.0,anyio==3.6.1,asttokens==2.0.5,attrs==21.4.0,backcall==0.2.0,bcrypt==3.2.2,blinker==1.4,cachetools==4.2.4,certifi==2021.10.8,cffi==1.15.0,charset-normalizer==2.0.12,click==7.1.2,cloudpickle==1.6.0,cryptography==37.0.2,decorator==5.1.1,Deprecated==1.2.13,docstring-parser==0.14.1,executing==0.8.3,fire==0.4.0,flaky==3.7.0,google-api-core==2.7.3,google-api-python-client==1.12.11,google-auth==1.35.0,google-auth-httplib2==0.1.0,google-cloud-core==2.3.0,google-cloud-storage==1.44.0,google-crc32c==1.3.0,google-resumable-media==2.3.2,googleapis-common-protos==1.56.1,h11==0.12.0,h2==4.1.0,hpack==4.0.0,httpcore==0.14.7,httplib2==0.20.4,httpx==0.22.0,hyperframe==6.0.1,idna==3.3,iniconfig==1.1.1,ipdb==0.13.9,ipython==8.3.0,jedi==0.18.1,Jinja2==3.1.2,jsonschema==3.2.0,juju==2.9.9,jujubundlelib==0.5.7,kaitaistruct==0.9,kfp==1.8.0,kfp-pipeline-spec==0.1.14,kfp-server-api==1.8.1,kubernetes==12.0.1,lightkube==0.10.2,lightkube-models==1.23.6.4,macaroonbakery==1.3.1,MarkupSafe==2.1.1,matplotlib-inline==0.1.3,mypy-extensions==0.4.3,oauthlib==3.2.0,packaging==21.3,paramiko==2.11.0,parso==0.8.3,pexpect==4.8.0,pickleshare==0.7.5,pluggy==0.13.1,prompt-toolkit==3.0.29,protobuf==3.20.1,ptyprocess==0.7.0,pure-eval==0.2.2,py==1.11.0,pyasn1==0.4.8,pyasn1-modules==0.2.8,pycparser==2.21,pydantic==1.9.0,Pygments==2.12.0,pymacaroons==0.13.0,PyNaCl==1.5.0,pyOpenSSL==22.0.0,pyparsing==3.0.9,pyRFC3339==1.1,pyrsistent==0.18.1,PySocks==1.7.1,pytest==6.2.3,pytest-asyncio==0.18.3,pytest-operator==0.19.1,python-dateutil==2.8.2,pytz==2022.1,PyYAML==5.3.1,requests==2.27.1,requests-oauthlib==1.3.1,requests-toolbelt==0.9.1,rfc3986==1.5.0,rsa==4.8,selenium==3.141.0,selenium-wire==4.3.1,sh==1.14.1,six==1.16.0,sniffio==1.2.0,stack-data==0.2.0,strip-hints==0.1.10,tabulate==0.8.9,termcolor==1.1.0,theblues==0.5.2,toml==0.10.2,toposort==1.7,traitlets==5.2.1.post0,typing-inspect==0.7.1,typing_extensions==4.2.0,uritemplate==3.0.1,urllib3==1.26.9,wcwidth==0.2.5,websocket-client==1.3.2,websockets==8.1,wrapt==1.14.1,wsproto==1.1.0
tests run-test-pre: PYTHONHASHSEED='3772527673'
tests run-test: commands[0] | pytest -v --tb native --show-capture=no -m lite --username mateo --password password123 /home/mateo/workspace/canonical/bundle-kubeflow/tests/
=============================================== test session starts ================================================
platform linux -- Python 3.9.12, pytest-6.2.3, py-1.11.0, pluggy-0.13.1 -- /home/mateo/workspace/canonical/bundle-kubeflow/.tox/tests/bin/python
cachedir: .tox/tests/.pytest_cache
rootdir: /home/mateo/workspace/canonical/bundle-kubeflow, configfile: pytest.ini
plugins: operator-0.19.1, anyio-3.6.1, asyncio-0.18.3, flaky-3.7.0
asyncio: mode=legacy
collected 6 items / 2 deselected / 4 selected                                                                      

tests/test_kubectl.py::test_all_charms_running 
-------------------------------------------------- live log setup --------------------------------------------------
INFO     pytest_operator.plugin:plugin.py:597 Adding model microk8s-localhost:test-kubectl-yrim on cloud microk8s
PASSED                                                                                                       [ 25%]
tests/test_kubectl.py::test_crd_created_lite 
-------------------------------------------------- live log call ---------------------------------------------------
INFO     sh.command:sh.py:642 <Command '/snap/bin/juju-kubectl get crd -oyaml', pid 380412>: process started
PASSED                                                                                                       [ 50%]
------------------------------------------------ live log teardown -------------------------------------------------
INFO     pytest_operator.plugin:plugin.py:740 Model status:

Model              Controller          Cloud/Region        Version  SLA          Timestamp
test-kubectl-yrim  microk8s-localhost  microk8s/localhost  2.9.29   unsupported  11:01:31-05:00

INFO     pytest_operator.plugin:plugin.py:746 Juju error logs:

INFO     pytest_operator.plugin:plugin.py:832 Resetting model test-kubectl-yrim...
INFO     pytest_operator.plugin:plugin.py:837 Not waiting on reset to complete.
INFO     pytest_operator.plugin:plugin.py:811 Forgetting main...

tests/test_pipelines.py::test_pipelines[cowsay-cowsay_pipeline] ERROR                                        [ 75%]
tests/test_selenium.py::test_login 
-------------------------------------------------- live log setup --------------------------------------------------
INFO     root:test_selenium.py:46 Executing driver fixture
INFO     root:test_selenium.py:60 Using juju = /snap/bin/juju
INFO     root:test_selenium.py:72 Using url = http://10.64.140.43.nip.io/
INFO     root:test_selenium.py:82 Using dex-auth username = mateo
INFO     root:test_selenium.py:83 Using dex-auth dex_password = (not shown)
INFO     seleniumwire.backend:backend.py:53 Created proxy listening on 127.0.0.1:45411
ERROR                                                                                                        [100%]

====================================================== ERRORS ======================================================
_____________________________ ERROR at setup of test_pipelines[cowsay-cowsay_pipeline] _____________________________
Traceback (most recent call last):
  File "/home/mateo/workspace/canonical/bundle-kubeflow/.tox/tests/lib/python3.9/site-packages/lightkube/config/kubeconfig.py", line 175, in from_service_account
    token = account_dir.joinpath("token").read_text()
  File "/home/mateo/.pyenv/versions/3.9.12/lib/python3.9/pathlib.py", line 1266, in read_text
    with self.open(mode='r', encoding=encoding, errors=errors) as f:
  File "/home/mateo/.pyenv/versions/3.9.12/lib/python3.9/pathlib.py", line 1252, in open
    return io.open(self, mode, buffering, encoding, errors, newline,
  File "/home/mateo/.pyenv/versions/3.9.12/lib/python3.9/pathlib.py", line 1120, in _opener
    return self._accessor.open(self, flags, mode)
FileNotFoundError: [Errno 2] No such file or directory: '/var/run/secrets/kubernetes.io/serviceaccount/token'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/mateo/workspace/canonical/bundle-kubeflow/.tox/tests/lib/python3.9/site-packages/lightkube/config/kubeconfig.py", line 210, in from_env
    return KubeConfig.from_service_account(service_account=service_account)
  File "/home/mateo/workspace/canonical/bundle-kubeflow/.tox/tests/lib/python3.9/site-packages/lightkube/config/kubeconfig.py", line 178, in from_service_account
    raise exceptions.ConfigError(str(e))
lightkube.core.exceptions.ConfigError: [Errno 2] No such file or directory: '/var/run/secrets/kubernetes.io/serviceaccount/token'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/mateo/workspace/canonical/bundle-kubeflow/tests/test_pipelines.py", line 50, in lightkube_client
    client = lightkube.Client()
  File "/home/mateo/workspace/canonical/bundle-kubeflow/.tox/tests/lib/python3.9/site-packages/lightkube/core/client.py", line 43, in __init__
    self._client = GenericSyncClient(config, namespace=namespace, timeout=timeout, lazy=lazy,
  File "/home/mateo/workspace/canonical/bundle-kubeflow/.tox/tests/lib/python3.9/site-packages/lightkube/core/generic_client.py", line 82, in __init__
    config = KubeConfig.from_env().get()
  File "/home/mateo/workspace/canonical/bundle-kubeflow/.tox/tests/lib/python3.9/site-packages/lightkube/config/kubeconfig.py", line 212, in from_env
    return KubeConfig.from_file(os.environ.get('KUBECONFIG', default_config))
  File "/home/mateo/workspace/canonical/bundle-kubeflow/.tox/tests/lib/python3.9/site-packages/lightkube/config/kubeconfig.py", line 142, in from_file
    raise exceptions.ConfigError(f"Configuration file {fname} not found")
lightkube.core.exceptions.ConfigError: Configuration file ~/.kube/config not found
___________________________________________ ERROR at setup of test_login ___________________________________________
Traceback (most recent call last):
  File "/home/mateo/workspace/canonical/bundle-kubeflow/tests/test_selenium.py", line 102, in driver
    with webdriver.Firefox(**kwargs) as driver:
  File "/home/mateo/workspace/canonical/bundle-kubeflow/.tox/tests/lib/python3.9/site-packages/seleniumwire/webdriver.py", line 75, in __init__
    super().__init__(*args, **kwargs)
  File "/home/mateo/workspace/canonical/bundle-kubeflow/.tox/tests/lib/python3.9/site-packages/selenium/webdriver/firefox/webdriver.py", line 170, in __init__
    RemoteWebDriver.__init__(
  File "/home/mateo/workspace/canonical/bundle-kubeflow/.tox/tests/lib/python3.9/site-packages/selenium/webdriver/remote/webdriver.py", line 157, in __init__
    self.start_session(capabilities, browser_profile)
  File "/home/mateo/workspace/canonical/bundle-kubeflow/.tox/tests/lib/python3.9/site-packages/selenium/webdriver/remote/webdriver.py", line 252, in start_session
    response = self.execute(Command.NEW_SESSION, parameters)
  File "/home/mateo/workspace/canonical/bundle-kubeflow/.tox/tests/lib/python3.9/site-packages/selenium/webdriver/remote/webdriver.py", line 321, in execute
    self.error_handler.check_response(response)
  File "/home/mateo/workspace/canonical/bundle-kubeflow/.tox/tests/lib/python3.9/site-packages/selenium/webdriver/remote/errorhandler.py", line 242, in check_response
    raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.TimeoutException: Message: Failed to read marionette port

================================================= warnings summary =================================================
.tox/tests/lib/python3.9/site-packages/pytest_asyncio/plugin.py:191
  /home/mateo/workspace/canonical/bundle-kubeflow/.tox/tests/lib/python3.9/site-packages/pytest_asyncio/plugin.py:191: DeprecationWarning: The 'asyncio_mode' default value will change to 'strict' in future, please explicitly use 'asyncio_mode=strict' or 'asyncio_mode=auto' in pytest configuration file.
    config.issue_config_time_warning(LEGACY_MODE, stacklevel=2)

.tox/tests/lib/python3.9/site-packages/kfp/components/_python_op.py:268
  /home/mateo/workspace/canonical/bundle-kubeflow/.tox/tests/lib/python3.9/site-packages/kfp/components/_python_op.py:268: PendingDeprecationWarning: lib2to3 package is deprecated and may not be able to parse Python 3.10+
    from lib2to3 import fixer_base, refactor, fixer_util

-- Docs: https://docs.pytest.org/en/stable/warnings.html
============================================= short test summary info ==============================================
ERROR tests/test_pipelines.py::test_pipelines[cowsay-cowsay_pipeline] - lightkube.core.exceptions.ConfigError: Co...
ERROR tests/test_selenium.py::test_login - selenium.common.exceptions.TimeoutException: Message: Failed to read m...
======================== 2 passed, 2 deselected, 2 warnings, 2 errors in 151.86s (0:02:31) =========================
ERROR: InvocationError for command /home/mateo/workspace/canonical/bundle-kubeflow/.tox/tests/bin/pytest -v --tb native --show-capture=no -m lite --username mateo --password password123 tests (exited with code 1)
_____________________________________________________ summary ______________________________________________________
ERROR:   tests: commands failed
christianhans commented 2 years ago

Have you already tried

% mkdir $HOME/tmp
% TMPDIR=$HOME/tmp geckodriver

?

See also https://github.com/mozilla/geckodriver/releases/tag/v0.31.0

Caiuaeoreo commented 2 years ago

did you manage to fix it? I have same problem.. ex: selenium.common.exceptions.TimeoutException: Message: Failed to read marionette port

FighterFish171 commented 2 years ago

I also have the same problem.

mateoflorido commented 2 years ago

The workaround I have used is to change the test browser driver from Firefox to Chrome/Chromium, these work without any problems.

KarlHammar commented 2 years ago

Had the same problem, I removed the snap package an installed firefox from external repositories as a workaround.

inrese commented 2 years ago

same problem