美文网首页
Jenkins Pipeline初识

Jenkins Pipeline初识

作者: 萝卜枣 | 来源:发表于2021-11-03 13:56 被阅读0次

    一、什么是Pipeline?

    Jenkins Pipeline是一套插件,支持将连续输送Pipeline实施和整合到Jenkins。Pipeline提供了一组可扩展的工具,用于通过PipelineDSL为代码创建简单到复杂的传送Pipeline。

    通常,此“Pipeline代码”将被写入 Jenkinsfile项目的源代码控制存储库,例如:

    pipeline {
              agent any (1)
      
              stages { 
                  stage('build') { (2)
                      steps { (3)
                          sh 'make' (4)
                      }
                  }
                  stage('sita'){
                      steps {
                          sh 'python script.py'
                          junit 'reports/**/*.xml' (5)
                      }
                  }
              }
          }
    
    

    agent 表示Jenkins应该为Pipeline的这一部分分配一个执行者和工作区。
    stage 描述了这条Pipeline的一个阶段。
    steps 描述了要在其中运行的步骤 stage
    sh 执行给定的shell命令
    junit是由JUnit插件提供的 用于聚合测试报告的Pipeline步骤。

    二、为什么使用Pipeline?

    Jenkins从根本上讲是一种支持多种自动化模式的自动化引擎。Pipeline在Jenkins上添加了一套强大的自动化工具,支持从简单的连续集成到全面的连续输送Pipeline的用例。通过建模一系列相关任务,用户可以利用Pipeline 的许多功能。
    Pipeline的功能和优点:
    持久性:在jenkins的master按计划和非计划的重启后,pipeline的job仍然能够工作,不受影响。其实理解起来也很简单,jenkins的master和agent通过ssh连接,如果你知道nohup或disown的话,就可以理解为啥master的重启不会影响agent上的job继续运行。
    可暂停性:pipeline基于groovy可以实现job的暂停和等待用户的输入或批准然后继续执行。
    更灵活的并行执行,更强的依赖控制,通过groovy脚本可以实现step,stage间的并行执行,和更复杂的相互依赖关系。
    可扩展性:通过groovy的编程更容易的扩展插件。
    设计Pipeline = 设计代码,很优雅
    As Code:集中管理CI脚本、用代码库来管理脚本、从代码库直接读取脚本,从而可以将项目CI迅速拉起来!

    相关文章

      网友评论

          本文标题:Jenkins Pipeline初识

          本文链接:https://www.haomeiwen.com/subject/iwzgoltx.html