properties([
//https://stackoverflow.com/questions/35370810/how-do-i-use-jenkins-pipeline-properties-step
parameters([
//note here that the default will be the element you have as a first choice in the array
choice(name: 'environmentName', choices: ['PROD', 'STAGE'], description: 'Choose the environment you want to run automation tests'),
]),
//explained here: https://stackoverflow.com/questions/44113834/trigger-hourly-build-from-scripted-jenkinsfile
//recall that ANY change you do here you will need to execute the job once manually for the new cron parameter to be updated, pushing it is not enough
//minutes, hours, day of month, month, day of week //H is any first available (here minute) of the hour according to resources
pipelineTriggers([
parameterizedCron('*/2 * * * 0-4 %environmentName=STAGE')
]),
])
properties([
//https://stackoverflow.com/questions/35370810/how-do-i-use-jenkins-pipeline-properties-step
parameters([
//note here that the default will be the element you have as a first choice in the array
choice(name: 'environmentName', choices: ['PROD', 'STAGE'], description: 'Choose the environment you want to run automation tests'),
]),
//explained here: https://stackoverflow.com/questions/44113834/trigger-hourly-build-from-scripted-jenkinsfile
//recall that ANY change you do here you will need to execute the job once manually for the new cron parameter to be updated, pushing it is not enough
//minutes, hours, day of month, month, day of week //H is any first available (here minute) of the hour according to resources
pipelineTriggers([
//cron('H 23 * * 0-4') //this works with the DEFAULT parameters
parameterizedCron { //this is documented here: https://github.com/jenkinsci/parameterized-scheduler-plugin/blob/master/README.md
parameterizedSpecification( '''
# leave spaces where you want them around the parameters. They'll be trimmed
#*/2 * * * * %environmentName=STAGE;SomeOtherVariable=Pluto
#you may repeat multiple configuration if you want
*/2 * * * 0-4 %environmentName=STAGE
''' )
}
]),
])
java.lang.ClassCastException: org.jenkinsci.plugins.parameterizedscheduler.ParameterizedTimerTrigger.parameterizedSpecification expects class java.lang.String but received class org.jenkinsci.plugins.workflow.cps.CpsClosure2
答案可能就这么简单:
parameterizedCron( '''
*/2 * * * 0-4 %environmentName=STAGE
*/3 * * * 0-4 %environmentName=PROD
''' )
这意味着您不需要包含parameterizedspecification
的更复杂形式
不明白这为什么会起作用
问题内容: 如何通过PHP脚本设置cron作业。 问题答案: 这将添加一个每天上午9:30运行的脚本。 如果从Web服务器运行此脚本,可能会遇到权限问题。为了解决这个问题,我建议使用另一种方法。 这是一种可能的解决方案。创建需要运行的脚本列表。您可以将其保存在文本文件或数据库中。创建一个脚本来读取此列表,并每分钟或每5分钟(使用cronjob)运行它。您的脚本将需要足够聪明,以决定何时运行脚本列表
问题内容: 假设我在Jenkins中有一个Groovy脚本,其中包含多行shell脚本。如何在该脚本中设置和使用变量?正常方式会产生错误: 捕获:groovy.lang.MissingPropertyException:否这样的属性:foo对于类:groovy.lang.Binding 问题答案: 您需要更改为三重单引号或转义美元 然后,您将跳过常规模板,这就是给您这个问题的原因
问题内容: 在我们的centos6服务器中。我想以apache用户的身份在cron作业中执行php脚本,但不幸的是它不起作用。 这是crontab的版本(crontab -uapache -e) 这是“ test.php”文件的源代码,可以与“ apache”用户作为所有者正常工作。 我尝试将php替换为php的完整路径(/ usr / local / php / bin / php),但它也不起
你好,詹金斯的朋友们, 我创建了一个JenkinsFreestyle项目,其中包含“执行Groovy脚本”步骤。从脚本中,我想在同一个Jenkins服务器上触发另一个参数化作业。 有人知道我该怎么做吗?
clean install build-helper:parse-version版本:set-dnewversion=${parsedversion.majorversion}.${parsedversion.minorversion}.${parsedversion.nextincrementalversion}-快照版本:commit 这和预期的一样,没有任何问题。但是,当我试图使用以下命令执
AWS Glue的stackoverflow的多个答案是设置--conf表参数。但是,有时在一个作业中,我们需要在一个作业中设置多个--conf键值对。 我尝试了以下方法来设置多个--conf值,所有结果都是错误的: 添加另一个名为--conf的表参数。这将导致AWS仪表板删除名为--conf的第二个参数,并将焦点设置为名为--conf的第一个参数的值。Terraform还只考虑具有键的两个表参数