simpliest_fs/main.py

44 lines
1007 B
Python

import os
import threading
from datetime import datetime
from http.server import HTTPServer
from time import sleep
import yaml
import database
from cleanup import session_cleanup
from config import load_config
from database import init_db
from handlers import FileServerHandler
global CONFIG
CONFIG = load_config()
def log(message):
if CONFIG.get("logging", {}).get("enabled", True):
print(f"[{datetime.now().strftime('%Y-%m-%d %H:%M:%S')}] {message}")
def main():
init_db()
log("Starting SimpliestFS server...")
# Start session cleanup thread
cleanup_thread = threading.Thread(target=session_cleanup, daemon=True)
cleanup_thread.start()
# Start server
server_address = (CONFIG["server"]["host"], CONFIG["server"]["port"])
httpd = HTTPServer(server_address, FileServerHandler)
log(
f"SimpliestFS server running on {CONFIG['server']['host']}:{CONFIG['server']['port']}"
)
httpd.serve_forever()
if __name__ == "__main__":
main()