Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/jenkins/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何访问Jenkins管道脚本中的触发器事件属性_Jenkins - Fatal编程技术网

如何访问Jenkins管道脚本中的触发器事件属性

如何访问Jenkins管道脚本中的触发器事件属性,jenkins,Jenkins,我有一个Jenkins作业配置,它使用“每当看到指定事件时构建”触发器(由Cloudbee的通知API插件支持),并指定Jmespath查询(例如ref=='refs/heads/master'),并运行管道脚本。我想从管道脚本中访问触发器事件中的其他属性(例如repository.full_name)。我该怎么做?找到了答案。我要查找的数据位于构建原因的com.cloudbees.jenkins.plugins.pipeline.events.EventTriggerCause实例中。例如,以

我有一个Jenkins作业配置,它使用“每当看到指定事件时构建”触发器(由Cloudbee的通知API插件支持),并指定Jmespath查询(例如ref=='refs/heads/master'),并运行管道脚本。我想从管道脚本中访问触发器事件中的其他属性(例如repository.full_name)。我该怎么做?

找到了答案。我要查找的数据位于构建原因的com.cloudbees.jenkins.plugins.pipeline.events.EventTriggerCause实例中。例如,以下代码查找所有提交:

  def newCommits = currentBuild.rawBuild.getCauses().findAll {
    it instanceof com.cloudbees.jenkins.plugins.pipeline.events.EventTriggerCause
  }.collect{
    it.getEvent().commits
  }