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: Wed, 31 Dec 2014 21:34:35
Message-Id: 1419975746.4a7e7e54a6b6ce280a221a0b039bebafd9d49701.dolsen@gentoo.org@gentoo
1 commit: 4a7e7e54a6b6ce280a221a0b039bebafd9d49701
2 Author: Brian Dolbec <dolsen <AT> gentoo <DOT> org>
3 AuthorDate: Sat Dec 27 21:51:17 2014 +0000
4 Commit: Brian Dolbec <dolsen <AT> gentoo <DOT> org>
5 CommitDate: Tue Dec 30 21:42:26 2014 +0000
6 URL: http://sources.gentoo.org/gitweb/?p=proj/gentoo-keys.git;a=commit;h=4a7e7e54
7
8 gkeys: Add keys and uid options to actions and seed handling
9
10 Add code to auto-update existing installed gkey.seeds files with the additional data.
11
12 ---
13 gkeys/gkeys/actions.py | 32 ++++++++++++++++----------------
14 gkeys/gkeys/base.py | 11 +++++++++++
15 gkeys/gkeys/seed.py | 6 ++++++
16 gkeys/gkeys/seedhandler.py | 5 +++++
17 4 files changed, 38 insertions(+), 16 deletions(-)
18
19 diff --git a/gkeys/gkeys/actions.py b/gkeys/gkeys/actions.py
20 index 9baecaa..4a4f0eb 100644
21 --- a/gkeys/gkeys/actions.py
22 +++ b/gkeys/gkeys/actions.py
23 @@ -44,24 +44,24 @@ Available_Actions = General_Actions + Key_Actions + Seed_Actions
24
25 Action_Options = {
26 'list-cats': [],
27 - 'list-seed': ['nick', 'name', 'keydir', 'fingerprint', 'category', '1file'],
28 - 'add-seed': ['nick', 'name', 'keydir', 'fingerprint', 'category'],
29 - 'remove-seed': ['nick', 'name', 'keydir', 'fingerprint', 'category'],
30 - 'move-seed': ['nick', 'name', 'keydir', 'fingerprint', 'category', 'dest'],
31 - 'fetch-seed': ['nick', 'name', 'keydir', 'fingerprint', 'category', 'keyring'],
32 + 'list-seed': ['nick', 'name', 'keydir', 'keys', 'fingerprint', 'category', '1file'],
33 + 'add-seed': ['nick', 'name', 'keydir', 'keys', 'fingerprint', 'category', 'uid'],
34 + 'remove-seed': ['nick', 'name', 'keydir', 'keys', 'fingerprint', 'category'],
35 + 'move-seed': ['nick', 'name', 'keydir', 'keys', 'fingerprint', 'category', 'dest'],
36 + 'fetch-seed': ['nick', 'name', 'keydir', 'keys', 'fingerprint', 'category', 'keyring'],
37 'list-seedfiles': [],
38 - 'list-key': ['nick', 'name', 'keydir', 'fingerprint', 'category', 'keyring', 'gpgsearch', 'keyid'],
39 - 'install-key': ['nick', 'name', 'keydir', 'fingerprint', 'category', 'keyring', '1file'],
40 - 'remove-key': ['nick', 'name', 'keydir', 'fingerprint', 'category', 'keyring'],
41 - 'move-key': ['nick', 'name', 'keydir', 'fingerprint', 'category', 'keyring', 'dest'],
42 - 'installed': ['nick', 'name', 'keydir', 'fingerprint', 'category', 'keyring'],
43 - 'import-key': ['nick', 'name', 'keydir', 'fingerprint', 'category', 'keyring'],
44 - 'key-search': ['nick', '1name', 'keydir', 'fingerprint', 'keyid', 'category', 'exact', 'all'],
45 - 'verify': ['dest', 'nick', 'name', 'keydir', 'fingerprint', 'category', '1file', 'signature', 'timestamp'],
46 - 'check-key': ['nick', 'name', 'keydir', 'fingerprint', 'category', 'keyring', 'keyid'],
47 + 'list-key': ['nick', 'name', 'keydir', 'keys', 'fingerprint', 'category', 'keyring', 'gpgsearch', 'keyid'],
48 + 'install-key': ['nick', 'name', 'keydir', 'keys', 'fingerprint', 'category', 'keyring', '1file'],
49 + 'remove-key': ['nick', 'name', 'keydir', 'keys', 'fingerprint', 'category', 'keyring'],
50 + 'move-key': ['nick', 'name', 'keydir', 'keys', 'fingerprint', 'category', 'keyring', 'dest'],
51 + 'installed': ['nick', 'name', 'keydir', 'keys', 'fingerprint', 'category', 'keyring'],
52 + 'import-key': ['nick', 'name', 'keydir', 'keys', 'fingerprint', 'category', 'keyring'],
53 + 'key-search': ['nick', '1name', 'keydir', 'keys', 'fingerprint', 'keyid', 'category', 'exact', 'all'],
54 + 'verify': ['dest', 'nick', 'name', 'keydir', 'keys', 'fingerprint', 'category', '1file', 'signature', 'timestamp'],
55 + 'check-key': ['nick', 'name', 'keydir', 'keys', 'fingerprint', 'category', 'keyring', 'keyid'],
56 'sign': ['nick', 'name', 'keydir', 'fingerprint', 'file', 'keyring'],
57 - 'spec-check': ['nick', 'name', 'keydir', 'fingerprint', 'category', 'keyring', 'keyid'],
58 - 'refresh-key': ['nick', 'name', 'keydir', 'fingerprint', 'category', 'keyring', 'keyid'],
59 + 'spec-check': ['nick', 'name', 'keydir', 'keys', 'fingerprint', 'category', 'keyring', 'keyid'],
60 + 'refresh-key': ['nick', 'name', 'keydir', 'keys', 'fingerprint', 'category', 'keyring', 'keyid'],
61 '---general---': [],
62 '----seeds----': [],
63 '----keys-----': [],
64
65 diff --git a/gkeys/gkeys/base.py b/gkeys/gkeys/base.py
66 index 541a12c..2c0e114 100644
67 --- a/gkeys/gkeys/base.py
68 +++ b/gkeys/gkeys/base.py
69 @@ -85,6 +85,12 @@ class CliBase(object):
70 help='The name of the keyring to use for verification, etc.')
71
72 @staticmethod
73 + def _option_keys(parser=None):
74 + parser.add_argument('-K', '--keys', dest='keys', nargs='*',
75 + default=None,
76 + help='The name of the keyring to use for verification, etc.')
77 +
78 + @staticmethod
79 def _option_nick(parser=None):
80 parser.add_argument('-n', '--nick', dest='nick', default=None,
81 help='The nick associated with the the key')
82 @@ -167,6 +173,11 @@ class CliBase(object):
83 action='store_true', default=False,
84 help='Just Do It')
85
86 + @staticmethod
87 + def _option_uid(parser=None):
88 + parser.add_argument('-u', '--uid', dest='uid', nargs='*', default=None,
89 + help='The user ID, gpg key uid')
90 +
91
92 def parse_args(self, args):
93 '''Parse a list of aruments
94
95 diff --git a/gkeys/gkeys/seed.py b/gkeys/gkeys/seed.py
96 index 16fe0fd..67354f3 100644
97 --- a/gkeys/gkeys/seed.py
98 +++ b/gkeys/gkeys/seed.py
99 @@ -57,6 +57,12 @@ class Seeds(object):
100 self._error(err)
101 return False
102 for seed in list(seedlines.items()):
103 + # GKEY class change auto-update
104 + if not 'uid' in list(seed[1]):
105 + seed[1]['uid'] = []
106 + if not 'keys' in list(seed[1]):
107 + seed[1]['keys'] = seed[1]['fingerprint'][:]
108 +
109 #try:
110 self.seeds[seed[0]] = GKEY(**seed[1])
111 #except Exception as err:
112
113 diff --git a/gkeys/gkeys/seedhandler.py b/gkeys/gkeys/seedhandler.py
114 index 33ed787..a9fb720 100644
115 --- a/gkeys/gkeys/seedhandler.py
116 +++ b/gkeys/gkeys/seedhandler.py
117 @@ -111,6 +111,11 @@ class SeedHandler(object):
118 if seed:
119 for nick in sorted(seed):
120 key = seed[nick]
121 + # GKEY class change auto-update
122 + if not 'uid' in list(key):
123 + key['uid'] = []
124 + if not 'keys' in list(key):
125 + key['keys'] = key['fingerprint'][:]
126 seeds.add(nick, GKEY(**key))
127 except OSError as error:
128 self.logger.debug("SeedHandler: load_category; OSError for %s" % catdir)