在介绍jenkinsfile前先看下pipeline的概念。
jenkins官方文档:Jenkins Pipeline (or simply "Pipeline") is a suite of plugins which supports implementing and integrating continuous delivery pipelinesinto Jenkins.
即pipeline是一套jenkins官方提供的插件,它可以用来在jenkins中实现和集成持续交付。
通常情况,大多新手都是在jenkins界面下直接写pipeline,甚至还未尝试写pipline,一般大家这样写的:
笔者在工作中则是利用jenkinsfile来写,将所有的pipeline代码化,并托管在git上做版本管理。
从而实现像写代码一样,高度定制、封装pipeline,以提升pipeline的可用性、可维护性。
这也是笔者推荐大家掌握的姿势:代码化你的pipeline
下面我们看下jenkinsfile的基本介绍,后续持续的把pipeline系列写下去,使用jenkinsfile的好处有哪些?
- 可以对pipeline代码进行评审/迭代
- 可以对pipeline代码进行审计跟踪
- pipeline中的单一可信数据源 ,能够被项目的多个成员查看和编辑。
下面看下声明式pipeline的jenkinsfile的基本结构:
//Jenkinsfile (Declarative Pipeline)
pipeline {
agent any
stages {
stage('Build') {
steps {
echo 'Building..'
}
}
stage('Test') {
steps {
echo 'Testing..'
}
}
stage('Deploy') {
steps {
echo 'Deploying....'
}
}
}
}在看看脚本式pipeline的jenkinsfile的基本结构:
//Jenkinsfile (Scripted Pipeline)node {
stage('Build') {
echo 'Building....'
}
stage('Test') {
echo 'Testing....'
}
stage('Deploy') {
echo 'Deploying....'
}
}注意下声明式和脚本式pipeline的区别!!!
未完待续...