python3.12/plan.fmf
Miro Hrončok dbde5b7165 CI: Install python3-devel specially to avoid a failure
The available python3-devel version is lower than what we already have as platform-python.

We are testing Python 3.12 here, so the exact version of Python 3.6 does not matter to us.

We also avoid a dependency on python3 and let the magic happen.

This avoids:

    Error:
     Problem 1: package python3-devel-3.6.8-59.el8.x86_64 from @System requires platform-python = 3.6.8-59.el8, but none of the providers can be installed
      - cannot install both platform-python-3.6.8-71.el8_10.x86_64 from rhel-BaseOS and platform-python-3.6.8-59.el8.x86_64 from @System
      - cannot install both platform-python-3.6.8-59.el8.x86_64 from rhel-buildroot and platform-python-3.6.8-71.el8_10.x86_64 from rhel-BaseOS
      - cannot install both platform-python-3.6.8-59.el8.x86_64 from testing-farm-tag-repository-mainline and platform-python-3.6.8-71.el8_10.x86_64 from rhel-BaseOS
      - cannot install the best update candidate for package python3-devel-3.6.8-59.el8.x86_64
      - cannot install the best update candidate for package platform-python-3.6.8-59.el8.x86_64
     Problem 2: problem with installed package python3-devel-3.6.8-59.el8.x86_64
      - package python3-devel-3.6.8-59.el8.x86_64 from @System requires platform-python-devel(x86-64) = 3.6.8-59.el8, but none of the providers can be installed
      - package python3-devel-3.6.8-59.el8.x86_64 from rhel-buildroot requires platform-python-devel(x86-64) = 3.6.8-59.el8, but none of the providers can be installed
      - package python3-devel-3.6.8-59.el8.x86_64 from testing-farm-tag-repository-mainline requires platform-python-devel(x86-64) = 3.6.8-59.el8, but none of the providers can be installed
      - package python3-devel-3.6.8-72.el8_10.x86_64 from testing-farm-tag-repository-z-stream requires platform-python-devel(x86-64) = 3.6.8-72.el8_10, but none of the providers can be installed
      - cannot install both platform-python-devel-3.6.8-71.el8_10.x86_64 from rhel-AppStream and platform-python-devel-3.6.8-59.el8.x86_64 from @System
      - cannot install both platform-python-devel-3.6.8-59.el8.x86_64 from rhel-buildroot and platform-python-devel-3.6.8-71.el8_10.x86_64 from rhel-AppStream
      - cannot install both platform-python-devel-3.6.8-59.el8.x86_64 from testing-farm-tag-repository-mainline and platform-python-devel-3.6.8-71.el8_10.x86_64 from rhel-AppStream
      - cannot install both platform-python-devel-3.6.8-72.el8_10.x86_64 from testing-farm-tag-repository-z-stream and platform-python-devel-3.6.8-71.el8_10.x86_64 from rhel-AppStream
      - cannot install the best update candidate for package platform-python-devel-3.6.8-59.el8.x86_64
2026-03-31 14:25:08 +02:00

83 lines
2.9 KiB
Plaintext

execute:
how: tmt
provision:
hardware:
memory: '>= 3 GB'
environment:
pybasever: '3.12'
discover:
- name: tests_python
how: shell
url: https://gitlab.com/redhat/centos-stream/tests/python.git
tests:
- name: smoke
path: /smoke
test: "VERSION=${pybasever} TOX=false ./venv.sh"
- name: debugsmoke
path: /smoke
test: "PYTHON=python${pybasever}d TOX=false VERSION=${pybasever} ./venv.sh"
- name: selftest
path: /selftest
test: "VERSION=${pybasever} X='-i test_check_probes -x test_dtrace' ./parallel.sh"
- name: debugtest
path: /selftest
test: "VERSION=${pybasever} PYTHON=python${pybasever}d X='-i test_check_probes -x test_dtrace' ./parallel.sh"
- name: optimizedflags
path: /flags
test: "python${pybasever} ./assertflags.py -O3 PY_BUILTIN_MODULE_CFLAGS PY_CFLAGS_NODIST PY_CORE_CFLAGS PY_STDMODULE_CFLAGS"
- name: optimizedflags_3rd
path: /flags
test: "python${pybasever} ./assertflags.py -O2 CFLAGS PY_CFLAGS"
- name: debugflags
path: /flags
test: "python${pybasever}d ./assertflags.py -O0"
- name: same_repo
how: shell
tests:
- name: pytest
test: "PYTHONPATH=/usr/lib/rpm/redhat ALTERNATE_PYTHON_VERSION=skip pytest-3.12 -v"
- name: manual_byte_compilation_clamp_mtime_off
path: /tests
test: "rpmbuild --define 'dist .clamp0' --define 'clamp_mtime_to_source_date_epoch 0' -ba pythontest.spec"
- name: manual_byte_compilation_clamp_mtime_on
path: /tests
test: "rpmbuild --define 'dist .clamp1' --define 'clamp_mtime_to_source_date_epoch 1' -ba pythontest.spec"
- name: rpmlint_clamp_mtime_off
test: "rpmlint ~/rpmbuild/RPMS/x86_64/pythontest-0-0.clamp0.x86_64.rpm | grep python-bytecode-inconsistent-mtime || exit 0 && exit 1"
- name: rpmlint_clamp_mtime_on
test: "rpmlint ~/rpmbuild/RPMS/x86_64/pythontest-0-0.clamp1.x86_64.rpm | grep python-bytecode-inconsistent-mtime || exit 0 && exit 1"
prepare:
- name: Install dependencies
how: install
package:
- gcc # for extension building in venv and selftest
- gcc-c++ # for test_cppext
- gdb # for test_gdb
- "python${pybasever}" # the test subject
- "python${pybasever}-debug" # for leak testing
- "python${pybasever}-devel" # for extension building in venv and selftest
- "python${pybasever}-tkinter" # for selftest
- "python${pybasever}-test" # for selftest
- glibc-all-langpacks # for locale tests
- rpm # for debugging
- rpm-build
- rpmlint
- python-rpm-macros
- python3-rpm-macros
- python3.12-rpm-macros
- python3.12-pytest
- python2
- name: Update packages
how: shell
script: dnf upgrade -y
- name: Install python3-devel specially to avoid a failure
how: shell
script: dnf install -y python3-devel --nobest --allowerasing
- name: rpm_qa
order: 100
how: shell
script: rpm -qa | sort | tee $TMT_PLAN_DATA/rpmqa.txt