美文网首页
持续集成之Jenkins-pipline

持续集成之Jenkins-pipline

作者: 落地生涯 | 来源:发表于2019-05-06 16:54 被阅读0次

背景

jenkins1.x主要是实现的持续集成的过程,集成各种插件,但是终究需要人为手工操作,但是流程有些复杂,人为容易出错。于是jenkins2.x就有了pipeline,用代码的方式进行job的构建。pipeline是使用groovy语言编写的。    

pipeline语法介绍

    1、agent:

    该部分指定整个pipeline或者特定阶段将在Jenkins环境中执行的位置,具体却绝育agent部分的防止位置。该部分必须在pipeline块内的顶层定义,也可以使用在stage级。

    agent的一些参数:

        any:在认可可用的机器上执行怕pipeline;

        none:当在pipeline顶层使用none时,每个stage需要指定想用的agent;

        lable:在指定的机器上运行pipeline或者stage,如 agent{ label 'slave1'}

        docker:定义这个参数后,指定pipelin或stage时会动态接收一个指定节点的docker的镜像,并且还可以接收一个args参数用于执行docker run的参数。

            agent{

                docker{

                    image 'mydocker'  //指定docker的镜像名称

                    label 'slave1'    //指定在哪个机器上执行docker镜像

                    args  '-v /tmp:/tmp' //运行时传入docker run的参数

                }

            }

    2、stage

    表示这个pipeline的某一个执行阶段,使逻辑变得更加简单明了。

    3、steps

    包含一个或者多个在stage块中执行的step序列。比如,拉取代码,运行maven clean操作。

    4、enviroment

    指定健值对,可用于step中,主要是为常量或者变量赋值,根据所在的位置来决定其作用范围。

    5、options

    允许执行pipeline内置的专用选项,也可以使用由插件提供的。

    6、parameters

    提供触发pipeline时的参数列表

    7、trigger

    定义了触发pipeline的方式

    8、tools

    自动安装工具

    9、when

    可以用来执行一些代码逻辑

    10、post

    可以根据pipeline的状态来执行一些操作。

示例

相关文章

网友评论

      本文标题:持续集成之Jenkins-pipline

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