aboutsummaryrefslogtreecommitdiffstats
path: root/meta/lib/oe
diff options
context:
space:
mode:
authorAlexander Kanavin <alexander.kanavin@linux.intel.com>2017-02-14 17:10:04 +0200
committerRichard Purdie <richard.purdie@linuxfoundation.org>2017-03-13 09:43:21 +0000
commitf82f270df2da59702026721612563aea57cd77eb (patch)
tree1a61a25203f7f4ab51a0d7f52c1298578d834af4 /meta/lib/oe
parent6c434a711c0d281ecc9aeff488b63b80a338b229 (diff)
downloadopenembedded-core-contrib-f82f270df2da59702026721612563aea57cd77eb.tar.gz
gpg_sign.py: fix signing of rpm files using gpg
This means a) calling rpmkeys and rpmsign instead of rpm b) instructing gpg to run non-interactively; otherwise on my machine it pops up windows requesting a key passphrase Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Diffstat (limited to 'meta/lib/oe')
-rw-r--r--meta/lib/oe/gpg_sign.py7
1 files changed, 4 insertions, 3 deletions
diff --git a/meta/lib/oe/gpg_sign.py b/meta/lib/oe/gpg_sign.py
index f7f96c6d5e..7ce767ee0a 100644
--- a/meta/lib/oe/gpg_sign.py
+++ b/meta/lib/oe/gpg_sign.py
@@ -11,7 +11,7 @@ class LocalSigner(object):
bb.utils.which(os.getenv('PATH'), 'gpg')
self.gpg_path = d.getVar('GPG_PATH')
self.gpg_version = self.get_gpg_version()
- self.rpm_bin = bb.utils.which(os.getenv('PATH'), "rpm")
+ self.rpm_bin = bb.utils.which(os.getenv('PATH'), "rpmsign")
def export_pubkey(self, output_file, keyid, armor=True):
"""Export GPG public key to a file"""
@@ -31,9 +31,10 @@ class LocalSigner(object):
"""Sign RPM files"""
cmd = self.rpm_bin + " --addsign --define '_gpg_name %s' " % keyid
- cmd += "--define '_gpg_passphrase %s' " % passphrase
+ gpg_args = '--batch --passphrase=%s' % passphrase
if self.gpg_version > (2,1,):
- cmd += "--define '_gpg_sign_cmd_extra_args --pinentry-mode=loopback' "
+ gpg_args += ' --pinentry-mode=loopback'
+ cmd += "--define '_gpg_sign_cmd_extra_args %s' " % gpg_args
if self.gpg_bin:
cmd += "--define '%%__gpg %s' " % self.gpg_bin
if self.gpg_path: