Create a gist now

Instantly share code, notes, and snippets.

What would you like to do?
Setup Jenkins Credentials
import jenkins.model.*
import com.cloudbees.plugins.credentials.*
import com.cloudbees.plugins.credentials.common.*
import com.cloudbees.plugins.credentials.domains.*
import com.cloudbees.plugins.credentials.impl.*
import com.cloudbees.jenkins.plugins.sshcredentials.impl.*
import hudson.plugins.sshslaves.*;
domain = Domain.global()
store = Jenkins.instance.getExtensionList('com.cloudbees.plugins.credentials.SystemCredentialsProvider')[0].getStore()
priveteKey = new BasicSSHUserPrivateKey(
CredentialsScope.GLOBAL,
"jenkins-slave-key",
"root",
new BasicSSHUserPrivateKey.UsersPrivateKeySource(),
"",
""
)
usernameAndPassword = new UsernamePasswordCredentialsImpl(
CredentialsScope.GLOBAL,
"jenkins-slave-password", "Jenkis Slave with Password Configuration",
"root",
"jenkins"
)
store.addCredentials(domain, priveteKey)
store.addCredentials(domain, usernameAndPassword)

Do you know how to do "secret file" or "secret text"? These are additional kinds of credentials that can be stored in Jenkins.

I found a solution to secret file and secret text. I have forked the gist and updated my fork.

I had to update my fork to correctly deal with DiskFileItem

I am able to run this script when invoked using "Execute System Groovy Script" but not with "Process Job DSL" in one machine, while it runs with both in some machines. Can somebody help with the problem ?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment