The following plugin provides functionality available through Pipeline-compatible steps. Read more about how to integrate steps into your Pipeline in the Steps section of the Pipeline Syntax page.
For a list of other such plugins, see the Pipeline Steps Reference page.
dockerNode
: Docker Node (⚠️ Experimental)Allocates a new Jenkins agent using a specified Docker image and runs tasks on it. Example:
dockerNode('jenkins/jnlp-agent-maven') { git 'https://github.com/jglick/simple-maven-project-with-tests' sh 'mvn -B -Dmaven.test.failure.ignore install' junit '**/target/surefire-reports/TEST-*.xml' }
image : String
connector
(optional)
attach
entryPointCmdString : String
(optional)
javaExe : String
(optional)
jvmArgsString : String
(optional)
user : String
(optional)
root
") will be used if this is left blank.
jnlp
jnlpLauncher
jnlp
tunnel : String
webSocket : boolean
(optional)
workDirSettings
(optional)
disabled : boolean
workDirPath : String
internalDir : String
failIfWorkDirIsMissing : boolean
entryPointArgumentsString : String
(optional)
jenkinsUrl : String
(optional)
user : String
(optional)
ssh
sshKeyStrategy
$class: 'InjectSSHKey'
user : String
$class: 'ManuallyConfiguredSSHKey'
credentialsId : String
sshHostKeyVerificationStrategy
$class: 'KnownHostsFileKeyVerificationStrategy'
Checks the known_hosts file (~/.ssh/known_hosts) for the user Jenkins is executing under, to see if an entry exists that matches the current connection.
This method does not make any updates to the Known Hosts file, instead using the file as a read-only source and expecting someone with suitable access to the appropriate user account on the Jenkins controller to update the file as required, potentially using the ssh hostname
command to initiate a connection and update the file appropriately.
$class: 'ManuallyProvidedKeyVerificationStrategy'
Checks the key provided by the remote host matches the key set by the user who configured this connection.
key : String
The SSH key expected for this connection. This key should be in the form `algorithm value` where algorithm is one of ssh-rsa or ssh-dss, and value is the Base 64 encoded content of the key.
$class: 'ManuallyTrustedKeyVerificationStrategy'
Checks the remote key matches the key currently marked as trusted for this host.
Depending on configuration, the key will be automatically trusted for the first connection, or an authorised user will be asked to approve the key. An authorised user will be required to approve any new key that gets presented by the remote host.
requireInitialManualTrust : boolean
Require a user with Computer.CONFIGURE permission to authorise the key presented during the first connection to this host before the connection will be allowed to be established.
If this option is not enabled then the key presented on first connection for this host will be automatically trusted and allowed for all subsequent connections without any manual intervention.
$class: 'NonVerifyingKeyVerificationStrategy'
Does not perform any verification of the SSH key presented by the remote host, allowing all connections regardless of the key they present.
javaPath : String
(optional)
jvmOptions : String
(optional)
launchTimeoutSeconds : int
(optional)
maxNumRetries : int
(optional)
Note: That this field applies first to checks that the SSH port is open for new TCP connections, and secondly to checks that the SSH service that owns the TCP port is accepting SSH connections.
e.g. a value of 3 would mean that (up to) 4 attempts (1 initial attempt plus 3 retries) would be made to check the availability of the TCP port, followed by (up to) 4 attempts (1 initial attempt plus 3 retries) to check the availability of the SSH service itself.
port : int
(optional)
prefixStartSlaveCmd : String
(optional)
retryWaitTime : int
(optional)
suffixStartSlaveCmd : String
(optional)
credentialsId : String
(optional)
dockerHost : String
(optional)
remoteFs : String
(optional)
workspace
subdirectory as well as various control files. If not specified, uses the WORKDIR
from the image.
step([$class: 'DockerBuilderControl'])
: Start/Stop Docker Containersoption
$class: 'DockerBuilderControlOptionProvisionAndStart'
cloudName : String
templateId : String
$class: 'DockerBuilderControlOptionRun'
cloudName : String
image : String
pullCredentialsId : String
dnsString : String
network : String
dockerCommand : String
mountsString : String
volumesFrom : String
environmentsString : String
hostname : String
user : String
extraGroupsString : String
memoryLimit : int
memorySwap : int
cpuPeriod : long
cpuQuota : long
cpuShares : int
shmSize : int
bindPorts : String
bindAllPorts : boolean
privileged : boolean
tty : boolean
macAddress : String
$class: 'DockerBuilderControlOptionStart'
cloudName : String
containerId : String
$class: 'DockerBuilderControlOptionStop'
cloudName : String
containerId : String
remove : boolean
$class: 'DockerBuilderControlOptionStopAll'
remove : boolean
step([$class: 'DockerBuilderPublisher'])
: Build / Publish Docker ImagedockerFileDirectory : String
fromRegistry
url : String
https://index.docker.io/v1/
).
credentialsId : String
cloud : String
tagsString : String
pushOnSuccess : boolean
pushCredentialsId : String
cleanImages : boolean
cleanupWithJenkinsJobDelete : boolean
buildArgs
(optional)
A map of build-time variables.
java.util.Map<java.lang.String, java.lang.String>
buildArgsString : String
(optional)
A list of new line separated build-time variables, specified in the form "name=value"
.
noCache : boolean
(optional)
--no-cache
which disables caching of layers. See the docker build command for more information.
pull : boolean
(optional)
--pull
to pull the latest version of the base image, instead of using the local one. See the docker build command for more information.
Please submit your feedback about this page through this quick form.
Alternatively, if you don't wish to complete the quick form, you can simply indicate if you found this page helpful?
See existing feedback here.