Jenkins Credentials Binding Plugin: Difference between revisions
Jump to navigation
Jump to search
Line 18: | Line 18: | ||
=<tt>withCredentials</tt>= | =<tt>withCredentials</tt>= | ||
==Injecting Username and Password into a Build Step== | ==Injecting Username and Password into a Build Step== | ||
A typical pattern to project username and password into a build step: | |||
<syntaxhighlight lang='groovy'> | |||
withCredentials([usernamePassword(credentialsId: 'amazon', usernameVariable: 'USERNAME', passwordVariable: 'PASSWORD')]) { | |||
// available as an env variable, but will be masked if you try to print it out any which way | |||
// note: single quotes prevent Groovy interpolation; expansion is by Bourne Shell, which is what you want | |||
sh 'echo $PASSWORD' | |||
// also available as a Groovy variable | |||
echo USERNAME | |||
// or inside double quotes for string interpolation | |||
echo "username is $USERNAME" | |||
} | |||
</syntaxhighlight> |
Revision as of 05:41, 10 April 2021
External
- https://wiki.jenkins.io/display/JENKINS/Credentials+Binding+Plugin
- https://plugins.jenkins.io/credentials-binding/
- https://www.jenkins.io/doc/pipeline/steps/credentials-binding/#withcredentials-bind-credentials-to-variables
- https://docs.cloudbees.com/docs/cloudbees-ci/latest/cloud-secure-guide/injecting-secrets
Internal
Overview
This plugin allows credentials defined in the Jenkins server to be bound to environment variables or parameters to be used fro miscellaneous build steps. It uses a withCredentials step whose programming model is explained below.
Playground
withCredentials
Injecting Username and Password into a Build Step
A typical pattern to project username and password into a build step:
withCredentials([usernamePassword(credentialsId: 'amazon', usernameVariable: 'USERNAME', passwordVariable: 'PASSWORD')]) {
// available as an env variable, but will be masked if you try to print it out any which way
// note: single quotes prevent Groovy interpolation; expansion is by Bourne Shell, which is what you want
sh 'echo $PASSWORD'
// also available as a Groovy variable
echo USERNAME
// or inside double quotes for string interpolation
echo "username is $USERNAME"
}