I am opening this here instead of https://github.com/fedora-infra/rpmautospec-koji because this is a problem of our deployment, not in the software per se.
CCing the relevant folks here: @nphilipp @zbyszek @sgallagh @tkopecek
To reproduce generally:
A specific example is: use the pyproject declarative buildsystem + %autorelease as in https://src.fedoraproject.org/rpms/python-absl-py/pull-request/4 and build it:
koji build rawhide --scratch --nowait 'git+https://src.fedoraproject.org/forks/music/rpms/python-absl-py.git#4895eacbdffb627d231daca5dd37fd483534fddc'
You'll end up with failed buildSRPMFromSCM:
CallbackError: Error running postSCMCheckout callback from rpmautospec_koji.rpmautospec_builder: Traceback (most recent call last): File "/usr/lib/python3.12/site-packages/koji/plugin.py", line 223, in run_callbacks func(cbtype, *cb_args, **cb_kwargs) File "/usr/lib/python3.12/site-packages/rpmautospec_koji/rpmautospec_builder.py", line 19, in process_distgit_cb if not process_distgit(srcdir, enable_caching=False): ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/rpmautospec/subcommands/process_distgit.py", line 101, in process_distgit raise SpecParseFailure( rpmautospec.exc.SpecParseFailure: Couldn’t parse spec file python-absl-py.spec: error: line 10: Unknown tag: BuildSystem: pyproject
e.g. https://koji.fedoraproject.org/koji/taskinfo?taskID=121889801
This particular problem could be solved by updating Koji to Fedora 41+, but generally, it means the rpmautospec Koji plugin must always run on the same (or compatible) RPM version as the build itself.
When I want packagers to actually use the pyproject declarative build system, i.e. when Fedora 41 is released, hence cca 2024-11-05
Yep, I think it is a similar to other libraries used (pykickstart, ...) with new features. They always need to be either backported to builder OS version or builders updated.
I think this would be resolved by moving the Fedora Koji setup to use the redesigned rpmautospec that we built for CentOS Stream/RHEL, which uses rpmautospec in the target buildroot rather than one running on the Koji worker.
I know nothing about the c10s setup, but using "rpmautospec in the target buildroot rather than one running on the Koji worker" seems like the correct solution of this problem to me.
Metadata Update from @phsmoura: - Issue priority set to: Waiting on Assignee (was: Needs Review) - Issue tagged with: medium-gain, medium-trouble, ops
Metadata Update from @nphilipp: - Issue assigned to nphilipp
https://github.com/fedora-infra/rpmautospec/issues/90
It is, I’ve planned to do this for a while, but haven’t gotten around to it since EL7 is out of our hair (which blocked this).
I’ve finished migrating the builder from the koji to the mock plugin for rpmautospec, and this seems to have done the trick: https://koji.fedoraproject.org/koji/taskinfo?taskID=122039120
Metadata Update from @nphilipp: - Issue close_status updated to: Fixed - Issue status updated to: Closed (was: Open)
Thank you.
Log in to comment on this ticket.