Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save chrisvire/383a2c7b7cfb3f55df6a to your computer and use it in GitHub Desktop.
Save chrisvire/383a2c7b7cfb3f55df6a to your computer and use it in GitHub Desktop.
Setup Jenkins Credentials
import jenkins.model.*
import com.cloudbees.plugins.credentials.*
import com.cloudbees.plugins.credentials.common.*
import com.cloudbees.plugins.credentials.impl.*
import com.cloudbees.jenkins.plugins.sshcredentials.impl.*
import org.jenkinsci.plugins.plaincredentials.*
import org.jenkinsci.plugins.plaincredentials.impl.*
import hudson.util.Secret
import hudson.plugins.sshslaves.*
import org.apache.commons.fileupload.*
import org.apache.commons.fileupload.disk.*
import java.nio.file.Files
domain =
store = Jenkins.instance.getExtensionList('com.cloudbees.plugins.credentials.SystemCredentialsProvider')[0].getStore()
priveteKey = new BasicSSHUserPrivateKey(
new BasicSSHUserPrivateKey.UsersPrivateKeySource(),
usernameAndPassword = new UsernamePasswordCredentialsImpl(
"jenkins-slave-password", "Jenkis Slave with Password Configuration",
secretText = new StringCredentialsImpl(
"Secret Text Description",
Secret.fromString("some secret text goes here"))
factory = new DiskFileItemFactory()
dfi = factory.createItem("", "application/octet-stream", false, "filename")
out = dfi.getOutputStream()
file = new File("/path/to/some/file")
Files.copy(file.toPath(), out)
FileCredentailsImpl can take a file from a do
secretFile = new FileCredentialsImpl(
"Secret File Description"
dfi, // Don't use FileItem
store.addCredentials(domain, priveteKey)
store.addCredentials(domain, usernameAndPassword)
store.addCredentials(domain, secretText)
store.addCredentials(domain, secretFile)
Copy link

I'm trying to find a way to list secret texts. I found a script for listing credentials, but it does not include secret text. Any chance you could help me out?

Copy link

chenzhiwei commented Nov 9, 2016

Hi, do you know how to setup "Enable Slave → Master Access Control" in init groovy script?


Copy link

To enable slave -> master access control, you drop a file named "slave-to-master-security-kill-switch" in $JENKINS_HOME/secrets. It has to be a text file with the one line "false" in it. (Yes false, not true -- I don't get it either.)

You could write a groovy script to do that.

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