Devesh's changes to request router models and observer
[plstackapi.git] / planetstack / rr_observer / configurationPush.py
diff --git a/planetstack/rr_observer/configurationPush.py b/planetstack/rr_observer/configurationPush.py
new file mode 100644 (file)
index 0000000..857de8b
--- /dev/null
@@ -0,0 +1,30 @@
+import ansible.playbook
+import ansible.constants as C
+import ansible.utils.template
+from ansible import errors
+from ansible import callbacks
+from ansible import utils
+from subprocess import call
+
+class ConfigurationPush:
+       def __init__(self):
+               pass
+
+       def config_push(self, service_name, user, playbook_name,hostfile):
+               '''stats = callbacks.AggregateStats()
+               playbook_cb = callbacks.PlaybookCallbacks(verbose=utils.VERBOSITY)
+               runner_cb = callbacks.PlaybookRunnerCallbacks(stats, verbose=utils.VERBOSITY)
+               pb = ansible.playbook.PlayBook(playbook="playbook/site.yml",
+                                       callbacks=playbook_cb,
+                                       runner_callbacks=runner_cb,
+                                       stats=stats
+                                       )
+               result = pb.run()
+               print result
+               '''
+
+               call("ansible-playbook --private-key=planetw "+playbook_name+" -i "+hostfile+" -u "+user+"  --extra-vars \"name="+service_name+"\"", shell=True)
+       
+
+if __name__ == "__main__":
+        main()