summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xinventory/gce/gce.py18
-rw-r--r--lib/aws_command.rb11
2 files changed, 16 insertions, 13 deletions
diff --git a/inventory/gce/gce.py b/inventory/gce/gce.py
index c8eeb43ab..e77178c16 100755
--- a/inventory/gce/gce.py
+++ b/inventory/gce/gce.py
@@ -1,4 +1,4 @@
-#!/usr/bin/python
+#!/usr/bin/env python
# Copyright 2013 Google Inc.
#
# This file is part of Ansible
@@ -103,11 +103,13 @@ class GceInventory(object):
# Just display data for specific host
if self.args.host:
print self.json_format_dict(self.node_to_dict(
- self.get_instance(self.args.host)))
+ self.get_instance(self.args.host)),
+ pretty=self.args.pretty)
sys.exit(0)
# Otherwise, assume user wants all instances grouped
- print(self.json_format_dict(self.group_instances()))
+ print(self.json_format_dict(self.group_instances(),
+ pretty=self.args.pretty))
sys.exit(0)
def get_gce_driver(self):
@@ -187,6 +189,8 @@ class GceInventory(object):
help='List instances (default: True)')
parser.add_argument('--host', action='store',
help='Get all information about an instance')
+ parser.add_argument('--pretty', action='store_true', default=False,
+ help='Pretty format (default: False)')
self.args = parser.parse_args()
@@ -229,9 +233,14 @@ class GceInventory(object):
def group_instances(self):
'''Group all instances'''
groups = {}
+ meta = {}
+ meta["hostvars"] = {}
+
for node in self.driver.list_nodes():
name = node.name
+ meta["hostvars"][name] = self.node_to_dict(node)
+
zone = node.extra['zone'].name
if groups.has_key(zone): groups[zone].append(name)
else: groups[zone] = [name]
@@ -259,6 +268,9 @@ class GceInventory(object):
stat = 'status_%s' % status.lower()
if groups.has_key(stat): groups[stat].append(name)
else: groups[stat] = [name]
+
+ groups["_meta"] = meta
+
return groups
def json_format_dict(self, data, pretty=False):
diff --git a/lib/aws_command.rb b/lib/aws_command.rb
index 109542007..06a65aac1 100644
--- a/lib/aws_command.rb
+++ b/lib/aws_command.rb
@@ -76,16 +76,7 @@ module OpenShift
host_type = nil
if options[:name]
details = AwsHelper.get_host_details(options[:name])
-#- ah.extra_vars['oo_host_group_exp'] = options[:name]
-#- ah.extra_vars['oo_env'] = details['env']
-#- host_type = details['host-type']
-#+ ah.extra_vars['oo_host_group_exp'] = details['ec2_public_dns_name']
-#+ ah.extra_vars['oo_env'] = details['ec2_tag_environment']
-#+ host_type = details['ec2_tag_host-type']
-
-# ah.extra_vars['oo_host_group_exp'] = details['ec2_public_dns_name']
- ah.extra_vars['oo_host_group_exp'] = options[:name]
-# ah.extra_vars['oo_env'] = details['env']
+ ah.extra_vars['oo_host_group_exp'] = details['ec2_public_dns_name']
ah.extra_vars['oo_env'] = details['ec2_tag_environment']
host_type = details['ec2_tag_host-type']
elsif options[:type] && options[:env]