CI / Lint & TypeCheck (push) Canceled after 0s
CI / Test (push) Canceled after 0s
CI / Tauri Foundation Acceptance (push) Canceled after 0s
CI / Build (macos-latest) (push) Canceled after 0s
CI / Build (ubuntu-latest) (push) Canceled after 0s
CI / Build (windows-latest) (push) Canceled after 0s
- apps/server:Gin embed 官网 + /docs + /health + /download(无操作 API) - run.sh 重写 web/gui 场景;.gitignore 排除 server 二进制与挂载的安装包 - README/AGENTS/CLAUDE 同步「浏览器只看官网、操作走桌面」的产品形态说明 - 终端视口背景变量与全宽终端边缘 hairline 修正(serial/terminal/i18n 微调)
78 lines
2.7 KiB
Markdown
78 lines
2.7 KiB
Markdown
# OpsXShell
|
||
|
||
原生运维**桌面**终端:SSH、SFTP、端口转发、RDP/VNC、串口、本地终端。短路径好用,不做审计/审批/堡垒机。
|
||
|
||
开发规范:[AGENTS.md](./AGENTS.md)(短入口 [CLAUDE.md](./CLAUDE.md))。授权走 `opsx-licence`。
|
||
|
||
产品形态(对齐 opsxdb / opsxapi):
|
||
|
||
```text
|
||
浏览器 → 官网 + 文档(Gin :8789)
|
||
操作 → 桌面 Tauri(./run.sh gui)
|
||
```
|
||
|
||
官网与用户文档在本仓 `apps/server`(原独立仓 `site-opsxshell` 已并入)。Gin **不做**桌面操作后端。
|
||
|
||
需要 Node.js 18+、npm 9+、Rust 1.77+、Go 1.22+(跑官网时)。macOS 打包还要 Xcode Command Line Tools。
|
||
|
||
## 本地调试
|
||
|
||
```bash
|
||
./run.sh # = web:官网 + docs → http://127.0.0.1:8789/
|
||
./run.sh web # 同上
|
||
./run.sh gui # 桌面操作入口(默认顺带起 Gin)
|
||
./run.sh stop | status
|
||
```
|
||
|
||
DevTools:`Cmd+Option+I` 或 `F12`。桌面应用日志:
|
||
|
||
```bash
|
||
tail -f "$HOME/Library/Application Support/opsxshell/logs/opsxshell.log"
|
||
```
|
||
|
||
只要前端、不要原生窗:`npm run dev:ui`(默认 `http://127.0.0.1:1420`,**不是**产品入口)。
|
||
|
||
## 测试
|
||
|
||
```bash
|
||
npm run test:patrol # 改功能后优先跑
|
||
npm run acceptance:quick
|
||
npm run acceptance:full
|
||
```
|
||
|
||
## 开发机卫生
|
||
|
||
Launchpad / Spotlight 若扫到 `target` 里重复的 Opsx 应用,跑:`~/devops/scripts/clean-opsx-apps.sh`(可选 `--delete-target-apps` / `--reset-launchpad`)。
|
||
|
||
## 打包
|
||
|
||
必须在目标系统上打:macOS 包在 Mac 打,Windows 包在 Windows 打。
|
||
|
||
```bash
|
||
./scripts/build.sh # 当前平台;产物在 release/v<版本>/
|
||
./scripts/build.sh mac-arm64 --quick # 本机重复打包
|
||
./scripts/macos-notarize.sh # 新 DMG:Apple 公证 + staple
|
||
```
|
||
|
||
Windows:`scripts\build.bat win-x64`
|
||
|
||
本机有 gitignore 的 `src-tauri/tauri.signing.conf.json` 时,`build.sh` 会签 Developer ID。没这份配置就是 ad-hoc,别人电脑会 Gatekeeper 拦截。新打的 DMG **必须再公证**。申请证书、导入钥匙串的步骤见 [download/Apple开发者签名.md](./download/Apple开发者签名.md);发版细节见 [docs/release.md](./docs/release.md)。
|
||
|
||
Gitee Release(tag 推上去之后):
|
||
|
||
```bash
|
||
./scripts/release.py v2.1.1 --dry-run
|
||
./scripts/release.py v2.1.1
|
||
```
|
||
|
||
发版安装包也可放到 `apps/server/download/` 供本地 Gin `/download/` 挂载(勿把大 DMG 提交进 Git)。
|
||
|
||
## 文档
|
||
|
||
- 用户文档站(本地):`./run.sh web` → http://127.0.0.1:8789/docs
|
||
- [使用指南](docs/user-guide.md)(开发向)
|
||
- [架构](docs/architecture.md) · [验收](docs/testing-acceptance.md) · [发布](docs/release.md)
|
||
- [路线图](ROADMAP.md) · [当前任务](TASKS.md)
|
||
|
||
MIT,见 [LICENSE](./LICENSE)。
|