summaryrefslogtreecommitdiffstats
path: root/meta/lib/oe
diff options
context:
space:
mode:
authorLeonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>2017-08-15 14:40:02 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2017-08-17 00:21:14 +0100
commite25d7a9b9c5f33736ef451282f5e7a00d97e6cc8 (patch)
tree888d13d0ef0e6c13ac6259fc09aa8bd86d725fee /meta/lib/oe
parent765dec9501d49a3fc6f2def7796ad52568d146b9 (diff)
downloadpoky-e25d7a9b9c5f33736ef451282f5e7a00d97e6cc8.tar.gz
gpg_sign: perform rpm signing serially
gpg signing in file batches (which was default to 100) is a memory expensive computation, causing trouble in some host machines (even on production AB as seen on the bugzilla ID). Also, in terms of performance, there is no real gain when rpm signing is done in batches. Considering the latter issues, perform the rpm signing serially. Log showing errors observed recently at AB workers: | gpg: signing failed: Cannot allocate memory | gpg: signing failed: Cannot allocate memory | error: gpg exec failed (2) | /home/pokybuild/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/build/tmp/work/core2-64-poky-linux/base-passwd/3.5.29-r0/deploy-rpms/core2_64/base-passwd-dev-3.5.29-r0.core2_64.rpm: [YOCTO #11914] (From OE-Core rev: d58b1d196f87128892b7b624bfb725afe01581f1) Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/lib/oe')
-rw-r--r--meta/lib/oe/gpg_sign.py6
1 files changed, 3 insertions, 3 deletions
diff --git a/meta/lib/oe/gpg_sign.py b/meta/lib/oe/gpg_sign.py
index f4d8b10e4b..5c7985a856 100644
--- a/meta/lib/oe/gpg_sign.py
+++ b/meta/lib/oe/gpg_sign.py
@@ -45,9 +45,9 @@ class LocalSigner(object):
45 if fsk_password: 45 if fsk_password:
46 cmd += "--define '_file_signing_key_password %s' " % fsk_password 46 cmd += "--define '_file_signing_key_password %s' " % fsk_password
47 47
48 # Sign in chunks of 100 packages 48 # Sign packages
49 for i in range(0, len(files), 100): 49 for f in files:
50 status, output = oe.utils.getstatusoutput(cmd + ' '.join(files[i:i+100])) 50 status, output = oe.utils.getstatusoutput(cmd + ' ' + f)
51 if status: 51 if status:
52 raise bb.build.FuncFailed("Failed to sign RPM packages: %s" % output) 52 raise bb.build.FuncFailed("Failed to sign RPM packages: %s" % output)
53 53