ToB企服应用市场:ToB评测及商务社交产业平台

标题: Jenkins实践指南-01-pipeline概述 [打印本页]

作者: 瑞星    时间: 2022-12-5 20:04
标题: Jenkins实践指南-01-pipeline概述
本文同步在微信订阅号上发布,如各位小伙伴们喜欢我的文章,也可以关注我的微信订阅号:woaitest
1.pipeline概述

1.1 什么是pipeline

从某种抽象层次上讲,部署流水线(Deployment pipeline)是指从软件版本控制库到用户手中这一过程的自动化表现形式。——《持续交付-发布可靠软件的系统方法》
    [作者:Surpassme]pipeline 英语愿意为管道,在Jenkins里面可以理解为,是一套工作流框架,它将原本各个彼此独立的任务连接起来,实现一些比较复杂的工作流程,整个运行流程看起来就像是一个管道一样。
    Jenkins 2.x可以支持pipeline as code,即通过代码来描述部署流水线。使用代码而不是UI的意义在于:
1.2 pipeline 语法选择

    [作者:Surpassme]  Jenkins 团队在一开始实现Jenkins pipeline时,Groovy被选为基础来实现,因此在写pipeline时,很像是在写Groovy代码,从而有很大的灵活性和可扩展性。因此pipeline也被分成两种格式的语法:脚本式语法(Scripted)声明式语法(Declarative)
  1. node {
  2.     stage("Build") {
  3.         println "构建应用"
  4.     }
  5.     stage("Test") {
  6.        println "测试应用"
  7.     }
  8.     stage("Deploy"){
  9.         try{
  10.             println "部署应用"
  11.         }
  12.                 catch(err){
  13.           // 捕获异常
  14.                   throw err
  15.                 }
  16.     }
  17. }
复制代码
  1. pipeline{
  2.    agent any
  3.    stages{
  4.     stage("Build"){
  5.             steps{
  6.                   echo "构建应用"
  7.                 }
  8.          }
  9.         stage("Test"){
  10.             steps{
  11.                    echo "测试应用"
  12.                 }
  13.          }
  14.         stage("Deploy"){
  15.            steps{
  16.              echo "部署应用"
  17.            }
  18.          }
  19.    }
  20.    post {
  21.             failure{
  22.                   echo "运行失败"
  23.                 }
  24.      }
  25. }
复制代码
    以下两种语法格式差异如下所示:
pipeline插件从2.5版本开始,同时支持两种格式的语法。后续示例均采用声明式语法
1.3 Jenkinsfile

    [作者:Surpassme]  Jenkinsfile是一个文本文件,是pipeline概念在Jenkins中的具体体现形式。类似于Dockerfile与Docker的关系。
如果在Jenkins使用pipeline,需要确认是否安装pipeline插件。
    pipeline 的代码可以直接写到Jenkins里面也可以通过版本管理工具来拉取。gitlab拉取示例如下所示:

脚本路径:就是pipeline的文件名,默认为Jenkinsfile
原文地址:https://www.jianshu.com/p/84ba1e0fd6b5
本文同步在微信订阅号上发布,如各位小伙伴们喜欢我的文章,也可以关注我的微信订阅号:woaitest,或扫描下面的二维码添加关注:


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4