繁体   English   中英

Jenkins 日期参数插件 - 如何在声明性管道中使用它

[英]Jenkins Date Parameter Plugin - How to use it in a Declarative Pipeline

在声明性管道中使用日期参数插件的语法是什么。

到目前为止,我已经尝试过这个:

pipeline {
agent {
    node {
        label 'grange-jenkins-slave'
    }
}

options { disableConcurrentBuilds() }

parameters {
    date(name: 'EffectiveDate',
            dateFormat: 'MMddyyy',
            defaultValue: 'LocalDate.now();',
            description: 'Effective Date',
            trim: true)
    file(name:'algo.xlsx', description:'Your algorithm file')
    choice(name: 'currency',
            choices: ['USD'],
            description: 'Select a currency')

}
stages {
    stage('genRates') {
        steps {
            script {
                echo "test"
            }
        }
    }
}

}

我得到的错误是WorkflowScript: 11: Invalid parameter type "date". Valid parameter types: [booleanParam, choice, credentials, file, text, password, run, string] @ line 11, column 3. WorkflowScript: 11: Invalid parameter type "date". Valid parameter types: [booleanParam, choice, credentials, file, text, password, run, string] @ line 11, column 3.

您可以将参数定义为类 DateParameterDefinition

例子:

properties([parameters([
  string(name: 'somestring', defaultValue: 'somevalue'),
  [$class: 'DateParameterDefinition',
   name: 'somedate',
   dateFormat: 'yyyyMMdd',
   defaultValue: 'LocalDate.now()']
])])

pipeline {
...
}

我没有使用日期参数插件,因为我没有找到任何示例如何使用它。 我以不同的方式解决了这个问题。

import java.text.SimpleDateFormat

def sdf = new SimpleDateFormat("yyyyMMdd")
def dateDefaultValue = sdf.format(new Date())

pipeline {
     parameters {
        string(name: 'SOMEDATE', defaultValue: "${dateDefaultValue}", description: 'Default value is current date in the format YYYYmmdd', trim: true)
    }
    .....
    .....
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM