Pipeline 开发工具


选择任意pipeline类型的作业,点击“流水线语法”即可进入pipeline开发工具页面。

片段生成器


有些pipeline代码不是自己去写的,是要工具帮我们生成的,只需要知道怎么生成就行了

Jenkins会安装很多插件,有些插件会为你提供一些方法,也就是代码化的方法让你去使用片段生成器(下面就是安装好的插件为我们提供的所有功能)

流水线代码片段生成器, 非常好用。在这里可以找到每个插件以及Jenkins内置的方法的使用方法。使用片段生成器可以根据个人需要生成方法,有些方法来源于插件,则需要先安装相关的插件才能使用哦。

使用checkout生成器下载gitlab代码 

checkout([$class: 'GitSCM', branches: [[name: '*/master']], extensions: [], userRemoteConfigs: [[credentialsId: 'dc735f39-1cef-4a12-a499-6c873b82adcc', url: 'http://192.168.179.100/devops/demo-hello-service.git']]])
pipeline {agent anystages {stage('getCode') {steps {checkout([$class: 'GitSCM', branches: [[name: '*/master']], extensions: [], userRemoteConfigs: [[credentialsId: 'dc735f39-1cef-4a12-a499-6c873b82adcc', url: 'http://192.168.179.100/devops/demo-hello-service.git']]])}}}
}Started by user admin
Running in Durability level: MAX_SURVIVABILITY
[Pipeline] Start of Pipeline
[Pipeline] node
Running on build-01 in /data/cicd/jenkinsagent/workspace/pipeline-test
[Pipeline] {
[Pipeline] stage
[Pipeline] { (getCode)
[Pipeline] checkout
The recommended git tool is: NONE
using credential dc735f39-1cef-4a12-a499-6c873b82adcc
Cloning the remote Git repository
Avoid second fetch
Checking out Revision dc647d4ef52aadabf75db582393156decc4ca6a3 (refs/remotes/origin/master)
Commit message: "Update version"
First time build. Skipping changelog.
[Pipeline] }
[Pipeline] // stage
[Pipeline] }
[Pipeline] // node
[Pipeline] End of Pipeline
Cloning repository http://192.168.179.100/devops/demo-hello-service.git> git init /data/cicd/jenkinsagent/workspace/pipeline-test # timeout=10
Fetching upstream changes from http://192.168.179.100/devops/demo-hello-service.git> git --version # timeout=10> git --version # 'git version 2.7.4'
using GIT_ASKPASS to set credentials git-lab-admin-user> git fetch --tags --progress http://192.168.179.100/devops/demo-hello-service.git +refs/heads/*:refs/remotes/origin/* # timeout=10> git config remote.origin.url http://192.168.179.100/devops/demo-hello-service.git # timeout=10> git config --add remote.origin.fetch +refs/heads/*:refs/remotes/origin/* # timeout=10> git rev-parse refs/remotes/origin/master^{commit} # timeout=10> git config core.sparsecheckout # timeout=10> git checkout -f dc647d4ef52aadabf75db582393156decc4ca6a3 # timeout=10
Finished: SUCCESS

使用sh生成器生成shell脚本

pipeline {agent anystages {stage('getCode') {steps {sh 'pwd'}}}
}Started by user admin
Running in Durability level: MAX_SURVIVABILITY
[Pipeline] Start of Pipeline
[Pipeline] node
Running on Jenkins in /var/jenkins_home/workspace/pipeline-test
[Pipeline] {
[Pipeline] stage
[Pipeline] { (getCode)
[Pipeline] sh
+ pwd
/var/jenkins_home/workspace/pipeline-test
[Pipeline] }
[Pipeline] // stage
[Pipeline] }
[Pipeline] // node
[Pipeline] End of Pipeline
Finished: SUCCESS

声明式语法生成器


脚本方式和声明方式不同的地方: 

如果使用脚本方式的语法和声明式差不多也是node{ stages{......} },但是用不到一些特性比如post标签,即构建后的操作,因为不支持脚本方式,说白了,脚本方式都得自己去写代码。

如果是脚本方式的,需要自己去写代码去判断流水线的状态,然后去做什么动作,声明方式是官方非常推荐的做法,更加结构化,更加简单,有些功能就已经帮我们实现好了。直接在里面写就行了,就不需要为了一些功能写额外的代码了。

可以在声明方式的里面嵌入脚本方式的代码,默认情况下是不支持的,怎么才可以支持,添加script,这样就可以写脚本,更加灵活

可以生成声明式流水线语法的语句块。

pipeline {agent anystages {stage('getCode') {steps {script{sh '''date pwdecho "hh"'''                  }}}}
}

Started by user admin
Running in Durability level: MAX_SURVIVABILITY
[Pipeline] Start of Pipeline
[Pipeline] node
Running on Jenkins in /var/jenkins_home/workspace/pipeline-test
[Pipeline] {
[Pipeline] stage
[Pipeline] { (getCode)
[Pipeline] script
[Pipeline] {
[Pipeline] sh
+ date
Tue May 18 11:36:36 UTC 2021
+ pwd
/var/jenkins_home/workspace/pipeline-test
+ echo hh
hh
[Pipeline] }
[Pipeline] // script
[Pipeline] }
[Pipeline] // stage
[Pipeline] }
[Pipeline] // node
[Pipeline] End of Pipeline
Finished: SUCCESS

stages {stage('build') {steps {// One or more steps need to be included within the steps block.}}}

Jenkins 流水线语法 02 片段生成器和声明式语法生成器相关推荐

  1. jenkins流水线(jenkinsfile)详解,保姆式教程

    jenkins流水线(jenkinsfile)详解 在学习本篇文章的时候,可以去看看jenkins官网的文档,jenkins官网支持中文,观看十分便捷 此教程使用的是gitee+docker+jenk ...

  2. devops学习(十) Jenkins 流水线

    在之前的环境中我们实现了基本的持续集成和持续部署(CI/CD) 但整个实现的过程是非常繁琐的,经常容易忘记怎么操作,而且当报错的时候排查很艰难  在jenkins中提供了一套流水线作业pipeline ...

  3. Jenkins 流水线说明

    .Jenkins 流水线 .CI/CD .流水线 1.承前 作为运维,逃不掉的工作之一就是Jenkins .哪怕开发同学自己会搭也一定会等你来完成,不然像抢了某人的责任田一样. 2. Jenkins ...

  4. navicat运行db文件_使用 YAML 文件配置 Jenkins 流水线

    本文转载自:Jenkins 中文社区 这也是一种自定义流水线 DSL 的方法 几年前,我们的 CTO 写了一篇关于 使用 Jenkins 和 Docker 为 Ruby On Rails 应用提供持续 ...

  5. 使用jenkins流水线完成自动部署服务到K8s

    说明 通过本文章,您可以轻松入门cicd过程.本地测试环境为springboot微服务项目.用户提交代码到gitlab,触发jenkins拉取gitllab上的代码,然后完成编译构建成jar包,同步完 ...

  6. Docker 搭建 Jenkins 流水线项目配置

    本篇介绍 Jenkins 流水线项目的配置及流水线脚本语法规则.至于 Jenkins 的安装及其它配置,我之前写过一篇文章可以查看. https://www.yuque.com/testpu/pro/ ...

  7. [Jenkins]Gauge测试UI+Jenkins流水线+Mattermost消息订阅(Jenkins篇)

    其他两篇相关文章为 Gauge测试UI+Jenkins流水线+Mattermost消息订阅(Gauge篇) Gauge测试UI+Jenkins流水线+Mattermost消息订阅(Mattermost ...

  8. jenkins pipeline_DevOps编程操练:用Jenkins流水线建立代码质量预警机制

    解决痛点 代码上线故障多 不知如何用docker搭建Jenkins操练环境 不知如何开始为Java代码编写自动化单元测试 不知如何将单元测试运行在Jenkins流水线上 不知如何将繁琐的手工Jenki ...

  9. Jenkins 流水线 获取git 分支列表_Jenkins扩展共享库进阶

    读完需 16 分钟 速读需 7 分钟 前言 前面我们介绍了Jenkins多分支流水线.Jenkins流水线即代码之扩展共享库,其实都是"流水线即代码"的体现.我们将Jenkinsf ...

最新文章

  1. oracle10个,OracleDBA新手经常碰到的10个Oracle错误
  2. 移动端自动播放音视频实现代码
  3. Win2008远程多用户登陆的配置方法
  4. rethat安装MySQL多例_Spring框架-Bean作用域中单例模式和多例模式的区别
  5. 从理念到实践跳跃式演进!云的原生“免疫系统”如何有机作战?
  6. excel随机抽取_简单随机抽样及其进阶分层随机抽样方法展示
  7. 数据类型转换规则C语言
  8. JS当中的无限分类递归树
  9. oracle11g安装
  10. 微信皮肤css,微信小程序实现皮肤功能(夜间模式)_婳祎_前端开发者
  11. 逻辑代码自动生成相关技术概述
  12. 阿里巴巴的矢量图标之字体图标
  13. python 拼音 英文识别_识别同音字词pypinyin, 分词 jieba
  14. 19 统计量及其抽样分布——样本均值的分布与中心极限定理
  15. 计算机视觉 相机标定
  16. 网页制作学习3----实现连缀功能
  17. 为什么会出现慢SQL
  18. 大数据开源的可视化分析工具,主要有哪些?
  19. 编程n的阶乘使用while语句_谷歌工程师新作,东北话编程
  20. Taro小程序组件传值

热门文章

  1. 关于程序化交易系统的交易体系
  2. 【TCP/IP学习笔记1】 C语言讲解
  3. [我一直想看到的文章 好好保存赏析]微软、英特尔和摩根的比较
  4. RabbitMQ和fegin补充
  5. Django+redis+celery实现异步任务
  6. 0xc000007b应用程序无法正常启动win10解决方法
  7. 硬件物料清单bom检查小技巧
  8. css3两种hover动画
  9. 李航《统计学习方法》第二版第一章-泛化误差
  10. 芒果iOS开发之NSComparisonResult比较结果