路线图
路线图围绕用户真正需要信任的事情组织:同一个 Chart 能否渲染,values 规则能否解释清楚,Kubernetes 变更是否只在应用明确允许时发生。
具体议题范围以 GitHub milestones 为准。
当前重点
M1:Helm 模板对齐 已在 1.1.0 完成,M2:Chart 打包和仓库对齐 已在 1.2.0 完成,M3:发布生命周期对齐 已在 1.3.0 完成。当前重点转向 Kubernetes 操作、OCI/来源证明、公共 SDK 加固,以及来自真实用户 Chart 的兼容性扩展。
最新发布版本是 1.3.2。M2 Chart 分发和 M3 发布生命周期文档描述的是 1.3.2 NuGet 包中可用的 API。
当前渲染覆盖范围见 兼容性页面,M2 工作流见 Chart 分发指南;发布生命周期、Kubernetes 语义、OCI 和公共 SDK 加固可继续跟踪 GitHub 上的后续 milestones。
交付原则
- 消费者应用运行时保持托管 .NET 行为,不 shell out 到 Helm。
- Helm CLI 输出作为测试基准,而不是 SDK 依赖。
- 先覆盖常见生产 Chart 行为,再处理少见终端格式细节。
- 包边界清晰,让应用只依赖自己需要的层。
- Kubernetes 变更、凭据、OCI、来源证明都按安全敏感工作处理。
里程碑计划
| 阶段 | 状态 | 用户结果 |
|---|---|---|
| M1:Helm 模板对齐 | 1.1.0 已完成 | 从 .NET 渲染常见 Chart,输出具备可预期的 Helm 兼容性。 |
| M2:Chart 打包和仓库对齐 | 已在 1.2.0 完成 | 不交给 CLI 也能打包、生成索引、拉取和处理依赖。 |
| M3:发布生命周期对齐 | 已在 1.3.0 完成 | 安装、升级、回滚、卸载、状态、历史和 hook 均具备可持久化的 revision 状态转换。 |
| M4:Kubernetes 提交和等待语义 | 计划中 | 资源身份、命名空间、就绪、Jobs、删除和 hook 清理更完整。 |
| M5:OCI 和来源证明 | 计划中 | 注册表认证、Chart 拉取/推送、签名和校验。 |
| M6:公共 SDK 加固 | 进行中 | 文档、示例、nullable 正确性、包质量和 API 细节更稳。 |
| M7:兼容性扩展研究 | 研究中 | 基于证据决定 netstandard、.NET Framework 和长期目标框架支持。 |
什么算完成
一个兼容性事项准备好离开里程碑时,需要满足:
- 行为被聚焦的单元测试、集成测试或基准输出测试捕获。
- 兼容性页面说明已支持内容和剩余边界。
- 公共 API 变化包含从用户视角出发的示例。
net8.0、net9.0、net10.0的 Release 构建和测试通过。
参与贡献
优先从已有里程碑 issue 开始。新发现 Helm 差异时,请提交最小 Chart、Helm 命令、HelmSharp API 调用和两边输出。