Jenkins Pipeline Syntax: Difference between revisions
Jump to navigation
Jump to search
Line 100: | Line 100: | ||
These basic steps are used invoking on <code>stage.</code>. In a Jenkinsfile, and inside a stage, invoke on <code>this.</code> or simply invoking directly, without qualifying. | These basic steps are used invoking on <code>stage.</code>. In a Jenkinsfile, and inside a stage, invoke on <code>this.</code> or simply invoking directly, without qualifying. | ||
====dir==== | |||
{{External|https://jenkins.io/doc/pipeline/steps/workflow-basic-steps/#-dir-change-current-directory}} | |||
Change current directory. | |||
====echo==== | ====echo==== |
Revision as of 17:44, 21 November 2019
External
Internal
Scripted Pipeline
node {
echo 'Pipeline logic starts'
stage('Build') {
// ...
}
stage('Test') {
// ...
}
stage('Deploy') {
// ...
}
Parallel Stages
stage("tests") {
parallel(
"unit tests": {
// run unit tests
},
"coverage tests": {
// run coverage tests
}
)
}
Declarative Pipeline
pipeline {
agent any
options {
skipStagesAfterUnstable()
}
stages {
stage('Build') {
steps {
sh 'make'
}
}
stage('Test'){
steps {
sh 'make check'
junit 'reports/**/*.xml'
}
}
stage('Deploy') {
steps {
sh 'make publish'
}
}
}
}
Pipeline Steps
node
{{External|https://jenkins.io/doc/pipeline/steps/workflow-durable-task-step/#-node-allocate-node}
Allocate node.
sh
Shell Script.
ws
Allocate workspace.
Basic Steps Reference
These basic steps are used invoking on stage.
. In a Jenkinsfile, and inside a stage, invoke on this.
or simply invoking directly, without qualifying.
dir
Change current directory.
echo
error
readFile
Read a file from the workspace.
def versionFile = readFile("${stage.WORKSPACE}/terraform/my-module/VERSION")