]> git.ipfire.org Git - people/stevee/pakfire.git/commitdiff
Use the host key properly in build mode.
authorMichael Tremer <michael.tremer@ipfire.org>
Sat, 14 Apr 2012 10:57:04 +0000 (12:57 +0200)
committerMichael Tremer <michael.tremer@ipfire.org>
Sat, 14 Apr 2012 10:57:04 +0000 (12:57 +0200)
python/pakfire/builder.py
python/pakfire/keyring.py

index edc4dee68ec57982683548950d4b8ecc5a702295..5a0ea0a2990268e50d68af5bee96c5eaea110348 100644 (file)
@@ -203,10 +203,15 @@ class BuildEnviron(object):
                        "enable_loop_devices" : True,
                        "enable_ccache"   : True,
                        "enable_icecream" : False,
-                       "sign_packages"   : True,
+                       "sign_packages"   : False,
                }
                #self.settings.update(settings)
 
+               # Try to get the configured host key. If it is available,
+               # we will automatically sign all packages with it.
+               if self.keyring.get_host_key(secret=True):
+                       self.settings["sign_packages"] = True
+
                # Lock the buildroot
                self._lock = None
                self.lock()
@@ -739,7 +744,7 @@ class BuildEnviron(object):
 
                # Sign all built packages with the host key (if available).
                if self.settings.get("sign_packages"):
-                       host_key = self.keyring.get_host_key()
+                       host_key = self.keyring.get_host_key_id()
                        assert host_key
 
                        # Do the signing...
index f7242e77dd65c2ed2fd110afcba2a3fe7272db71..8fe052e9b203f6d0ae00bbafc1a3dd7efc7e6dfa 100644 (file)
@@ -212,6 +212,8 @@ class Keyring(object):
 
        def sign(self, keyid, cleartext):
                key = self.ctx.get_key(keyid, True)
+               assert key, "Key was not found or no secret key installed."
+
                self.ctx.signers = [key,]
 
                cleartext = io.BytesIO(cleartext)