Groovy 用于列出 Jenkins 项目和 TFS 项目路径的脚本
Groovy script to list Jenkins projects and TFS project path
我是 Jenkins、TFS 和 Groovy 脚本的新手,但我一直在研究但没有找到执行以下操作的确切方法:
我想生成所有 Jenkins CI 项目及其 TFS 项目路径的列表,因为我当前公司的命名非常不一致,我找不到 Jenkins CI 中的哪个项目相关到 TFS 中的哪个项目,而无需手动检查 Jenkins 中的项目路径。
我试过了,但它爆炸了,因为 getProjectPath() 不是 Hudson.model.*
中的方法
import hudson.model.*
jenkins = Hudson.instance
for (item in jenkins.items)
{
println item.getFullDisplayName()
println item.getProjectPath()
}
如有任何指导,我们将不胜感激。谢谢!
TFS's configuration located under SCM (Source Control Management) configuration section. To access it at first you need to get SCM with getScm()方法:
import hudson.model.*
import hudson.plugins.tfs.TeamFoundationServerScm
jenkins = Hudson.instance
for (item in jenkins.items)
{
scm = item.getScm()
if (scm instanceof TeamFoundationServerScm) {
println item.getFullDisplayName()
println scm.getProjectPath()
}
}
我是 Jenkins、TFS 和 Groovy 脚本的新手,但我一直在研究但没有找到执行以下操作的确切方法: 我想生成所有 Jenkins CI 项目及其 TFS 项目路径的列表,因为我当前公司的命名非常不一致,我找不到 Jenkins CI 中的哪个项目相关到 TFS 中的哪个项目,而无需手动检查 Jenkins 中的项目路径。 我试过了,但它爆炸了,因为 getProjectPath() 不是 Hudson.model.*
中的方法import hudson.model.* jenkins = Hudson.instance for (item in jenkins.items) { println item.getFullDisplayName() println item.getProjectPath() }
如有任何指导,我们将不胜感激。谢谢!
TFS's configuration located under SCM (Source Control Management) configuration section. To access it at first you need to get SCM with getScm()方法:
import hudson.model.*
import hudson.plugins.tfs.TeamFoundationServerScm
jenkins = Hudson.instance
for (item in jenkins.items)
{
scm = item.getScm()
if (scm instanceof TeamFoundationServerScm) {
println item.getFullDisplayName()
println scm.getProjectPath()
}
}