def main(): #parse args parser = argparser_prepare() args = parser.parse_args() setup_logging(args.config_uri) getLogger('sqlalchemy.engine').setLevel(ERROR) settings = get_appsettings(args.config_uri) engine = engine_from_config(settings, 'sqlalchemy.') DBSession.configure(bind=engine) log(INFO, "Export started...") if args.simple_roads: SimpleRoad.export_to_geojson_file(args.output_path) else: Way.export_to_geojson_file(args.output_path) if args.zip: log(INFO, "Zip file...") import zipfile zf = zipfile.ZipFile(args.output_path+'.zip', 'w', zipfile.ZIP_DEFLATED, allowZip64=True) zf.write(args.output_path) zf.close() os.remove(args.output_path) log(INFO, "Export successful!")
def main(global_config, **settings): """ This function returns a Pyramid WSGI application. """ engine = engine_from_config(settings, 'sqlalchemy.') DBSession.configure(bind=engine) Base.metadata.bind = engine config = Configurator(settings=settings) config.include('pyramid_mako') config.include("cornice") config.add_static_view('static', 'static', cache_max_age=3600) config.add_route('map', '/') config.add_route('layer', '/layer') config.add_route('marker', '/marker') config.add_route('wms', '/wms') config.add_route('realtime', '/realtime') config.add_route('attributes', '/attributes') config.add_route('attributes_html', '/gis/card') config.add_route('incident', '/incident') config.add_route('center', '/center') config.add_route('routing_sample', '/routing_sample') config.add_route('routing_chainage_sample', '/routing_chainage_sample') config.add_route('code', '/code') config.add_route('time', '/time') config.add_route('clusters', '/clusters') config.add_route('sensors', '/sensors') config.add_route('object_selector', '/object_selector') config.add_route('repairs', '/repairs') config.add_route('repairs_status', '/repairs/status') # proxies url config.add_route('proxy_ngw', '/ngw/*target_url') config.add_route('proxy_cit', '/cit/*target_url') # routing url config.add_route('routing', '/routing') config.add_route('simple_routing', '/simple_routing') config.scan() return config.make_wsgi_app()
def main(argv=sys.argv): if len(argv) != 2: usage(argv) config_uri = argv[1] setup_logging(config_uri) settings = get_appsettings(config_uri) engine = engine_from_config(settings, "sqlalchemy.") DBSession.configure(bind=engine) Base.metadata.drop_all(engine) Base.metadata.create_all(engine) with transaction.manager: GasStation.import_from_geojson_file("rosavto/initializedb/data/fuel.geojson") Bridge.import_from_geojson_file("rosavto/initializedb/data/bridges.geojson") # load ways for routing json_path = "rosavto/initializedb/data/ways.geojson" zf_path = "rosavto/initializedb/data/ways.geojson.zip" if os.path.isfile(zf_path): # try open zip zf = zipfile.ZipFile(zf_path) zf.extractall(path="rosavto/initializedb/data/") Way.import_from_geojson_file(json_path) # load simple_roads json_path = "rosavto/initializedb/data/simple_roads.geojson" SimpleRoad.import_from_geojson_file(json_path)
def test_dbsession_configure(self): try: DBSession.configure(bind=self.engine) except: self.fail('DBSession configure is failed')