]> git.ipfire.org Git - pakfire.git/commitdiff
Fix CLI for key management.
authorMichael Tremer <michael.tremer@ipfire.org>
Wed, 5 Dec 2012 22:18:02 +0000 (23:18 +0100)
committerMichael Tremer <michael.tremer@ipfire.org>
Wed, 5 Dec 2012 22:18:02 +0000 (23:18 +0100)
python/pakfire/base.py
python/pakfire/cli.py
python/pakfire/keyring.py

index d1a5b4816d85ae027d93ee0555ef6a3e6809b406..75ec5e8ac654409161c46678b7d23cdb3291d74d 100644 (file)
@@ -729,3 +729,7 @@ class PakfireServer(Pakfire):
 
                # Return the new repository.
                return repo
+
+
+class PakfireKey(Pakfire):
+       mode = "key"
index 5c160377da47bf3754fc11066d639ed6e87bcb06..eadb99b144e7e6bdbd33a21d57ce92646d5abe95 100644 (file)
@@ -1205,6 +1205,8 @@ class CliDaemon(Cli):
 
 
 class CliKey(Cli):
+       pakfire = base.PakfireKey
+
        def __init__(self):
                self.parser = argparse.ArgumentParser(
                        description = _("Pakfire key command line interface."),
@@ -1266,8 +1268,6 @@ class CliKey(Cli):
                        help=_("The ID of the key to export."))
                sub_export.add_argument("filename", nargs=1,
                        help=_("Write the key to this file."))
-               sub_export.add_argument("--secret", action="store_true",
-                       help=_("Export the secret key, too."))
                sub_export.add_argument("action", action="store_const", const="export")
 
        def parse_command_delete(self):
@@ -1313,32 +1313,31 @@ class CliKey(Cli):
 
                # Generate the key.
                p = self.pakfire(**self.pakfire_args)
-               p.key_generate(realname, email)
+               p.keyring.gen_key(realname, email)
 
        def handle_import(self):
                filename = self.args.filename[0]
 
                # Simply import the file.
                p = self.pakfire(**self.pakfire_args)
-               p.key_import(filename)
+               p.keyring.import_key(filename)
 
        def handle_export(self):
                keyid    = self.args.keyid[0]
                filename = self.args.filename[0]
-               secret   = self.args.secret
 
                p = self.pakfire(**self.pakfire_args)
-               p.key_export(keyid, filename, secret=secret)
+               p.keyring.export_key(keyid, filename)
 
        def handle_delete(self):
                keyid = self.args.keyid[0]
 
                p = self.pakfire(**self.pakfire_args)
-               p.key_delete(keyid)
+               p.keyring.delete_key(keyid)
 
        def handle_list(self):
                p = self.pakfire(**self.pakfire_args)
-               for line in p.key_list():
+               for line in p.keyring.list_keys():
                        print line
 
        def handle_sign(self):
index d1f46261e1816c61b5709e7238d15849bc384241..8fe052e9b203f6d0ae00bbafc1a3dd7efc7e6dfa 100644 (file)
@@ -168,9 +168,9 @@ class Keyring(object):
 
                log.info(_("Successfully imported %s.") % keyfile)
 
-       def export_key(self, keyid, keyfile, secret=False):
+       def export_key(self, keyid, keyfile):
                keydata = io.BytesIO()
-               self.ctx.export(keyid, keydata, secret)
+               self.ctx.export(keyid, keydata)
 
                f = open(keyfile, "wb")
                f.write(keydata.getvalue())