Skip to content

Instantly share code, notes, and snippets.

@honnamkuan
Created January 17, 2021 06:07
Show Gist options
  • Save honnamkuan/c71d6c4dc90301519d36f234ed3e5cde to your computer and use it in GitHub Desktop.
Save honnamkuan/c71d6c4dc90301519d36f234ed3e5cde to your computer and use it in GitHub Desktop.
import com.cloudbees.hudson.plugins.folder.properties.FolderCredentialsProvider
import com.cloudbees.plugins.credentials.common.StandardCredentials
import com.cloudbees.hudson.plugins.folder.Folder
def creds = com.cloudbees.plugins.credentials.CredentialsProvider.lookupCredentials(
com.cloudbees.plugins.credentials.common.StandardCredentials.class, Jenkins.instance, null, null)
creds.eachWithIndex {
it,
i ->println "\n========== [Global] Credential ${i+1} Start =========="
it.properties.each {
println it
}
println "========== [Global] Credential ${i+1} End ==========\n"
}
def folders = Jenkins.getInstance().getItems(Folder);
def folderCredsMap = folders.collect {
folder ->def folderName = folder.name
def folderDomainCredentials = folder.properties.get(FolderCredentialsProvider.FolderCredentialsProperty.class).domainCredentials
def folderCredentials = []
folderDomainCredentials.each {
def credentials = it.credentials;
credentials.each {
folderCredentials << it
}
}
return [folderName: folderName, credentials: folderCredentials]
}
folderCredsMap.each {
def folderName = it.folderName
it.credentials.eachWithIndex {
folderCred,
i ->println "\n========== [${folderName}] Credential ${i+1} Start =========="
folderCred.properties.each {
println it
}
println "========== [${folderName}] Credential ${i+1} End ==========\n"
}
}
return
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment