From 83feeb6a6413009f1995b480bbc6ac04f5a57815 Mon Sep 17 00:00:00 2001 From: Kim Diallo Date: Sat, 3 Jan 2026 02:31:51 +0100 Subject: [PATCH] src/dlw/commands.py aktualisiert --- src/dlw/commands.py | 70 +++++++++++++++------------------------------ 1 file changed, 23 insertions(+), 47 deletions(-) diff --git a/src/dlw/commands.py b/src/dlw/commands.py index aebfb88..8b018a8 100644 --- a/src/dlw/commands.py +++ b/src/dlw/commands.py @@ -1,47 +1,23 @@ - -import os -import sys -import argparse -from . import admin - -# Annahme: Das Repo-Root-Verzeichnis ist das aktuelle Arbeitsverzeichnis -REPO_ROOT = os.getcwd() - -def setup_environment(): - """Erstellt notwendige Verzeichnisse und initialisiert Pelican/Git-Struktur.""" - print("Starte Setup...") - - # 1. Sicherstellen, dass die Content-Verzeichnisse existieren - if not os.path.exists(os.path.join(REPO_ROOT, 'content')): - os.makedirs(os.path.join(REPO_ROOT, 'content')) - print(" -> 'content/' Verzeichnis erstellt.") - - if not os.path.exists(os.path.join(REPO_ROOT, 'downloads')): - os.makedirs(os.path.join(REPO_ROOT, 'downloads')) - print(" -> 'downloads/' Verzeichnis erstellt.") - - # 2. To-Do: Hier müsste die initiale Pelican Konfiguration - # und Templates in das 'content'-Verzeichnis kopiert werden. - - print("Setup abgeschlossen. Bereit für 'blog-cli start'") - -def start_server(host='127.0.0.1', port=5000): - """Startet den Flask Admin-Server.""" - print(f"Starte Admin-Interface auf http://{host}:{port}") - # Die Flask-App wird im 'admin' Modul definiert - admin.app.run(debug=True, host=host, port=port) - -def main(): - parser = argparse.ArgumentParser(description="Forgejo Blog Manager CLI Tool.") - parser.add_argument('action', choices=['setup', 'start'], help="Aktion: setup oder start") - - args = parser.parse_args() - - if args.action == 'setup': - setup_environment() - elif args.action == 'start': - start_server() - -if __name__ == '__main__': - main() - +import os +import argparse +from . import admin + +def setup_environment(): + print("Initialisiere Blog-Struktur...") + for folder in ['content', 'downloads']: + os.makedirs(folder, exist_ok=True) + print(f" -> {folder}/ erstellt.") + print("Setup abgeschlossen.") + +def main(): + parser = argparse.ArgumentParser(description="Forgejo Blog Manager CLI") + parser.add_argument('action', choices=['setup', 'start']) + args = parser.parse_args() + + if args.action == 'setup': + setup_environment() + elif args.action == 'start': + admin.app.run(host='127.0.0.1', port=5000) + +if __name__ == '__main__': + main() \ No newline at end of file