From e5ead094e18cd4a5a9a22b69a42e687f43ee8a8b Mon Sep 17 00:00:00 2001 From: Thomas Petazzoni Date: Fri, 7 Jan 2022 10:18:01 +0100 Subject: [PATCH] support/testing/tests: switch python-cryptography related tests to glibc In a follow-up commit, we are about to bump python-cryptography to a new version, which has the interesting charateristic of using Rust code. This means python-cryptography will now only be available on platforms supported by Rust, which for now excludes uclibc-based configurations (none of the Rust Tier1/Tier2 platforms use uClibc, there is some uClibc support in Tier3 platforms but they have not been added to Buildroot for now). So in preparation for this bump, we switch the few test cases of Python packages that directly or indirectly use python-cryptography to use a glibc toolchain. Another impacted test case is the docker-compose test case, but it already uses a glibc toolchain; Signed-off-by: Thomas Petazzoni --- support/testing/tests/package/test_python_autobahn.py | 10 +++++++++- support/testing/tests/package/test_python_crossbar.py | 10 +++++++++- .../testing/tests/package/test_python_cryptography.py | 10 +++++++++- .../tests/package/test_python_service_identity.py | 10 +++++++++- support/testing/tests/package/test_python_treq.py | 10 +++++++++- support/testing/tests/package/test_python_txtorcon.py | 10 +++++++++- 6 files changed, 54 insertions(+), 6 deletions(-) diff --git a/support/testing/tests/package/test_python_autobahn.py b/support/testing/tests/package/test_python_autobahn.py index a237ce465d..6c1678a615 100644 --- a/support/testing/tests/package/test_python_autobahn.py +++ b/support/testing/tests/package/test_python_autobahn.py @@ -3,9 +3,17 @@ from tests.package.test_python import TestPythonPackageBase class TestPythonPy3Autobahn(TestPythonPackageBase): __test__ = True - config = TestPythonPackageBase.config + \ + # Need to use a different toolchain than the default due to + # python-cryptography using Rust (not available with uclibc) + config = \ """ + BR2_arm=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y + BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_GLIBC_STABLE=y BR2_PACKAGE_PYTHON3=y BR2_PACKAGE_PYTHON_AUTOBAHN=y + BR2_TARGET_ROOTFS_CPIO=y + # BR2_TARGET_ROOTFS_TAR is not set """ sample_scripts = ["tests/package/sample_python_autobahn.py"] diff --git a/support/testing/tests/package/test_python_crossbar.py b/support/testing/tests/package/test_python_crossbar.py index d7843ddd8b..83649aeec2 100644 --- a/support/testing/tests/package/test_python_crossbar.py +++ b/support/testing/tests/package/test_python_crossbar.py @@ -3,10 +3,18 @@ from tests.package.test_python import TestPythonPackageBase class TestPythonPy3Crossbar(TestPythonPackageBase): __test__ = True - config = TestPythonPackageBase.config + \ + # Need to use a different toolchain than the default due to + # python-cryptography using Rust (not available with uclibc) + config = \ """ + BR2_arm=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y + BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_GLIBC_STABLE=y BR2_PACKAGE_PYTHON3=y BR2_PACKAGE_PYTHON_CROSSBAR=y + BR2_TARGET_ROOTFS_CPIO=y + # BR2_TARGET_ROOTFS_TAR is not set """ sample_scripts = ["tests/package/sample_python_crossbar.py"] timeout = 60 diff --git a/support/testing/tests/package/test_python_cryptography.py b/support/testing/tests/package/test_python_cryptography.py index 62f0ca0def..bf11c02e5c 100644 --- a/support/testing/tests/package/test_python_cryptography.py +++ b/support/testing/tests/package/test_python_cryptography.py @@ -3,10 +3,18 @@ from tests.package.test_python import TestPythonPackageBase class TestPythonPy3Cryptography(TestPythonPackageBase): __test__ = True - config = TestPythonPackageBase.config + \ + # Need to use a different toolchain than the default due to + # python-cryptography using Rust (not available with uclibc) + config = \ """ + BR2_arm=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y + BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_GLIBC_STABLE=y BR2_PACKAGE_PYTHON3=y BR2_PACKAGE_PYTHON_CRYPTOGRAPHY=y + BR2_TARGET_ROOTFS_CPIO=y + # BR2_TARGET_ROOTFS_TAR is not set """ sample_scripts = ["tests/package/sample_python_cryptography.py"] timeout = 40 diff --git a/support/testing/tests/package/test_python_service_identity.py b/support/testing/tests/package/test_python_service_identity.py index 09cfbe0a26..dbad5f931f 100644 --- a/support/testing/tests/package/test_python_service_identity.py +++ b/support/testing/tests/package/test_python_service_identity.py @@ -3,10 +3,18 @@ from tests.package.test_python import TestPythonPackageBase class TestPythonPy3ServiceIdentity(TestPythonPackageBase): __test__ = True - config = TestPythonPackageBase.config + \ + # Need to use a different toolchain than the default due to + # python-cryptography using Rust (not available with uclibc) + config = \ """ + BR2_arm=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y + BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_GLIBC_STABLE=y BR2_PACKAGE_PYTHON3=y BR2_PACKAGE_PYTHON_SERVICE_IDENTITY=y + BR2_TARGET_ROOTFS_CPIO=y + # BR2_TARGET_ROOTFS_TAR is not set """ sample_scripts = ["tests/package/sample_python_service_identity.py"] timeout = 30 diff --git a/support/testing/tests/package/test_python_treq.py b/support/testing/tests/package/test_python_treq.py index 307c9932b2..515f1ea304 100644 --- a/support/testing/tests/package/test_python_treq.py +++ b/support/testing/tests/package/test_python_treq.py @@ -14,8 +14,16 @@ class TestPythonTreq(TestPythonPackageBase): class TestPythonPy3Treq(TestPythonTreq): __test__ = True - config = TestPythonTreq.config + \ + # Need to use a different toolchain than the default due to + # python-cryptography using Rust (not available with uclibc) + config = \ """ + BR2_arm=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y + BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_GLIBC_STABLE=y BR2_PACKAGE_PYTHON3=y BR2_PACKAGE_PYTHON_TREQ=y + BR2_TARGET_ROOTFS_CPIO=y + # BR2_TARGET_ROOTFS_TAR is not set """ diff --git a/support/testing/tests/package/test_python_txtorcon.py b/support/testing/tests/package/test_python_txtorcon.py index 8e74190ee1..6f0c4ca1ed 100644 --- a/support/testing/tests/package/test_python_txtorcon.py +++ b/support/testing/tests/package/test_python_txtorcon.py @@ -3,10 +3,18 @@ from tests.package.test_python import TestPythonPackageBase class TestPythonPy3Txtorcon(TestPythonPackageBase): __test__ = True - config = TestPythonPackageBase.config + \ + # Need to use a different toolchain than the default due to + # python-cryptography using Rust (not available with uclibc) + config = \ """ + BR2_arm=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y + BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV5_EABI_GLIBC_STABLE=y BR2_PACKAGE_PYTHON3=y BR2_PACKAGE_PYTHON_TXTORCON=y + BR2_TARGET_ROOTFS_CPIO=y + # BR2_TARGET_ROOTFS_TAR is not set """ sample_scripts = ["tests/package/sample_python_txtorcon.py"] timeout = 30