def main(): # validate args if len(sys.argv) != 2: get_usage() else: configfile = sys.argv[1] # read the config file config = ConfigParser() config.read(configfile) if config.sections() != ['PostGIS', 'Geoserver', 'Styles']: print 'Invalid config file...' sys.exit(1) # connect to postgis pginfo = dict(config.items('PostGIS')) pgdb = PostGIS(**pginfo) pgdb.info() pgdb.connect() # connect to geoserver gsinfo = Struct(**dict(config.items('Geoserver'))) gscat = Catalog(gsinfo.url, gsinfo.user, gsinfo.password) print '\nGeoserver info:' print ' Url:', gsinfo.url print ' User:'******' password:'******'\nConnect to Geoserver...' if gsws == None: wsuri = '{0}/{1}'.format(gsinfo.url, gsinfo.workspace) gsws = gscat.create_workspace(gsinfo.workspace, wsuri) print 'Workspace created...' # sldfile info sld_info = Struct(**dict(config.items('Styles'))) sld_info.folder = config.get('Styles', 'folder') sld_info.overwrite = config.getboolean('Styles', 'overwrite') print '\nStyles info:' print ' Folder: ', sld_info.folder print ' Overwrite: ', sld_info.overwrite # publish layers from postgis to geoserver publish_layers(pgdb, pginfo, gscat, gsws, sld_info) # close postgis connection pgdb.conn.close() print("\nCompleted!")
def main(): filegdb = FileGDB(fgdb, a_srs) filegdb.info() filegdb.open_files() filegdb.process_domains() filegdb.process_subtypes() filegdb.process_relations() filegdb.process_schemas() filegdb.close_files() postgis = PostGIS(host, port, user, password, pgdb, t_srs) postgis.info() postgis.connect() postgis.update_views() postgis.create_schemas(filegdb) postgis.load_database(filegdb) postgis.apply_sql(filegdb) postgis.disconnect() filegdb.cleanup() print "\nComplete!"