]> git.ipfire.org Git - pakfire.git/commitdiff
pakfire: Implement deleting keys
authorMichael Tremer <michael.tremer@ipfire.org>
Fri, 9 Jul 2021 14:12:29 +0000 (14:12 +0000)
committerMichael Tremer <michael.tremer@ipfire.org>
Fri, 9 Jul 2021 14:12:29 +0000 (14:12 +0000)
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
src/scripts/pakfire.in

index 8096f08609de2a4a3ffce8be6ccdc90e189acc32..93d42a343ecd143b796eff214b289228989d9607 100644 (file)
@@ -104,6 +104,14 @@ class Cli(object):
 
                key_subparsers = key.add_subparsers()
 
+               # key delete
+               key_delete = key_subparsers.add_parser("delete",
+                       help=_("Delete a key"))
+               key_delete.add_argument("fingerprint",
+                       help=_("The fingerprint of the key")
+               )
+               key_delete.set_defaults(func=self._key_delete)
+
                # key export
                key_export = key_subparsers.add_parser("export",
                        help=_("Export a key to a file"))
@@ -298,6 +306,14 @@ class Cli(object):
                        allow_downgrade=args.allow_downgrade,
                )
 
+       def _key_delete(self, p, args):
+               key = p.get_key(args.fingerprint)
+               if not key:
+                       raise ValueError("Could not find key %s" % args.fingerprint)
+
+               # Delete the key
+               key.delete()
+
        def _key_export(self, p, args):
                key = p.get_key(args.fingerprint)
                if not key: