diff --git a/CLAUDE.md b/CLAUDE.md index 9770ef5..3384c07 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -22,17 +22,17 @@ No external dependencies — Python 3 standard library only. Compatible with Tru ## File Structure ``` -es24n_conf.py ← Entry point and main menu (run this) -es24n/ - ui.py ← ANSI colours, display helpers, input prompts - serial_port.py ← SerialPort class (termios/fcntl/select, no pyserial) - models.py ← IOMConfig and ShelfConfig dataclasses - redfish.py ← Redfish API client (shared by all workflows) - workflow_serial.py ← Serial-based IOM network configuration workflow - workflow_firmware.py ← IOM and Fabric Card firmware update workflow +es24n_conf.py ← Entry point and main menu (run this) +modules/ + ui.py ← ANSI colours, display helpers, input prompts + serial_port.py ← SerialPort class (termios/fcntl/select, no pyserial) + models.py ← IOMConfig and ShelfConfig dataclasses + redfish.py ← Redfish API client (shared by all workflows) + workflow_serial.py ← Serial-based IOM network configuration workflow + workflow_firmware.py ← IOM and Fabric Card firmware update workflow ``` -`es24n_conf.py` adds `es24n/` to `sys.path` at startup so all inter-module imports work without a package structure. +`es24n_conf.py` adds `modules/` to `sys.path` at startup so all inter-module imports work without a package structure. ## Workflows diff --git a/README.md b/README.md index 43fcf85..b734065 100644 --- a/README.md +++ b/README.md @@ -67,14 +67,14 @@ Connects to each IOM directly over the network and updates IOM and/or Fabric Car ## File Structure ``` -es24n_conf.py ← Entry point — run this -es24n/ - ui.py ← Display helpers and input prompts - serial_port.py ← Serial port driver (no pyserial required) - models.py ← IOMConfig and ShelfConfig data classes - redfish.py ← Redfish API client (shared by all workflows) - workflow_serial.py ← Serial-based network configuration workflow - workflow_firmware.py ← Firmware update workflow +es24n_conf.py ← Entry point — run this +modules/ + ui.py ← Display helpers and input prompts + serial_port.py ← Serial port driver (no pyserial required) + models.py ← IOMConfig and ShelfConfig data classes + redfish.py ← Redfish API client (shared by all workflows) + workflow_serial.py ← Serial-based network configuration workflow + workflow_firmware.py ← Firmware update workflow ``` ## Notes diff --git a/es24n_conf.py b/es24n_conf.py index 367f206..1be27e3 100755 --- a/es24n_conf.py +++ b/es24n_conf.py @@ -10,7 +10,7 @@ Compatible with TrueNAS (FreeBSD) and Linux. Usage: python3 es24n_conf.py -All files in the es24n/ subdirectory must be present: +All files in the modules/ subdirectory must be present: ui.py, serial_port.py, models.py, redfish.py, workflow_serial.py, workflow_firmware.py """ @@ -19,7 +19,7 @@ import os import sys import time -sys.path.insert(0, os.path.join(os.path.dirname(os.path.abspath(__file__)), "es24n")) +sys.path.insert(0, os.path.join(os.path.dirname(os.path.abspath(__file__)), "modules")) from ui import _c, C, banner, draw_box, ok, warn, prompt from workflow_firmware import firmware_update_workflow diff --git a/es24n/models.py b/modules/models.py similarity index 100% rename from es24n/models.py rename to modules/models.py diff --git a/es24n/redfish.py b/modules/redfish.py similarity index 100% rename from es24n/redfish.py rename to modules/redfish.py diff --git a/es24n/serial_port.py b/modules/serial_port.py similarity index 100% rename from es24n/serial_port.py rename to modules/serial_port.py diff --git a/es24n/ui.py b/modules/ui.py similarity index 100% rename from es24n/ui.py rename to modules/ui.py diff --git a/es24n/workflow_firmware.py b/modules/workflow_firmware.py similarity index 100% rename from es24n/workflow_firmware.py rename to modules/workflow_firmware.py diff --git a/es24n/workflow_serial.py b/modules/workflow_serial.py similarity index 100% rename from es24n/workflow_serial.py rename to modules/workflow_serial.py