将SVN与Jenkins一起使用,我需要将已更改文件的列表传递给其他进程。使用上面链接中的代码,我得到如下结果:脚本返回:[hudson.scm.SubversionChangeLogSet$Path@6e78d3d7]
我不熟悉Groovy。有人可以帮帮我吗?感谢。
import hudson.model.*
import hudson.util.*
import hudson.scm.*
import hudson.scm.SubversionChangeLogSet.LogEntry
// work with current build
def build = Thread.currentThread()?.executable
// for testing, use last build or specific build number
//def item = hudson.model.Hudson.instance.getItem("Update_SRC_Branch")
//def build = item.getLastBuild()
//def build = item.getBuildByNumber(35)
// get ChangesSets with all changed items
def changeSet= build.getChangeSet()
List<LogEntry> items = changeSet.getItems()
def affectedFiles = items.collect { it.paths }
def fileNames = affectedFiles.flatten()
new File("/tmp/svn.change.list").withWriter { out ->
fileNames.each {
out.println it
}
}
答案 0 :(得分:0)
答案 1 :(得分:0)
对Build Flows使用currentExecutable而不是可执行文件。