I'm having trouble running pungi. What's really troubling is that this exact recipe (set of commands) worked fine last Friday :-( The only thing that took place in the meantime was a power failure (this build system was idle at the time).
I'm using the distributed kickstart file with the repo lines changed to be: # Add the repos you wish to use to compose here. At least one of them needs group data. repo --name=testing --baseurl=file:/mnt/work/fedora/AM
Any ideas?
[root@mac_mini pungi_f8]# time pungi -c f8-fedora.ks --all-stages --nosource Pungi.Gather:INFO: Adding repo testing Pungi.Gather:INFO: URL for repo testing is ['file:/mnt/work/fedora/AM'] Pungi.Gather:INFO: Getting sacks for arches ['ppc64', 'ppc', 'noarch', 'src'] Traceback (most recent call last): File "/usr/bin/pungi", line 178, in <module> main() File "/usr/bin/pungi", line 66, in main mygather.getPackageObjects() File "/usr/lib/python2.5/site-packages/pypungi/gather.py", line 245, in getPackageObjects searchlist.extend(self.getPackagesFromGroup(group)) File "/usr/lib/python2.5/site-packages/pypungi/gather.py", line 191, in getPackagesFromGroup if not self.ayum.comps.has_group(group.name): File "/usr/lib/python2.5/site-packages/yum/__init__.py", line 542, in <lambda> comps = property(fget=lambda self: self._getGroups(), File "/usr/lib/python2.5/site-packages/yum/__init__.py", line 505, in _getGroups groupfile = repo.getGroups() File "/usr/lib/python2.5/site-packages/yum/yumRepo.py", line 884, in getGroups file = self.retrieveMD('group') File "/usr/lib/python2.5/site-packages/yum/yumRepo.py", line 855, in retrieveMD cache=self.http_caching == 'all') File "/usr/lib/python2.5/site-packages/yum/yumRepo.py", line 623, in _getFile raise Errors.NoMoreMirrorsRepoError, errstr yum.Errors.NoMoreMirrorsRepoError: failure: repodata/Fedora-8-comps.xml from testing: [Errno 256] No more mirrors to try.
real 0m4.100s user 0m3.689s sys 0m0.388s
[root@mac_mini pungi_f8]# sestatus SELinux status: disabled
[root@mac_mini pungi_f8]# ls -l /mnt/work/fedora/AM/repodata/Fedora-8-comps.xml -rw-r--r-- 1 root root 1206345 2008-02-01 09:02 /mnt/work/fedora/AM/repodata/Fedora-8-comps.xml
[root@mac_mini pungi_f8]# rpm -qi pungi Name : pungi Relocations: (not relocatable) Version : 1.1.9 Vendor: Fedora Project Release : 1.fc8 Build Date: Mon 29 Oct 2007 03:51:26 PM MDT Install Date: Fri 30 Nov 2007 05:40:33 AM MST Build Host: ppc3.fedora.redhat.com Group : Development/Tools Source RPM: pungi-1.1.9-1.fc8.src.rpm Size : 131116 License: GPLv2 Signature : DSA/SHA1, Mon 29 Oct 2007 08:20:47 PM MDT, Key ID b44269d04f2a6fd2 Packager : Fedora Project URL : http://hosted.fedoraproject.org/projects/pungi Summary : Distribution compose tool Description : A tool to create anaconda based installation trees/isos of a set of rpms.
Gary Thomas wrote:
I'm having trouble running pungi. What's really troubling is that this exact recipe (set of commands) worked fine last Friday :-( The only thing that took place in the meantime was a power failure (this build system was idle at the time).
I'm using the distributed kickstart file with the repo lines changed to be: # Add the repos you wish to use to compose here. At least one of them needs group data. repo --name=testing --baseurl=file:/mnt/work/fedora/AM
Any ideas?
[root@mac_mini pungi_f8]# time pungi -c f8-fedora.ks --all-stages --nosource Pungi.Gather:INFO: Adding repo testing Pungi.Gather:INFO: URL for repo testing is ['file:/mnt/work/fedora/AM'] Pungi.Gather:INFO: Getting sacks for arches ['ppc64', 'ppc', 'noarch', 'src'] Traceback (most recent call last): File "/usr/bin/pungi", line 178, in <module> main() File "/usr/bin/pungi", line 66, in main mygather.getPackageObjects() File "/usr/lib/python2.5/site-packages/pypungi/gather.py", line 245, in getPackageObjects searchlist.extend(self.getPackagesFromGroup(group)) File "/usr/lib/python2.5/site-packages/pypungi/gather.py", line 191, in getPackagesFromGroup if not self.ayum.comps.has_group(group.name): File "/usr/lib/python2.5/site-packages/yum/__init__.py", line 542, in
<lambda> comps = property(fget=lambda self: self._getGroups(), File "/usr/lib/python2.5/site-packages/yum/__init__.py", line 505, in _getGroups groupfile = repo.getGroups() File "/usr/lib/python2.5/site-packages/yum/yumRepo.py", line 884, in getGroups file = self.retrieveMD('group') File "/usr/lib/python2.5/site-packages/yum/yumRepo.py", line 855, in retrieveMD cache=self.http_caching == 'all') File "/usr/lib/python2.5/site-packages/yum/yumRepo.py", line 623, in _getFile raise Errors.NoMoreMirrorsRepoError, errstr yum.Errors.NoMoreMirrorsRepoError: failure: repodata/Fedora-8-comps.xml from testing: [Errno 256] No more mirrors to try.
real 0m4.100s user 0m3.689s sys 0m0.388s
[root@mac_mini pungi_f8]# sestatus SELinux status: disabled
[root@mac_mini pungi_f8]# ls -l /mnt/work/fedora/AM/repodata/Fedora-8-comps.xml -rw-r--r-- 1 root root 1206345 2008-02-01 09:02 /mnt/work/fedora/AM/repodata/Fedora-8-comps.xml
[root@mac_mini pungi_f8]# rpm -qi pungi Name : pungi Relocations: (not relocatable) Version : 1.1.9 Vendor: Fedora Project Release : 1.fc8 Build Date: Mon 29 Oct 2007 03:51:26 PM MDT Install Date: Fri 30 Nov 2007 05:40:33 AM MST Build Host: ppc3.fedora.redhat.com Group : Development/Tools Source RPM: pungi-1.1.9-1.fc8.src.rpm Size : 131116 License: GPLv2 Signature : DSA/SHA1, Mon 29 Oct 2007 08:20:47 PM MDT, Key ID b44269d04f2a6fd2 Packager : Fedora Project URL : http://hosted.fedoraproject.org/projects/pungi Summary : Distribution compose tool Description : A tool to create anaconda based installation trees/isos of a set of rpms.
I've figured out what happened. I *did* change something else which I forgot about. I edited the comps file for the repository to not include selinux-policy in @base. That's all.
I just verified this by starting with the comps file from the original F8 repository. pungi worked as planned. Then I edited the comps file:
[root@mac_mini pungi_test]# diff -u /work3/FC/fedora/releases/8/Everything/ppc/os/repodata/Fedora-8-comps.xml ../AM/repodata/ --- /work3/FC/fedora/releases/8/Everything/ppc/os/repodata/Fedora-8-comps.xml 2007-11-02 08:11:44.000000000 -0600 +++ ../AM/repodata/Fedora-8-comps.xml 2008-02-05 12:51:37.000000000 -0700 @@ -2217,7 +2217,6 @@ <packagereq type="mandatory">rootfiles</packagereq> <packagereq type="mandatory">rpm</packagereq> <packagereq type="mandatory">rsyslog</packagereq> - <packagereq type="mandatory">selinux-policy-targeted</packagereq> <packagereq type="mandatory">setserial</packagereq> <packagereq type="mandatory">setup</packagereq> <packagereq type="mandatory">shadow-utils</packagereq>
This produced the crash/failure as documented above. Why? If this isn't to be allowed, at least a reasonable message instead of a traceback would be preferable.
On Tue, 05 Feb 2008 12:58:38 -0700 Gary Thomas gary@mlbassoc.com wrote:
This produced the crash/failure as documented above. Why? If this isn't to be allowed, at least a reasonable message instead of a traceback would be preferable.
I won't disagree that I should have some error checking around the yum stuff, but the files in a yum repository are checksummed. If you edit the file, you have to re-run createrepo against that file to update the repodata. You've created corrupt repodata, and yum is rightfully balking on it.
Jesse Keating wrote:
On Tue, 05 Feb 2008 12:58:38 -0700 Gary Thomas gary@mlbassoc.com wrote:
This produced the crash/failure as documented above. Why? If this isn't to be allowed, at least a reasonable message instead of a traceback would be preferable.
I won't disagree that I should have some error checking around the yum stuff, but the files in a yum repository are checksummed. If you edit the file, you have to re-run createrepo against that file to update the repodata. You've created corrupt repodata, and yum is rightfully balking on it.
Fair enough. That's not obvious since pungi is going to run createrepo itself, but I presume that's just against the selected packets.
In any case, I now understand enough to move forward.
Thanks
buildsys@lists.fedoraproject.org