[pkg-eucalyptus-commits] [SCM] managing cloud instances for Eucalyptus branch, master, updated. 3.0.0-alpha3-257-g1da8e3a
Matt Spaulding
mspaulding06 at gmail.com
Sun Jun 16 02:31:12 UTC 2013
The following commit has been merged in the master branch:
commit cde75f5cde6c18e329a6cfa510112f0f2228d7d9
Author: Matt Spaulding <mspaulding06 at gmail.com>
Date: Tue Apr 30 08:37:30 2013 -0700
TOOLS-311 More information when describing AS groups
* Add instance information
* Add suspended process information
* Add enabled metrics information
Fixes TOOLS-311
diff --git a/euca2ools/commands/autoscaling/describeautoscalinggroups.py b/euca2ools/commands/autoscaling/describeautoscalinggroups.py
index bf3e186..ee77fc6 100644
--- a/euca2ools/commands/autoscaling/describeautoscalinggroups.py
+++ b/euca2ools/commands/autoscaling/describeautoscalinggroups.py
@@ -56,6 +56,7 @@ class DescribeAutoScalingGroups(AutoScalingRequest, TabifyingCommand):
return response.get('NextToken') or None
def print_result(self, result):
+ lines = []
for group in result.get('AutoScalingGroups', []):
bits = ['AUTO-SCALING-GROUP']
bits.append(group.get('AutoScalingGroupName'))
@@ -84,4 +85,36 @@ class DescribeAutoScalingGroups(AutoScalingRequest, TabifyingCommand):
bits.append(','.join(policies))
else:
bits.append(None)
- print self.tabify(bits)
+ lines.append(self.tabify(bits))
+ for instance in group.get('Instances', []):
+ lines.append(self._get_tabified_instance(instance))
+ scale_group = group.get('AutoScalingGroupName')
+ for process in group.get('SuspendedProcesses', []):
+ lines.append(self._get_tabified_suspended_process(process,
+ scale_group))
+ for metric in group.get('EnabledMetrics', []):
+ lines.append(self._get_tabified_metric(metric))
+ for line in lines:
+ print line
+
+ def _get_tabified_instance(self, instance):
+ return self.tabify(['INSTANCE',
+ instance.get('InstanceId'),
+ instance.get('AvailabilityZone'),
+ instance.get('LifecycleState'),
+ instance.get('HealthStatus'),
+ instance.get('LaunchConfigurationName')
+ ])
+
+ def _get_tabified_suspended_process(self, process, scale_group):
+ return self.tabify(['SUSPENDED-PROCESS',
+ process.get('ProcessName'),
+ process.get('SuspensionReason'),
+ scale_group
+ ])
+
+ def _get_tabified_metric(self, metric):
+ return self.tabify(['ENABLED-METRICS',
+ metric.get('Metric'),
+ metric.get('Granularity')
+ ])
--
managing cloud instances for Eucalyptus
More information about the pkg-eucalyptus-commits
mailing list