blob: 7a67896604eeaa7a1f72dee8dcbb7dfe5b3052bc [file] [log] [blame]
Sapan Bhatia24836f12013-08-27 10:16:05 -04001import os
2import base64
3from planetstack.config import Config
Tony Mack66646d52013-09-24 21:47:12 -04004from observer.openstacksyncstep import OpenStackSyncStep
Sapan Bhatia24836f12013-08-27 10:16:05 -04005
Tony Mack66646d52013-09-24 21:47:12 -04006class SyncExternalRoutes(OpenStackSyncStep):
7 # XXX what does this provide?
8 provides=[]
9 requested_interval = 86400 # This step is slow like a pig. Let's run it infrequently
Sapan Bhatia2ef36c82013-09-02 14:30:37 -040010
Tony Mack66646d52013-09-24 21:47:12 -040011 def __init__(self):
12 pass
Sapan Bhatia04c94ad2013-09-02 18:00:28 -040013
Tony Mack66646d52013-09-24 21:47:12 -040014 def call(self):
15 routes = self.driver.get_external_routes()
16 subnets = self.driver.shell.quantum.list_subnets()['subnets']
17 for subnet in subnets:
18 try:
19 self.driver.add_external_route(subnet, routes)
20 except:
21 logger.log_exc("failed to add external route for subnet %s" % subnet)