Description of problem: Composing install media from rawhide using pungi gets an error and traceback from pkgorder. The DVD completes, but the CDs do not. Version-Release number of selected component (if applicable): yum-3.2.24-3.fc12.noarch pungi-2.0.17-1.fc12.noarch How reproducible: Steps to Reproduce: 1. pungi -c /usr/share/pungi/rawhide-fedora.ks --destdir=$DESTDIR --name Fedora --ver $VERSION --nosource 2. 3. Actual results: <<snip>> Pungi:INFO: Running /usr/bin/mkisofs -v -U -J -R -T -m repoview -m boot.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -V "Fedora 12 i386 DVD" -o /ext4/Fedora12/12/i386/iso/Fedora-12-i386-DVD.iso /ext4/Fedora12/12/i386/os Pungi:INFO: Running /usr/bin/implantisomd5 /ext4/Fedora12/12/i386/iso/Fedora-12-i386-DVD.iso Pungi:INFO: Generating checksum of /ext4/Fedora12/12/i386/iso/Fedora-12-i386-DVD.iso Pungi:INFO: Running /usr/bin/pkgorder /ext4/Fedora12/12/i386/os i386 Packages Pungi:ERROR: Got an error from /usr/bin/pkgorder Pungi:ERROR: Traceback (most recent call last): File "/usr/bin/pkgorder", line 187, in <module> addPackages(ds, ["kernel-*","mkinitrd","mdadm"]) File "/usr/bin/pkgorder", line 114, in addPackages ds.install(pattern=pkg) File "/usr/lib/python2.6/site-packages/yum/__init__.py", line 2732, in install raise Errors.InstallError, _('No package(s) available to install') yum.Errors.InstallError: No package(s) available to install Traceback (most recent call last): File "/usr/bin/pungi", line 216, in <module> main() File "/usr/bin/pungi", line 123, in main mypungi.doCreateIsos(split=opts.nosplitmedia) File "/usr/lib/python2.6/site-packages/pypungi/__init__.py", line 1166, in doCreateIsos self.doPackageorder() File "/usr/lib/python2.6/site-packages/pypungi/__init__.py", line 860, in doPackageorder pypungi.util._doRunCommand(pkgorder, self.logger, output=pkgorderfile) File "/usr/lib/python2.6/site-packages/pypungi/util.py", line 36, in _doRunCommand raise OSError, "Got an error from %s: %s" % (command[0], err) OSError: Got an error from /usr/bin/pkgorder: Traceback (most recent call last): File "/usr/bin/pkgorder", line 187, in <module> addPackages(ds, ["kernel-*","mkinitrd","mdadm"]) File "/usr/bin/pkgorder", line 114, in addPackages ds.install(pattern=pkg) File "/usr/lib/python2.6/site-packages/yum/__init__.py", line 2732, in install raise Errors.InstallError, _('No package(s) available to install') yum.Errors.InstallError: No package(s) available to install Expected results: Successful creation of CDs. Additional info:
Found the bug. mkinitrd isn't used anymore, dracut is. I updated pkgorder and built a new pungi for rawhide.
pungi-2.0.18-1.fc12.noarch still gives the same complaint. <<snip>> Pungi:INFO: Running /usr/bin/mkisofs -v -U -J -R -T -m repoview -m boot.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -V "Fedora 12 i386 DVD" -o /ext4/Fedora12/12/i386/iso/Fedora-12-i386-DVD.iso /ext4/Fedora12/12/i386/os Pungi:INFO: Running /usr/bin/implantisomd5 /ext4/Fedora12/12/i386/iso/Fedora-12-i386-DVD.iso Pungi:INFO: Generating checksum of /ext4/Fedora12/12/i386/iso/Fedora-12-i386-DVD.iso Pungi:INFO: Running /usr/bin/pkgorder /ext4/Fedora12/12/i386/os i386 Packages Pungi:ERROR: Got an error from /usr/bin/pkgorder Pungi:ERROR: Traceback (most recent call last): File "/usr/bin/pkgorder", line 190, in <module> addPackages(ds, ["authconfig", "chkconfig", "dracut", "rhpl", "system-config-firewall-tui"]) File "/usr/bin/pkgorder", line 114, in addPackages ds.install(pattern=pkg) File "/usr/lib/python2.6/site-packages/yum/__init__.py", line 2732, in install raise Errors.InstallError, _('No package(s) available to install') yum.Errors.InstallError: No package(s) available to install Traceback (most recent call last): File "/usr/bin/pungi", line 216, in <module> main() File "/usr/bin/pungi", line 123, in main mypungi.doCreateIsos(split=opts.nosplitmedia) File "/usr/lib/python2.6/site-packages/pypungi/__init__.py", line 1166, in doCreateIsos self.doPackageorder() File "/usr/lib/python2.6/site-packages/pypungi/__init__.py", line 860, in doPackageorder pypungi.util._doRunCommand(pkgorder, self.logger, output=pkgorderfile) File "/usr/lib/python2.6/site-packages/pypungi/util.py", line 36, in _doRunCommand raise OSError, "Got an error from %s: %s" % (command[0], err) OSError: Got an error from /usr/bin/pkgorder: Traceback (most recent call last): File "/usr/bin/pkgorder", line 190, in <module> addPackages(ds, ["authconfig", "chkconfig", "dracut", "rhpl", "system-config-firewall-tui"]) File "/usr/bin/pkgorder", line 114, in addPackages ds.install(pattern=pkg) File "/usr/lib/python2.6/site-packages/yum/__init__.py", line 2732, in install raise Errors.InstallError, _('No package(s) available to install') yum.Errors.InstallError: No package(s) available to install # pungi --version pungi 2.0.18 # rpm -qf /usr/bin/pkgorder pungi-2.0.18-1.fc12.noarch
Are you composing a reduced package set that doesn't have one of authconfig", "chkconfig", "dracut", "rhpl", "system-config-firewall-tui" in it? I think I just need to make this function call be tolerant to missing packages.
I'm composing pungi -c /usr/share/pungi/rawhide-fedora.ks ... except that I have commented-out all the Languages. In particular, in I have [at least one of] each of those packages: # cd /var/cache/pungi/rawhide/packages # ls -l authconfig* -rw-r--r--. 1 root root 308128 2009-08-08 10:34 authconfig-5.4.10-2.fc12.i686.rpm -rw-r--r--. 2 root root 307792 2009-08-13 14:07 authconfig-5.4.10-2.fc12.x86_64.rpm -rw-r--r--. 2 root root 298340 2009-09-14 04:29 authconfig-5.4.11-1.fc12.i686.rpm -rw-r--r--. 1 root root 47672 2009-08-08 12:32 authconfig-gtk-5.4.10-2.fc12.i686.rpm -rw-r--r--. 2 root root 47636 2009-08-08 14:23 authconfig-gtk-5.4.10-2.fc12.x86_64.rpm -rw-r--r--. 2 root root 46324 2009-09-14 04:29 authconfig-gtk-5.4.11-1.fc12.i686.rpm # ls -l chkconfig* -rw-r--r--. 1 root root 144996 2009-08-13 16:45 chkconfig-1.3.42-2.i686.rpm -rw-r--r--. 2 root root 146056 2009-08-13 14:08 chkconfig-1.3.42-2.x86_64.rpm -rw-r--r--. 2 root root 145356 2009-09-14 09:32 chkconfig-1.3.43-1.i686.rpm # ls -l dracut* -rw-r--r--. 1 root root 59188 2009-09-15 08:28 dracut-001-10.git4d924752.fc12.noarch.rpm -rw-r--r--. 2 root root 58012 2009-09-09 12:23 dracut-001-9.git6f0e469d.fc12.noarch.rpm -rw-r--r--. 2 root root 4816 2009-09-09 12:23 dracut-kernel-001-9.git6f0e469d.fc12.noarch.rpm # ls -l rhpl* -rw-r--r--. 1 root root 195584 2009-08-13 17:02 rhpl-0.220-2.i686.rpm -rw-r--r--. 2 root root 196252 2009-08-08 14:40 rhpl-0.220-2.x86_64.rpm # ls -l system-config-firewall-tui* -rw-r--r--. 1 root root 330312 2009-08-08 14:05 system-config-firewall-tui-1.2.17-1.fc12.noarch.rpm -rw-r--r--. 3 root root 346368 2009-09-11 08:05 system-config-firewall-tui-1.2.18-1.fc12.noarch.rpm #
Well that's odd then. You sure there is repodata in that tree with all those packages in it? I can't seem to reproduce here.
In the mean time, I'm building a pungi that is tolerant of missing packages. Would be good to check the pungi log to see what packages it thinks you are missing.
Created attachment 361148 [details] /var/cache/pungi/rawhide/repomd.xml Here is the repomd.xml file. However, there is no "repodata/" directory beneath /var/cache/pungi/rawhide, so none of the files named in the .xml (such as repodata/9bb6d3d8603138f4171ef9aca7cfa8d322b10af3fcf481ba9cb2c1a63feb9368-comps-rawhide.xml) exist below /var/cache/pungi/rawhide. In the output directory: # find . -name repodata ./work/i386/os-unified/repodata ./12/i386/debug/repodata ./12/i386/os/repodata Is that OK? What am I looking for in the log file? I see mention of ----- Pungi.INFO: Running /usr/bin/repoview --quiet --state-dir /var/cache/pungi/repoviewcache --title "Fedora 12 - i386" /ext4/Fedora12/12/i386/os ----- but /var/cache/pungi/repoviewcache/ contains just five .sqlite files. I'll make another attachment of the full log file.
Created attachment 361152 [details] /ext4/Fedora12/logs/i386.log Full log file from pungi run. I don't see what the problem is.
I my preamble before running pungi, I do rm -rf $DESTDIR/work/$ARCH rm -rf $DESTDIR/$VERSION/$ARCH which should remove $DESTDIR/$VERSION/$ARCH/os/repodata In $DESTDIR/$VERSION/$ARCH/os/repodata, I see these "leftovers": ----- -rw-r--r--. 1 root root 1779400 2009-09-15 08:33 0ad45949476768a8ad2c426d9a9072f5deabe9ffe4d92dd9b1f82779d8acfd84-primary.sqlite.bz2 -rw-r--r--. 1 root root 1905781 2009-09-15 08:32 187be52f16200fac2968644d2db1a943001b9c6189ebf5c991db7cb53abd636d-filelists.xml.gz -rw-r--r--. 1 root root 2406070 2009-09-15 08:33 3c5302da3eed1fc538f62af4a7e6b432fe2374e66edf2d664f2283f2b309b308-filelists.sqlite.bz2 -rw-r--r--. 1 root root 850712 2009-09-15 08:32 687d754e79fc8523a42dcd7a9b8e39a66a6924acac16f05ca86678d0a4426524-other.xml.gz -rw-r--r--. 1 root root 839745 2009-09-15 08:32 8afc9b858ad93fda5d4dea5e174547f8d36734e91a84c680216adfe07597597e-other.sqlite.bz2 -rw-r--r--. 1 root root 907254 2009-09-15 08:32 c16ecb8bcda3b53ef12af398f0f85613d909e18f9e2ddf5b6bb75cf8f9f7dce8-primary.xml.gz -rw-r--r--. 1 root root 1707914 2009-09-15 08:33 c2f84673882c2544feed7c7a7717b474caacf44ab0259e988fda30bc39eff500-Fedora-12-comps.xml -rw-r--r--. 1 root root 394772 2009-09-15 08:33 f4ec6e87b366eccbead98679b640d698bc04d2bd41dea1b2302d7fcc86a49e45-Fedora-12-comps.xml.gz -rw-r--r--. 1 root root 3818 2009-09-15 08:33 repomd.xml ----- which have similar names on the right-hand side of the filename (the tail), but different hashes than were looked for in Comment #7 above.
The repodata would be in the dest path, under the os directory, where the pkgorder call is pointing to, eg: Pungi.INFO: Running /usr/bin/pkgorder /ext4/Fedora12/12/i386/os i386 Packages would look for repodata in /ext4/Fedora12/12/i386/os/ Please try with http://koji.fedoraproject.org/koji/buildinfo?buildID=132161
Ok, I found what it was. rhpl is no longer forced by Anaconda, but pkgorder was looking for it. With .19 that was non-fatal, as of .20 it doesn't even look for rhpl anymore.