Bug #72500
openragweed: ModuleNotFoundError: No module named 'boto.vendored.six.moves' on ubuntu 24.04/python3.12
0%
Description
2025-07-30T21:21:59.640 INFO:teuthology.orchestra.run.smithi064.stdout:py: commands[0]> python -m pytest -v -m 'not fails_on_rgw' 2025-07-30T21:22:00.003 INFO:teuthology.orchestra.run.smithi064.stdout:============================= test session starts ============================== 2025-07-30T21:22:00.003 INFO:teuthology.orchestra.run.smithi064.stdout:platform linux -- Python 3.12.3, pytest-7.4.4, pluggy-1.4.0 -- /home/ubuntu/cephtest/ragweed.client.0/.tox/py/bin/python 2025-07-30T21:22:00.003 INFO:teuthology.orchestra.run.smithi064.stdout:cachedir: .tox/py/.pytest_cache 2025-07-30T21:22:00.003 INFO:teuthology.orchestra.run.smithi064.stdout:rootdir: /home/ubuntu/cephtest/ragweed.client.0 2025-07-30T21:22:00.003 INFO:teuthology.orchestra.run.smithi064.stdout:configfile: pytest.ini 2025-07-30T21:22:00.151 INFO:teuthology.orchestra.run.smithi064.stdout:collecting ... collected 0 items / 1 error 2025-07-30T21:22:00.151 INFO:teuthology.orchestra.run.smithi064.stdout: 2025-07-30T21:22:00.151 INFO:teuthology.orchestra.run.smithi064.stdout:==================================== ERRORS ==================================== 2025-07-30T21:22:00.151 INFO:teuthology.orchestra.run.smithi064.stdout:___________________ ERROR collecting ragweed/tests/tests.py ____________________ 2025-07-30T21:22:00.151 INFO:teuthology.orchestra.run.smithi064.stdout:ImportError while importing test module '/home/ubuntu/cephtest/ragweed.client.0/ragweed/tests/tests.py'. 2025-07-30T21:22:00.152 INFO:teuthology.orchestra.run.smithi064.stdout:Hint: make sure your test modules/packages have valid Python names. 2025-07-30T21:22:00.152 INFO:teuthology.orchestra.run.smithi064.stdout:Traceback: 2025-07-30T21:22:00.152 INFO:teuthology.orchestra.run.smithi064.stdout:/usr/lib/python3.12/importlib/__init__.py:90: in import_module 2025-07-30T21:22:00.152 INFO:teuthology.orchestra.run.smithi064.stdout: return _bootstrap._gcd_import(name[level:], package, level) 2025-07-30T21:22:00.152 INFO:teuthology.orchestra.run.smithi064.stdout:ragweed/tests/tests.py:2: in <module> 2025-07-30T21:22:00.152 INFO:teuthology.orchestra.run.smithi064.stdout: import ragweed.framework 2025-07-30T21:22:00.152 INFO:teuthology.orchestra.run.smithi064.stdout:ragweed/framework.py:3: in <module> 2025-07-30T21:22:00.152 INFO:teuthology.orchestra.run.smithi064.stdout: import boto 2025-07-30T21:22:00.153 INFO:teuthology.orchestra.run.smithi064.stdout:.tox/py/lib/python3.12/site-packages/boto/__init__.py:27: in <module> 2025-07-30T21:22:00.153 INFO:teuthology.orchestra.run.smithi064.stdout: from boto.pyami.config import Config, BotoConfigLocations 2025-07-30T21:22:00.153 INFO:teuthology.orchestra.run.smithi064.stdout:.tox/py/lib/python3.12/site-packages/boto/pyami/config.py:29: in <module> 2025-07-30T21:22:00.153 INFO:teuthology.orchestra.run.smithi064.stdout: from boto.compat import expanduser, ConfigParser, NoOptionError, NoSectionError, StringIO 2025-07-30T21:22:00.153 INFO:teuthology.orchestra.run.smithi064.stdout:.tox/py/lib/python3.12/site-packages/boto/compat.py:52: in <module> 2025-07-30T21:22:00.153 INFO:teuthology.orchestra.run.smithi064.stdout: from boto.vendored.six.moves import filter, http_client, map, _thread, \ 2025-07-30T21:22:00.153 INFO:teuthology.orchestra.run.smithi064.stdout:E ModuleNotFoundError: No module named 'boto.vendored.six.moves' 2025-07-30T21:22:00.153 INFO:teuthology.orchestra.run.smithi064.stdout:=========================== short test summary info ============================ 2025-07-30T21:22:00.153 INFO:teuthology.orchestra.run.smithi064.stdout:ERROR ragweed/tests/tests.py 2025-07-30T21:22:00.153 INFO:teuthology.orchestra.run.smithi064.stdout:!!!!!!!!!!!!!!!!!!!! Interrupted: 1 error during collection !!!!!!!!!!!!!!!!!!!! 2025-07-30T21:22:00.153 INFO:teuthology.orchestra.run.smithi064.stdout:=============================== 1 error in 0.15s =============================== 2025-07-30T21:22:00.180 INFO:teuthology.orchestra.run.smithi064.stdout:py: exit 2 (0.54 seconds) /home/ubuntu/cephtest/ragweed.client.0> python -m pytest -v -m 'not fails_on_rgw' pid=42969 2025-07-30T21:22:00.182 INFO:teuthology.orchestra.run.smithi064.stdout: py: FAIL code 2 (10.50=setup[9.96]+cmd[0.54] seconds) 2025-07-30T21:22:00.182 INFO:teuthology.orchestra.run.smithi064.stdout: evaluation failed :( (10.57 seconds)
this will block https://github.com/ceph/ceph/pull/63912 which adds ubuntu 24 testing to teuthology
Updated by Mark Kogan 9 months ago
quick update - reproduced locally in a ubuntu podman container -
in ubuntu 24.04 the default python version was bumped to 3.12 under which the current boto version is no longer supported (only boto3 is supported)
for discussion in the bug-scrub - from the looks of it lets please discus few options to move forward:
1. refactor ragweed to use boto3
- OR -
2. install python 3.11 on ubuntu 24.04:
example would look something like:
podman run -it --rm --net=host --name=ubu2404 ubuntu:24.04
apt update
apt install -y python3 python3-pip tox
apt install -y virtualenv python3-virtualenv
apt install -y git sudo vim
sudo apt install -y software-properties-common
sudo add-apt-repository ppa:deadsnakes/ppa -y
sudo apt install -y python3.11 python3.11-venv python3.11-dev
root@silvertip:/# python3.11 --version
Python 3.11.13
cd ~
git clone -b ceph-master --progress https://github.com/ceph/ragweed
cd ragweed
vim ./tox.ini
[tox]
envlist = py
[testenv]
deps = -rrequirements.txt
passenv =
PYTHONPATH
RAGWEED_CONF
RAGWEED_STAGES
commands = python -m pytest {posargs}
basepython = python3.11 # <---
:x
tox
...
Updated by Casey Bodley 8 months ago
- Subject changed from ragweed: ModuleNotFoundError: No module named 'boto.vendored.six.moves' on ubuntu 24.04 to ragweed/s3tests: ModuleNotFoundError: No module named 'boto.vendored.six.moves' on ubuntu 24.04
i rescheduled a ubuntu 24.04 job with the ragweed task removed to work around this, but saw s3-tests fail in exactly the same way: from https://qa-proxy.ceph.com/teuthology/cbodley-2025-08-21_18:10:17-rgw-main-distro-default-smithi/8456905/teuthology.log
2025-08-21T18:28:35.335 DEBUG:teuthology.orchestra.run.smithi177:s3 tests against rgw> source /home/ubuntu/cephtest/tox-venv/bin/activate && cd /home/ubuntu/cephtest/s3-tests-client.0 && S3TEST_CONF=/home/ubuntu/cephtest/archive/s3-tests.client.0.conf BOTO_CONFIG=/home/ubuntu/cephtest/boto-client.0.cfg REQUESTS_CA_BUNDLE=/etc/ssl/certs/ca-certificates.crt tox -- -v -m 'not fails_on_rgw and not lifecycle_expiration and not lifecycle_transition and not cloud_transition and not test_of_sts and not webidentity_test and not fails_with_subdomain and not sse_s3 and bucket_logging'
2025-08-21T18:28:35.937 INFO:teuthology.orchestra.run.smithi177.stdout:py: install_deps> python -I -m pip install -r requirements.txt
2025-08-21T18:28:55.215 INFO:teuthology.orchestra.run.smithi177.stdout:.pkg: install_requires> python -I -m pip install 'setuptools>=40.8.0'
2025-08-21T18:28:57.061 INFO:teuthology.orchestra.run.smithi177.stdout:.pkg: _optional_hooks> python /home/ubuntu/cephtest/tox-venv/lib/python3.12/site-packages/pyproject_api/_backend.py True setuptools.build_meta __legacy__
2025-08-21T18:28:57.227 INFO:teuthology.orchestra.run.smithi177.stdout:.pkg: get_requires_for_build_sdist> python /home/ubuntu/cephtest/tox-venv/lib/python3.12/site-packages/pyproject_api/_backend.py True setuptools.build_meta __legacy__
2025-08-21T18:28:57.420 INFO:teuthology.orchestra.run.smithi177.stdout:.pkg: get_requires_for_build_wheel> python /home/ubuntu/cephtest/tox-venv/lib/python3.12/site-packages/pyproject_api/_backend.py True setuptools.build_meta __legacy__
2025-08-21T18:28:57.637 INFO:teuthology.orchestra.run.smithi177.stdout:.pkg: prepare_metadata_for_build_wheel> python /home/ubuntu/cephtest/tox-venv/lib/python3.12/site-packages/pyproject_api/_backend.py True setuptools.build_meta __legacy__
2025-08-21T18:28:57.853 INFO:teuthology.orchestra.run.smithi177.stdout:.pkg: build_sdist> python /home/ubuntu/cephtest/tox-venv/lib/python3.12/site-packages/pyproject_api/_backend.py True setuptools.build_meta __legacy__
2025-08-21T18:28:58.117 INFO:teuthology.orchestra.run.smithi177.stdout:py: install_package_deps> python -I -m pip install PyYAML 'boto3>=1.0.0' 'boto>=2.0b4' 'gevent>=1.0' 'isodate>=0.4.4' 'munch>=2.0.0'
2025-08-21T18:28:58.580 INFO:teuthology.orchestra.run.smithi177.stdout:py: install_package> python -I -m pip install --force-reinstall --no-deps /home/ubuntu/cephtest/s3-tests-client.0/.tox/.tmp/package/1/s3tests-0.0.1.tar.gz
2025-08-21T18:29:01.108 INFO:teuthology.orchestra.run.smithi177.stdout:py: commands[0]> pytest -v -m 'not fails_on_rgw and not lifecycle_expiration and not lifecycle_transition and not cloud_transition and not test_of_sts and not webidentity_test and not fails_with_subdomain and not sse_s3 and bucket_logging'
2025-08-21T18:29:01.402 INFO:teuthology.orchestra.run.smithi177.stdout:============================= test session starts ==============================
2025-08-21T18:29:01.402 INFO:teuthology.orchestra.run.smithi177.stdout:platform linux -- Python 3.12.3, pytest-8.4.1, pluggy-1.6.0 -- /home/ubuntu/cephtest/s3-tests-client.0/.tox/py/bin/python
2025-08-21T18:29:01.402 INFO:teuthology.orchestra.run.smithi177.stdout:cachedir: .tox/py/.pytest_cache
2025-08-21T18:29:01.402 INFO:teuthology.orchestra.run.smithi177.stdout:rootdir: /home/ubuntu/cephtest/s3-tests-client.0
2025-08-21T18:29:01.402 INFO:teuthology.orchestra.run.smithi177.stdout:configfile: pytest.ini
2025-08-21T18:29:03.874 INFO:teuthology.orchestra.run.smithi177.stdout:collecting ... collected 922 items / 4 errors / 832 deselected / 90 selected
2025-08-21T18:29:03.874 INFO:teuthology.orchestra.run.smithi177.stdout:
2025-08-21T18:29:03.874 INFO:teuthology.orchestra.run.smithi177.stdout:==================================== ERRORS ====================================
2025-08-21T18:29:03.874 INFO:teuthology.orchestra.run.smithi177.stdout:_____________ ERROR collecting s3tests/functional/test_headers.py ______________
2025-08-21T18:29:03.874 INFO:teuthology.orchestra.run.smithi177.stdout:ImportError while importing test module '/home/ubuntu/cephtest/s3-tests-client.0/s3tests/functional/test_headers.py'.
2025-08-21T18:29:03.874 INFO:teuthology.orchestra.run.smithi177.stdout:Hint: make sure your test modules/packages have valid Python names.
2025-08-21T18:29:03.875 INFO:teuthology.orchestra.run.smithi177.stdout:Traceback:
2025-08-21T18:29:03.875 INFO:teuthology.orchestra.run.smithi177.stdout:/usr/lib/python3.12/importlib/__init__.py:90: in import_module
2025-08-21T18:29:03.875 INFO:teuthology.orchestra.run.smithi177.stdout: return _bootstrap._gcd_import(name[level:], package, level)
2025-08-21T18:29:03.875 INFO:teuthology.orchestra.run.smithi177.stdout: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
2025-08-21T18:29:03.875 INFO:teuthology.orchestra.run.smithi177.stdout:s3tests/functional/__init__.py:3: in <module>
2025-08-21T18:29:03.875 INFO:teuthology.orchestra.run.smithi177.stdout: import boto.exception
2025-08-21T18:29:03.875 INFO:teuthology.orchestra.run.smithi177.stdout:.tox/py/lib/python3.12/site-packages/boto/__init__.py:27: in <module>
2025-08-21T18:29:03.875 INFO:teuthology.orchestra.run.smithi177.stdout: from boto.pyami.config import Config, BotoConfigLocations
2025-08-21T18:29:03.875 INFO:teuthology.orchestra.run.smithi177.stdout:.tox/py/lib/python3.12/site-packages/boto/pyami/config.py:29: in <module>
2025-08-21T18:29:03.876 INFO:teuthology.orchestra.run.smithi177.stdout: from boto.compat import expanduser, ConfigParser, NoOptionError, NoSectionError, StringIO
2025-08-21T18:29:03.876 INFO:teuthology.orchestra.run.smithi177.stdout:.tox/py/lib/python3.12/site-packages/boto/compat.py:52: in <module>
2025-08-21T18:29:03.876 INFO:teuthology.orchestra.run.smithi177.stdout: from boto.vendored.six.moves import filter, http_client, map, _thread, \
2025-08-21T18:29:03.876 INFO:teuthology.orchestra.run.smithi177.stdout:E ModuleNotFoundError: No module named 'boto.vendored.six.moves'
2025-08-21T18:29:03.876 INFO:teuthology.orchestra.run.smithi177.stdout:________________ ERROR collecting s3tests/functional/test_s3.py ________________
2025-08-21T18:29:03.876 INFO:teuthology.orchestra.run.smithi177.stdout:ImportError while importing test module '/home/ubuntu/cephtest/s3-tests-client.0/s3tests/functional/test_s3.py'.
2025-08-21T18:29:03.876 INFO:teuthology.orchestra.run.smithi177.stdout:Hint: make sure your test modules/packages have valid Python names.
2025-08-21T18:29:03.876 INFO:teuthology.orchestra.run.smithi177.stdout:Traceback:
2025-08-21T18:29:03.877 INFO:teuthology.orchestra.run.smithi177.stdout:/usr/lib/python3.12/importlib/__init__.py:90: in import_module
2025-08-21T18:29:03.877 INFO:teuthology.orchestra.run.smithi177.stdout: return _bootstrap._gcd_import(name[level:], package, level)
2025-08-21T18:29:03.877 INFO:teuthology.orchestra.run.smithi177.stdout: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
2025-08-21T18:29:03.877 INFO:teuthology.orchestra.run.smithi177.stdout:s3tests/functional/__init__.py:3: in <module>
2025-08-21T18:29:03.877 INFO:teuthology.orchestra.run.smithi177.stdout: import boto.exception
2025-08-21T18:29:03.877 INFO:teuthology.orchestra.run.smithi177.stdout:.tox/py/lib/python3.12/site-packages/boto/__init__.py:27: in <module>
2025-08-21T18:29:03.877 INFO:teuthology.orchestra.run.smithi177.stdout: from boto.pyami.config import Config, BotoConfigLocations
2025-08-21T18:29:03.877 INFO:teuthology.orchestra.run.smithi177.stdout:.tox/py/lib/python3.12/site-packages/boto/pyami/config.py:29: in <module>
2025-08-21T18:29:03.877 INFO:teuthology.orchestra.run.smithi177.stdout: from boto.compat import expanduser, ConfigParser, NoOptionError, NoSectionError, StringIO
2025-08-21T18:29:03.877 INFO:teuthology.orchestra.run.smithi177.stdout:.tox/py/lib/python3.12/site-packages/boto/compat.py:52: in <module>
2025-08-21T18:29:03.878 INFO:teuthology.orchestra.run.smithi177.stdout: from boto.vendored.six.moves import filter, http_client, map, _thread, \
2025-08-21T18:29:03.878 INFO:teuthology.orchestra.run.smithi177.stdout:E ModuleNotFoundError: No module named 'boto.vendored.six.moves'
2025-08-21T18:29:03.878 INFO:teuthology.orchestra.run.smithi177.stdout:____________ ERROR collecting s3tests/functional/test_s3_website.py ____________
2025-08-21T18:29:03.878 INFO:teuthology.orchestra.run.smithi177.stdout:ImportError while importing test module '/home/ubuntu/cephtest/s3-tests-client.0/s3tests/functional/test_s3_website.py'.
2025-08-21T18:29:03.878 INFO:teuthology.orchestra.run.smithi177.stdout:Hint: make sure your test modules/packages have valid Python names.
2025-08-21T18:29:03.878 INFO:teuthology.orchestra.run.smithi177.stdout:Traceback:
2025-08-21T18:29:03.878 INFO:teuthology.orchestra.run.smithi177.stdout:/usr/lib/python3.12/importlib/__init__.py:90: in import_module
2025-08-21T18:29:03.878 INFO:teuthology.orchestra.run.smithi177.stdout: return _bootstrap._gcd_import(name[level:], package, level)
2025-08-21T18:29:03.878 INFO:teuthology.orchestra.run.smithi177.stdout: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
2025-08-21T18:29:03.878 INFO:teuthology.orchestra.run.smithi177.stdout:s3tests/functional/__init__.py:3: in <module>
2025-08-21T18:29:03.878 INFO:teuthology.orchestra.run.smithi177.stdout: import boto.exception
2025-08-21T18:29:03.879 INFO:teuthology.orchestra.run.smithi177.stdout:.tox/py/lib/python3.12/site-packages/boto/__init__.py:27: in <module>
2025-08-21T18:29:03.879 INFO:teuthology.orchestra.run.smithi177.stdout: from boto.pyami.config import Config, BotoConfigLocations
2025-08-21T18:29:03.879 INFO:teuthology.orchestra.run.smithi177.stdout:.tox/py/lib/python3.12/site-packages/boto/pyami/config.py:29: in <module>
2025-08-21T18:29:03.879 INFO:teuthology.orchestra.run.smithi177.stdout: from boto.compat import expanduser, ConfigParser, NoOptionError, NoSectionError, StringIO
2025-08-21T18:29:03.879 INFO:teuthology.orchestra.run.smithi177.stdout:.tox/py/lib/python3.12/site-packages/boto/compat.py:52: in <module>
2025-08-21T18:29:03.879 INFO:teuthology.orchestra.run.smithi177.stdout: from boto.vendored.six.moves import filter, http_client, map, _thread, \
2025-08-21T18:29:03.879 INFO:teuthology.orchestra.run.smithi177.stdout:E ModuleNotFoundError: No module named 'boto.vendored.six.moves'
2025-08-21T18:29:03.879 INFO:teuthology.orchestra.run.smithi177.stdout:______________ ERROR collecting s3tests/functional/test_utils.py _______________
2025-08-21T18:29:03.879 INFO:teuthology.orchestra.run.smithi177.stdout:ImportError while importing test module '/home/ubuntu/cephtest/s3-tests-client.0/s3tests/functional/test_utils.py'.
2025-08-21T18:29:03.879 INFO:teuthology.orchestra.run.smithi177.stdout:Hint: make sure your test modules/packages have valid Python names.
2025-08-21T18:29:03.879 INFO:teuthology.orchestra.run.smithi177.stdout:Traceback:
2025-08-21T18:29:03.879 INFO:teuthology.orchestra.run.smithi177.stdout:/usr/lib/python3.12/importlib/__init__.py:90: in import_module
2025-08-21T18:29:03.880 INFO:teuthology.orchestra.run.smithi177.stdout: return _bootstrap._gcd_import(name[level:], package, level)
2025-08-21T18:29:03.880 INFO:teuthology.orchestra.run.smithi177.stdout: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
2025-08-21T18:29:03.880 INFO:teuthology.orchestra.run.smithi177.stdout:s3tests/functional/__init__.py:3: in <module>
2025-08-21T18:29:03.880 INFO:teuthology.orchestra.run.smithi177.stdout: import boto.exception
2025-08-21T18:29:03.880 INFO:teuthology.orchestra.run.smithi177.stdout:.tox/py/lib/python3.12/site-packages/boto/__init__.py:27: in <module>
2025-08-21T18:29:03.880 INFO:teuthology.orchestra.run.smithi177.stdout: from boto.pyami.config import Config, BotoConfigLocations
2025-08-21T18:29:03.880 INFO:teuthology.orchestra.run.smithi177.stdout:.tox/py/lib/python3.12/site-packages/boto/pyami/config.py:29: in <module>
2025-08-21T18:29:03.880 INFO:teuthology.orchestra.run.smithi177.stdout: from boto.compat import expanduser, ConfigParser, NoOptionError, NoSectionError, StringIO
2025-08-21T18:29:03.880 INFO:teuthology.orchestra.run.smithi177.stdout:.tox/py/lib/python3.12/site-packages/boto/compat.py:52: in <module>
2025-08-21T18:29:03.880 INFO:teuthology.orchestra.run.smithi177.stdout: from boto.vendored.six.moves import filter, http_client, map, _thread, \
2025-08-21T18:29:03.881 INFO:teuthology.orchestra.run.smithi177.stdout:E ModuleNotFoundError: No module named 'boto.vendored.six.moves'
2025-08-21T18:29:03.881 INFO:teuthology.orchestra.run.smithi177.stdout:=============================== warnings summary ===============================
2025-08-21T18:29:03.881 INFO:teuthology.orchestra.run.smithi177.stdout:s3tests_boto3/functional/test_s3.py:2244
2025-08-21T18:29:03.881 INFO:teuthology.orchestra.run.smithi177.stdout: /home/ubuntu/cephtest/s3-tests-client.0/s3tests_boto3/functional/test_s3.py:2244: SyntaxWarning: invalid escape sequence '\$'
2025-08-21T18:29:03.881 INFO:teuthology.orchestra.run.smithi177.stdout: ["starts-with", "$key", "\$foo"],\
2025-08-21T18:29:03.881 INFO:teuthology.orchestra.run.smithi177.stdout:
2025-08-21T18:29:03.881 INFO:teuthology.orchestra.run.smithi177.stdout:s3tests_boto3/functional/test_s3.py:2259
2025-08-21T18:29:03.881 INFO:teuthology.orchestra.run.smithi177.stdout: /home/ubuntu/cephtest/s3-tests-client.0/s3tests_boto3/functional/test_s3.py:2259: SyntaxWarning: invalid escape sequence '\$'
2025-08-21T18:29:03.882 INFO:teuthology.orchestra.run.smithi177.stdout: payload = OrderedDict([ ("key" , "\$foo.txt"),("AWSAccessKeyId" , aws_access_key_id),\
2025-08-21T18:29:03.882 INFO:teuthology.orchestra.run.smithi177.stdout:
2025-08-21T18:29:03.882 INFO:teuthology.orchestra.run.smithi177.stdout:s3tests_boto3/functional/test_s3.py:2265
2025-08-21T18:29:03.882 INFO:teuthology.orchestra.run.smithi177.stdout: /home/ubuntu/cephtest/s3-tests-client.0/s3tests_boto3/functional/test_s3.py:2265: SyntaxWarning: invalid escape sequence '\$'
2025-08-21T18:29:03.882 INFO:teuthology.orchestra.run.smithi177.stdout: response = client.get_object(Bucket=bucket_name, Key='\$foo.txt')
2025-08-21T18:29:03.883 INFO:teuthology.orchestra.run.smithi177.stdout:
2025-08-21T18:29:03.883 INFO:teuthology.orchestra.run.smithi177.stdout:s3tests_boto3/functional/test_s3.py:2322
2025-08-21T18:29:03.883 INFO:teuthology.orchestra.run.smithi177.stdout: /home/ubuntu/cephtest/s3-tests-client.0/s3tests_boto3/functional/test_s3.py:2322: SyntaxWarning: invalid escape sequence '\$'
2025-08-21T18:29:03.883 INFO:teuthology.orchestra.run.smithi177.stdout: ["starts-with", "$key", "\$foo"],\
2025-08-21T18:29:03.883 INFO:teuthology.orchestra.run.smithi177.stdout:
2025-08-21T18:29:03.883 INFO:teuthology.orchestra.run.smithi177.stdout:s3tests_boto3/functional/test_s3.py:2337
2025-08-21T18:29:03.883 INFO:teuthology.orchestra.run.smithi177.stdout: /home/ubuntu/cephtest/s3-tests-client.0/s3tests_boto3/functional/test_s3.py:2337: SyntaxWarning: invalid escape sequence '\$'
2025-08-21T18:29:03.883 INFO:teuthology.orchestra.run.smithi177.stdout: payload = OrderedDict([ ("key" , "\$foo.txt"),("AWSAccessKeyId" , aws_access_key_id),\
2025-08-21T18:29:03.883 INFO:teuthology.orchestra.run.smithi177.stdout:
2025-08-21T18:29:03.884 INFO:teuthology.orchestra.run.smithi177.stdout:s3tests_boto3/functional/test_s3.py:2355
2025-08-21T18:29:03.884 INFO:teuthology.orchestra.run.smithi177.stdout: /home/ubuntu/cephtest/s3-tests-client.0/s3tests_boto3/functional/test_s3.py:2355: SyntaxWarning: invalid escape sequence '\$'
2025-08-21T18:29:03.884 INFO:teuthology.orchestra.run.smithi177.stdout: ["starts-with", "$key", "\$foo"],\
2025-08-21T18:29:03.884 INFO:teuthology.orchestra.run.smithi177.stdout:
2025-08-21T18:29:03.884 INFO:teuthology.orchestra.run.smithi177.stdout:s3tests_boto3/functional/test_s3.py:2370
2025-08-21T18:29:03.884 INFO:teuthology.orchestra.run.smithi177.stdout: /home/ubuntu/cephtest/s3-tests-client.0/s3tests_boto3/functional/test_s3.py:2370: SyntaxWarning: invalid escape sequence '\$'
2025-08-21T18:29:03.884 INFO:teuthology.orchestra.run.smithi177.stdout: payload = OrderedDict([ ("key" , "\$foo.txt"),("AWSAccessKeyId" , aws_access_key_id[::-1]),\
2025-08-21T18:29:03.884 INFO:teuthology.orchestra.run.smithi177.stdout:
2025-08-21T18:29:03.884 INFO:teuthology.orchestra.run.smithi177.stdout:s3tests_boto3/functional/test_s3.py:2388
2025-08-21T18:29:03.884 INFO:teuthology.orchestra.run.smithi177.stdout: /home/ubuntu/cephtest/s3-tests-client.0/s3tests_boto3/functional/test_s3.py:2388: SyntaxWarning: invalid escape sequence '\$'
2025-08-21T18:29:03.884 INFO:teuthology.orchestra.run.smithi177.stdout: ["starts-with", "$key", "\$foo"],\
2025-08-21T18:29:03.885 INFO:teuthology.orchestra.run.smithi177.stdout:
2025-08-21T18:29:03.885 INFO:teuthology.orchestra.run.smithi177.stdout:s3tests_boto3/functional/test_s3.py:2403
2025-08-21T18:29:03.885 INFO:teuthology.orchestra.run.smithi177.stdout: /home/ubuntu/cephtest/s3-tests-client.0/s3tests_boto3/functional/test_s3.py:2403: SyntaxWarning: invalid escape sequence '\$'
2025-08-21T18:29:03.885 INFO:teuthology.orchestra.run.smithi177.stdout: payload = OrderedDict([ ("key" , "\$foo.txt"),("AWSAccessKeyId" , aws_access_key_id),\
2025-08-21T18:29:03.885 INFO:teuthology.orchestra.run.smithi177.stdout:
2025-08-21T18:29:03.885 INFO:teuthology.orchestra.run.smithi177.stdout:s3tests_boto3/functional/test_s3.py:2453
2025-08-21T18:29:03.885 INFO:teuthology.orchestra.run.smithi177.stdout: /home/ubuntu/cephtest/s3-tests-client.0/s3tests_boto3/functional/test_s3.py:2453: SyntaxWarning: invalid escape sequence '\$'
2025-08-21T18:29:03.885 INFO:teuthology.orchestra.run.smithi177.stdout: ["starts-with", "$key", "\$foo"],\
2025-08-21T18:29:03.885 INFO:teuthology.orchestra.run.smithi177.stdout:
2025-08-21T18:29:03.885 INFO:teuthology.orchestra.run.smithi177.stdout:s3tests_boto3/functional/test_s3.py:2485
2025-08-21T18:29:03.886 INFO:teuthology.orchestra.run.smithi177.stdout: /home/ubuntu/cephtest/s3-tests-client.0/s3tests_boto3/functional/test_s3.py:2485: SyntaxWarning: invalid escape sequence '\$'
2025-08-21T18:29:03.886 INFO:teuthology.orchestra.run.smithi177.stdout: ["starts-with", "$key", "\$foo"],\
2025-08-21T18:29:03.886 INFO:teuthology.orchestra.run.smithi177.stdout:
2025-08-21T18:29:03.886 INFO:teuthology.orchestra.run.smithi177.stdout:-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
2025-08-21T18:29:03.886 INFO:teuthology.orchestra.run.smithi177.stdout:=========================== short test summary info ============================
2025-08-21T18:29:03.886 INFO:teuthology.orchestra.run.smithi177.stdout:ERROR s3tests/functional/test_headers.py
2025-08-21T18:29:03.886 INFO:teuthology.orchestra.run.smithi177.stdout:ERROR s3tests/functional/test_s3.py
2025-08-21T18:29:03.886 INFO:teuthology.orchestra.run.smithi177.stdout:ERROR s3tests/functional/test_s3_website.py
2025-08-21T18:29:03.886 INFO:teuthology.orchestra.run.smithi177.stdout:ERROR s3tests/functional/test_utils.py
2025-08-21T18:29:03.886 INFO:teuthology.orchestra.run.smithi177.stdout:!!!!!!!!!!!!!!!!!!! Interrupted: 4 errors during collection !!!!!!!!!!!!!!!!!!!!
2025-08-21T18:29:03.886 INFO:teuthology.orchestra.run.smithi177.stdout:================ 832 deselected, 11 warnings, 4 errors in 2.40s ================
Updated by Mark Kogan 8 months ago
reviewing work-in-progress branch/commit:
WIP branch: https://github.com/mkogan1/ragweed/commits/wip-ragweed-to-boto3/
-->
WIP commit: https://github.com/mkogan1/ragweed/commit/a4a005b9fc8a0bd922f91629614aa8430de89ab1
https://i.imgur.com/su0zwDF.png
❯ env RAGWEED_CONF=$(realpath ./ragweed.conf) RAGWEED_STAGES=prepare,check python3.12 -m tox -r -- -v py: remove tox env folder /mnt/osd--host/src-git/ragweed--mk/.tox/py .pkg: remove tox env folder /mnt/osd--host/src-git/ragweed--mk/.tox/.pkg py: install_deps> python -I -m pip install -r requirements.txt .pkg: install_requires> python -I -m pip install 'setuptools>=61.0' .pkg: _optional_hooks> python /home/mkogan/.local/lib/python3.12/site-packages/pyproject_api/_backend.py True setuptools.build_meta .pkg: get_requires_for_build_sdist> python /home/mkogan/.local/lib/python3.12/site-packages/pyproject_api/_backend.py True setuptools.build_meta .pkg: build_sdist> python /home/mkogan/.local/lib/python3.12/site-packages/pyproject_api/_backend.py True setuptools.build_meta py: install_package_deps> python -I -m pip install PyYAML boto3 gevent isodate munch py: install_package> python -I -m pip install --force-reinstall --no-deps /mnt/osd--host/src-git/ragweed--mk/.tox/.tmp/package/12/ragweed-0.0.1.tar.gz py: commands[0]> python -m pytest -v ======================================================================================= test session starts ======================================================================================= platform linux -- Python 3.12.8, pytest-8.4.1, pluggy-1.6.0 -- /mnt/osd--host/src-git/ragweed--mk/.tox/py/bin/python cachedir: .tox/py/.pytest_cache rootdir: /mnt/osd--host/src-git/ragweed--mk configfile: pytest.ini collected 9 items ragweed/tests/tests.py::r_test_small_obj_data::test PASSED [ 11%] ragweed/tests/tests.py::r_test_multipart_simple::test PASSED [ 22%] ragweed/tests/tests.py::r_test_multipart_index_versioning::test PASSED [ 33%] ragweed/tests/tests.py::r_test_multipart_defer_complete::test PASSED [ 44%] ragweed/tests/tests.py::r_test_multipart_defer_update_complete::test PASSED [ 55%] ragweed/tests/tests.py::r_test_obj_storage_class::test PASSED [ 66%] ragweed/tests/tests.py::r_test_obj_storage_class_multipart::test PASSED [ 77%] ragweed/tests/tests.py::r_test_obj_storage_class_copy::test PASSED [ 88%] ragweed/tests/tests.py::r_test_obj_storage_class_multipart_copy::test PASSED [100%] ======================================================================================== 9 passed in 8.30s ======================================================================================== py: OK (23.16=setup[14.44]+cmd[8.72] seconds) congratulations :) (23.21 seconds)
Updated by Casey Bodley 8 months ago
- Project changed from rgw to rgw-testing
- Subject changed from ragweed/s3tests: ModuleNotFoundError: No module named 'boto.vendored.six.moves' on ubuntu 24.04 to ragweed: ModuleNotFoundError: No module named 'boto.vendored.six.moves' on ubuntu 24.04/python3.12
- Status changed from New to In Progress
split the s3tests part out to https://tracker.ceph.com/issues/72876
Updated by Mark Kogan 6 months ago
there is a way to install python 3.11 on RHEL 10:
## https://github.com/pyenv/pyenv -- Simple Python Version Management: pyenv sudo dnf groupinstall "Development Tools" sudo dnf install openssl-devel bzip2-devel libffi-devel zlib-devel readline-devel # Install pyenv curl -fsSL https://pyenv.run | bash # Add to shell and restart terminal -- https://github.com/pyenv/pyenv?tab=readme-ov-file#zsh echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.zshrc echo '[[ -d $PYENV_ROOT/bin ]] && export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.zshrc echo 'eval "$(pyenv init - zsh)"' >> ~/.zshrc exec zsh # Build Python 3.11 pyenv install 3.11.11 # Enable Python 3.11 pyenv global 3.11.11 # Verify python --version # Should show 3.11.11 # Verify sudo sudo -E env "PATH=$PATH" python --version # Should show 3.11.11