Jenkins pipeline声明式语法
一.最简结构
pipeline {
agent any
stages {
stage('pull') {
steps {
echo '开始拉取代码'
}
}
}
}
以下声明式语法中,每个步骤都要有,少一个都会报错
- pipeline:固定语法,代表整条流水线
- agent:指定流水线在哪执行,默认any即可,也可以指定在docker、虚拟机等等里执行
- stages:流水线中多个stage的容器,至少包含一个stage
- stage:流水线的阶段,每个阶段都必须有名称,stage必须有,且只能有一个steps
- steps:阶段中的一个或多个具体步骤(step)的容器,steps部分至少包含一个步骤,echo就是一个步骤
二.简单例子
1.新建一个pipeline的项目

2.最下面的jenkinsfile中填入如下
pipeline {
agent any
stages {
stage('Pull Code') {
steps {
echo '开始拉取代码'
//sh "git clone http://1.1.1.1/LOL.git"
}
}
stage('Build') {
steps {
echo '开始构建代码'
//sh "cd LOL ; mvn clean install"
}
}
}
}
这个Use Groovy Sandbox是用沙箱来运行脚本,具体作用可以看介绍,也可以看后续文档。

初次接触会觉得这种方式比脚本式更加繁杂,所以可以换一种理解方式。初期将pipeline、agent、stages当成固定语法,然后stage为不同阶段,steps为固定的语法,在里面填写多个命令步骤即可了。
例子中有2个阶段,Pull Code拉取代码阶段包含2个步骤,先打印一个提示,然后用shell命令的git去拉取代码(后面会介绍用其它更方便的指令)。Build构建阶段也包含2个步骤,同样打印提示后,执行shell命令,移动到代码文件夹中,并用mvn命令进行构建。
3.执行job,可以看到视图里,2个阶段都成功了,还附带阶段执行时间

视图来自Pipeline: Stage View这个插件,在安装pipeline插件时会默认带上。如果你的视图异常了,可以检查一下这个插件。

Jenkins pipeline声明式语法的更多相关文章
- Jenkins 在声明式 pipeline 中并行执行任务
在持续集成的过程中,并行的执行那些没有依赖关系的任务可以缩短整个执行过程.Jenkins 的 pipeline 功能支持我们用代码来配置持续集成的过程.本文将介绍在 Jenkins 中使用声明式 pi ...
- 声明式语法重写基于容器CICD构建流水线
调试了一下午,一句话都不想说了,看代码. ----- 参考文档 https://blog.csdn.net/weixin_42010394/article/details/90670945 实践代码 ...
- Jenkins pipeline:pipeline 语法详解
jenkins pipeline 总体介绍 pipeline 是一套运行于jenkins上的工作流框架,将原本独立运行于单个或者多个节点的任务连接起来,实现单个任务难以完成的复杂流程编排与可视化. ...
- Jenkins pipeline 语法详解
原文地址http://www.cnblogs.com/fengjian2016/p/8227532.html pipeline 是一套运行于jenkins上的工作流框架,将原本独立运行于单个或者多个节 ...
- Jenkins pipeline 并行执行任务流
笔者在<Jenkins 在声明式 pipeline 中并行执行任务>一文中介绍了如何在声明式 pipeline 中执行并行的任务.前一段时间,Jenkins 发布了 1.3 版的声明式 p ...
- Docker的Jenkins Pipeline工作流
原文地址:http://www.youruncloud.com/blog/127.html 分享主题 一个软件产品的开发周期中,尤其是敏捷开发,持续集成和持续部署是必不可少的环节,而随着产品的丰富,模 ...
- jenkins pipeline的声明式与脚本式
自从Jenkins 2.0 版本升级之后,支持了通过代码(Groovy DSL)来描述一个构建流水线,灵活方便地实现持续交付,大大提升 Jenkins Job 维护的效率,实现从 CI 到 CD 到转 ...
- Jenkins教程——从安装到部署Docker服务(二)声明式流水线HelloWorld
前言 本文通过一个声明式流水线的HelloWorld程序做一下流水线基础入门,对常用的流水线参数进行简要说明 什么是流水线 现实中的流水线 流水线比较好理解,类比于现实生活中的生产流水线,每个流程只做 ...
- Jenkins Pipeline 语法
Pipeline语法 先讲Declarative Pipeline,所有声明式管道都必须包含在pipeline块中: 123 pipeline { /* insert Declarative Pipe ...
随机推荐
- 用Docker搭建RabbitMq的普通集群和镜像集群
普通集群:多个节点组成的普通集群,消息随机发送到其中一个节点的队列上,其他节点仅保留元数据,各个节点仅有相同的元数据,即队列结构.消费者消费消息时,会从各个节点拉取消息,如果保存消息的节点故障,则无法 ...
- python实现图片色素的数值运算(加减乘除)和逻辑运算(与或非异或)
目录: (一)数值运算(加减乘除) (二)逻辑运算(与或非异或) 正文: (一)数值运算(加减乘除) opencv自带图片色素的处理函数------相加:add() 相减:subtract() ...
- 测试平台系列(81) 编写在线执行Redis功能
大家好~我是米洛! 我正在从0到1打造一个开源的接口测试平台, 也在编写一套与之对应的完整教程,希望大家多多支持. 欢迎关注我的公众号测试开发坑货,获取最新文章教程! 回顾 上一节我们牛刀小试,编写了 ...
- 【Tool】JDK8 安装
JDK8 2019-07-26 14:05:21 by冲冲 1. 下载 通常前往官网 https://www.oracle.com/technetwork/java/javase/download ...
- YAPI接口自动鉴权功能部署详解
安装准备 以下操作,默认要求自己部署过yapi,最好是部署过yapi二次开发环境. 无论是选择在线安装或者是本地安装,都需要安装client工具. 1.yapi-cli:npm install yap ...
- [USACO17FEB]Why Did the Cow Cross the Road III P
[USACO17FEB]Why Did the Cow Cross the Road III P 考虑我们对每种颜色记录这样一个信息 \((x,y,z)\),即左边出现的位置,右边出现的位置,该颜色. ...
- Go知识点大纲
目录 1. 基本介绍 2. 安装及配置 3. 变量 4. 常量 5. 数据类型 5.1 numeric(数字) 5.2 string(字符串) 5.3 array(数组) 5.4 slice(切片) ...
- gg=G
1.代码格式化对齐 2.直接按下ESE模式下就可以来执行了
- jmeter非GUI(cmd命令行)模式的压测和输出测试报告
1.非GUI模式的压测,和GUI有啥不同? 2.非GUI模式怎么搞? 大家打开jmeter的时候,都会看到这个界面: 注意看这句话: Don't use GUI mode for load testi ...
- 前端4 — jQuery — 更新完毕
1.下载jQuery 网址:Download jQuery | jQuery 最好下载最新版的,因为有什么bug问题,最新版的都会有,所以学技术就用最新版的,实际开发用的时候就要讲究了 2.开始用j ...