Просмотр исходного кода

Only delete a network if it exists

Enis Afgan 10 лет назад
Родитель
Сommit
1abca9c422
1 измененных файлов с 6 добавлено и 6 удалено
  1. 6 6
      cloudbridge/cloud/providers/openstack/resources.py

+ 6 - 6
cloudbridge/cloud/providers/openstack/resources.py

@@ -574,11 +574,11 @@ class OpenStackNetwork(BaseNetwork):
         return ''
 
     def delete(self):
-        self._provider.neutron.delete_network(self.id)
+        if self.id in str(self._provider.neutron.list_networks()):
+            self._provider.neutron.delete_network(self.id)
         # Adhear to the interface docs
-        if self.id not in self._provider.neutron.list_networks():
+        if self.id not in str(self._provider.neutron.list_networks()):
             return True
-        return False
 
     def subnets(self):
         subnets = (self._provider.neutron.list_subnets(network_id=self.id)
@@ -623,11 +623,11 @@ class OpenStackSubnet(BaseSubnet):
         return self._subnet.get('network_id', None)
 
     def delete(self):
-        self._provider.neutron.delete_subnet(self.id)
+        if self.id in str(self._provider.neutron.list_subnets()):
+            self._provider.neutron.delete_subnet(self.id)
         # Adhear to the interface docs
-        if self.id not in self._provider.neutron.list_subnets():
+        if self.id not in str(self._provider.neutron.list_subnets()):
             return True
-        return False
 
 
 class OpenStackKeyPair(BaseKeyPair):