move rr_observer into observers/requestrouter
diff --git a/xos/observers/requestrouter/deleters/servicemap_deleter.py b/xos/observers/requestrouter/deleters/servicemap_deleter.py
new file mode 100644
index 0000000..5e4b5a4
--- /dev/null
+++ b/xos/observers/requestrouter/deleters/servicemap_deleter.py
@@ -0,0 +1,42 @@
+import os
+import sys
+import traceback
+from services.requestrouter.models import ServiceMap
+from observer.deleter import Deleter
+from util.logger import Logger, logging
+from xos.config import Config, XOS_DIR
+
+parentdir = os.path.join(os.path.dirname(__file__),"..")
+sys.path.insert(0,parentdir)
+
+from rrlib import RequestRouterLibrary
+from configurationPush import ConfigurationPush
+import rrlib_config
+
+logger = Logger(level=logging.INFO)
+
+class ServiceMapDeleter(Deleter, RequestRouterLibrary, ConfigurationPush):
+ model='ServiceMap'
+
+ def __init__(self, **args):
+ Deleter.__init__(self, **args)
+ RequestRouterLibrary.__init__(self)
+ ConfigurationPush.__init__(self)
+
+
+ def call(self, pk, model_dict):
+ try:
+ servicemap = ServiceMap.objects.get(pk=pk)
+ service_uid = self.get_servicemap_uid(servicemap)
+ self.config_push(service_uid, rrlib_config.REDIR_USER, XOS_DIR + "/observers/requestrouter/playbook/site_redir_delete.yml", "/etc/ansible/requestrouter/dnsredir/hosts")
+ self.config_push(service_uid, rrlib_config.DEMUX_USER, XOS_DIR + "/observers/requestrouter/playbook/site_demux_delete.yml", "/etc/ansible/requestrouter/dnsdemux/hosts")
+ print "XXX delete ServiceMap %s", servicemap.name
+ return True
+ except Exception, e:
+ traceback.print_exc()
+ logger.exception("Failed to erase map '%s'" % map_name)
+ return False
+
+if __name__ == "__main__":
+ smap = ServiceMapDeleter()
+ smap.call( 6, {'name': 'Service23'} )