一,语法:

  编写位置:    pipline --学习 (-)-LMLPHP

  pipline 启动docker

pipeline {
agent { docker 'maven:3.3.3' }
stages {
stage('build') {
steps {
sh 'mvn --version'
}
}
}
}

  执行shell

pipeline {
agent any
stages {
stage('Build') {
steps {
sh 'echo "Hello World"'
sh '''
echo "Multiline shell steps works too"
ls -lah
'''
}
}
}
}

  超时配置

  “包装”其他步骤,可以轻松地解决问题,如重试(retry)步骤,直到成功或退出,如果步骤太长(timeout

pipeline {
agent any
stages {
stage('Deploy') {
steps {
retry() {
sh './flakey-deploy.sh'
} timeout(time: , unit: 'MINUTES') {
sh './health-check.sh'
}
}
}
}
}

  对应执行结果执行不同内容

  

pipeline {
agent any
stages {
stage('Test') {
steps {
sh 'echo "Fail!"; exit 1'
}
}
}
post {
always {
echo 'This will always run'
}
success {
echo 'This will run only if successful'
}
failure {
echo 'This will run only if failed'
}
unstable {
echo 'This will run only if the run was marked as unstable'
}
changed {
echo 'This will run only if the state of the Pipeline has changed'
echo 'For example, if the Pipeline was previously failing but is now successful'
}
}
}

  dock er 内执行命令  

node {
/* Requires the Docker Pipeline plugin to be installed */
docker.image('node:7-alpine').inside {
stage('Test') {
sh 'node --version'
}
}
}

  基本流程

  

pipeline {
agent any
stages {
stage('Build') {
steps {
echo 'Building'
}
}
stage('Test') {
steps {
echo 'Testing'
}
}
stage('Deploy') {
steps {
echo 'Deploying'
}
}
}
}

    

  

出处

https://www.w3cschool.cn/jenkins/jenkins-jg9528pb.html

  

05-11 22:03