构建¶
Overview¶
在 Odoo.sh 中,构建被视为由运行在项目仓库特定版本容器化环境中的 Odoo 服务器(odoo/odoo 和 odoo/enterprise)加载的数据库。其目的是测试该版本下服务器、数据库和功能的正常运行情况。

在此视图中,一行表示一个分支,行中的单元格表示该分支的一个构建版本。
大多数情况下,构建是根据对您的 GitHub 仓库分支的推送操作创建的。您也可以在执行其他操作时创建构建,例如在 Odoo.sh 上导入数据库,或在项目中的某个分支上请求重新构建。
如果在构建过程中没有出现错误或警告,则认为构建成功。成功的构建会以绿色突出显示。
如果在构建过程中出现错误,则认为该构建失败。失败的构建会以红色突出显示。
如果在创建过程中出现警告,但没有错误,该构建被视为几乎成功。它会以黄色突出显示,以通知开发者已引发警告。
构建并不总是从头开始创建数据库。例如,当在生产分支上推送更改时,生成的构建只是使用您的新版本启动服务器,并尝试在其上加载当前的生产数据库。如果没有出现错误,该构建将被视为成功,否则将失败。
阶段¶
生产¶
首次构建生产分支会从头开始创建一个数据库。如果此构建成功,该数据库将被视为项目的生产数据库。
从那时起,对生产分支的推送将创建新的构建,这些构建会尝试使用运行新修订版本的服务器来加载数据库。
如果构建成功,或者有警告但没有错误,那么生产数据库现在将使用此构建版本运行,并关联与此构建相关的修订版本。
如果构建无法加载或更新数据库,则会使用之前的成功构建来加载数据库,因此数据库将使用之前成功版本的服务器运行。
用于运行生产数据库的构建始终是构建列表中的第一个。如果一个构建失败,它将被放到当前运行生产数据库的构建之后。
试运行¶
预发布环境构建会复制生产数据库,并尝试使用预发布分支的修订版本加载此副本。
每次您将新的修订版本推送到暂存分支时,生成的构建会使用生产数据库的新副本。同一分支的不同构建之间不会重复使用数据库。这确保了:
预发布环境使用的数据库接近生产环境的实际情况,因此您不必使用过时的数据进行测试,
你可以在同一个测试数据库中随意进行操作,当你想要用生产环境的新副本重新开始时,可以请求重新构建。
尽管如此,这意味着如果您在测试数据库中进行了配置更改,但未在生产环境中应用这些更改,那么在下次构建同一测试分支时,这些更改将不会被传递。
开发¶
开发版本会创建新数据库,加载示例数据并运行单元测试。
如果在安装过程中测试失败,该构建将被视为失败并在红色中突出显示,因为它们旨在在发生错误时引发异常。
如果所有测试通过且没有错误,构建将被视为成功。
根据要安装和测试的模块列表,开发版本可能需要长达1小时才能准备就绪。这是由于默认的 Odoo 模块套件中设置了大量的测试。
功能¶
生产分支将始终显示在最前面,然后其他分支按最后构建时间进行排序。您可以筛选出所需的分支。

您可以使用 连接 链接访问每个分支的最新构建数据库,并通过 Github 链接跳转到分支代码。对于非生产分支,您可以使用 重新构建 链接创建一个新构建,该构建将使用该分支的最新修订版本。如果该分支已经有构建正在进行中,则此最后一个链接不可用。

你可以通过带有 GitHub 图标的按钮访问每次构建的修订更改。你可以作为管理员使用 连接 按钮访问构建的数据库。此外,你还可以在 连接 按钮的下拉菜单中使用 以其他用户身份连接 按钮,以其他用户身份访问数据库。
