我是Jenkins Pipeline的新手,我面临一个无法解决的问题。
我有一个带有硬编码sleep
秒值的阶段:
stage ("wait_prior_starting_smoke_testing") {
echo 'Waiting 5 minutes for deployment to complete prior starting smoke testing'
sleep 300 // seconds
}
但是我想通过job(string)参数提供time参数SLEEP_TIME_IN_SECONDS
。但是,无论我尝试过什么,我都无法使其正常运行。
如何将字符串参数转换为int
时间参数?
最终,我确实找到了完成这项工作的方法:
stage ("wait_prior_starting_smoke_testing") {
def time = params.SLEEP_TIME_IN_SECONDS
echo "Waiting ${SLEEP_TIME_IN_SECONDS} seconds for deployment to complete prior starting smoke testing"
sleep time.toInteger() // seconds
}
问题内容: 在声明性管道 中,我可以在管道脚本中指定管道期望的参数,如下所示: 有可能在脚本化的管线中做?我知道我可以这样做 但是,可以执行以下操作: 问题答案: 我通过实验找到了一种解决方案,所以想分享一下:
我正在调用while循环内的线程Hibernate1秒。当标志为true时,循环将运行(标志为true无限时间)。在循环内,线程应Hibernate1秒,唤醒并增加计数器,检查IF条件,如果为FALSE,则应再次Hibernate1秒并继续29次。在第30次迭代中,IF条件为true,IF语句中调用的方法将收集并存储数据。最后,在第32次迭代中,第二个IF语句将把存储的数据发送到服务器,并将计数设
问题内容: 我想在管道作业中使用EnvInject插件。因此,我可以设置复选框“为运行准备一个环境”,但是 没有动作“注入环境变量”,就像在自由式作业中一样。我在“属性内容”块中声明了变量:在此处输入图片说明 如何使用EnvInject在管道作业中注入环境变量? 问题答案: 如果在“属性内容”块中声明了以下变量: 然后,您可以将它们放入管道中,以便:
我正在编写一个Groovy脚本,其中包含部署terraform的作业。我正在使用作业DSL并使种子作业由JCasC实现,一切正常。然后我有一个包含作业的Groovy文件的存储库。 如果我将Groovy文件保持为单个作业,它就可以正常工作。 然而,我希望能够构建具有构建阶段的管道。我知道我可以把管道写在詹金斯文件中 我有这个作为开始: 但是,我看到了这个错误: 我已经尝试了各种方法,并阅读了一堆文档
问题内容: 我有一个名为 buildall 的管道作业,如下所示: 该 buildall 作业有25个参数。我想将所有 buildall 的参数传递给 job1 。有没有一种简单的方法可以代替手动指定每个参数呢? 在此问题中:向下游作业传递管道参数是一个子问题,但从未得到回答: 甚至更好的是,有没有一种麻烦的方法可以将所有管道参数传递给下游作业。 我有同样的问题。 问题答案: 以下似乎有效(尽管我
是否有人知道从文件中设置作业属性(特别是构建触发器)的正确方法?(多分支管道作业中的声明性管道脚本)。 为了清晰起见,我需要为多分支项目中的底层作业设置特定的构建触发器。我可以在GUI中配置总体多分支项目的触发器。 尝试过这里列出的方法:Jenkins多分支管道和指定上游项目 詹金斯:在上游更改时触发多分支管道 如何使用Jenkins管道属性步骤? 从v0开始,我就听到这样的错误。8我应该使用选项