mirror of
https://github.com/dw-0/kiauh.git
synced 2025-12-23 15:53:36 +05:00
fix(KIAUH): more file path handling improvements
Signed-off-by: Dominik Willner <th33xitus@gmail.com>
This commit is contained in:
@@ -205,12 +205,12 @@ def get_highest_index(instance_list: List[Klipper]) -> int:
|
|||||||
|
|
||||||
def create_example_printer_cfg(instance: Klipper) -> None:
|
def create_example_printer_cfg(instance: Klipper) -> None:
|
||||||
Logger.print_status(f"Creating example printer.cfg in '{instance.cfg_dir}'")
|
Logger.print_status(f"Creating example printer.cfg in '{instance.cfg_dir}'")
|
||||||
if instance.cfg_file is not None:
|
if instance.cfg_file.is_file():
|
||||||
Logger.print_info(f"printer.cfg in '{instance.cfg_dir}' already exists.")
|
Logger.print_info(f"'{instance.cfg_file}' already exists.")
|
||||||
return
|
return
|
||||||
|
|
||||||
source = MODULE_PATH.joinpath("res/printer.cfg")
|
source = MODULE_PATH.joinpath("res/printer.cfg")
|
||||||
target = instance.cfg_dir.joinpath("printer.cfg")
|
target = instance.cfg_file
|
||||||
try:
|
try:
|
||||||
shutil.copy(source, target)
|
shutil.copy(source, target)
|
||||||
except OSError as e:
|
except OSError as e:
|
||||||
|
|||||||
@@ -1,5 +1,4 @@
|
|||||||
#!/usr/bin/env python3
|
#!/usr/bin/env python3
|
||||||
import os
|
|
||||||
|
|
||||||
# ======================================================================= #
|
# ======================================================================= #
|
||||||
# Copyright (C) 2020 - 2023 Dominik Willner <th33xitus@gmail.com> #
|
# Copyright (C) 2020 - 2023 Dominik Willner <th33xitus@gmail.com> #
|
||||||
@@ -53,7 +52,7 @@ def run_mainsail_removal(
|
|||||||
|
|
||||||
def remove_mainsail_dir() -> None:
|
def remove_mainsail_dir() -> None:
|
||||||
Logger.print_status("Removing Mainsail ...")
|
Logger.print_status("Removing Mainsail ...")
|
||||||
if not Path(MAINSAIL_DIR).exists():
|
if not MAINSAIL_DIR.exists():
|
||||||
Logger.print_info(f"'{MAINSAIL_DIR}' does not exist. Skipping ...")
|
Logger.print_info(f"'{MAINSAIL_DIR}' does not exist. Skipping ...")
|
||||||
return
|
return
|
||||||
|
|
||||||
@@ -81,12 +80,13 @@ def remove_nginx_logs() -> None:
|
|||||||
remove_file(Path("/var/log/nginx/mainsail-error.log"), True)
|
remove_file(Path("/var/log/nginx/mainsail-error.log"), True)
|
||||||
|
|
||||||
im = InstanceManager(Klipper)
|
im = InstanceManager(Klipper)
|
||||||
if not im.instances:
|
instances: List[Klipper] = im.instances
|
||||||
|
if not instances:
|
||||||
return
|
return
|
||||||
|
|
||||||
for instance in im.instances:
|
for instance in instances:
|
||||||
remove_file(Path(instance.log_dir, "mainsail-access.log"))
|
remove_file(instance.log_dir.joinpath("mainsail-access.log"))
|
||||||
remove_file(Path(instance.log_dir, "mainsail-error.log"))
|
remove_file(instance.log_dir.joinpath("mainsail-error.log"))
|
||||||
|
|
||||||
except (OSError, subprocess.CalledProcessError) as e:
|
except (OSError, subprocess.CalledProcessError) as e:
|
||||||
Logger.print_error(f"Unable to NGINX logs:\n{e}")
|
Logger.print_error(f"Unable to NGINX logs:\n{e}")
|
||||||
@@ -118,7 +118,7 @@ def remove_updater_section(name: str) -> None:
|
|||||||
|
|
||||||
def remove_mainsail_cfg_dir() -> None:
|
def remove_mainsail_cfg_dir() -> None:
|
||||||
Logger.print_status("Removing mainsail-config ...")
|
Logger.print_status("Removing mainsail-config ...")
|
||||||
if not Path(MAINSAIL_CONFIG_DIR).exists():
|
if not MAINSAIL_CONFIG_DIR.exists():
|
||||||
Logger.print_info(f"'{MAINSAIL_CONFIG_DIR}' does not exist. Skipping ...")
|
Logger.print_info(f"'{MAINSAIL_CONFIG_DIR}' does not exist. Skipping ...")
|
||||||
return
|
return
|
||||||
|
|
||||||
@@ -130,11 +130,12 @@ def remove_mainsail_cfg_dir() -> None:
|
|||||||
|
|
||||||
def remove_mainsail_cfg_symlink() -> None:
|
def remove_mainsail_cfg_symlink() -> None:
|
||||||
Logger.print_status("Removing mainsail.cfg symlinks ...")
|
Logger.print_status("Removing mainsail.cfg symlinks ...")
|
||||||
im = InstanceManager(Moonraker)
|
im = InstanceManager(Klipper)
|
||||||
for instance in im.instances:
|
instances: List[Klipper] = im.instances
|
||||||
Logger.print_status(f"Removing symlink from '{instance.cfg_dir}' ...")
|
for instance in instances:
|
||||||
|
Logger.print_status(f"Removing symlink from '{instance.cfg_file}' ...")
|
||||||
try:
|
try:
|
||||||
remove_file(Path(instance.cfg_dir, "mainsail.cfg"))
|
remove_file(instance.cfg_dir.joinpath("mainsail.cfg"))
|
||||||
except subprocess.CalledProcessError:
|
except subprocess.CalledProcessError:
|
||||||
Logger.print_error("Failed to remove symlink!")
|
Logger.print_error("Failed to remove symlink!")
|
||||||
|
|
||||||
@@ -142,15 +143,16 @@ def remove_mainsail_cfg_symlink() -> None:
|
|||||||
def remove_printer_cfg_include() -> None:
|
def remove_printer_cfg_include() -> None:
|
||||||
Logger.print_status("Remove mainsail-config include from printer.cfg ...")
|
Logger.print_status("Remove mainsail-config include from printer.cfg ...")
|
||||||
im = InstanceManager(Klipper)
|
im = InstanceManager(Klipper)
|
||||||
if not im.instances:
|
instances: List[Klipper] = im.instances
|
||||||
|
if not instances:
|
||||||
Logger.print_info("Klipper not installed. Skipping ...")
|
Logger.print_info("Klipper not installed. Skipping ...")
|
||||||
return
|
return
|
||||||
|
|
||||||
for instance in im.instances:
|
for instance in instances:
|
||||||
log = f"Removing include from '{instance.cfg_file}' ..."
|
log = f"Removing include from '{instance.cfg_file}' ..."
|
||||||
Logger.print_status(log)
|
Logger.print_status(log)
|
||||||
|
|
||||||
if not Path(instance.cfg_file).exists():
|
if not instance.cfg_file.is_file():
|
||||||
continue
|
continue
|
||||||
|
|
||||||
cm = ConfigManager(instance.cfg_file)
|
cm = ConfigManager(instance.cfg_file)
|
||||||
|
|||||||
@@ -40,12 +40,12 @@ def create_example_moonraker_conf(
|
|||||||
instance: Moonraker, ports_map: Dict[str, int]
|
instance: Moonraker, ports_map: Dict[str, int]
|
||||||
) -> None:
|
) -> None:
|
||||||
Logger.print_status(f"Creating example moonraker.conf in '{instance.cfg_dir}'")
|
Logger.print_status(f"Creating example moonraker.conf in '{instance.cfg_dir}'")
|
||||||
if instance.cfg_file is not None:
|
if instance.cfg_file.is_file():
|
||||||
Logger.print_info(f"moonraker.conf in '{instance.cfg_dir}' already exists.")
|
Logger.print_info(f"'{instance.cfg_file}' already exists.")
|
||||||
return
|
return
|
||||||
|
|
||||||
source = MODULE_PATH.joinpath("res/moonraker.conf")
|
source = MODULE_PATH.joinpath("res/moonraker.conf")
|
||||||
target = instance.cfg_dir.joinpath("moonraker.conf")
|
target = instance.cfg_file
|
||||||
try:
|
try:
|
||||||
shutil.copy(source, target)
|
shutil.copy(source, target)
|
||||||
except OSError as e:
|
except OSError as e:
|
||||||
|
|||||||
Reference in New Issue
Block a user