我对此做了很多研究,但找不到令人满意的答案.以下过程将是自动的,每晚重复,因此用户在运行时不能手动传递任何参数.父作业调用阻塞链中的所有以下子进程我的作业层次结构设置如下,主要作业和子进程如下:
Run-Tests-EveryNight(父作业) - > Create-A-Virtual-Machiene - > Run-Tests-on-VM
接下来,当您创建VM时,它会被分配一个生成的IP地址,我需要将该IP地址传递给Run-Tests-On-VM作为参数,但我似乎无法找到任何方法来执行此操作.
澄清:有些人发现问题不清楚:我问如何将动态创建的虚拟机IP地址作为参数传递给不同的作业(子进程)
注意:我已经阅读过有关复制工件的内容,但我觉得它在这种情况下不起作用(加上写入然后从文件中读取对于简单的参数传递来说太过分了.)
我觉得应该有一个非常简单的方法来做到这一点......
更新:建议使用参数化触发插件.我已经在使用并使用以下bash脚本来复制属性
# Create override properties file for functional tests
FILENAME="user.properties"
cd "path of the file goes here"
rm -f $FILENAME
echo "FQDN=$VM_FQDN" >> $FILENAME
Run Code Online (Sandbox Code Playgroud)
但是我不知道如何写入此文件(或创建新的属性文件,将IP地址保存为构建后的操作
答:按照下面的答案,使用这些线程中的任何一个来修改属性文件或在Jenkins中使用注入选项 存档hudson/jenkins中的工件
如何根据我的个人资料更改maven中的.properties文件?
谢谢
小智 3
使用Christopher 提到的参数化触发器插件,但使用名为“来自属性文件的参数”的选项。
该文件具有简单的 key=value 结构,您可以在作业执行期间创建它,保存 IP 地址并稍后使用它将其传递到下一个作业。我通常将文件存储在构建工作区的某个位置,因此并行构建可以无缝处理。
| 归档时间: |
|
| 查看次数: |
9339 次 |
| 最近记录: |