def init(dbs=[], services={}, templates=False): """Initialise Starts up most of the modules needed to support REST and Services Arguments: dbs (str[]): List of DBs to start up services (dict): Dictionary of service name to instance being managed by the caller Returns: REST.Config """ # Load the config Conf.load('config.json') sConfOverride = 'config.%s.json' % platform.node() if os.path.isfile(sConfOverride): Conf.load_merge(sConfOverride) # Add the global prepend Record_Base.dbPrepend(Conf.get(("mysql", "prepend"), '')) # Go through the list of DBs requested for s in dbs: Record_MySQL.addHost(s, Conf.get(("mysql", "hosts", s))) # Init the Sesh module Sesh.init(Conf.get(("redis", "primary"))) # Create the REST config instance oRestConf = REST.Config(Conf.get("rest")) # Set verbose mode if requested if 'VERBOSE' in os.environ and os.environ['VERBOSE'] == '1': Services.verbose() # Get all the services dServices = {k:None for k in Conf.get(('rest', 'services'))} # Overwrite those passed in for n,o in services.items(): dServices[n] = o # Register all services Services.register(dServices, oRestConf, Conf.get(('services', 'salt'))) # Init Templates if templates: Templates.init(templates) # Return the REST config return oRestConf
sVer = sys.argv[1].replace('.', '_') # Load the config Conf.load('../config.json') sConfOverride = '../config.%s.json' % platform.node() if os.path.isfile(sConfOverride): Conf.load_merge(sConfOverride) # Add the global prepend and primary host to rethinkdb Record_Base.dbPrepend(Conf.get(("rethinkdb", "prepend"), '')) Record_ReDB.addHost('primary', Conf.get(("rethinkdb", "hosts", "primary"))) # Register all services Services.register( {k:None for k in Conf.get(('rest', 'services'))}, REST.Config(Conf.get("rest")), Conf.get(('services', 'salt')) ) # Try to import the version try: oVer = importlib.import_module('upgrades.%s' % sVer) except ImportError as e: print('The given version "%s" is invalid.' % sVer) print(e) sys.exit(1) # Load or create the version file oLogFile = UpgradeLog('upgrades/%s/_upgrade.log' % sVer) # Run the version files
if os.path.isfile(sConfOverride): Conf.load_merge(sConfOverride) # Init the Sesh module Sesh.init(Conf.get(("redis", "session"))) # Create the REST config instance oRestConf = REST.Config(Conf.get("rest")) # Set verbose mode if requested if 'AXE_VERBOSE' in os.environ and os.environ['AXE_VERBOSE'] == '1': Services.verbose() # Register all necessary services Services.register({ "auth": None, "webpoll": WebPoll() }, oRestConf, Conf.get(('services', 'salt'))) # Create the HTTP server and map requests to service REST.Server( { "/clear": { "methods": REST.UPDATE, "session": True }, "/join": { "methods": REST.CREATE, "session": True }, "/leave": { "methods": REST.CREATE,
Record_Base.dbPrepend(Conf.get(("rethinkdb", "prepend"), '')) Record_ReDB.addHost('primary', Conf.get(("rethinkdb", "hosts", "primary"))) # Init the Sesh module Sesh.init(Conf.get(("redis", "session"))) # Create the REST config instance oRestConf = REST.Config(Conf.get("rest")) # Set verbose mode if requested if 'AXE_VERBOSE' in os.environ and os.environ['AXE_VERBOSE'] == '1': Services.verbose() # Register all necessary services Services.register({ "auth": None, "watl": Watl() }, oRestConf, Conf.get(('services', 'salt'))) # Create the HTTP server and map requests to service REST.Server({ "/match": {"methods": REST.CREATE | REST.DELETE | REST.READ, "session": True}, "/match/overtime": {"methods": REST.UPDATE, "session": True}, "/match/finish/overtime": {"methods": REST.UPDATE, "session": True}, "/match/finish/game": {"methods": REST.UPDATE, "session": True}, "/match/game": {"methods": REST.UPDATE, "session": True}, "/match/stats": {"methods": REST.READ, "session": True}, "/match/unfinished": {"methods": REST.READ, "session": True}, "/practice": {"methods": REST.CREATE, "session": True}, "/practice/data": {"methods": REST.READ, "session": True}, "/practice/pattern": {"methods": REST.CREATE | REST.DELETE | REST.UPDATE, "session": True},
Record_Base.dbPrepend(Conf.get(("rethinkdb", "prepend"), '')) Record_ReDB.addHost('primary', Conf.get(("rethinkdb", "hosts", "primary"))) # Init the Sesh module Sesh.init(Conf.get(("redis", "session"))) # Create the REST config instance oRestConf = REST.Config(Conf.get("rest")) # Set verbose mode if requested if 'AXE_VERBOSE' in os.environ and os.environ['AXE_VERBOSE'] == '1': Services.verbose() # Register all necessary services Services.register({ "auth": None, "natf": Natf() }, oRestConf, Conf.get(('services', 'salt'))) # Create the HTTP server and map requests to service REST.Server( { "/match": { "methods": REST.CREATE | REST.DELETE | REST.READ, "session": True }, "/match/bigaxe/points": { "methods": REST.UPDATE, "session": True }, "/match/bigaxe/target": { "methods": REST.UPDATE,
Conf.load('../config.json') sConfOverride = '../config.%s.json' % platform.node() if os.path.isfile(sConfOverride): Conf.load_merge(sConfOverride) # Create the REST config instance oRestConf = REST.Config(Conf.get("rest")) # Set verbose mode if requested _bVerbose = False if 'AXE_VERBOSE' in os.environ and os.environ['AXE_VERBOSE'] == '1': _bVerbose = True # Register the Services that will be accessible Services.register({ "auth": None, "communications": None }, oRestConf, Conf.get(('services', 'salt'))) def emailEffect(effect, info): """Email Effect Sends the effect to a developer so they are aware of the error Arguments: effect {Services.Effect} -- The effect to send info {dict} -- Info about the request Returns: None """
# Load the config Conf.load('../config.json') sConfOverride = '../config.%s.json' % platform.node() if os.path.isfile(sConfOverride): Conf.load_merge(sConfOverride) # Init the SMTP module SMTP.init(**Conf.get(('email', 'smtp'))) # Create the REST config instance oRestConf = REST.Config(Conf.get("rest")) # Set verbose mode if requested if 'AXE_VERBOSE' in os.environ and os.environ['AXE_VERBOSE'] == '1': Services.verbose() # Register the Services that will be accessible Services.register({ "communications": Communications() }, oRestConf, Conf.get(('services', 'salt'))) # Create the HTTP server and map requests to service REST.Server({ "/email": {"methods": REST.POST}, "/sms": {"methods": REST.POST}, }, 'communications').run( host=oRestConf['communications']['host'], port=oRestConf['communications']['port'], workers=oRestConf['communications']['workers'] )
# Init the Sesh module Sesh.init(Conf.get(("redis", "session"))) # Create the REST config instance oRestConf = REST.Config(Conf.get("rest")) # Set verbose mode if requested if 'AXE_VERBOSE' in os.environ and os.environ['AXE_VERBOSE'] == '1': Services.verbose() # Get all the services dServices = {k: None for k in Conf.get(('rest', 'services'))} dServices['auth'] = Auth() # Register all services Services.register(dServices, oRestConf, Conf.get(('services', 'salt'))) # Init Templates Templates.init('../templates') # Create the HTTP server and map requests to service REST.Server( { "/favourite": { "method": REST.CREATE | REST.DELETE, "session": True }, "/favourites": { "method": REST.READ, "session": True },