I have a Jenkins multi branch pipeline job that uses a secret value in Jenkinsfile:
pipeline { agent any stages { stage('Test') { steps { echo "DOCKER_REGISTRY_USER is ${env.DOCKER_REGISTRY_USER_NSV}" } } } } The secret value is stored in Credentials Manager as secret text with the ID DOCKER_REGISTRY_USER_NSV:
I'm trying to read this value in Jenkinsfile as shown above but I get the following output that prints out the value null for my secret:
[Pipeline] } [Pipeline] // stage [Pipeline] withEnv [Pipeline] { [Pipeline] stage [Pipeline] { (Test) [Pipeline] echo DOCKER_REGISTRY_USER is null [Pipeline] sh I also tried referencing the secret text in my pipeline like this:
echo "DOCKER_REGISTRY_USER is ${DOCKER_REGISTRY_USER_NSV}" But then I get this error when running the Jenkins job:
groovy.lang.MissingPropertyException: No such property: DOCKER_REGISTRY_USER_NSV for class: groovy.lang.Binding at groovy.lang.Binding.getVariable(Binding.java:63) at org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.SandboxInterceptor.onGetProperty(SandboxInterceptor.java:264) I think I need to bind that credential to the job but I don't see an option to do that for a Multi-Branch Pipeline job, the way you can for a Freestyle or Pipeline job.
How can I use a secret credential in a Multi Branch Pipeline job?
