mirror of
https://git.yoctoproject.org/poky
synced 2026-05-02 18:32:15 +02:00
package_manager: sign IPK package feeds
Create gpg signed ipk package feeds using the gpg backend if configured (From OE-Core rev: a2ee831cfb688bc64c071f75a1dff8a963abe287) Signed-off-by: Ioan-Adrian Ratiu <adrian.ratiu@ni.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
c637783638
commit
42f612c42a
@@ -153,11 +153,16 @@ class OpkgIndexer(Indexer):
|
||||
"MULTILIB_ARCHS"]
|
||||
|
||||
opkg_index_cmd = bb.utils.which(os.getenv('PATH'), "opkg-make-index")
|
||||
if self.d.getVar('PACKAGE_FEED_SIGN', True) == '1':
|
||||
signer = get_signer(self.d, self.d.getVar('PACKAGE_FEED_GPG_BACKEND', True))
|
||||
else:
|
||||
signer = None
|
||||
|
||||
if not os.path.exists(os.path.join(self.deploy_dir, "Packages")):
|
||||
open(os.path.join(self.deploy_dir, "Packages"), "w").close()
|
||||
|
||||
index_cmds = []
|
||||
index_sign_files = []
|
||||
for arch_var in arch_vars:
|
||||
archs = self.d.getVar(arch_var, True)
|
||||
if archs is None:
|
||||
@@ -176,6 +181,8 @@ class OpkgIndexer(Indexer):
|
||||
index_cmds.append('%s -r %s -p %s -m %s' %
|
||||
(opkg_index_cmd, pkgs_file, pkgs_file, pkgs_dir))
|
||||
|
||||
index_sign_files.append(pkgs_file)
|
||||
|
||||
if len(index_cmds) == 0:
|
||||
bb.note("There are no packages in %s!" % self.deploy_dir)
|
||||
return
|
||||
@@ -183,9 +190,12 @@ class OpkgIndexer(Indexer):
|
||||
result = oe.utils.multiprocess_exec(index_cmds, create_index)
|
||||
if result:
|
||||
bb.fatal('%s' % ('\n'.join(result)))
|
||||
if self.d.getVar('PACKAGE_FEED_SIGN', True) == '1':
|
||||
raise NotImplementedError('Package feed signing not implementd for ipk')
|
||||
|
||||
if signer:
|
||||
for f in index_sign_files:
|
||||
signer.detach_sign(f,
|
||||
self.d.getVar('PACKAGE_FEED_GPG_NAME', True),
|
||||
self.d.getVar('PACKAGE_FEED_GPG_PASSPHRASE_FILE', True))
|
||||
|
||||
|
||||
class DpkgIndexer(Indexer):
|
||||
|
||||
Reference in New Issue
Block a user