From 754b004c249dab85f610ea5e38ca116d80c99b47 Mon Sep 17 00:00:00 2001 From: Chris Meyers Date: Mon, 20 Apr 2015 17:15:32 -0400 Subject: [PATCH] add instance state --- awx/plugins/inventory/windows_azure.py | 13 +++++++------ awx/settings/defaults.py | 4 ++-- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/awx/plugins/inventory/windows_azure.py b/awx/plugins/inventory/windows_azure.py index 04a8c9ffd4..0d04b17392 100755 --- a/awx/plugins/inventory/windows_azure.py +++ b/awx/plugins/inventory/windows_azure.py @@ -118,7 +118,7 @@ class AzureInventory(object): the Windows Azure API provides. """ if hostname not in self.host_metadata: - return "No host found: %s" % hostname + return "No host found: %s" % json.dumps(self.host_metadata) if jsonify: return json.dumps(self.host_metadata[hostname]) return self.host_metadata[hostname] @@ -227,12 +227,12 @@ class AzureInventory(object): if ie.name == 'SSH': port = ie.public_port break - self.add_instance(role.instance_name, deployment, port, cloud_service) except AttributeError as e: - print json.dumps({ 'msg': 'Attribute error %s' % e }) - return + pass + finally: + self.add_instance(role.instance_name, deployment, port, cloud_service, role.instance_status) - def add_instance(self, hostname, deployment, ssh_port, cloud_service): + def add_instance(self, hostname, deployment, ssh_port, cloud_service, status): """Adds an instance to the inventory and index""" dest = urlparse(deployment.url).hostname @@ -241,7 +241,8 @@ class AzureInventory(object): self.index[hostname] = deployment.name self.host_metadata[hostname] = dict(ansible_ssh_host=dest, - ansible_ssh_port=int(ssh_port)) + ansible_ssh_port=int(ssh_port), + instance_status=status) # List of all azure deployments self.push(self.inventory, "azure", hostname) diff --git a/awx/settings/defaults.py b/awx/settings/defaults.py index 8309ca892c..21366bc6e0 100644 --- a/awx/settings/defaults.py +++ b/awx/settings/defaults.py @@ -513,8 +513,8 @@ AZURE_REGIONS_BLACKLIST = [] # Inventory variable name/value for determining whether a host is active # in Microsoft Azure. -AZURE_ENABLED_VAR = 'status' -AZURE_ENABLED_VALUE = 'created' +AZURE_ENABLED_VAR = 'instance_status' +AZURE_ENABLED_VALUE = 'ReadyRole' # Filter for allowed group and host names when importing inventory from # Microsoft Azure.