如何自动执行发布开源软件的任务?

时间:2008-11-13 00:15:17

标签: open-source automation version release versions

管理开源软件的每个人都遇到了这个问题,随着发布新版本的过程越来越多。您必须在版本控制中标记版本,创建分发(使用自动构建应该很容易),将它们上传到您的网站和/或开源托管服务商。您必须在选定的网络论坛,sourceforge上的新闻系统,邮件列表以及您的博客或网站上宣布新版本的消息几乎相同。而且您必须在freshmeat上更新软件的条目。可能需要为发布完成更多任务。

您是否开发了自动化其中一些任务的技术?是否存在支持此功能的软件?

3 个答案:

答案 0 :(得分:1)

对于我的Perl,我写了Module::Release。在顶级目录中,我输入一个命令:

% release

如果有任何问题,检查几件事情就会死掉。如果一切都结账,它会上传分发。

它使我的整个过程自动化:

  • 针对多个版本的Perl进行测试
  • 测试分发文件
  • 检查源代码管理的状态
  • 检查代码和分发质量指标
  • 更新更改文件
  • 确定新版本号
  • 将代码发布到多个地方
  • 使用新版本号标记源代码管理

每个人似乎都在编写自己的发布自动机。大多数人都喜欢他们的过程,他们喜欢他们的过程,所以一般的解决方案在社交方面做得不好。

答案 1 :(得分:1)

Pragmatic Project Automation展示了如何做到这一切。他们使用Ant几乎涵盖了本书中的所有内容,因此如果您了解Ant,您可以制定不同的目标来执行构建发布周期中的任何步骤。

答案 2 :(得分:1)

Brad Fitzpatrick有ShipIt这是一个自动发布的Perl程序。他的original announcement中有更多信息。