Traceback (most recent call last): File "/usr/bin/compose-changelog", line 40, in <module> run(opts) File "/usr/bin/compose-changelog", line 22, in run data = changelog.get_changelog(old_compose, new_compose) File "/usr/lib/python2.7/site-packages/compose_utils/changelog.py", line 210, in get_changelog result["new_compose"] = new_compose.info.compose.id File "/usr/lib/python2.7/site-packages/productmd/compose.py", line 82, in info composeinfo.load(path) File "/usr/lib/python2.7/site-packages/productmd/common.py", line 124, in load parser = self.parse_file(f) File "/usr/lib/python2.7/site-packages/productmd/common.py", line 172, in parse_file f.seek(0) AttributeError: 'NoneType' object has no attribute 'seek'
The composes in the above can be found in http://ppc.koji.fedoraproject.org/compose/branched/
Happens on aarch64 too
Hmm, that's not useful.
# compose-changelog -p /mnt/koji/compose/branched/Fedora-24-20160323.n.2/logs/ /mnt/koji/compose/branched/Fedora-24-20160322.n.0/ /mnt/koji/compose/branched/Fedora-24-20160323.n.2/ Traceback (most recent call last): File "/usr/bin/compose-changelog", line 40, in <module> run(opts) File "/usr/bin/compose-changelog", line 22, in run data = changelog.get_changelog(old_compose, new_compose) File "/usr/lib/python2.7/site-packages/compose_utils/changelog.py", line 210, in get_changelog result["new_compose"] = new_compose.info.compose.id File "/usr/lib/python2.7/site-packages/productmd/compose.py", line 82, in info composeinfo.load(path) File "/usr/lib/python2.7/site-packages/productmd/common.py", line 124, in load parser = self.parse_file(f) File "/usr/lib/python2.7/site-packages/productmd/common.py", line 172, in parse_file f.seek(0) AttributeError: 'NoneType' object has no attribute 'seek'
compose-utils-0.1.1-1.fc23
One of the composes did not finish successfully. The composeinfo.json file is not created, and that is causing the crash. Only compose id is read from that file, and that information is available in the rpms.json file as well. PR #8 switches to that file.
composeinfo.json
rpms.json
I have filed an issue with productmd to add better error messages.
The reason why the compose actually crashed is quite interesting: the compose is configured to only use ppc64 and ppc64le variants. When package set is created and rpms.json written, it correctly does not do anything for the Workstation variant (because it is not available on any of the arches).
ppc64
ppc64le
Later, pungi tries to create srpm repository for this variant, which causes the crash, as there is no matching entry in the metadata.
So I've noticed that. If you look at the pungi-fedora f24-secondary-arch repo for the fedora-ppc.conf I have to explicitly set tree_variants even though the Workstation variant isn't set for those arches in variants-fedora.xml
I have a fix for the filtering (and improvement of logging) in Pugni PR 240.
I have packaged the fix and built it for F23, F24 and Rawhide:
Log in to comment on this ticket.