summaryrefslogtreecommitdiffstats
path: root/bin/ossh
diff options
context:
space:
mode:
Diffstat (limited to 'bin/ossh')
-rwxr-xr-xbin/ossh23
1 files changed, 9 insertions, 14 deletions
diff --git a/bin/ossh b/bin/ossh
index c16ea6eda..855c5d8b4 100755
--- a/bin/ossh
+++ b/bin/ossh
@@ -11,11 +11,9 @@ import ConfigParser
from openshift_ansible import awsutil
CONFIG_MAIN_SECTION = 'main'
-CONFIG_INVENTORY_OPTION = 'inventory'
class Ossh(object):
def __init__(self):
- self.inventory = None
self.file_path = os.path.join(os.path.dirname(os.path.realpath(__file__)))
# Default the config path to /etc
@@ -26,13 +24,12 @@ class Ossh(object):
self.parse_cli_args()
self.parse_config_file()
- self.aws = awsutil.AwsUtil(self.inventory)
+ self.aws = awsutil.AwsUtil()
- # get a dict of host inventory
- if self.args.list:
- self.get_hosts()
- else:
+ if self.args.refresh_cache:
self.get_hosts(True)
+ else:
+ self.get_hosts()
# parse host and user
self.process_host()
@@ -55,10 +52,6 @@ class Ossh(object):
config = ConfigParser.ConfigParser()
config.read(self.config_path)
- if config.has_section(CONFIG_MAIN_SECTION) and \
- config.has_option(CONFIG_MAIN_SECTION, CONFIG_INVENTORY_OPTION):
- self.inventory = config.get(CONFIG_MAIN_SECTION, CONFIG_INVENTORY_OPTION)
-
def parse_cli_args(self):
parser = argparse.ArgumentParser(description='Openshift Online SSH Tool.')
parser.add_argument('-e', '--env', action="store",
@@ -67,6 +60,8 @@ class Ossh(object):
action="store_true", help="debug mode")
parser.add_argument('-v', '--verbose', default=False,
action="store_true", help="Verbose?")
+ parser.add_argument('--refresh-cache', default=False,
+ action="store_true", help="Force a refresh on the host cache.")
parser.add_argument('--list', default=False,
action="store_true", help="list out hosts")
parser.add_argument('-c', '--command', action='store',
@@ -109,14 +104,14 @@ class Ossh(object):
if self.args.login_name:
self.user = self.args.login_name
- def get_hosts(self, cache_only=False):
+ def get_hosts(self, refresh_cache=False):
'''Query our host inventory and return a dict where the format
equals:
dict['servername'] = dns_name
'''
- if cache_only:
- self.host_inventory = self.aws.build_host_dict_by_env(['--cache-only'])
+ if refresh_cache:
+ self.host_inventory = self.aws.build_host_dict_by_env(['--refresh-cache'])
else:
self.host_inventory = self.aws.build_host_dict_by_env()