summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--nova/api/ec2/cloud.py8
-rw-r--r--nova/common/memorycache.py2
-rw-r--r--nova/tests/api/ec2/test_cloud.py13
-rw-r--r--nova/tests/api/openstack/fakes.py6
-rw-r--r--nova/utils.py2
-rw-r--r--nova/virt/libvirt/imagecache.py2
6 files changed, 25 insertions, 8 deletions
diff --git a/nova/api/ec2/cloud.py b/nova/api/ec2/cloud.py
index 8628d0852..b66b15852 100644
--- a/nova/api/ec2/cloud.py
+++ b/nova/api/ec2/cloud.py
@@ -407,7 +407,7 @@ class CloudController(object):
def describe_key_pairs(self, context, key_name=None, **kwargs):
key_pairs = self.keypair_api.get_key_pairs(context, context.user_id)
- if not key_name is None:
+ if key_name is not None:
key_pairs = [x for x in key_pairs if x['name'] in key_name]
#If looking for non existent key pair
@@ -991,18 +991,22 @@ class CloudController(object):
def describe_instances(self, context, **kwargs):
# Optional DescribeInstances argument
instance_id = kwargs.get('instance_id', None)
+ filters = kwargs.get('filter', None)
instances = self._enforce_valid_instance_ids(context, instance_id)
return self._format_describe_instances(context,
instance_id=instance_id,
- instance_cache=instances)
+ instance_cache=instances,
+ filter=filters)
def describe_instances_v6(self, context, **kwargs):
# Optional DescribeInstancesV6 argument
instance_id = kwargs.get('instance_id', None)
+ filters = kwargs.get('filter', None)
instances = self._enforce_valid_instance_ids(context, instance_id)
return self._format_describe_instances(context,
instance_id=instance_id,
instance_cache=instances,
+ filter=filters,
use_v6=True)
def _format_describe_instances(self, context, **kwargs):
diff --git a/nova/common/memorycache.py b/nova/common/memorycache.py
index f77b3f51a..86057b6ae 100644
--- a/nova/common/memorycache.py
+++ b/nova/common/memorycache.py
@@ -70,7 +70,7 @@ class Client(object):
def add(self, key, value, time=0, min_compress_len=0):
"""Sets the value for a key if it doesn't exist."""
- if not self.get(key) is None:
+ if self.get(key) is not None:
return False
return self.set(key, value, time, min_compress_len)
diff --git a/nova/tests/api/ec2/test_cloud.py b/nova/tests/api/ec2/test_cloud.py
index a00dceff1..c60a0148e 100644
--- a/nova/tests/api/ec2/test_cloud.py
+++ b/nova/tests/api/ec2/test_cloud.py
@@ -824,6 +824,19 @@ class CloudTestCase(test.TestCase):
self.cloud.describe_instances, self.context,
instance_id=[instance_id])
+ def test_describe_instances_with_filters(self):
+ # Makes sure describe_instances works and filters results.
+ filters = {'filter': [{'name': 'test',
+ 'value': ['a', 'b']},
+ {'name': 'another_test',
+ 'value': 'a string'}]}
+
+ self._stub_instance_get_with_fixed_ips('get_all')
+ self._stub_instance_get_with_fixed_ips('get')
+
+ result = self.cloud.describe_instances(self.context, **filters)
+ self.assertEqual(result, {'reservationSet': []})
+
def test_describe_instances_sorting(self):
# Makes sure describe_instances works and is sorted as expected.
self.flags(use_ipv6=True)
diff --git a/nova/tests/api/openstack/fakes.py b/nova/tests/api/openstack/fakes.py
index 857644498..3ef98b902 100644
--- a/nova/tests/api/openstack/fakes.py
+++ b/nova/tests/api/openstack/fakes.py
@@ -399,12 +399,12 @@ def fake_instance_get_all_by_filters(num_servers=5, **kwargs):
server = stub_instance(id=i + 1, uuid=uuid,
**kwargs)
servers_list.append(server)
- if not marker is None and uuid == marker:
+ if marker is not None and uuid == marker:
found_marker = True
servers_list = []
- if not marker is None and not found_marker:
+ if marker is not None and not found_marker:
raise exc.MarkerNotFound(marker=marker)
- if not limit is None:
+ if limit is not None:
servers_list = servers_list[:limit]
return servers_list
return _return_servers
diff --git a/nova/utils.py b/nova/utils.py
index 52d4868c9..de9879393 100644
--- a/nova/utils.py
+++ b/nova/utils.py
@@ -628,7 +628,7 @@ class DynamicLoopingCall(LoopingCallBase):
if not self._running:
break
- if not periodic_interval_max is None:
+ if periodic_interval_max is not None:
idle = min(idle, periodic_interval_max)
LOG.debug(_('Periodic task processor sleeping for %.02f '
'seconds'), idle)
diff --git a/nova/virt/libvirt/imagecache.py b/nova/virt/libvirt/imagecache.py
index 3609205ce..ea7bded95 100644
--- a/nova/virt/libvirt/imagecache.py
+++ b/nova/virt/libvirt/imagecache.py
@@ -464,7 +464,7 @@ class ImageCacheManager(object):
# _verify_checksum returns True if the checksum is ok, and None if
# there is no checksum file
checksum_result = self._verify_checksum(img_id, base_file)
- if not checksum_result is None:
+ if checksum_result is not None:
image_bad = not checksum_result
# Give other threads a chance to run