2.4 KiB
2.4 KiB
开发与 NUKE 构建
工具链
安装 global.json 指定的 .NET 10 SDK,SDK 补丁选择遵循 latestPatch。包版本集中放在 Directory.Packages.props,每个项目的 packages.lock.json 记录依赖解析结果。
src/WorkspaceAccessHost.csproj 声明完整 RID 集合,使各平台发布共享稳定的依赖锁。产品代码直接按职责组织在 src/ 下。解决方案包含产品、测试和 NUKE 三个项目。构建入口关闭 NUKE 遥测,编译和发布使用独立构建进程。
Windows 使用 ./build.ps1,Linux 使用 bash ./build.sh。两者都运行 build/Build.csproj 中的 NUKE 程序。也可直接执行:
dotnet run --project build/Build.csproj --configuration Release -- --target Verify
构建目标
| 目标 | 行为 |
|---|---|
| Restore | 恢复解决方案依赖;--locked-restore 启用锁定模式 |
| Compile | Restore 后构建整个解决方案 |
| Test | Compile 后执行核心测试并输出 TRX |
| CheckDocs | 检查标题、相对链接文件、README 可达性及差异说明覆盖 |
| Verify | CheckDocs 与 Test;默认目标 |
| Publish | Verify 后按 --runtime 发布单一产品和部署模板 |
| RunHost | Compile 后以 host 角色前台运行产品 |
| RunAgent | Compile 后以 agent 角色在当前用户身份下运行产品 |
配置参数为 --configuration Debug 或 Release。发布 RID 为 win-x64、win-arm64、linux-x64、linux-arm64。
./build.ps1 --target Verify --locked-restore
./build.ps1 --target Publish --runtime win-x64
./build.ps1 --target Publish --runtime linux-x64
开发检查
- 修改实现及对应设计文档。
- 为身份边界、并发控制和资源生命周期增加测试。
- 执行 Verify,检查
artifacts/test-results/。 - 涉及原生行为时,在目标系统执行平台验收。
依赖升级时先修改集中版本,再执行 Restore,检查锁文件变化并执行 Verify。CI 先以锁定模式恢复构建程序,再通过 NUKE 验证和发布。
本地运行
Host 默认地址为 http://127.0.0.1:5080,命令行 --urls 或环境变量 ASPNETCORE_URLS 可覆盖地址。直接运行示例:
dotnet run --project src -- host --urls http://127.0.0.1:5081
dotnet run --project src -- agent
健康检查分别为 /health/live 和 /health/ready。当前行为见交付状态。