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()
    }
}