guis updates

This commit is contained in:
2025-06-25 20:48:40 +01:00
parent 9790baedec
commit b0ab065878

View File

@@ -6,61 +6,11 @@ from PySide6.QtWidgets import (
)
from PySide6.QtCore import Qt
from datetime import datetime
from logic.deployment_controller import DeploymentController
from logic.logger import Logger
LOG_FILE = "logs/nginx_deploy_gui.log"
class Logger:
def __init__(self, log_widget):
self.log_widget = log_widget
self.log_file = open(LOG_FILE, "a")
def log(self, message):
timestamp = datetime.now().strftime("[%Y-%m-%d %H:%M:%S]")
full_message = f"{timestamp} {message}\n"
self.log_widget.append(full_message)
self.log_file.write(full_message)
self.log_file.flush()
def close(self):
self.log_file.close()
class DeploymentController:
def __init__(self, logger):
self.logger = logger
# These will be set by the UI
self.ssh_key = None
self.config_dir = None
def preflight_checks(self):
self.logger.log("Running pre-flight checks...")
# Stub: implement actual checks
self.logger.log("Pre-flight checks complete.")
def scan_domains(self):
self.logger.log("Scanning for domains in configs...")
# Stub: implement domain scan
self.logger.log("Domain scan complete.")
def transfer_files(self):
self.logger.log("Transferring files to remote server...")
# Stub: implement file transfer
self.logger.log("File transfer complete.")
def remote_ops(self):
self.logger.log("Performing remote file operations...")
# Stub: implement remote ops
self.logger.log("Remote operations complete.")
def run_certbot(self):
self.logger.log("Prompting user for Certbot run...")
# Stub: implement certbot prompt and run
self.logger.log("Certbot step complete.")
def cleanup(self):
self.logger.log("Performing cleanup...")
# Stub: implement cleanup
self.logger.log("Cleanup complete.")
class MainWindow(QMainWindow):
def __init__(self):
super().__init__()
@@ -148,7 +98,15 @@ class MainWindow(QMainWindow):
self.controller.remote_ops()
def run_certbot(self):
self.controller.run_certbot()
# Prompt user for Certbot confirmation
from PySide6.QtWidgets import QMessageBox
reply = QMessageBox.question(self, 'Run Certbot',
'Run Certbot for the discovered domains?',
QMessageBox.Yes | QMessageBox.No, QMessageBox.No)
if reply == QMessageBox.Yes:
self.controller.run_certbot(lambda prompt: True)
else:
self.controller.run_certbot(lambda prompt: False)
def cleanup(self):
self.controller.cleanup()