#137 re-running createiso phase results into traceback
Closed: Fixed Opened by lkocman.

Re-running compose in this particular scenario failed:

finish compose with isos. Remove the actual isos after a successful compose. Re-run pungi with --just-phase createiso -> images.json is an empty file

[lkocman@dhcp-24-131 devconf-2016]$ pungi-koji --debug-mode --compose-dir trees/DEVCONF-2016-20160206.n.1 --config conf/pungi.conf --just-phase createiso --nightly
Variants DTD not found: /usr/share/pungi/variants.dtd
Using alternative DTD: /home/lkocman/Workspace/devconf-2016/pungi/share/variants.dtd
Exception: No JSON object could be decoded
Traceback (most recent call last):
  File "/home/lkocman/Workspace/devconf-2016/pungi/bin/pungi-koji", line 347, in <module>
    main()
  File "/home/lkocman/Workspace/devconf-2016/pungi/bin/pungi-koji", line 192, in main
    notifier=notifier)
  File "/home/lkocman/Workspace/devconf-2016/pungi/pungi/compose.py", line 125, in __init__
    self.im.load(self.paths.compose.metadata("images.json"))
  File "/home/lkocman/Workspace/devconf-2016/productmd/productmd/common.py", line 124, in load
    parser = self.parse_file(f)
  File "/home/lkocman/Workspace/devconf-2016/productmd/productmd/common.py", line 173, in parse_file
    parser = json.load(f)
  File "/usr/lib64/python2.7/json/__init__.py", line 290, in load
    **kw)
  File "/usr/lib64/python2.7/json/__init__.py", line 338, in loads
    return _default_decoder.decode(s)
  File "/usr/lib64/python2.7/json/decoder.py", line 366, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "/usr/lib64/python2.7/json/decoder.py", line 384, in raw_decode
    raise ValueError("No JSON object could be decoded")
ValueError: No JSON object could be decoded

traceback.global.log


This is actually a couple bugs:

Productmd refuses to create an image manifest without checksums. --just-phase skipped the image checksum phase. Obviously the checksumming should not be skipped if there are some images in the manifest.

The second bug is that if we fail to write images.json, there should not be an empty file left behind.

Image checksum phase can no longer be skipped, so that part is fixed.

The steps in description no longer lead to that particular error.

If the metadata in images.json already contain the ISOs, pungi will still attempt to add them into there and productmd will complain about duplicates. If the metadata are erased together with the images, it works correctly.

Metadata Update from @lsedlar:
- Issue close_status updated to: Fixed
- Issue status updated to: Closed (was: Open)

This issue has been migrated to Fedora Forge:
https://forge.fedoraproject.org/pungi/pungi/issues/137

Please continue any further discussion there.

Metadata