diff options
author | Kenny Woodson <kwoodson@redhat.com> | 2014-12-18 12:52:30 -0500 |
---|---|---|
committer | Kenny Woodson <kwoodson@redhat.com> | 2014-12-18 13:21:14 -0500 |
commit | 2d7624e4f06cb053487059989def7b8b647b57a0 (patch) | |
tree | c344c448fbe72531d6ae0ea5dd194ad62375a8f9 /inventory | |
parent | 164094a4adddc767f894b6b42c9ceff0d4bae19e (diff) | |
download | openshift-2d7624e4f06cb053487059989def7b8b647b57a0.tar.gz openshift-2d7624e4f06cb053487059989def7b8b647b57a0.tar.bz2 openshift-2d7624e4f06cb053487059989def7b8b647b57a0.tar.xz openshift-2d7624e4f06cb053487059989def7b8b647b57a0.zip |
unittest for merge_destructively. More to come
Added a readme so its obvious how to run tests
Leaving this alone. Getting cleaned up in next PR
Fixing space
Diffstat (limited to 'inventory')
-rwxr-xr-x | inventory/multi_ec2.py | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/inventory/multi_ec2.py b/inventory/multi_ec2.py index 1fe18a67e..97fd10f36 100755 --- a/inventory/multi_ec2.py +++ b/inventory/multi_ec2.py @@ -119,6 +119,7 @@ class MultiEc2(object): "code": process.returncode }) + # process --host results if not self.args.host: # For any non-zero, raise an error on it for result in all_results: @@ -128,7 +129,7 @@ class MultiEc2(object): self.all_ec2_results[result['name']] = json.loads(result['out']) values = self.all_ec2_results.values() values.insert(0, self.result) - [self.merge_destructively(self.result, x) for x in values] + [MultiEc2.merge_destructively(self.result, x) for x in values] else: # For any 0 result, return it count = 0 @@ -139,12 +140,13 @@ class MultiEc2(object): if count > 1: raise RuntimeError("Found > 1 results for --host %s. \ This is an invalid state." % self.args.host) - def merge_destructively(self, a, b): + @staticmethod + def merge_destructively(a, b): "merges b into a" for key in b: if key in a: if isinstance(a[key], dict) and isinstance(b[key], dict): - self.merge_destructively(a[key], b[key]) + MultiEc2.merge_destructively(a[key], b[key]) elif a[key] == b[key]: pass # same leaf value # both lists so add each element in b to a if it does ! exist @@ -181,7 +183,7 @@ class MultiEc2(object): parser = argparse.ArgumentParser(description='Produce an Ansible Inventory file based on a provider') parser.add_argument('--list', action='store_true', default=True, help='List instances (default: True)') - parser.add_argument('--host', action='store', + parser.add_argument('--host', action='store', default=False, help='Get all the variables about a specific instance') self.args = parser.parse_args() |