设置 Jenkins 以监视外部作业



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

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

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

  • 我需要在远程计算机上执行什么操作?
  • 我需要在 Jenkins 机器上做什么?

谢谢。

在 Jenkins 中,您需要使用"监视外部作业"选项创建作业。 给它起一个名字,例如"夜间备份"。

在运行外部作业的机器上,需要安装 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 中。

看起来现在称为"jenkins-external-job-monitor",所以你要输入:

sudo apt-get install jenkins-external-job-monitor

最新更新