jenkins pipeline 聲明式和腳本式
Jenkins Pipeline 是一種持續(xù)集成和持續(xù)交付工具,它允許你創(chuàng)建可以包含多個(gè)階段的pipeline。你可以使用兩種方式定義 Jenkins Pipeline:
聲明式 Pipeline 語(yǔ)法:使用簡(jiǎn)潔的聲明式語(yǔ)法定義pipeline,適合小型項(xiàng)目。
腳本式 Pipeline:使用 Groovy 腳本定義pipeline,提供了更大的靈活性,適合復(fù)雜項(xiàng)目。
聲明式 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 的關(guān)鍵字,它定義了整個(gè)構(gòu)建過(guò)程。node 是腳本式 Pipeline 中的關(guān)鍵字,用于指定在一個(gè)節(jié)點(diǎn)上執(zhí)行整個(gè)腳本。stage 是聲明式和腳本式 Pipeline 中的關(guān)鍵字,用于定義構(gòu)建的不同階段。steps 是聲明式 Pipeline 中的關(guān)鍵字,它包含了具體的構(gòu)建命令。