Jenkins Pipeline 流水线 - 声明式 Demo

简介: Jenkins Pipeline 流水线 - 声明式 Demo

Jenkins Pipeline 流水线

流水线既能作为任务的本身,也能作为 Jenkinsfile

使用流水线可以让我们的任务从UI手动操作,转换为代码化,像dockerfile 一样。从shell 命令到配置文件,更适合大型项目,可以让团队其他开发者同时参与进来,

完整语法

tools:添加工具,如maven、JDK

triggers:基于hook模式触发流水线任务;

environment:声明全局通用的环境变量;

stages:定义任务步骤,即流程分段处理;

post.always:最终执行的动作;

pipeline {
    agent any
    tools {}  
    triggers {}
    environment {}
    stages {
        stage('步骤说明') {
            steps {
                echo ''
            }
        }
    }
    post { always {}}  //执行完任务后,处理
}

5个必备的组成部分

pipeline: 整条流水线
agent: 指定执行器
stages: 所有阶段
stage:某一阶段,可有多个
steps: 阶段内的每一步,可执行命令

  • agent:该部分指定整个Pipeline或特定阶段将在Jenkins环境中执行的位置,具体取决于该agent 部分的放置位置。该部分必须在pipeline块内的顶层定义 ,也可以使用在stage级。
  • stage:表示这个Pipeline的某一个执行阶段(使用stage使得逻辑变得更加简单明了)
  • steps: 包含一个或者多个在stage块中执行的step序列(在这里执行操作:运行maven或者部署等等)
  • environment:指定键值对,可用于step中,主要是为常量或者变量赋值,根据所在的位置来决定其作用范围(类似于java中全局和局部的概念)
  • options:允许执行pipeline内置的专用选项,也可以使用由插件提供的
  • parameters:提供触发pipeline时的参数列表
  • trigger:定义了触发pipeline的方式(jenkins1.x中的pollscm定时构建)
  • tools:自动安装工具,注意这里使用的一定是在jenkins全局配置中已经定义好了的
  • when:可以用来执行一些代码逻辑
  • post:可以根据pipeline的状态来执行一些操作

安装插件

  • Pipeline
  • Pipeline: Stage ViewVersion #不安装的话不会出来阶段视图

添加项目

添加项目,选择 Pipeline (流水线)

流水线

  1. 从SCM 获取(SVN或GIT)

2. 内嵌代码(学习用,这边先用内嵌方式)

pipeline {#整体定义
    agent any #任务交给某个节点执行(any 任意)
    stages {
        stage('拉取代码') { #每一步的操作
            steps { #具体执行内容
                echo '拉取成功'
            }
        }
        stage('执行构建') {
            steps {
                echo '构建完成'
            }
        }
    }
}

支持单独执行某个阶段

Jenkins 阶段视图不见了?安装:Pipeline: Stage ViewVersion,就可以出来了

目录
相关文章
|
2月前
|
jenkins 持续交付 开发工具
jenkins学习笔记之一:流水线基础语法
jenkins学习笔记之一:流水线基础语法
|
2月前
|
前端开发 jenkins 持续交付
jenkins学习笔记之二十:docker in docker运行pipeline
jenkins学习笔记之二十:docker in docker运行pipeline
|
2月前
|
jenkins Devops Java
jenkins学习笔记之十:配置Gitlab提交流水线
jenkins学习笔记之十:配置Gitlab提交流水线
|
2月前
|
jenkins 持续交付 网络安全
Jenkins Pipeline SSH Publisher 环境变量、参数引用 要用双引号
Jenkins Pipeline SSH Publisher 环境变量、参数引用 要用双引号
54 0
|
2月前
|
jenkins 持续交付 Windows
Jenkins Pipeline 多分支流水线 Input length = 1
Jenkins Pipeline 多分支流水线 Input length = 1
29 0
|
2月前
|
运维 jenkins Devops
Jenkins 多分支流水线(SVN)
Jenkins 多分支流水线(SVN)
40 0
|
2月前
|
jenkins 持续交付
Jenkins Pipeline 流水线 - Parameters 参数化构建
Jenkins Pipeline 流水线 - Parameters 参数化构建
74 0
|
2月前
|
jenkins 持续交付 网络安全
Jenkins Pipeline 流水线 - 完整构建 Pipeline Script 脚本
Jenkins Pipeline 流水线 - 完整构建 Pipeline Script 脚本
21 0
|
2月前
|
Kubernetes jenkins 网络安全
Jenkins Pipeline 流水线 - 使用代理节点,Remote SSH 对 K8S 进行升级
Jenkins Pipeline 流水线 - 使用代理节点,Remote SSH 对 K8S 进行升级
32 0
|
2月前
|
弹性计算 运维 Serverless
项目管理和持续集成系统搭建问题之云效流水线支持阿里云产品的企业用户如何解决
项目管理和持续集成系统搭建问题之云效流水线支持阿里云产品的企业用户如何解决
51 1
项目管理和持续集成系统搭建问题之云效流水线支持阿里云产品的企业用户如何解决

热门文章

最新文章

下一篇
无影云桌面