我刚开始第一次使用一个通过Linux RPM机制交付的产品,而不是作为一个独立的安装程序,我意识到这使得测试/发布周期变得更加棘手。
当我使用安装程序时,我们只是在构建系统中更改构建编号,将构建标记为测试或发布候选版本,而不是开发快照,并告诉人们只安装候选构建进行测试。使用RPM这样做的问题是,如果我们更改编号系统,我们将破坏交付机制,安装的机器将无法再分辨哪个是最新版本的RPM。
我想到的解决这个问题的最好方法是将候选RPM放在一个完全独立的RPM存储库中,但这也会变得复杂,因为我们有来自同一存储库的多个RPM,它们处于不同的发布周期,所以我们将尝试从新的存储库中提取RPM A的发布候选版本,同时仍然希望从开发存储库中获得RPM B的开发快照。
对于Linux软件来说,这肯定是一个非常常见的问题,所以有人能告诉我最佳实践吗?提前感谢……
发布于 2009-04-03 19:08:49
Linux世界中的一种常见方法是有一个广为人知的版本号约定,用于指示构建是开发版本还是发布版本。对于Linux内核本身,奇点版本(2.5,2.7)是开发版本,而偶数(2.4,2.6)是版本。
快速扫描RPM guide似乎表明,使用这样的方案可能是最好的选择。
https://stackoverflow.com/questions/715197
复制相似问题