summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNachi Ueno <nati.ueno@gmail.com>2011-01-12 12:05:27 +0900
committerNachi Ueno <nati.ueno@gmail.com>2011-01-12 12:05:27 +0900
commitd368d182d7fa4b0f0cd9c7c5ad1e804b19365b26 (patch)
tree0095abaf5e424fbeefaef43d94c381bf4f46fc27
parent1629dcf935a29c01d4e4ad509e33356daa93b051 (diff)
Add DescribeInstanceV6 for backward compatibility
-rw-r--r--contrib/boto_v6/ec2/connection.py2
-rw-r--r--nova/api/ec2/cloud.py10
2 files changed, 9 insertions, 3 deletions
diff --git a/contrib/boto_v6/ec2/connection.py b/contrib/boto_v6/ec2/connection.py
index 151b76a55..23466e5d7 100644
--- a/contrib/boto_v6/ec2/connection.py
+++ b/contrib/boto_v6/ec2/connection.py
@@ -37,5 +37,5 @@ class EC2ConnectionV6(boto.ec2.EC2Connection):
self.build_list_params(params, instance_ids, 'InstanceId')
if filters:
self.build_filter_params(params, filters)
- return self.get_list('DescribeInstances', params,
+ return self.get_list('DescribeInstancesV6', params,
[('item', ReservationV6)])
diff --git a/nova/api/ec2/cloud.py b/nova/api/ec2/cloud.py
index 8c925ffee..3d071782c 100644
--- a/nova/api/ec2/cloud.py
+++ b/nova/api/ec2/cloud.py
@@ -643,15 +643,21 @@ class CloudController(object):
def describe_instances(self, context, **kwargs):
return self._format_describe_instances(context)
+ def describe_instances_v6(self, context, **kwargs):
+ return self._format_describe_instances(context)
+
def _format_describe_instances(self, context):
return {'reservationSet': self._format_instances(context)}
+ def _format_describe_instances_v6(self, context):
+ return {'reservationSet': self._format_instances(context,None,True)}
+
def _format_run_instances(self, context, reservation_id):
i = self._format_instances(context, reservation_id)
assert len(i) == 1
return i[0]
- def _format_instances(self, context, reservation_id=None):
+ def _format_instances(self, context, reservation_id=None,use_v6=False):
reservations = {}
if reservation_id:
instances = db.instance_get_all_by_reservation(context,
@@ -677,7 +683,7 @@ class CloudController(object):
if instance['fixed_ip']['floating_ips']:
fixed = instance['fixed_ip']
floating_addr = fixed['floating_ips'][0]['address']
- if instance['fixed_ip']['network'] and FLAGS.use_ipv6:
+ if instance['fixed_ip']['network'] and use_v6:
i['dnsNameV6'] = utils.to_global_ipv6(
instance['fixed_ip']['network']['cidr_v6'],
instance['mac_address'])