转载

Jenkins流水线理解

敏捷开发、持续集成/交付(CI/CD)、DevOps

从这几个概念找中理解为什么需要Jenkins以及Jenkins的用途。

  • 敏捷开发和DevOps都是 一种理念

    他们的理念相似,都是为了更好更快的发布产品。敏捷基础模型如下图:

Jenkins流水线理解

敏捷开发(Agile Development)是一种以人为核心、迭代、循序渐进的开发方法,小步快跑、不断迭代、每个迭代周期尽量做到交付物可发布。

DevOps的核心是自动化,自动化的核心是标准化。而DevOps最重要的一环节是持续交付,持续交付中建设的重点是流水线,所以如何打造标准的持续交付流水线则为DevOps建设中最重要的一环,也是评估DevOps能力的一个重要的打分点。

  • CI/CD是实现这两者理念的 一种方法

    英文:Continuous Integration & Continuous Delivery

    就是持续集成和持续交付,CI/CD理论上把产品研发工作流程分为以下几个阶段,结合敏捷的螺旋模型不断迭代:

    编码 -> 构建 -> 集成 -> 测试 -> 交付 -> 部署

Jenkins流水线理解

  • Jenkins 是实现 CI/CD 模型的其中一种工具,通过建立持续集成job(特别是Pipeline流水线)任务,利用自动化构建工具集,实现对“ 编码->构建->集成->测试->交付->部署”一个小的迭代周期的自动化构建发布,从而提高版本迭代效率。

Jenkins流水线理解

Jenkins流水线理解

Tips:由于敏捷模式下,版本迭代速度大大增加,要保证测试覆盖率,必须引入自动化测试工具和持续集成工具,加快版本集成和测试。

Jenkins基本认识

Jenkins本身不具备任何操作持续集成过程的功能,如同工业流水线中的传送带,Jenkins只提供流程控制脚本或者控制流,如果没其他工具状态下,Jenkins处于空转状态,不具备任何实质性功能,要想完成实际的功能,Jenkins各种插件或者脚本作为支持来调用其他工具实现特定的功能,就如同工业生产线中的各个工序及工序设备。

创建Jenkins任务(Job)

  • 点击Jenkins进入主目录

Jenkins流水线理解

  • 点击“新建任务”进入新建任务列表

Jenkins流水线理解

  • 填写名称并选择任务类型(当前选择流水线),其他类型自行去理解,其中分支流水线可以需要重点了解

Jenkins流水线理解

常用菜单

  • 入口

Jenkins流水线理解

  • 重点了解目录

Jenkins流水线理解

Jenkins工作目录理解

Jenkins Pipeline流水线

流水线是根据Jenkins定义的流水线语法,调用不同的插件工具实现一个应用程序从构建、部署、测试和发布这个过程的自动化实践之一。与其他Jenkins Job相比由于采用编程手段配置过程,因此具备高度定制化和灵活性。

流水线基本语法

语法理解请参考:

https://blog.csdn.net/u011541946/category_8223796.html
原文  https://segmentfault.com/a/1190000022560846
正文到此结束
Loading...