跳转到: 导航, 搜索

Documentation/Release

概述

第一个发布活动是开始测试安装指南,因为这需要最长时间。它依赖于从各个发行版获取软件包,并找到愿意使用这些软件包测试指南的人员。在确认经过彻底且成功的测试之前,我们不会发布特定发行版的安装指南。在此期间,我们限制了对安装指南的补丁,以确保只有关键更改生效(这有助于避免在测试期间指南发生变化)。

在此期间,我们还会编写发布说明。这些主要由相关项目团队的 PTL 或 CPL 编写,但我们负责审查和编辑。

在发布日前几天和发布当天,我们执行更新 docs.openstack.org 首页所需的 инфраструктура 任务,以反映新的发布名称和文档。之后,我们会继续发布到 Master 分支,直到分支被切分,这通常发生在实际发布日后的几周(通常在 Summit 之后不久)。

时间线

  • 测试前两到四周(T-60 天):联系打包人员以查找用于测试的预发布软件包
  • 测试开始时(T-30 天):联系 CPL 以检查他们的章节,联系打包人员以检查可用性。
  • 发布前几天:将版本化的指南发布到 /RELEASENAME 并创建 /RELEASENAME/index.html 页面。
  • 发布前几天:将 /RELEASENAME 添加到 openstackdocstheme,以便书本引用它:我们从 docstheme 中删除了特定版本的信息
  • 发布前几天:检查并更新所有书本,以具有正确的版本信息
  • 发布日前 12-24 小时:运行 Config Ref 和 CLI Ref 的文档脚本
  • 发布日前 12-24 小时:切分稳定分支
  • 发布当天:更改首页,使新版本成为默认版本。(~1500UTC)
  • 发布后(通常是几周):切分安装指南和配置参考的分支
  • 使用最新的发布名称更新安装指南、配置参考和网络指南中的 sphinxmark 配置,在 conf.py 文件中

测试安装指南

  • 待定

更新配置参考

在发布日前需要手动运行脚本,以确保我们已获取源仓库中的所有最新更改。

切分稳定分支

请注意,此描述当前适用于 liberty,并以 liberty 作为示例。

OpenStack 持续从 master 分支发布文档。它不跟踪里程碑发布,因为没有足够的支持者来实现这一点。当特定版本的文档错误数量似乎可以容忍时(也就是说,发布“发布”文档不会引起比它解决的问题更多的问题时),我们遵循这些步骤创建一个稳定的分支,该分支发布到文档网站上的命名发布目录,例如 docs.openstack.org/liberty。但是,只有某些文档被“发布”,目前这些文档是安装指南和配置参考。

发布准备

  • 将版本化的指南发布到 /draft 和 /liberty,这需要采用 file tools/publishdocs.sh。
  • 创建一个 /liberty/index.html 页面
  • 更新 openstackdocstheme 中的菜单以包含 liberty - 然后及时发布 openstackdocstheme 以便发布
  • 检查手册以供发布
    • 更新所有仓库中的所有手册,以便它们链接到最新版本的版本化指南(到 liberty 版本的安装指南和配置参考)。
    • 配置参考:重新生成所有选项表以及显示版本之间差异的表。
    • 命令行参考:检查所有客户端软件包是否已记录并为最新版本。
    • 操作指南:添加新版本的升级信息。
    • 所有持续发布的手册应记录当前版本和前两个版本,因此更新索引页面上的文本,说明“本指南记录了 Juno、Kilo 和 Liberty 版本”。
  • 发布说明的最终审查(openstack-manuals 中的 RELEASENOTES.rst 文件)。

发布当天

分支创建

以下是从 http://git.openstack.org/cgit/openstack/openstack-manuals/ 仓库创建文档稳定分支的检查清单步骤。

  1. 要求 CI 团队为 openstack-manuals 创建一个稳定分支
  2. 更新 openstack-infra/project-config 仓库中的文件 gerritbot/channels.yaml,以获取新分支的通知。
  3. 创建分支后,在 openstack-manuals 分支上执行以下操作,以便 git review 自动工作
    • 更新 openstack-manuals 中的 .gitreview 文件,以添加 defaultbranch=stable/liberty,以指示 git review 将使用的分支
    • 设置构建以禁用所有未翻译和未版本化的指南的翻译,仅构建回移植的指南(安装指南和配置参考),并且不发布网页(liberty 补丁:https://review.openstack.org/245851
      • 更新 doc-test.conf 以发布到 /liberty
      • 更新 doc-tools-check-languages.conf 以禁用不需要翻译的指南
      • 更新 tools/build-all-rst.sh 以禁用发布不需要的指南
      • 更新 tools/publishdocs.sh 以禁用发布 www 文件
      • 更新 tools/build-install-guides-rst.sh 以发布到 /liberty
    • 禁用从 openstack-manuals liberty 分支到其他仓库的同步 (https://review.openstack.org/246195)
    • 将翻译的指南移动到 /liberty 以供发布 (https://review.openstack.org/246205)
  4. 在 master 上,停止发布到 /draft 和 /liberty,调整 tools/publishdocs.sh。
  5. 在 master 上,更改版本化指南中的版本信息到下一个版本(mitaka)。
  6. 在我们的翻译服务器上创建一个分支,以便翻译人员可以翻译版本化指南(Liberty 的安装指南)。这需要 Zanata 管理员(AJaeger、Daisy、Pleia2 等)
  7. 在 project-config 仓库中启用 liberty 的定期翻译作业 (https://review.openstack.org/246201)

翻译资源最小化

  1. 为了最小化翻译资源,更改 common-rst 生成方法 (https://review.openstack.org/#/c/246751/)

淘汰旧版本分支

在淘汰分支之前,将“未维护通知”添加到从该分支发布的指南中,并发布这些指南

更新 Google

更新 Google 站点地图和 Google 自定义搜索引擎

  • 使用 openstack-doc-tools 构建站点地图。
  • 确保存储在 Web 服务器上的 sitemap.xml 文件包含指向最新版本的链接。
  • 确保 sitemap.xml 中未列出最最近的 End-Of-Life 版本,方法是删除内容并添加重定向到网站的根目录 /。