Revision 910ef222
b/lib/tools/prepare_node_join.py | ||
---|---|---|
58 | 58 |
constants.SSHS_SSH_ROOT_KEY: _SSH_KEY_LIST, |
59 | 59 |
}) |
60 | 60 |
|
61 |
_SSHK_TO_SSHAK = { |
|
62 |
constants.SSHK_RSA: constants.SSHAK_RSA, |
|
63 |
constants.SSHK_DSA: constants.SSHAK_DSS, |
|
64 |
} |
|
65 |
|
|
66 | 61 |
_SSH_DAEMON_KEYFILES = { |
67 | 62 |
constants.SSHK_RSA: |
68 | 63 |
(pathutils.SSH_HOST_RSA_PUB, pathutils.SSH_HOST_RSA_PRIV), |
... | ... | |
70 | 65 |
(pathutils.SSH_HOST_DSA_PUB, pathutils.SSH_HOST_DSA_PRIV), |
71 | 66 |
} |
72 | 67 |
|
73 |
assert frozenset(_SSHK_TO_SSHAK.keys()) == constants.SSHK_ALL |
|
74 |
assert frozenset(_SSHK_TO_SSHAK.values()) == constants.SSHAK_ALL |
|
75 |
|
|
76 | 68 |
|
77 | 69 |
class JoinError(errors.GenericError): |
78 | 70 |
"""Local class for reporting errors. |
... | ... | |
312 | 304 |
if dry_run: |
313 | 305 |
logging.info("This is a dry run, not modifying %s", auth_keys_file) |
314 | 306 |
else: |
315 |
for (kind, public_key, _) in keys: |
|
316 |
line = "%s %s" % (_SSHK_TO_SSHAK[kind], public_key) |
|
317 |
utils.AddAuthorizedKey(auth_keys_file, line) |
|
307 |
for (_, _, public_key) in keys: |
|
308 |
utils.AddAuthorizedKey(auth_keys_file, public_key) |
|
318 | 309 |
|
319 | 310 |
|
320 | 311 |
def LoadData(raw): |
b/test/ganeti.tools.prepare_node_join_unittest.py | ||
---|---|---|
287 | 287 |
def testUpdate(self): |
288 | 288 |
data = { |
289 | 289 |
constants.SSHS_SSH_ROOT_KEY: [ |
290 |
(constants.SSHK_DSA, "pubdsa", "privatedsa"), |
|
290 |
(constants.SSHK_DSA, "ssh-dss pubdsa", "privatedsa"),
|
|
291 | 291 |
] |
292 | 292 |
} |
293 | 293 |
|
... | ... | |
299 | 299 |
self.assertEqual(utils.ReadFile(utils.PathJoin(self.sshdir, "id_dsa")), |
300 | 300 |
"privatedsa") |
301 | 301 |
self.assertEqual(utils.ReadFile(utils.PathJoin(self.sshdir, "id_dsa.pub")), |
302 |
"pubdsa") |
|
302 |
"ssh-dss pubdsa")
|
|
303 | 303 |
self.assertEqual(utils.ReadFile(utils.PathJoin(self.sshdir, |
304 | 304 |
"authorized_keys")), |
305 | 305 |
"ssh-dss pubdsa\n") |
Also available in: Unified diff