def main(): # init conf and logging conf = cfg.CONF conf.register_cli_opts(OPTS) conf.register_opts(OPTS) conf() logging.setup('stackalytics') LOG.info('Logging enabled') persistent_storage = PersistentStorageFactory.get_storage( cfg.CONF.persistent_storage_uri) if conf.sync_default_data or conf.force_sync_default_data: LOG.info('Going to synchronize persistent storage with default data ' 'from file %s' % cfg.CONF.default_data) persistent_storage.sync(cfg.CONF.default_data, force=conf.force_sync_default_data) return 0 runtime_storage = RuntimeStorageFactory.get_storage( cfg.CONF.runtime_storage_uri) update_pids(runtime_storage) update_repos(runtime_storage, persistent_storage)
def get_vault(): vault = getattr(app, 'stackalytics_vault', None) if not vault: vault = {} vault['runtime_storage'] = RuntimeStorageFactory.get_storage( RUNTIME_STORAGE_URI) vault['persistent_storage'] = PersistentStorageFactory.get_storage( PERSISTENT_STORAGE_URI) vault['memory_storage'] = ( memory_storage.MemoryStorageFactory.get_storage( memory_storage.MEMORY_STORAGE_CACHED, vault['runtime_storage'].get_update(os.getpid()))) releases = vault['persistent_storage'].get_releases() vault['releases'] = dict((r['release_name'].lower(), r) for r in releases) app.stackalytics_vault = vault return vault