Tony Mack | 71592a5 | 2013-03-28 20:17:47 -0400 | [diff] [blame] | 1 | #!/usr/bin/env python |
| 2 | import os |
| 3 | import sys |
Tony Mack | 745bf6e | 2013-04-17 11:06:35 -0400 | [diff] [blame] | 4 | import threading |
Tony Mack | 71592a5 | 2013-03-28 20:17:47 -0400 | [diff] [blame] | 5 | |
Siobhan Tully | 30fd429 | 2013-05-10 08:59:56 -0400 | [diff] [blame^] | 6 | from planetstack.config import Config |
| 7 | from openstack.sliveragent import SliverAgent |
| 8 | from openstack.siteagent import SiteAgent |
Tony Mack | 71592a5 | 2013-03-28 20:17:47 -0400 | [diff] [blame] | 9 | |
| 10 | if __name__ == '__main__': |
| 11 | |
Tony Mack | cd6bf66 | 2013-04-30 18:20:27 -0400 | [diff] [blame] | 12 | # bootstrap envirnment |
Tony Mack | 71592a5 | 2013-03-28 20:17:47 -0400 | [diff] [blame] | 13 | from django.core.management import ManagementUtility |
| 14 | config = Config() |
Tony Mack | e02d720 | 2013-03-29 11:23:56 -0400 | [diff] [blame] | 15 | url = "%s:%s" % (config.api_host, config.api_port) |
Tony Mack | 71592a5 | 2013-03-28 20:17:47 -0400 | [diff] [blame] | 16 | args = [__file__, 'runserver', url] |
Tony Mack | cd6bf66 | 2013-04-30 18:20:27 -0400 | [diff] [blame] | 17 | |
| 18 | # run site agent once on startup |
| 19 | SiteAgent().run() |
| 20 | |
| 21 | # start the sliver agent thread |
Tony Mack | 704c1b0 | 2013-04-17 10:45:45 -0400 | [diff] [blame] | 22 | sliver_agent = SliverAgent() |
Tony Mack | 745bf6e | 2013-04-17 11:06:35 -0400 | [diff] [blame] | 23 | sliver_agent_thread = threading.Thread(target=sliver_agent.run) |
| 24 | sliver_agent_thread.start() |
Tony Mack | cd6bf66 | 2013-04-30 18:20:27 -0400 | [diff] [blame] | 25 | |
| 26 | # start the server |
| 27 | server = ManagementUtility(args) |
Tony Mack | 745bf6e | 2013-04-17 11:06:35 -0400 | [diff] [blame] | 28 | server.execute() |