19

我阅读了Jenkins wiki的部分内容,该部分涵盖了设置由 Jenkins 实例监控的远程作业。但是,文档令人困惑,因为它没有告诉我在 Jenkins 机器或远程机器(完成这项工作的机器)上配置什么。

此外,文档还提到了可以直接触发的 Java 命令以及其他需要 servlet 容器的命令。我必须在远程机器上安装一个 servlet 容器吗?

也许一切都在那里,但对我来说,这就像两个文档的混合。你能否澄清一下:

  • 我需要在远程机器上做什么?
  • 我需要在 Jenkins 机器上做什么?

谢谢你。

4

2 回答 2

44

在 Jenkins 中,您需要使用“监控外部作业”选项来创建作业。给它一个名字,例如“nightly-backup”。

在运行外部作业的机器上,您需要安装 Java 和一些基本的 Jenkins JAR 文件,以便将作业结果发送给 Jenkins。

正如 wiki 页面所说,在某些版本的 Debian 或 Ubuntu 上,您可以这样做:
sudo apt-get install jenkins-external-tool-monitor

否则,您必须手动将一堆 JAR(即 wiki 页面上列出的那些)复制到您的远程计算机。

一旦你的远程机器上有可用的 JAR,你就可以在那里执行你喜欢的任何命令,只要你在它前面加上一些 Jenkins 信息:在哪里可以找到 Jenkins 安装、主 Java JAR 和作业名称:

JENKINS_HOME=http://my-jenkins/ java -jar jenkins-core-*.jar nightly-backup ./backup.sh --nightly /home

http://my-jenkins/Jenkins 的基本 URL在哪里,nightly-backup与您在 Jenkins 中创建的“监控外部作业”的名称相匹配,并且./backup.sh --nightly /home是您希望运行的命令。

./backup.sh命令的输出将在完成后自动显示在 Jenkins 中。

于 2012-08-07T00:27:27.830 回答
7

看起来这现在被称为“ jenkins-external-job-monitor ”,所以你可以输入:

sudo apt-get install jenkins-external-job-monitor
于 2014-01-04T00:38:29.693 回答