I am trying to print/list all our jenkins (Freestyle
and Pipeline
) Jobs separately along with SCM Details such as (Git URL & Branch details) using below groovy
. I am able to list our freestyle & scripted pipeline jobs names separately.
import jenkins.model.*
import hudson.model.*
import hudson.triggers.*
import org.jenkinsci.plugins.workflow.job.*
println("--- Jenkins Pipeline jobs List ---")
Jenkins.getInstance().getAllItems(WorkflowJob.class).each() { println(it.fullName) };
println("\n--- Jenkins FreeStyle jobs List ---")
Jenkins.getInstance().getAllItems(FreeStyleProject.class).each() { println(it.fullName) };
println '\nDone.'
With the below groovy code i can able to print the both freestyle & pipeline
Git URLs, But it is printing separately.
Jenkins.instance.getAllItems(hudson.model.AbstractProject.class).each {it ->
scm = it.getScm()
if(scm instanceof hudson.plugins.git.GitSCM)
{
println scm.getUserRemoteConfigs()[0].getUrl()
}
}
println "Done"
Need help in listing/printing both Job name & Git URL along with respective Job.