二进制文件

如何发布 minikube 二进制文件

准备工作

  • 在 #minikube 上宣布发布意图
  • 暂停合并请求,以避免它们意外地被排除在 ISO 或发布说明之外
  • 本地检出两个 minikube 仓库
    • 您的个人 fork
    • 上游

更新 Kubernetes 版本

  • 在您的本地上游仓库副本中运行 make update-kubernetes-version
  • 如果任何文件有更新,请在继续之前创建并合并一个 PR

构建新的 ISO

  • 所有非补丁版本都需要构建新的 ISO。
  • 如果 deploy/iso 目录自上一个版本以来发生更改,则补丁版本 (vx.x.1+) 需要一个新的 ISO。

参阅 ISO 发布说明

发布新的 kicbase 镜像

运行 Jenkins 中的 kic-release 作业,它将自动创建一个必须合并的 PR(请确保输入正确的版本和仓库)。

更新发布说明

在您的本地上游仓库副本中运行以下脚本以生成更新的发布说明

make release-notes

将输出粘贴到 CHANGELOG.md 中,按对最终用户的重要性进行排序。如果更改多于 8 项,请将其分为 改进错误修复

  • 更新日志应仅包含面向用户的更改。这意味着要删除以下 PR:
    • 文档
    • 低风险重构
    • 仅测试的更改
  • 从贡献者列表中删除机器人
  • 从贡献者列表中删除重复的相似名称

您可以随时合并此 PR,或将其与 Makefile 更新 PR 合并。

更新 Makefile

更新 Makefile 中的版本号

  • VERSION_MAJORVERSION_MINORVERSION_BUILD

标记发布

sh hack/tag_release.sh 1.<minor>.<patch>

构建发布

此步骤使用 git 标签将新的二进制文件发布到 GCS 并创建 GitHub 发布

  • 导航到 minikube 的“Release” Jenkins 作业
  • 确保您已登录(右上角)
  • 点击“▶️ 带参数构建”(左侧)
  • VERSION_MAJORVERSION_MINORVERSION_BUILD 应反映您 Makefile 中的值
  • 对于 ISO_SHA256_AMD64,运行:gsutil cat gs://minikube/iso/minikube-v<version>-amd64.iso.sha256
  • 对于 ISO_SHA256_ARM64,运行:gsutil cat gs://minikube/iso/minikube-v<version>-arm64.iso.sha256
  • 点击 构建

检查发布日志

作业完成后,点击“控制台输出”以验证发布是否无错误完成。例如,通常在此处会看到 brew 自动化失败。

注意:如果您正在发布 Beta 版本,到此步骤即完成。

合并 releases.json 更改

发布脚本会更新 https://storage.googleapis.com/minikube/releases.json - minikube 二进制文件使用它来检查更新,并立即生效。

minikube-bot 也会发送一个 PR 以将其合并到代码树中。请合并此 PR,以使 GCS 和 GitHub 保持同步。

包含 minikube 的包管理器

这些是由其他人维护的下游软件包,以及如何升级它们以确保它们具有最新版本

包管理器 URL 待办
Arch Linux AUR https://aur.archlinux.org/packages/minikube-bin/ “标记软件包过时”
Brew Cask https://github.com/Homebrew/homebrew-cask/tree/master/Casks 发布作业会在 Homebrew/homebrew-cask 中创建一个新的 PR,其中包含更新的版本和 SHA256,请仔细检查是否已创建。

警告:Brew cask 自动化容易出错。请确保已创建 PR。

验证

通过运行 make check-release 验证发布校验和

更新文档

如果有重大更改,请发送 PR 更新 https://kubernetes.ac.cn/docs/setup/learning-environment/minikube/

更新 SECURITY-INSIGHTS.yml

SECURITY-INSIGHTS.yml 进行适当的更改。请查阅 OPENSSF 安全洞察规范 以供参考。

发布公告

请在 https://github.com/kubernetes/minikube/blob/master/README.md 中提及新版本

其他地方

  • Slack 上的 #minikube
  • minikube-dev、minikube-users 邮件列表
  • Twitter(现在已通过 @minikube_dev 账户自动化)

最后修改日期:2023 年 12 月 16 日:添加 SECURITY-INSIGHTS.yml (1aed17600)