[pkg-eucalyptus-commits] [SCM] managing cloud instances for Eucalyptus branch, master, updated. 3.0.0-alpha3-257-g1da8e3a

Garrett Holmstrom gholms at fedoraproject.org
Sun Jun 16 02:30:39 UTC 2013


The following commit has been merged in the master branch:
commit 010c58a869db2e3757f529dfde45f6d03e566796
Author: Garrett Holmstrom <gholms at fedoraproject.org>
Date:   Thu Mar 7 16:53:40 2013 -0800

    Implement DescribeScalingActivities
    
    Fixes TOOLS-232

diff --git a/bin/kilo-describe-scaling-activities b/bin/kilo-describe-scaling-activities
new file mode 100755
index 0000000..21e1970
--- /dev/null
+++ b/bin/kilo-describe-scaling-activities
@@ -0,0 +1,6 @@
+#!/usr/bin/python -tt
+
+import euca2ools.commands.autoscaling.describescalingactivities
+
+if __name__ == '__main__':
+    euca2ools.commands.autoscaling.describescalingactivities.DescribeScalingActivities.run()
diff --git a/euca2ools/commands/autoscaling/describepolicies.py b/euca2ools/commands/autoscaling/describescalingactivities.py
similarity index 58%
copy from euca2ools/commands/autoscaling/describepolicies.py
copy to euca2ools/commands/autoscaling/describescalingactivities.py
index c243ee6..4cb5056 100644
--- a/euca2ools/commands/autoscaling/describepolicies.py
+++ b/euca2ools/commands/autoscaling/describescalingactivities.py
@@ -34,18 +34,19 @@ from requestbuilder.mixins import TabifyingCommand
 from requestbuilder.response import PaginatedResponse
 
 
-class DescribePolicies(AutoScalingRequest, TabifyingCommand):
-    DESCRIPTION = 'Describe auto-scaling policies'
-    ARGS = [Arg('PolicyNames.member', metavar='POLICY', nargs='*',
-                help='limit results to specific auto-scaling policies'),
+class DescribeScalingActivities(AutoScalingRequest, TabifyingCommand):
+    DESCRIPTION = 'Describe past and current auto-scaling activities'
+    ARGS = [Arg('ActivityIds.member', metavar='ACTIVITY', nargs='*',
+                help='limit results to specific auto-scaling activities'),
             Arg('-g', '--auto-scaling-group', dest='AutoScalingGroupName',
-                metavar='ASGROUP'),
+                metavar='ASGROUP', help='''name of an Auto Scaling group by
+                which to filter the request'''),
             Arg('--show-long', action='store_true', route_to=None,
-                help="show all of the policies' info")]
-    LIST_MARKERS = ['ScalingPolicies', 'Alarms']
+                help="show all of the groups' info")]
+    LIST_MARKERS = ['Activities']
 
     def main(self):
-        return PaginatedResponse(self, (None,), ('ScalingPolicies',))
+        return PaginatedResponse(self, (None,), ('Activities',))
 
     def prepare_for_page(self, page):
         # Pages are defined by NextToken
@@ -55,15 +56,21 @@ class DescribePolicies(AutoScalingRequest, TabifyingCommand):
         return response.get('NextToken') or None
 
     def print_result(self, result):
-        for policy in result.get('ScalingPolicies', []):
-            bits = ['SCALING-POLICY']
-            bits.append(policy.get('AutoScalingGroupName'))
-            bits.append(policy.get('PolicyName'))
-            bits.append(policy.get('ScalingAdjustment'))
+        for activity in result.get('Activities', []):
+            bits = ['ACTIVITY']
+            bits.append(activity.get('ActivityId'))
+            bits.append(activity.get('EndTime'))
+            bits.append(activity.get('AutoScalingGroupName'))
+            bits.append(activity.get('StatusCode'))
+            bits.append(activity.get('StatusMessage'))
             if self.args['show_long']:
-                bits.append(policy.get('MinAdjustmentStep'))
-            bits.append(policy.get('AdjustmentType'))
-            if self.args['show_long']:
-                bits.append(policy.get('Cooldown'))
-            bits.append(policy.get('PolicyARN'))
+                bits.append(activity.get('Cause'))
+                bits.append(activity.get('Progress'))
+                bits.append(activity.get('Description'))
+                # The AWS tool refers to this as "UPDATE-TIME", but seeing as
+                # the API doesn't actually have anything like that, the process
+                # of elimination dictates that this be the Details element in
+                # the response instead.
+                bits.append(activity.get('Details'))
+                bits.append(activity.get('StartTime'))
             print self.tabify(bits)

-- 
managing cloud instances for Eucalyptus



More information about the pkg-eucalyptus-commits mailing list