Hi Miro,
I cannot help with the ansible magic but if you do not have STI as a hard
requirement I think there might be a relatively straightforward way to
cover your use case using tmt <
https://docs.fedoraproject.org/en-US/ci/tmt/>
as it allows to set an environment
<
https://tmt.readthedocs.io/en/latest/spec/plans.html#environment> variable
for the whole plan. Your rpms/python3.11 config could look like this:
discover:
how: fmf
url:
https://src.fedoraproject.org/tests/python
filter: component:python311
prepare:
how: install
package:
- python3.11
- python3.11-test
- python3.11-tkinter
environment:
VERSION: "3.11"
execute:
how: tmt
In this way you would specify the python version and the proper package
list only once. The test metadata could be shared from the tests namespace,
no need to repeat the list again and again in individual rpms namespace
branches. I've outlined a simple setup in the following pull request:
https://src.fedoraproject.org/tests/python/pull-request/47
If this sounds like a viable solution feel free to ping me or anybody on
the #tmt channel for details. We'll be glad to help you with the config.
psss...
On Wed, 22 Jun 2022 at 12:56, Miro Hrončok <mhroncok(a)redhat.com> wrote:
Hello,
please bare with me because my Ansible skills are close to none. I only
use it
for Fedora CI.
I've read
https://docs.ansible.com/ansible/latest/user_guide/playbooks_variables.ht...
I have this (simplified) tests.yml:
---
- hosts: localhost
roles:
- role: standard-test-basic
tests:
- smoke:
dir: python/smoke
run: VERSION=3.11 ./venv.sh
required_packages:
- python3.11
- python3.11-devel
Full version in
https://src.fedoraproject.org/rpms/python3.11/blob/rawhide/f/tests/tests.yml
I would like to replace all occurrences of 3.11 with a variable:
---
- hosts: localhost
roles:
- role: standard-test-basic
tests:
- smoke:
dir: python/smoke
run: VERSION={{ pybasever }} ./venv.sh
required_packages:
- python{{ pybasever }}
- python{{ pybasever }}-devel
But where do I put pybasever: '3.11' exactly?
Bonus question: Can I read the tested package name and regex it into the
variable?
pybasever: {{ xxx_package_name|pex_regex_replace('^python', '') }}
Thanks,
--
Miro Hrončok
--
Phone: +420777974800
IRC: mhroncok
_______________________________________________
CI mailing list -- ci(a)lists.fedoraproject.org
To unsubscribe send an email to ci-leave(a)lists.fedoraproject.org
Fedora Code of Conduct:
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines:
https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives:
https://lists.fedoraproject.org/archives/list/ci@lists.fedoraproject.org
Do not reply to spam on the list, report it:
https://pagure.io/fedora-infrastructure