常见问题-发布流程
简介
本页描述了Dolibarr ERP CRM(法语中的制造流程或供应链)的最新稳定版本的构建与发布流程。
按照不同的时期构建新版本:
开发期 -> 冻结/测试期 -> 最终稳定版本 (有关冻结/测试版本的定义参见页面 Category:RoadMap )
以下这是对这三个时期的描述。
开发期
开发
第一步是软件开发。可以从 GitHub 下载源代码,GitHub网址为 https://github.com/Dolibarr/dolibarr
任何开发者都可以下载源代码和使用 git 为自己工作,并可以提交请求以要求将自己的变更包含在官方源代码中。
有关如何执行这些操作的详细信息,请参见 FAQ Get or update project with GIT 。
持续交流
每次提交包含变更的新请求时,都会在验证变更之前完成持续集成测试。
持续集成测试被包含在目录*tests*下的官方源代码中。它们在Travis平台上运行,可以在此处进行分析: https://travis-ci.org/Dolibarr/dolibarr/
如果测试失败,将不会对其进行验证(请参阅下一步)。
验证新变更
只有Dolibarr Yoda级别的人才能接收并将变更纳入官方开发源代码。此权限在GitHub上授予
有关拥有此级别的人员列表,请参阅 Dolibarr roles 。
测试期
当版本中包含了足够多的变更后,根据计划,由Dolibarr Yoda决定开始测试。
从这一刻开始,不会再添加任何新功能。
请参见页面 Category:RoadMap ,了解新版本和规则的标准规划,这些版本和规则定义了在测试期间可以修改或不可以修改的代码类型。
生成 packages 是使用打包工具 makepack_dolibarr.pl 完成的。有关该工具的详细操作,请参阅下一章。
打包最终版本
当测试期结束(没有严重bugs的报告和打开),由Dolibarr Yoda决定开始冻结最终版本。版本的名称定义为值X.Y.Z。
注意:只有Dolibarr Yoda才能执行此操作。
- 首先,运行最后的单元测试。若发现有1个测试错误,停止后续操作并返回测试阶段。
所有测试都正常后,将使用打包工具 makepack_dolibarr.pl 自动执行以下步骤:
- 该工具生成(或建议生成) ChangeLog 文件。此文件是与源代码一起被提交的。
- 该工具生成文件filelist-X.Y.Z.xml,其中包含具有MD5签名和版本值的版本文件清单。此文件是与源代码一起被提交的。
- 该工具在官方源代码存储库的所有文件上添加一个Tag,该Tag是版本的名称(即X.Y.Z)。因此,从现在开始,专用版本的所有文件都是已知的,并且不会再更改。
- 该工具构建所有的官方分发包。此类包的内容和签名文件的内容相匹配,因为签名文件是在同一过程中生成的。其构建了以下程序包:
- Package .zip (主包)
- Package .tgz
- 自动安装程序 Doliwamp .exe
- 基于 Debian/Ubuntu 平台的自动安装程序 DoliDeb .deb
- 基于 Redhat、linuxmint、mandriva 平台的自动安装程序 DoliRpm .rpm
- 该工具将生成的签名文件 filelist-X.Y.Z.xml 上传到官方的Dolibarr服务器上。任何已安装的应用程序都可以读取此文件,以检查版本的完整性(即使修改了一个字节也会使签名改变)。
- 该工具将生成的包上传到官方的Dolibarr存档服务器,以二进制形式进行存档。读取该存档的页面是https://www.dolibarr.org/files/stable/
- 该工具将生成的包上传到托管在 https://www.sourceforge.net 的镜像存档服务器中。这是一个镜像托管,官方参考资料仍然保留在Dolibarr存档区,由Dolibarr团队托管,位于 https://www.dolibarr.org/files/stable/.
- 该版本也被创建到 https://GitHub.com/Dolibarr/dolibarr
- 然后,Dolibarr社区的人们在不同的渠道(www.dolibarr.org、论坛、社交网络…)上发布公告。
- 从此刻开始,一个新的周期可以开始了。从这个版本的源代码开始一个新的开发期。
然后 Dolibarr Yoda 将在 https://wiki.dolibarr.org 上新增一个页面(每个版本一个页面),用于描述新版本的内容。这是版本发布公告。您可以在 Category:RoadMap 页面上查看过去的公告清单。
在任何时候,通过菜单“主页-管理工具-关于Dolibarr-文件集完整性检查”,管理员用户都可以检查并验证其安装版本相比与官方参考版本的完整性。该工具计算每个文件的签名,并将其与官方签名进行比较。将报告所有被删除和被修改的文件。
在任何时候,开发人员都可以在Github上使用发布流程第一步创建的 Tag 来获取任何稳定版本的所有文件。