开源发布手册¶
本文档是 VelaSim 对外开源的发布 runbook:三道关口 → 工程动作 → 展示项。已完成项标注 ✅。
发布清单总览¶
| # | 事项 | 状态 | 责任人 |
|---|---|---|---|
| A1 | IP 审查(与交付客户代码无代码级重合、合同无排他条款) | ⬜ 待确认 | 项目负责人 |
| A2 | git 历史凭据清理(filter-repo) | ⬜ 发布前执行 | 项目负责人 |
| A3 | 许可证定案(Apache-2.0) | ✅ | — |
| A4 | 演示账号开源化(生产随机密码 / dev 档固定演示凭据) | ✅ | — |
| B1 | GitHub 建主仓 + Gitee 公开/镜像 | ⬜ 待执行 | 项目负责人 |
| B2 | CI 接入(GitHub Actions) | ✅ 已就位 | — |
| B3 | CONTRIBUTING / Issue / PR 模板 | ✅ 已就位 | — |
| B4 | 打 v0.1.0 tag |
⬜ 发布日 | 项目负责人 |
| B5 | 文档站首页 + Pages 上线 | ✅ 已就位,待托管 | — |
| C1 | README 截图 / 演示录屏 | 部分 ✅(截图已加) | 项目负责人 |
| C2 | 公开演示环境 | ⬜ 可选 | 见 演示环境手册 |
A. 关口项¶
A1 IP 审查(⚠️ 唯一无法由工具代劳的关口)¶
本项目由多套行业定制交付项目沉淀共性需求后全新重写。开源前请书面确认:
- 与任一客户交付物无代码级重合(重写不等于无风险,逐模块抽查一遍)
- 交付合同无排他条款 / 著作权转让条款涉及本代码
- 数据库种子数据、截图、文档中无客户名称 / 项目信息
A2 git 历史凭据清理¶
扫描结论(2026-10 已执行,git grep 全历史):
- ✅ 三台层 2 服务器 IP(112.126.72.13 / 101.200.217.88 / 182.92.103.9):历史零残留
- ✅ 个人密码模式(Xuyq@2026):历史零残留
- ✅ 旧演示密码
PerA@2026(含旧产品名 Pera):已全量轮换为VelaSim@2026(HEAD 零残留);历史中出现于 2 个提交,发布前用 filter-repo 置换 - ℹ️
Demo@12345/Test@2026为 dev 档位演示凭据(vela.demo.enabled=true才生效),按惯例保留,生产档位不存在
发布前执行(唯一破坏性步骤,改写提交哈希,之后需 force-push):
pip install git-filter-repo # 或:sudo apt install git-filter-repo
# 置换历史中的旧演示密码(HEAD 已是新值,历史同步置换)
git filter-repo --replace-text <(echo 'PerA@2026==>VelaSim@2026')
# 若审查发现其他敏感串,一并追加:
# echo '192.168.1.10==>***REDACTED***' > /tmp/replacements.txt
# git filter-repo --replace-text /tmp/replacements.txt
# 完成后强制推送(Gitee origin 当前为私有仓,公开前最后一次 force-push)
git push --force-with-lease origin main
filter-repo 会自动移除 origin 远程配置,推前需
git remote add origin https://gitee.com/yunquanxu/velasim.git重新加回。
A3 许可证(✅ Apache-2.0)¶
已定:LICENSE 文件已就位(Copyright 2026 VelaSim Contributors,如需改为个人/公司署名可编辑首行)。Apache-2.0 对私有化部署用户最友好,允许闭源修改与商用,是最常见的开源默认选择。
A4 演示账号开源化(✅ 已完成)¶
- 生产档位(默认):首次启动生成 16 位随机初始密码(CSPRNG),仅本次启动日志输出一次,首次登录强制改密
- dev 档位(
vela.demo.enabled=true):固定演示账号(admin/VelaSim@2026、demo_user/Demo@12345、租户成员等),登录页一键回填,仅 dev 构建可见 - deploy 脚本冒烟测试改为从启动日志提取初始密码,不再携带硬编码凭据;部署摘要按
VELA_DEMO_ENABLED条件展示演示账号
B. 工程项¶
B1 双平台仓库¶
- GitHub 建主仓:新建
velasim公开仓库(许可证选 Apache-2.0,README 已有),推送:git remote add github https://github.com/<your-account>/velasim.git git push github main --tags - Gitee 公开现有仓:
gitee.com/yunquanxu/velasim已存在,设置中改为公开(需实名认证,许可证已选) - Gitee 镜像同步(免维护,推荐):Gitee 仓库页 → 「设置」→「镜像仓库管理」→ 添加 GitHub 地址 → 勾选自动同步;或将 GitHub 为主推双 remote。README 顶部互相放链接。
B4 打版本 tag¶
git tag v0.1.0 -m "VelaSim 首个开源版本"
git push github main --tags && git push origin main --tags
发布说明要点:已完成的八大里程碑、待现场验证项(SGE/Slurm/guacd/云凭证/SMTP 真实环境联调)、演示环境地址(如有)。
B5 文档站托管¶
- GitHub Pages(稳定,推荐):Settings → Pages → 部署
site/目录(或加一个 Actions workflow:checkout +pip install mkdocs-material && mkdocs build+ upload artifact)。 - Gitee Pages:需实名,且服务历史上多次暂停/限制,建议只做备用镜像,主入口放 GitHub Pages。
- 若自有域名:CNAME 指向 Pages 服务即可。
C. 展示项¶
C1 截图与录屏¶
- 截图已加入文档站首页(
docs/assets/screenshots/)与 README - 建议补一段 2 分钟演示录屏(dev 档位跑通全流程:登录 → 提交作业 → 网盘回传),传 B 站/YouTube 后放 README 显著位置
screenshots/目录为一次性素材仓,后续截图统一放docs/assets/screenshots/
C2 公开演示环境¶
可选但转化率极高:一个公开实例让访客免部署体验。详见 演示环境手册。演示环境建议在仓库公开之后再上线,README 留链接位。
发布日执行顺序¶
- ✅ 复查:
grep -rn无敏感串、git log --oneline | head无异常提交 - A1 确认通过 → A2 filter-repo + force-push
- Gitee 转公开 + GitHub 建仓推送
- 打 tag、发 Release、开 Pages
- README 链接补齐(GitHub/Gitee/演示环境)、发布公告(如社区渠道)