Last active
November 8, 2021 12:01
-
-
Save hgomez/8757649 to your computer and use it in GitHub Desktop.
Jenkins Groovy script to set CredentialsId
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| import hudson.model.* | |
| import hudson.maven.* | |
| import hudson.tasks.* | |
| import hudson.scm.* | |
| def match_url = "http://svn.mycorp.com/svn/devops" | |
| for(item in Hudson.instance.items) { | |
| hasClaim = false; | |
| if (item.scm instanceof SubversionSCM) | |
| { | |
| for(location in item.scm.locations) { | |
| if (location.remote.startsWith(match_url)) { | |
| println("\n@@@@@@@@@@@@@@@@@") | |
| println("\njob $item.name") | |
| println("\n@@@@@@@@@@@@@@@@@") | |
| println("\nlocation $location.remote") | |
| credid = location.credentialsId | |
| if (credid != null) | |
| println("\ncredid $credid") | |
| } | |
| } | |
| } | |
| } |
@elhabibmed, your script works just fine. Thanks
There is a bug in this line :
if (location.remote.startsWith("match_url")) {There is no $ before variable name. It should be :
if (location.remote.startsWith("$match_url")) {Also, this check :
&& job instanceof SCMedItemon Jenkins 1.580.1 LTS caused that only jobs created as "Multi-configuration project" were affected. After fixing bug with "$" and after removing above check from if, script works just fine and changes all jobs matching "$match_url".
Please post the code to set the 'credentials id' as I've been searching for quite sometime now. This code deals with fetching the 'credentials id' Thanks in advnace
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
import java.util.*
import hudson.model.*
import hudson.matrix.*
import hudson.tasks.*
import hudson.scm.*
def match_url = "http://svn.mycorp.com/svn/devops"
hudson.model.Hudson.instance.items.findAll{job -> job.isBuildable() && job instanceof SCMedItem}.each{
job ->
def scm = job.getScm()
if (scm instanceof hudson.scm.SubversionSCM) {
}
job.save()
}