From 39dcaf35142bf335957db23358c14513779ac802 Mon Sep 17 00:00:00 2001
From: Kenny Woodson <kwoodson@redhat.com>
Date: Thu, 29 Oct 2015 15:58:44 -0400
Subject: Updating multi_ec2 to support extra_vars and extra_groups

---
 inventory/multi_ec2.py | 31 ++++++++++++++++---------------
 1 file changed, 16 insertions(+), 15 deletions(-)

(limited to 'inventory')

diff --git a/inventory/multi_ec2.py b/inventory/multi_ec2.py
index 23cf5ecf1..98dde3f3c 100755
--- a/inventory/multi_ec2.py
+++ b/inventory/multi_ec2.py
@@ -241,23 +241,24 @@ class MultiEc2(object):
         '''
         results = self.all_ec2_results[acc_config['name']]
 
-        # Update each hostvar with the newly desired key: value
-        for new_var, value in acc_config.get('extra_vars', {}).items():
-            # Verify the account results look sane
-            # by checking for these keys ('_meta' and 'hostvars' exist)
-            if results.has_key('_meta') and results['_meta'].has_key('hostvars'):
-                for data in results['_meta']['hostvars'].values():
-                    data[str(new_var)] = str(value)
-
-            # Add this group
-            if results.has_key(acc_config['all_group']):
-                results["%s_%s" % (new_var, value)] = \
-                 copy.copy(results[acc_config['all_group']])
+        # Update each hostvar with the newly desired key: value from extra_*
+        for _extra in ['extra_groups', 'extra_vars']:
+            for new_var, value in acc_config.get(_extra, {}).items():
+                # Verify the account results look sane
+                # by checking for these keys ('_meta' and 'hostvars' exist)
+                if results.has_key('_meta') and results['_meta'].has_key('hostvars'):
+                    for data in results['_meta']['hostvars'].values():
+                        data[str(new_var)] = str(value)
+
+                # Add this group
+                if _extra == 'extra_groups' and results.has_key(acc_config['all_group']):
+                    results["%s_%s" % (new_var, value)] = \
+                     copy.copy(results[acc_config['all_group']])
 
         # Clone groups goes here
-        for name_from, name_to in acc_config.get('clone_groups', {}).items():
-            if results.has_key(name_from):
-                results[name_to] = copy.copy(results[name_from])
+        for to_name, from_name in acc_config.get('clone_groups', {}).items():
+            if results.has_key(from_name):
+                results[to_name] = copy.copy(results[from_name])
 
         # Clone vars goes here
         for to_name, from_name in acc_config.get('clone_vars', {}).items():
-- 
cgit v1.2.3