99f2c01902d06cb132850f6bd255d2ee1a1faf6b
[plstackapi.git] / planetstack / openstack_observer / steps / sync_networks.py
1 import os
2 import base64
3 from django.db.models import F, Q
4 from planetstack.config import Config
5 from observer.openstacksyncstep import OpenStackSyncStep
6 from core.models.network import *
7 from util.logger import Logger, logging
8 from observer.steps.sync_network_deployments import *
9
10 logger = Logger(level=logging.INFO)
11
12 class SyncNetworks(OpenStackSyncStep):
13     provides=[Network]
14     requested_interval = 0
15
16     def sync_record(self, network):
17         network.save()
18
19     def delete_record(self, network):
20         network_deployment_deleter = SyncNetworkDeployments().delete_record
21         for network_deployment in NetworkDeployments.objects.filter(network=network):
22             try:
23                 network_deployment_deleter(network_deployment)    
24             except Exception,e:
25                 logger.log_exc("Failed to delete network deployment %s" % network_deployment)
26                 raise e