diff options
| author | Nachi Ueno <nati.ueno@gmail.com> | 2011-01-12 12:05:27 +0900 |
|---|---|---|
| committer | Nachi Ueno <nati.ueno@gmail.com> | 2011-01-12 12:05:27 +0900 |
| commit | d368d182d7fa4b0f0cd9c7c5ad1e804b19365b26 (patch) | |
| tree | 0095abaf5e424fbeefaef43d94c381bf4f46fc27 | |
| parent | 1629dcf935a29c01d4e4ad509e33356daa93b051 (diff) | |
Add DescribeInstanceV6 for backward compatibility
| -rw-r--r-- | contrib/boto_v6/ec2/connection.py | 2 | ||||
| -rw-r--r-- | nova/api/ec2/cloud.py | 10 |
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']) |
