4 from requestrouter.models import ServiceMap
5 from observer.deleter import Deleter
6 from util.logger import Logger, logging
8 parentdir = os.path.join(os.path.dirname(__file__),"..")
9 sys.path.insert(0,parentdir)
11 from rrlib import RequestRouterLibrary
12 from configurationPush import ConfigurationPush
15 logger = Logger(level=logging.INFO)
17 class ServiceMapDeleter(Deleter, RequestRouterLibrary, ConfigurationPush):
20 def __init__(self, **args):
21 Deleter.__init__(self, **args)
22 RequestRouterLibrary.__init__(self)
23 ConfigurationPush.__init__(self)
26 def call(self, pk, model_dict):
28 servicemap = ServiceMap.objects.get(pk=pk)
29 service_uid = self.get_servicemap_uid(servicemap)
30 self.config_push(service_uid, rrlib_config.REDIR_USER, "/opt/planetstack/rr_observer/playbook/site_redir_delete.yml", "/etc/ansible/requestrouter/dnsredir/hosts")
31 self.config_push(service_uid, rrlib_config.DEMUX_USER, "/opt/planetstack/rr_observer/playbook/site_demux_delete.yml", "/etc/ansible/requestrouter/dnsdemux/hosts")
32 print "XXX delete ServiceMap %s", servicemap.name
36 logger.exception("Failed to erase map '%s'" % map_name)
39 if __name__ == "__main__":
40 smap = ServiceMapDeleter()
41 smap.call( 6, {'name': 'Service23'} )