治理模式
行为准则
Lima 遵循 CNCF 行为准则。
维护者职责
Lima 由从活跃贡献者中选举产生的维护者管理。
作为 云原生计算基金会 项目,Lima 将保持其 供应商中立性。
角色
维护者包含两种角色:
提交者(完全维护权限):提交者对 https://github.com/lima-vm 下的仓库拥有完整的写入权限。 提交者的提交仍应通过 GitHub 拉取请求进行(除紧急安全修复外),不应直接推送。 提交者必须为其 GitHub 账户启用双因素认证。 提交者也被认定为 https://github.com/cncf/foundation/blob/main/project-maintainers.csv 中的维护者。
审核者(有限维护权限):审核者可以管理 GitHub 问题和拉取请求(如添加标签和清理垃圾信息), 但他们没有合并拉取请求或推送提交的权限。 审核者被视为成为提交者的候选人。 审核者不被认定为 https://github.com/cncf/foundation/blob/main/project-maintainers.csv 中的维护者。
另请参阅 贡献 页面。
当前维护者
姓名 | 角色 | GitHub ID (不是 X ID) | GPG 指纹 |
---|---|---|---|
Akihiro Suda | 提交者 | @AkihiroSuda | C020 EA87 6CE4 E06C 7AB9 5AEF 4952 4C6F 9F63 8F1A |
Jan Dubois | 提交者 | @jandubois | DBF6 DA01 BD81 2D63 3B77 300F A2CA E583 3B6A D416 |
Anders F Björklund | 提交者 | @afbjorklund | 5981 D2E8 4E4B 9197 95B3 2174 DC05 CAD2 E73B 0C92 |
Balaji Vijayakumar | 提交者 | @balajiv113 | 80E1 01FE 5C89 FCF6 6171 72C8 377C 6A63 934B 8E6E |
Oleksandr Redko | 审核者 | @alexandear | 50F8 9811 D8D8 3E79 3E7E 0680 A947 E3F1 1A61 2A57 |
Norio Nomura | 审核者 | @norio-nomura | 0010 36FA 2504 DBFF 37BA 2EF8 D4A7 318E B7F7 138D |
Nir Soffer | 审核者 | @nirs | 6F81 B717 51A1 4171 4C09 AF19 4C67 29D7 B2DD 8AFF |
维护者的添加和晋升
项目的活跃贡献者可以被邀请为审核者,至少 2 个月后可以最终晋升为提交者。
在质量和数量上做出重大贡献的贡献者 也可以直接被邀请为提交者。
添加或晋升维护者的提案必须在 7 天内得到 2/3 投票提交者的批准。 投票至少需要 2 票同意。提案者也可以投票。
提案应以 GitHub 拉取请求的形式对上述维护者列表进行修改。 强烈建议在提交拉取请求之前联系提交者,以确认提交者的意愿。
维护者的移除和降级
6 个月内没有显著活动,或者违反行为准则的维护者,可能会被降级或从项目中移除。
移除或降级维护者的提案必须在 14 天内得到 2/3 提交者(不包括当事人)的批准。 投票至少需要 2 票同意。提案者也可以投票。
提案可以作为 GitHub 拉取请求,或者在移除有害维护者的情况下作为私人讨论。 强烈建议在提交拉取请求之前联系提交者,以确认提交者的意愿。
其他决策
此处未记录的任何决策都可以由提交者做出。 当提交者之间发生争议时,将通过提交者内的多数投票来解决。 平票应被视为失败投票。
发布流程
成为发布管理员的资格:
- 必须是活跃的提交者
- 必须在上述维护者列表中列出 GPG 指纹
- 必须将 GPG 公钥上传到
https://github.com/USERNAME.gpg
- 必须用密码短语或硬件令牌保护 GPG 密钥。
发布步骤:
- 开启一个议题来提议发布新版本,例如 https://github.com/lima-vm/lima/issues/2296。 该提案应该是公开的,漏洞修复除外。 如果这是你第一次担任发布管理员角色, 你应该在发布 GA 之前先发布 beta(或 alpha、RC)版本作为练习。
- 确保所有合并的 PR 都与正确的 里程碑 关联。
- 运行
git tag --sign vX.Y.Z-beta.W
。 - 运行
git push UPSTREAM vX.Y.Z-beta.W
。 - 等待 GitHub Actions 上的
Release
操作完成。草稿发布将出现在 https://github.com/lima-vm/lima/releases 中。 - 从草稿发布中下载
SHA256SUMS
,并确认它与Release
操作的构建日志中打印的哈希值相对应。 - 使用
gpg --detach-sign -a SHA256SUMS
签名SHA256SUMS
以生成SHA256SUMS.asc
,并将其上传到草稿发布中。 - 在草稿发布中添加发布说明,解释更改并对贡献者表示感谢。
确保填写
Release manager: [ADD YOUR NAME HERE] (@[ADD YOUR GITHUB ID HERE])
行。 例如,Release manager: Akihiro Suda (@AkihiroSuda)
。 - 如果此发布是 beta(或 alpha、RC),点击
Set as a pre-release
复选框。 - 点击
Publish release
按钮。 - 关闭 里程碑。