jenkins pipeline 声明式和脚本式
Jenkins Pipeline 是一种持续集成和持续交付工具,它允许你创建可以包含多个阶段的pipeline。你可以使用两种方式定义 Jenkins Pipeline:
声明式 Pipeline 语法:使用简洁的声明式语法定义pipeline,适合小型项目。
脚本式 Pipeline:使用 Groovy 脚本定义pipeline,提供了更大的灵活性,适合复杂项目。
声明式 Pipeline 示例:
pipeline {
agent any
stages {
stage('Build') {
steps {
echo 'Building..'
sh 'make'
}
}
stage('Test') {
steps {
echo 'Testing..'
sh 'make check'
}
}
stage('Deploy') {
steps {
echo 'Deploying....'
sh 'make publish'
}
}
}
}
脚本式 Pipeline 示例:
node {
stage('Build') {
echo 'Building..'
sh 'make'
}
stage('Test') {
echo 'Testing..'
sh 'make check'
}
stage('Deploy') {
echo 'Deploying....'
sh 'make publish'
}
}
在这两种方式中,pipeline 是声明式 Pipeline 的关键字,它定义了整个构建过程。node 是脚本式 Pipeline 中的关键字,用于指定在一个节点上执行整个脚本。stage 是声明式和脚本式 Pipeline 中的关键字,用于定义构建的不同阶段。steps 是声明式 Pipeline 中的关键字,它包含了具体的构建命令。