Bug 1775536 - pycdio orphaned, yet kojid appliance/livecd/livemedia tasks depend on it (import iso9660)
Summary: pycdio orphaned, yet kojid appliance/livecd/livemedia tasks depend on it (imp...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: koji
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
high
Target Milestone: ---
Assignee: Mike McLean
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2019-11-22 08:35 UTC by David Abdurachmanov
Modified: 2019-12-01 00:46 UTC (History)
8 users (show)

Fixed In Version: koji-1.19.1-2.fc31
Clone Of:
Environment:
Last Closed: 2019-12-01 00:46:27 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description David Abdurachmanov 2019-11-22 08:35:40 UTC
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.

Comment 1 Miro Hrončok 2019-11-22 09:27:11 UTC
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>

Comment 2 David Abdurachmanov 2019-11-22 13:07:11 UTC
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).

Comment 3 Kevin Fenzi 2019-11-26 21:43:24 UTC
Sorry for the mess here, I am trying to get pycdio back in and fixed up.

Comment 4 Fedora Update System 2019-11-28 00:03:53 UTC
FEDORA-2019-f6845c8abf has been submitted as an update to Fedora 31. https://bodhi.fedoraproject.org/updates/FEDORA-2019-f6845c8abf

Comment 5 Fedora Update System 2019-11-29 01:30:41 UTC
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

Comment 6 Fedora Update System 2019-12-01 00:46:27 UTC
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.


Note You need to log in before you can comment on or make changes to this bug.