检查与发布
了解在更改 Manifest、合约、生成的主机或发布工件之前要运行哪些本地检查。
Lenso 处理生成的工件、合约、Manifest和托管控制台资产 作为产品界面的一部分。在开发时运行最小的有用检查, 然后在发布工作之前运行全闸门。
命令图
| 命令 | 它证明了什么 |
|---|---|
just fmt |
格式化 Rust 源。 |
just fmt-check |
Rust 格式更改时失败。 |
just rust-check |
编译 Rust 工作区目标。 |
just test |
使用锁定的依赖关系图运行 Rust 工作区测试。 |
just generate |
重新生成 OpenAPI 和 JSON 架构工件。 |
just generated-check |
当 git 不同时重新生成工件并失败。 |
just arch-check |
运行架构护栏。 |
just check |
运行默认后端本地质量门,无需慢烟检查。 |
just ci |
镜像 GitHub Actions 后端质量路径。 |
just release-check |
运行后端发布门禁。 |
just package-readiness |
验证公共 lenso 外观板条箱包装界面。 |
Runtime Console检查同级 lenso-console 存储库中的实时情况。
当后端更改影响控制台元数据时,使用其 pnpm check 路径,
OpenAPI 生成的客户端、模块安装状态或托管捆绑包行为。
更改后要运行什么
| 改变 | 最低有用检查 |
|---|---|
| 仅 Rust 实现 | just check |
| 公共路由、OpenAPI 注解、DTO 或错误契约 | just generate && just generated-check && just check |
ModuleManifest 字段、lint、管理界面、运行时、生命周期或控制台界面 |
just generate && just generated-check && just check |
| 生成的主机模板或面向 CLI 的入门行为 | CLI 入门冒烟加后端 just check |
| Runtime Console模块元数据或安装状态 UI | 后端生成的检查加上Runtime Console pnpm check |
| 发布包、托管控制台捆绑包或发布工作流 | just release-check 和 just package-readiness |
本地冒烟测试
当您需要服务证明而不仅仅是编译证明时,请使用此方法:
cp .env.example .env
just db-up
just migrate
just api
在第二个 shell 中运行工作程序:
just worker
对于第一用户后端流程,包括 Service Provider fixture 和 面向控制台的管理 API:
just first-user-smoke
合约纪律
生成的文件是提交的工件,而不是手工编写的文件。改变 真理之源生锈,然后重生。
just generate
just generated-check
架构检查器还可以捕获常见的边界错误:
- 模块内的 DDD 样式文件夹,例如
api、application、domain或infrastructure; - 跨模块导入模块源代码内;
- 缺少 OpenAPI 工件;
- 陈旧的合约工件;
- 缺少当前事件的事件有效负载合约。
发布候选流程
git switch main
git status --short
just release-check
git switch -c release/vX.Y.Z
just console-build
LENSO_RELEASE_VERSION=vX.Y.Z just release-package
发布打包在 dist/release 下写入源文件和工件文件。Lenso Console 作为独立、
不可变的 Console Service Release 发布;Host 发布包不嵌入 Console Web 资源。
GitHub 发布工作流
通过以下方式触发发布工作流:
| 输入 | 价值 |
|---|---|
version |
vX.Y.Z |
notes |
简短的发布摘要 |
publish_rust_crate |
false 用于试运行,true 用于发布 |
先用publish_rust_crate=false。这条路通向发布门禁,
验证版本元数据、试运行包发布、生成发布
注释,并上传包工件而不发布注册表版本。
发布运行后,验证:
git rev-parse vX.Y.Z
gh release view vX.Y.Z
发布说明输入
在发布之前收集这些:
- 提交 SHA;
just release-check结果;- 发布协调后端时的 Runtime Console
pnpm check结果 前端行为; - 从
just generated-check生成工件状态; - 已知的当地基础设施注意事项;
- 最小本地堆栈:Rust 工具链、Docker 和 Postgres。
发布范围应集中在可安装模块路径上。不要 阻止集中式市场强化的发布,例如发布者信任, 注册审查、出处或签名,除非明确发布 目标。