如何通过外部Perl脚本触发Jenkins构建/作业?

时间:2013-04-30 14:35:11

标签: perl jenkins

我的目标是在Unix环境中编写Perl脚本,通过传递Jenkins master和其他参数的URL来触发Jenkins构建/作业。 怎么可以这样做?

以下是我的一些详细问题:

  • 我需要哪些Perl库?
  • 需要Perl中的哪些功能?
  • 如何从脚本中将其他构建参数传递给Jenkins?
  • 如何从Jenkins取回结果?

1 个答案:

答案 0 :(得分:3)

您通常需要LWP模块及其子模块。 Here's an article关于你如何使用它:

我通常会说“当你可以使用Perl解决方案时不要使用system ”。

但是,在这种情况下我会做一个例外,因为只是让一个系统调用wget命令更容易:

system qq(wget -q $build_trigger_url);

如何从脚本中将其他构建参数传递给Jenkins?

将参数传递给Jenkins构建将涉及通过修改%ENV哈希来设置环境变量,或者通过修改URL来包含这些参数(通过GET请求)。不同的插件和配置需要不同的方法。

如果您的构建计算机是Windows系统,则可以下载wget命令。

如何从Jenkins取回结果?

Jenkins有一个内置的RESTful API。只需单击每页底部的 REST API 链接即可。您可以使用REST::Client模块拨打REST电话,但您也可以system拨打wget电话。

RESTful API将以JSON或XML格式返回数据。您应该获得JSON或XML模块来帮助读取此数据。有时,RESTful API将返回纯文本,例如获取最新版本号或时间戳时。