Jenkins 流水线(Pipeline)

Posted xiangsikai

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Jenkins 流水线(Pipeline)相关的知识,希望对你有一定的参考价值。

Jenkins 流水线(Pipeline)

说明:在任务项目构建的过程中通过Pipeline来呈现每个构建阶段的细节信息。

技术图片

配置 Pipeline 

1、创建流水线任务

技术图片

2、根据场景添加需要等项目、注:我这里根据上一节的内容一次添加,以测试为主。
....略(自定义)
3、使用Pipeline流水线Shell、保存。
使用Hello World模板

技术图片

4、Pipeline-test 任务 --> Build with Parameters --> Build 构建
Pipeline-test 任务 --> Console Output 查看日志

技术图片

 Pipeline-test 任务 --> Full Stage View 点击查看视图

技术图片

通过git来存放jenkins Pipeline文件

1、git服务器操作:通过git创建jenkinsfile仓库

# 切换git用户
su - git
# 创建jenkinsfile仓库
mkdir jenkinsfile
cd jenkinsfile
# 初始话git仓库
git --bare init

2、客户端操作:下载git仓库提交pipeline脚本

# 1、下载仓库
git clone git@118.31.225.36:/home/git/jenkinsfile
cd jenkinsfile/
# 2、创建文件、脚本主要测试4个动作
#     (1)、拉取库
#     (2)、maven 打包
#     (3)、发布服务
#     (4)、自动化测试
vi Jenkinsfile
技术图片
node {
   //def mvnHome
   stage(checkout) { // for display purposes
      checkout([$class: GitSCM, branches: [[name: */master]], doGenerateSubmoduleConfigurations: false, extensions: [], submoduleCfg: [], userRemoteConfigs: [[url: git@118.31.225.36:/home/git/repos/app.git]]])
   }
   stage(maven Build) {
      echo maven build...
   }
   stage(deploy) {
      echo deploy...
   }   
   stage(test) {
      echo test...
   }
}
pipeline 脚本
# 3、提交文件
git add .
git commit -m "jenkinsfile"
git push origin master

3、jenkins 添加 git库中的pipeline文件、保存。

  • Definition:选择SCM以git库文件下载形式
  • SCM:选择git
  • Repositories:添加Git仓库
  • Branches to build:使用master分支
  • Script Path:库中指定pipeline脚本路径

技术图片

4、查看 Stage View

技术图片

5、查看日志,直接点击绿色部分

技术图片

 Pipeline Syntax 生成git流水线脚本

1、Git使用:Checkout

  • Sample Step:选择方法
  • Repositories:输入git仓库
  • Generate Pipeline Script:生存Pipeline脚本

pipeline脚本:

checkout([$class: GitSCM, branches: [[name: */master]], doGenerateSubmoduleConfigurations: false, extensions: [], submoduleCfg: [], userRemoteConfigs: [[url: git@118.31.225.36:/home/git/repos/app.git]]])

技术图片

Pipeline Syntax 生成echo流水线脚本

1、使用 echo

  • Sample Step:选择方法
  • Message:输入内容
  • Generate Pipeline Script:生存Pipeline脚本

pipeline脚本:

echo test

技术图片

其他


通过Slave节点构建 pipline语法格式
说明:node(‘指定Slave标签或名称’)

技术图片
node (web) {
   //def mvnHome
   stage(checkout) { // for display purposes
      checkout([$class: GitSCM, branches: [[name: */master]], doGenerateSubmoduleConfigurations: false, extensions: [], submoduleCfg: [], userRemoteConfigs: [[url: git@118.31.225.36:/home/git/repos/app.git]]])
   }
   stage(maven Build) {
      echo maven build...
   }
   stage(deploy) {
      echo deploy...
   }
   stage(test) {
      echo test...
   }
pipeline 脚本

 

以上是关于Jenkins 流水线(Pipeline)的主要内容,如果未能解决你的问题,请参考以下文章

Jenkins之Pipeline代码流水线配置

Jenkins之Pipeline代码流水线

Jenkins之Pipeline代码流水线配置

12-Jenkins-Pipeline简介

如何使用 Jenkins 的脚本化流水线(Pipeline)

devops学习笔记-jenkins pipeline流水线发布