3 from netaddr import IPAddress, IPNetwork
4 from django.db.models import F, Q
5 from planetstack.config import Config
6 from observer.openstacksyncstep import OpenStackSyncStep
7 from core.models.slice import Slice, ControllerSlice
8 from util.logger import Logger, logging
9 from observer.steps.sync_controller_slices import *
11 logger = Logger(level=logging.INFO)
13 class SyncSlices(OpenStackSyncStep):
17 def sync_record(self, slice):
18 for controller_slice in ControllerSlice.objects.filter(slice=slice):
19 # bump the 'updated' timestamp and trigger observer to update
20 # slice across all controllers
21 controller_slice.save()
23 def delete_record(self, slice):
24 controller_slice_deleter = SyncControllerSlice().delete_record
25 for controller_slice in ControllerSlice.objects.filter(slice=slice):
27 controller_slice_deleter(controller_slice)
29 logger.log_exc("Failed to delete controller_slice %s" % controller_slice)