zoukankan      html  css  js  c++  java
  • jenkins pipeline之流水线脚本版本化学习一(简化版)

    公司目前的Jenkins pipeline任务多,在随着版本及任务需求变化,发现要变更一个任务时,要大量变更多个job,甚是麻烦。

    看了下jenkins官网,Global Pipeline Libraries正好可以满足我的需求,那就学起来吧,看看怎么用了。

    一、groovy脚本

      首先第一步肯定是要把在pipeline任务中的流水线改成脚本形式,这里拿个网上的例子,如下:

     文件名就叫sayHello.groovy

    #!/usr/bin/env groovy
    def call(String name = 'human') {
        echo "Hello, ${name}."
    }

    那么将该脚本放在哪呢?放个官网的树吧

    (root)
    +- src                     # Groovy source files
    |   +- org
    |       +- foo
    |           +- Bar.groovy  # for org.foo.Bar class
    +- vars
    |   +- foo.groovy          # for global 'foo' variable
    |   +- foo.txt             # help for 'foo' variable
    +- resources               # resource files (external libraries only)
    |   +- org
    |       +- foo
    |           +- bar.json    # static helper data for org.foo.Bar

    在本例中,我们就简单点吧,如下:

    (test)
    +- vars
    |   +- sayHello.groovy          

    二、我们将该脚本放入SVN(后面用于共享pipeline使用)

    这里要注意的是,要把vars也放入

    这里在你要放的svn路径下新建一个master文件夹,表示主线

    三、jenkins配置Global Pipeline Libraries

    如下图,就不解释了

    注意,这里的master正好和之前放入svn时的保持一致,不然会找不到

    四、使用
    新建pipeline任务,在流水线中,加入如下代码

    library 'my-shared-library'
    sayHello()

    执行,看看结果:

     看看,执行成功!

    这样任务再有改动,只要改动该脚本即可。

    参考:

    1、https://www.jenkins.io/zh/doc/book/pipeline/shared-libraries/

    2、https://www.cnblogs.com/cay83/p/7811482.html



  • 相关阅读:
    脏读一
    Tomcat7基于Redis的Session共享实战二
    Tomcat7基于Redis的Session共享实战一
    SQL优化经验
    Java Collections.sort方法对list集合排序
    Redis应用场景一
    Redis 发布订阅用法
    关于消息队列的使用
    Mysql日常开发注意要点
    中药处方
  • 原文地址:https://www.cnblogs.com/landhu/p/12809956.html
Copyright © 2011-2022 走看看