1

有没有人在 Perl 中使用 Hudson(或其他类似的构建系统)取得任何成功?

4

4 回答 4

4

对于非 Java 构建脚本,我通常使用 Hudson 的自定义构建脚本模板。也就是说,我可以在 Hudson 中指定一个 shell 脚本。从那里,我可以运行诸如 make、configure 之类的 GNU 工具,并且我通常会将一些 echo 嵌入到脚本中,或者将一些输出重定向到自定义文件,然后我将其打包到一个特殊的文件夹中,并标记为构建工件。

例如,我可能,

cd src
perl Makefile.PL > ${WORKSPACE}/logs/makefile.log
make > ${WORKSPACE}/logs/make.log

对于初学者。

然后我可以将 logs/** 包装为构建工件。

于 2009-07-31T17:32:00.477 回答
3

我已经将 Perl 集成到几个构建系统中,虽然不是 Hudson。为什么要使用 Hudson?也许你的问题还有另一个答案。

  • 您是否在使用 Hudson 进行其他所有操作的 Java 商店?
  • Hudson 中是否有您真正想要的功能?
  • 您是否出于某种原因避免使用其他构建系统?
于 2009-07-29T18:33:47.407 回答
3

使用 Hudson 和 Java 一年左右,以及 Hudson 和 Perl 几个月,我更喜欢前者,并让后者表现得像前者。

Hudson 以 Java 为中心,开箱即用的 Maven 和 Junit 效果最佳。但是,它支持 shell 脚本,因此您可以轻松地执行通常的perl Makefile.PL && make && make test.

但是,如果您使用 oen 的(新的)Perl 测试结果格式化程序,您可以获得更好的结果:

perl Makefile.PL
make setup
prove --timer --recurse -m --harness=TAP::Harness::JUnit t/

指某东西的用途

TAP::线束::JUnit
将 Perl 测试结果集成到 Hudson 中,让 Hudson 能够像运行 Java 项目一样绘制图形和报告。

您可以轻松地prove用调用来启动/停止 Apache 测试服务器 - 请参阅 CPAN for Apache Test。

于 2010-08-12T08:07:20.487 回答
1

是的,有人在另一个类似的构建系统上取得了成功。

于 2009-07-29T09:36:08.490 回答