以编程方式查找Job DSL插件生成的作业

时间:2020-08-17 04:47:37

标签: jenkins groovy jenkins-job-dsl

我们在Jenkins服务器上混合了基于DSL的作业和手动创建的作业。 我想查找DSL生成的所有作业(或过去任何时候DSL生成的所有作业)。 我在作业的config.xml中没有发现它是由DSL生成的。 那么,有可能吗?

1 个答案:

答案 0 :(得分:0)

嗯,我和你有同样的问题。

我想知道生成的作业中的“种子作业”链接是如何创建的。我也没有在所有生成的工作中看到它。

不幸的是,我的研究并没有走得太远。

在脚本控制台中,我列出了我的一项作业的方法(我们称之为 foo):

Jenkins.instance.getItems().each {
  if (it.getName() == 'foo') {
    println it
    it.class.getMethods().each { method ->
      println method
    }
  }
};

但是,我在那里没有看到任何包含 jobdsl 的方法。

我找到了一个文件 $JENKINS_HOME/javaposse.jobdsl.plugin.ExecuteDslScripts.xml,其中包含生成的作业名称及其种子作业。但是不知道有没有官方的JobDSL API可以读取。

所以...如果你能找到更多信息,我很高兴知道 - 祝你好运!