zoukankan      html  css  js  c++  java
  • jenkins Build Flow job 输入参数获取和传递

    jenkins Build Flow job 输入参数获取和传递

    如果设置Build Flow的job,怎样获取手工输入的参数。

    1. 指定构建参数

    job配置中,勾选“参数化构建” --> 添加2个string类型的参数 "bdate" ,"edate"。

    2. 在 Flow DSL中获取参数

    在工作流定义框中(Define build flow using flow DSL:)填写如下脚本
    用于获取参数:

    out.println("----------------获取参数")
    def bdate_input = params.get("bdate")
    def edate_input = params.get("edate")
    out.println(bdate_input)
    out.println(edate_input)
    
    //将参数bdate和edate 传递给任务test_job;
    //test_job 必须是有2个参数的job,才能接收该参数。
    // 参数名1:参数值,参数名2:参数值 ;参数名是test_job 对应参数的名称。
    build( "test_job", bdate: bdate_input, edate: edate_input )
    

    3. 点击 "Build with Parameters" 构建

    发现数据已经可以打印出传入的参数了。

    4. 在 Flow DSL中写groovy脚本

    可以在 Flow DSL写groovy实现一些处理工作。

    import static java.util.Calendar.YEAR
    import static java.util.Calendar.MONTH
    import static java.util.Calendar.DATE
    import java.text.ParseException
    import java.text.SimpleDateFormat
    import java.util.Date
    
    def bdate_input = params.get("bdate")
    def bdate_input2 = bdate_input+"-00:00:00"
    out.println(bdate_input2)
    //out.println(edate_input)
    
    
    def sdf = new SimpleDateFormat("yyyyMMdd-HH:mm:ss")
    def now = sdf.parse(bdate_input2)
    
    
    //def now = new Date("bdate_input")
    def nextYear = now[YEAR]
    def prevMonth = now[MONTH]
    def nextDate = now[DATE] - 2
    
    def oneYearFromNow = now.updated(year: nextYear, date: nextDate, month: prevMonth).format("yyyy-MM-dd")
    out.println(oneYearFromNow)
    
  • 相关阅读:
    组队开发最后冲刺周第一次会议
    android 本地数据库sqlite的封装
    java 空指针异常造成的原因有哪些
    jsp usebean的使用
    PHP模拟登录并获取数据
    php rsa加密解密实例
    30个php操作redis常用方法代码例子
    官方微信接口(全接口)
    curl类封装
    网站微信登录
  • 原文地址:https://www.cnblogs.com/honeybee/p/6925363.html
Copyright © 2011-2022 走看看