refactor: 模块化重构 — 拆分 lib/ 基础设施层与 src/modules/ 功能模块

PVE-Tools.sh 从 ~14,700 行单文件重构为 150 行入口点,
所有函数按职责拆分到独立文件,通过 source 机制加载。

lib/ — 基础设施层(零业务逻辑)
  config.sh: 全局变量与常量
  core.sh: 日志、UI、确认、备份、GRUB、进度条
  network.sh: 网络检测、镜像选择
  runtime.sh: 运行时守卫、main() 入口

src/modules/ — 功能模块(10 个目录)
  01-optimization  02-sources  03-boot-kernel
  04-gpu-passthrough  05-vm-container  06-networking
  07-storage-disk  08-tools-about  09-security  10-third-party

新增 build.sh(合并编译)和 dev.sh(开发 source 入口),
release.yml 新增构建步骤,CI 适配模块化结构。
This commit is contained in:
Maple
2026-07-08 11:15:59 +08:00
parent 6e62bca246
commit 886e82f0cb
83 changed files with 15700 additions and 14874 deletions

View File

@@ -25,6 +25,9 @@ jobs:
VERSION=${TAG#v}
echo "TAG=$TAG" >> $GITHUB_OUTPUT
echo "VERSION=$VERSION" >> $GITHUB_OUTPUT
- name: Build single script from modules
run: bash build.sh
- name: Install shc
run: |
@@ -34,7 +37,7 @@ jobs:
- name: Compile script to binary
run: |
shc -f PVE-Tools.sh -o pve-tools
shc -f dist/PVE-Tools.sh -o pve-tools
chmod +x pve-tools
- name: Generate release notes
@@ -81,7 +84,7 @@ jobs:
```
files: |
pve-tools
PVE-Tools.sh
dist/PVE-Tools.sh
draft: false
prerelease: false
env: