#!/usr/bin/env python
import os
import sys
+import threading
from plstackapi.planetstack.config import Config
+from plstackapi.openstack.sliveragent import SliverAgent
+from plstackapi.openstack.siteagent import SiteAgent
if __name__ == '__main__':
+ # bootstrap envirnment
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "plstackapi.planetstack.settings")
from django.core.management import ManagementUtility
config = Config()
url = "%s:%s" % (config.api_host, config.api_port)
args = [__file__, 'runserver', url]
+
+ # run site agent once on startup
+ SiteAgent().run()
+
+ # start the sliver agent thread
+ sliver_agent = SliverAgent()
+ sliver_agent_thread = threading.Thread(target=sliver_agent.run)
+ sliver_agent_thread.start()
+
+ # start the server
server = ManagementUtility(args)
server.execute()