Release checklist 发布清单 

Last code touches: 最后的代码修改:

  • make the code ready, collect patches queued for the release
    准备好代码,收集排队等待发布的补丁

  • look to mailinglist for any relevant last-minute fixes
    查看邮件列表以获取任何相关的临时修复

  • skim patches for typos, inconsistent subjects
    浏览补丁以查找拼写错误,不一致的主题

Pre-checks: 预检查:

  • update package in OBS, (multi arch build checks)
    在 OBS 中更新软件包,(多架构构建检查)

  • run all functional tests locally with
    在本地运行所有功能测试

    • defaults 默认值

    • D=asan

    • D=ubsan

  • run all build tests (tests/build-tests.sh)
    运行所有构建测试 ( tests/build-tests.sh )

  • run with fstests 运行带有 fstests

  • check Github actions for status (https://github.com/kdave/btrfs-progs/actions)
    检查 Github actions 的状态 ( https://github.com/kdave/btrfs-progs/actions)

    • branch devel 开发分支

    • branch release-test -- extensive pre-release build checks
      发布测试分支 -- 大量的预发布构建检查

    • branch coverage-test -- code coverage, for information purposes only
      覆盖率测试分支 -- 代码覆盖率,仅供参考

Pre-release: 预发布:

  • write CHANGES entry (will be visible on RTD right away)
    编写更改条目(将立即在 RTD 上可见)

Release: 发布:

  • tag release, sign 标签发布,签名

  • build check of unpacked tar
    解压 tar 包的构建检查

  • generate documentation 生成文档

  • make tar 制作 tar

  • upload tar to kernel.org 上传 tar 到 kernel.org

  • refresh git branches, push tags
    刷新 git 分支,推送标签

Post-release: 发布后:

  • write and send announcement mail to the mailinglist
    编写并发送公告邮件至邮件列表

  • update title on IRC 在 IRC 上更新标题

  • github updates GitHub 更新

    • create a new release from the latest tag
      从最新标签创建新版本

    • copy text from CHANGES as contents, formatting is the same
      从更改中复制文本作为内容,格式保持不变

    • wait for static binaries github action to finish
      等待静态二进制文件的 GitHub 操作完成

    • run ci/actions/update-artifacts to copy the built static binaries to the release (requires github command line tool gh)
      运行 ci/actions/update-artifacts 将构建的静态二进制文件复制到发布版(需要 GitHub 命令行工具 gh