Bug 1775536
| Summary: | pycdio orphaned, yet kojid appliance/livecd/livemedia tasks depend on it (import iso9660) | ||
|---|---|---|---|
| Product: | [Fedora] Fedora | Reporter: | David Abdurachmanov <david.abdurachmanov> |
| Component: | koji | Assignee: | Mike McLean <mikem> |
| Status: | CLOSED ERRATA | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
| Severity: | high | Docs Contact: | |
| Priority: | unspecified | ||
| Version: | rawhide | CC: | dennis, jkeating, kevin, mhroncok, mikem, puiterwijk, rbarlow, rjones |
| Target Milestone: | --- | ||
| Target Release: | --- | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
| Whiteboard: | |||
| Fixed In Version: | koji-1.19.1-2.fc31 | Doc Type: | If docs needed, set a value |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2019-12-01 00:46:27 UTC | Type: | Bug |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
| Embargoed: | |||
Upstream pycdio supports Python 3 according to the project metadata. So this is just a matter of packaging a new python-pycdio package, Python 3 only.
$ sudo dnf install libcdio-devel
$ python3.8 -m venv __venv__
$ . __venv__/bin/activate
(__venv__) $ pip install pycdio
Successfully installed pycdio-2.1.0
(__venv__) $ python
Python 3.8.0 (default, Oct 14 2019, 00:00:00)
[GCC 9.2.1 20190827 (Red Hat 9.2.1-1)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import iso9660
>>> iso9660.ISO9660()
<iso9660.ISO9660 object at 0x7ff90568cdc0>
Yes, it seems to be packaging issue. I built pycdio with Python 3 locally to unblock Fedora/RISCV Koji instance and so far didn't notice any issues (i.e. I can build disk images again). Sorry for the mess here, I am trying to get pycdio back in and fixed up. FEDORA-2019-f6845c8abf has been submitted as an update to Fedora 31. https://bodhi.fedoraproject.org/updates/FEDORA-2019-f6845c8abf koji-1.19.1-2.fc31, python-pycdio-2.0.0-7.fc31 has been pushed to the Fedora 31 testing repository. If problems still persist, please make note of it in this bug report. See https://fedoraproject.org/wiki/QA:Updates_Testing for instructions on how to install test updates. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2019-f6845c8abf koji-1.19.1-2.fc31, python-pycdio-2.0.0-7.fc31 has been pushed to the Fedora 31 stable repository. If problems still persist, please make note of it in this bug report. |
Description of problem: pycdio package (provided only Python 2 package, not Python 3) was recently removed from Fedora. koji-builder (aka kojid) depends on it for " LiveCD, LiveMedia, and Appliance" From Koji 1.19.1 (which uses Python 3): [..] # imports for LiveCD, LiveMedia, and Appliance handler try: import pykickstart.parser as ksparser import pykickstart.handlers.control as kscontrol import pykickstart.errors as kserrors import iso9660 # from pycdio image_enabled = True except ImportError: # pragma: no cover image_enabled = False [..] Could there be that we have alternative packages providing the same? [root@28fc20fb3595 /]# dnf whatprovides '*/iso9660.py' Last metadata expiration check: 0:18:07 ago on Fri Nov 22 08:16:38 2019. diffoscope-111-3.fc32.noarch : In-depth comparison of files, archives, and directories Repo : rawhide Matched from: Filename : /usr/lib/python3.8/site-packages/diffoscope/comparators/iso9660.py python3-avocado-69.2-1.module_f32+6755+480b3a4e.noarch : Framework with tools and libraries for Automated Testing Repo : rawhide-modular Matched from: Filename : /usr/lib/python3.8/site-packages/avocado/utils/iso9660.py Version-Release number of selected component (if applicable): All versions of koji should be affected. How reproducible: Setup a koji instance and use affected tasks (e.g. spin-appliance). Steps to Reproduce: Actual instructions how to test would be complicated. The minimal test is "import iso9660" on Python 3. Actual results: >>> import iso9660 Traceback (most recent call last): File "<stdin>", line 1, in <module> ModuleNotFoundError: No module named 'iso9660' Expected results: import succeeds.