diff options
author | Kenny Woodson <kwoodson@redhat.com> | 2015-02-11 14:41:52 -0500 |
---|---|---|
committer | Kenny Woodson <kwoodson@redhat.com> | 2015-02-11 14:41:52 -0500 |
commit | 603c79412df1b141230ec55f032ad086ada37097 (patch) | |
tree | b7b219426d893ad7c18f8389793b4f7b929124d8 /bin/ossh | |
parent | 7d368f62f06a37a92cf8d644842c338ba55b1d67 (diff) | |
download | openshift-603c79412df1b141230ec55f032ad086ada37097.tar.gz openshift-603c79412df1b141230ec55f032ad086ada37097.tar.bz2 openshift-603c79412df1b141230ec55f032ad086ada37097.tar.xz openshift-603c79412df1b141230ec55f032ad086ada37097.zip |
Checking in oscp.
Diffstat (limited to 'bin/ossh')
-rwxr-xr-x | bin/ossh | 29 |
1 files changed, 13 insertions, 16 deletions
@@ -99,31 +99,28 @@ class Ossh(object): dict['servername'] = dns_name ''' if cache_only: - self.host_inventory = self.ansible.build_host_dict(['--cache-only']) + self.host_inventory = self.ansible.build_host_dict_by_env(['--cache-only']) else: - self.host_inventory = self.ansible.build_host_dict() + self.host_inventory = self.ansible.build_host_dict_by_env() - def select_host(self, regex=False): + def select_host(self): '''select host attempts to match the host specified on the command line with a list of hosts. - - if regex is specified then we will attempt to match - all *{host_string}* equivalents. ''' - re_host = re.compile(self.host) - results = [] - for hostname, server_info in self.host_inventory[self.env].items(): - if hostname.split(':')[0] == self.host: - # an exact match, return it! - return [(hostname, server_info)] - elif re_host.search(hostname): - results.append((hostname, server_info)) + for env in self.host_inventory.keys(): + for hostname, server_info in self.host_inventory[env].items(): + if hostname.split(':')[0] == self.host: + results.append((hostname, server_info)) + + # attempt to select the correct environment if specified + if self.env: + results = filter(lambda result: result[1]['ec2_tag_environment'] == self.env, results) if results: return results else: - print "Could not find specified host: %s in %s" % (self.host, self.env) + print "Could not find specified host: %s." % self.host # default - no results found. return None @@ -135,7 +132,7 @@ class Ossh(object): ''' if self.env: - results = self.select_host(True) + results = self.select_host() if len(results) == 1: hostname, server_info = results[0] sorted_keys = server_info.keys() |