You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
	
	
		
			32 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Python
		
	
			
		
		
	
	
			32 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Python
		
	
from peewee import PostgresqlDatabase
 | 
						|
from sshtunnel import SSHTunnelForwarder
 | 
						|
import toml
 | 
						|
import os
 | 
						|
import db_model as db
 | 
						|
 | 
						|
 | 
						|
def config_laden():
 | 
						|
    configfile = os.path.join(SKRIPTPFAD, "config.toml")
 | 
						|
    with open(configfile) as file:
 | 
						|
        return toml.loads(file.read())
 | 
						|
 | 
						|
 | 
						|
SKRIPTPFAD = os.path.abspath(os.path.dirname(__file__))
 | 
						|
CONFIG = config_laden()
 | 
						|
 | 
						|
 | 
						|
def main():
 | 
						|
    with SSHTunnelForwarder(
 | 
						|
                (CONFIG["ssh"]["ip_server"], CONFIG["ssh"]["ssh_port"]), ssh_username=CONFIG["ssh"]["user"],
 | 
						|
                ssh_password=CONFIG["ssh"]["pw"], remote_bind_address=('127.0.0.1', CONFIG["pg"]["pgport"])) as server:
 | 
						|
 | 
						|
        db.database.initialize(PostgresqlDatabase(CONFIG["pg"]["pgdb"],
 | 
						|
                                                  user=CONFIG["pg"]["pguser"], password=CONFIG["pg"]["pgpw"],
 | 
						|
                                                  host="127.0.0.1",
 | 
						|
                                                  port=server.local_bind_port))
 | 
						|
        db.create_tables()
 | 
						|
 | 
						|
 | 
						|
if __name__ == "__main__":
 | 
						|
    main()
 |