diff options
Diffstat (limited to 'odl-pipeline/lib/utils/ssh_util.py')
-rwxr-xr-x | odl-pipeline/lib/utils/ssh_util.py | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/odl-pipeline/lib/utils/ssh_util.py b/odl-pipeline/lib/utils/ssh_util.py new file mode 100755 index 0000000..e70aed3 --- /dev/null +++ b/odl-pipeline/lib/utils/ssh_util.py @@ -0,0 +1,36 @@ +# +# Copyright (c) 2015 All rights reserved +# This program and the accompanying materials +# are made available under the terms of the Apache License, Version 2.0 +# which accompanies this distribution, and is available at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# +import os +home = os.getenv("HOME") +SSH_CONFIG = {'TMP_SSH_CONFIG': "./tmp/ssh_config", + 'ID_RSA_PATH': "%s/.ssh/id_rsa" % home} + + +class SshUtil(object): + + @staticmethod + def gen_ssh_config(node_list): + config = ["UserKnownHostsFile=/dev/null", + "StrictHostKeyChecking=no", + "ForwardAgent yes", + "GSSAPIAuthentication=no", + "LogLevel ERROR"] + for node in node_list: + config.append(node.to_ssh_config()) + with open(SSH_CONFIG['TMP_SSH_CONFIG'], 'w') as f: + f.write('\n'.join(config)) + + @staticmethod + def get_config_file_path(): + return SSH_CONFIG['TMP_SSH_CONFIG'] + + @staticmethod + def get_id_rsa(): + return (SSH_CONFIG['ID_RSA_PATH']) |