热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

devopsjenkinsPipeline基础语法

1.jenkins-Pipeline基础语法 1)jenkins-Pipeline总体介绍•Pipeline,简而言之,就是一套运行与jenkins上的工作流框架,将原本独立运行

1. jenkins-Pipeline基础语法
  1) jenkins-Pipeline总体介绍
  • Pipeline,简而言之,就是一套运行与jenkins上的工作流框架,将原本独立运行于单个或多个节点的任务连接起来,实现单个任务难以完成的复杂流程编排与可视化。
  • Pipeline是jenkins2.x最核心的特性,帮助jenkins实现从CI到CD与devops的转变
  • https://jenkins.io/2.0/
  2) 什么是jenkins Pipeline
  • jenkins Pipeline是一组插件,让jenkins可以实现持续交付管道的落地和实施。
  • 持续交付管道(CD Pipeline)是将软件从版本控制阶段到交付给用户或客户的完整过程的自动化表现
  • 软件的每一次更改(提交到源代码管理系统)都要经过一个复杂的过程才能被发布
  • Pipeline提供了一组可扩展的工具 ,通过Pipeline Domain Specific Language(DSL) syntax可以达到Pipeline as Code的目的
  • Pipeline as code: jenkinsfile存储在项目的源代码库
  3) 为什么要用Pipeline
  • 代码:Pipeline以代码的形式实现,通常被检入源代码控制,使团队能够编辑,审查和迭代其CD流程
  • 可持续性:jenkins重启或者中断后都不会影响Pipeline job
  • 停顿:Pipeline可以选择停止并等待人工输入或批准,然后在继续Pipeline运行。
  • 多功能:Pipeline支持现实世界的复杂CD要求,包括fork/join子进程,循环和并行执行工作的能力。
  可扩展:Pipeline插件支持其DSL的自定义扩展以及与其他插件集成的多个选项

  4) pipeline 基础语法

• Stage
  • 阶段,一个pipeline可以划分为若干个Stage,每个Stage代表一组操作,列如:“Build”、“Test”、“Deploy”。
  • 注意,Stage是一个逻辑分组的慨念,可以跨多个node
• Node
  • 节点,一个node就是一jenkins节点,或者是Master,或者是Agent,是执行Step的具体运行环境。
• Step
  • 步骤,Step是最基本的操作单元,小到创建一个目录,大到构建一个docker镜像,由各类jenkins Plugin提供,例如:sh 'make'

  5) jenkins Pipeline入门

• pipeline脚本是由Groovy语言实现
  • 无需专门学习Groovy
• Pipeline支持两种语法
  • Declarative声明式(在Pipeline plugin 2.5中引入)
  • Scripted Pipeline脚本式
• 如何创建基本的Pipeline
  • 直接在jenkins Web UI网页界面中输入脚本
  • 通过创建一个jenkinsfile可以检入项目的源代码管理库
• 最佳实践
  • 通常推荐在jenkins中直接从源代码控制(SCM)中载入jenkinsfile Pipeline

  6) jenkins编写简单pipeline脚本

node {
stage('拉取代码'){
echo "拉取代码"
}
stage('代码编译'){
echo "代码编译"
}
stage('部署发布测试'){
echo "部署发布测试"
}
}

    (1) 构建一个Pipeline-demo流水线

    (2) 创建Pipeline-demo流水线

    (3) pipeline脚本编写

    (4) 然后保存,进行构建

    (5) 构建效果



推荐阅读
  • 如何优化Webpack打包后的代码分割
    本文介绍了如何通过优化Webpack的代码分割来减小打包后的文件大小。主要包括拆分业务逻辑代码和引入第三方包的代码、配置Webpack插件、异步代码的处理、代码分割重命名、配置vendors和cacheGroups等方面的内容。通过合理配置和优化,可以有效减小打包后的文件大小,提高应用的加载速度。 ... [详细]
  • 原文地址:https:www.cnblogs.combaoyipSpringBoot_YML.html1.在springboot中,有两种配置文件,一种 ... [详细]
  • baresip android编译、运行教程1语音通话
    本文介绍了如何在安卓平台上编译和运行baresip android,包括下载相关的sdk和ndk,修改ndk路径和输出目录,以及创建一个c++的安卓工程并将目录考到cpp下。详细步骤可参考给出的链接和文档。 ... [详细]
  • Webmin远程命令执行漏洞复现及防护方法
    本文介绍了Webmin远程命令执行漏洞CVE-2019-15107的漏洞详情和复现方法,同时提供了防护方法。漏洞存在于Webmin的找回密码页面中,攻击者无需权限即可注入命令并执行任意系统命令。文章还提供了相关参考链接和搭建靶场的步骤。此外,还指出了参考链接中的数据包不准确的问题,并解释了漏洞触发的条件。最后,给出了防护方法以避免受到该漏洞的攻击。 ... [详细]
  • 如何使用PLEX播放组播、抓取信号源以及设置路由器
    本文介绍了如何使用PLEX播放组播、抓取信号源以及设置路由器。通过使用xTeve软件和M3U源,用户可以在PLEX上实现直播功能,并且可以自动匹配EPG信息和定时录制节目。同时,本文还提供了从华为itv盒子提取组播地址的方法以及如何在ASUS固件路由器上设置IPTV。在使用PLEX之前,建议先使用VLC测试是否可以正常播放UDPXY转发的iptv流。最后,本文还介绍了docker版xTeve的设置方法。 ... [详细]
  • {moduleinfo:{card_count:[{count_phone:1,count:1}],search_count:[{count_phone:4 ... [详细]
  • 现在比较流行使用静态网站生成器来搭建网站,博客产品着陆页微信转发页面等。但每次都需要对服务器进行配置,也是一个重复但繁琐的工作。使用DockerWeb,只需5分钟就能搭建一个基于D ... [详细]
  • 本文主要介绍关于linux文件描述符设置,centos7设置文件句柄数,centos7查看进程数的知识点,对【Linux之进程数和句柄数】和【linux句柄数含义】有兴趣的朋友可以看下由【东城绝神】投 ... [详细]
  • Docker系列 七. Docker 安装Jenkins
    Docker系列七.Docker安装JenkinsJenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作 ... [详细]
  • 开发笔记:DevOps Gitlab环境部署
    本文由编程笔记#小编为大家整理,主要介绍了DevOpsGitlab环境部署相关的知识,希望对你有一定的参考价值。DevOps介绍 ... [详细]
  • 本文介绍了在开发Android新闻App时,搭建本地服务器的步骤。通过使用XAMPP软件,可以一键式搭建起开发环境,包括Apache、MySQL、PHP、PERL。在本地服务器上新建数据库和表,并设置相应的属性。最后,给出了创建new表的SQL语句。这个教程适合初学者参考。 ... [详细]
  • DockerDataCenter系列(四)-离线安装UCP和DTR,Go语言社区,Golang程序员人脉社 ... [详细]
  • Jenkins的分布式构建,在Jenkins的配置中叫做节点,分布式构建能够让同一套代码或项目在不同的环境(如:Windows和Linux系统)中编译、部署等。将jenkins项目 ... [详细]
  • Jenkins教程:使用Jenkins进行持续集成
    【注】本文译自:https:www.edureka.coblogjenkins-tutorial本文将重点介绍Jenkins架构和Jenkins构建管道,并向您展示如何在Jenki ... [详细]
  • 执行jenkins最简单的方法就是通过内置的Jetty的servlet容器。您可以执行jenkins是这样的:$java-jarjenkins.war当然,你可能想jenkins的 ... [详细]
author-avatar
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有