Gentoo Archives: gentoo-commits

From: Brian Dolbec <dolsen@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/gentoo-keys:master commit in: gkeys/gkeys/
Date: Sun, 31 May 2015 05:03:30
Message-Id: 1433027931.8c6da8152ca04b3a1d706abc2bbd57b1cd982e82.dolsen@gentoo
1 commit: 8c6da8152ca04b3a1d706abc2bbd57b1cd982e82
2 Author: Brian Dolbec <dolsen <AT> gentoo <DOT> org>
3 AuthorDate: Sat Mar 21 19:12:22 2015 +0000
4 Commit: Brian Dolbec <dolsen <AT> gentoo <DOT> org>
5 CommitDate: Sat May 30 23:18:51 2015 +0000
6 URL: https://gitweb.gentoo.org/proj/gentoo-keys.git/commit/?id=8c6da815
7
8 gkeys/actions.py: Refactor installkey to refresh keys that are already installed and unchanged
9
10 gkeys/gkeys/actions.py | 78 +++++++++++++++++++++++++++++---------------------
11 1 file changed, 46 insertions(+), 32 deletions(-)
12
13 diff --git a/gkeys/gkeys/actions.py b/gkeys/gkeys/actions.py
14 index 8e078f0..7b834a4 100644
15 --- a/gkeys/gkeys/actions.py
16 +++ b/gkeys/gkeys/actions.py
17 @@ -245,11 +245,11 @@ class Actions(object):
18 def installkey(self, args):
19 '''Install a key from the seed(s)'''
20 self.logger.debug("ACTIONS: installkey; args: %s" % str(args))
21 - success, gkey = self.listseed(args)[1]
22 - if gkey:
23 - if gkey and not args.nick == '*' and self.output:
24 - self.output(['', gkey], "\n Found GKEY seeds:")
25 - elif gkey and self.output:
26 + success, gkeys = self.listseed(args)[1]
27 + if gkeys:
28 + if gkeys and not args.nick == '*' and self.output:
29 + self.output(['', gkeys], "\n Found GKEY seeds:")
30 + elif gkeys and self.output:
31 self.output(['all'], "\n Installing seeds:")
32 else:
33 self.logger.info("ACTIONS: installkey; "
34 @@ -269,33 +269,47 @@ class Actions(object):
35 self.logger.debug(_unicode("ACTIONS: installkey; catdir = %s")
36 % catdir)
37 self.gpg = GkeysGPG(self.config, catdir, self.logger)
38 - results = {}
39 - failed = []
40 - for key in gkey:
41 - self.logger.debug("ACTIONS: installkey; adding key:")
42 - self.logger.debug("ACTIONS: " + str(key))
43 - results[key.name] = self.gpg.add_key(key)
44 - for result in results[key.name]:
45 - self.logger.debug("ACTIONS: installkey; result.failed = " +
46 - str(result.failed))
47 - if self.config.options['print_results']:
48 - msg = _unicode("key desired: %(name)s, key added: %(key)s, succeeded:" +\
49 - " %(success)s, fingerprint: %(fpr)s")
50 - for result in results[key.name]:
51 - umsg = msg % ({'name': key.name, 'key': result.username,
52 - 'success': str(not result.failed),
53 - 'fpr': result.fingerprint})
54 - try:
55 - print(umsg)
56 - except UnicodeDecodeError:
57 - print(_unicode("UnicodeDecodeError printing results for:"), key.name)
58 - self.logger.debug(_unicode("installkey(); UnicodeDecodeError for:") + key.name)
59 - self.logger.debug(_unicode(" result.username...:") + result.username)
60 - self.logger.debug(_unicode(" result.failed.....:") + result.failed)
61 - self.logger.debug(_unicode(" result.fingerprint:") + result.fingerprint)
62 - self.logger.debug("stderr_out: " + str(result.stderr_out))
63 - if result.failed:
64 - failed.append(key)
65 + for gkey in gkeys:
66 + self.gpg.set_keydir(gkey.keydir, "recv-keys")
67 + self.gpg.set_keyseedfile()
68 + seeds = self.gpg.seedfile.seeds
69 + #print(seeds)
70 + if seeds:
71 + self.logger.debug("ACTIONS: installkey; found installed seeds:"
72 + "\n %s" % seeds)
73 + results = {}
74 + failed = []
75 + if gkey.nick in seeds and gkey.keys == seeds[gkey.nick].keys:
76 + self.logger.debug("ACTIONS: installkey; refreshing key:")
77 + if self.config.options['print_results']:
78 + print(_unicode("Refreshing already installed key: %s, %s"
79 + %(gkey.nick, gkey.keys)))
80 + self.gpg.refresh_key(gkey)
81 + else:
82 + self.logger.debug("ACTIONS: installkey; adding key:")
83 + self.logger.debug("ACTIONS: " + str(gkey))
84 + results[gkey.name] = self.gpg.add_key(gkey)
85 + for result in results[gkey.name]:
86 + self.logger.debug("ACTIONS: installkey; result.failed = " +
87 + str(result.failed))
88 + if self.config.options['print_results']:
89 + msg = _unicode("key desired: %(name)s, key added: %(key)s, succeeded:" +\
90 + " %(success)s, fingerprint: %(fpr)s")
91 + for result in results[gkey.name]:
92 + umsg = msg % ({'name': gkey.name, 'key': result.username,
93 + 'success': str(not result.failed),
94 + 'fpr': result.fingerprint})
95 + try:
96 + print(umsg)
97 + except UnicodeDecodeError:
98 + print(_unicode("UnicodeDecodeError printing results for:"), gkey.name)
99 + self.logger.debug(_unicode("installkey(); UnicodeDecodeError for:") + gkey.name)
100 + self.logger.debug(_unicode(" result.username...:") + result.username)
101 + self.logger.debug(_unicode(" result.failed.....:") + result.failed)
102 + self.logger.debug(_unicode(" result.fingerprint:") + result.fingerprint)
103 + self.logger.debug("stderr_out: " + str(result.stderr_out))
104 + if result.failed:
105 + failed.append(gkey)
106 if failed and self.output:
107 self.output([failed], "\n Failed to install:")
108 if failed: