Today a number of builds were failing on xenbuilder2/4. They were perl
noarch builds. The failure output was like:
+ '%{_fixperms}' /var/tmp/perl-Module-ExtractUse-0.22-1.fc8-root-/usr
/var/tmp/rpm-tmp.90217: line 32: fg: no job control
I investigated a failed buildroot and discovered that _fixperms was not
being evaluated and translated in the rpm script as it should have
been. _fixperms is an arch specific macro, and that led me to do some
testing with how the mock rebuild is being called in noarch cases.
Turns out, this is something I already fixed in upstream koji. Koji
was unnecessarily calling mock with --arch noarch in the noarch build
cases. I hadn't realized this was going to cause builds to fail so I
hadn't done an upstream release with this fix yet. However since this
is failing builds, I'm going to patch the builders manually. Here is
the fix:
https://fedorahosted.org/koji/changeset/a023693e32d663ab7ad4f4fc85912c987...
diff --git a/builder/kojid b/builder/kojid
index ae4be90..5cf10a2 100755
--- a/builder/kojid
+++ b/builder/kojid
@@ -457,7 +457,7 @@ class BuildRoot(object):
# run build
session.host.setBuildRootState(self.id,'BUILDING')
args = ['--no-clean']
- if arch:
+ if arch and arch != 'noarch':
args.extend(['--arch', arch])
args.extend(['--rebuild', srpm])
rv = self.mock(args)
I'm providing this here should something happen and the builders get
reverted before I do the next koji upstream release.
--
Jesse Keating
Fedora -- All my bits are free, are yours?