1

我想在这里得到一些有经验的建议...

我想接受作业名称列表(逗号或空格分隔的字符串)作为参数。

Jenkins 需要将它们构建为一个链,一个接一个,按照它们输入的顺序(我在触发它们之前验证列表)。列表长度未知。

请提出可能的解决方案(我正在考虑 groovy 脚本、带有 curl 和 Jason 调用的 shell 或者可能是 python)。

欢迎任何建议!

4

2 回答 2

0

我选择使用通过 groovy 构建步骤执行的 groovy 脚本。它可以很好地解决我在我发布的这个问题中描述的丢失参数的主要问题。

任何帮助都非常受欢迎。

我希望这有帮助。

于 2013-06-24T15:26:02.740 回答
0

首先,将您的工作列表放在 your_jobs_lists.txt 中,每行每个工作名称。
其次pip install python-jenkins为 jenkins REST API 安装 python 包装器。然后使用下面的 python 脚本来运行你的工作。

#!/usr/bin/python
import jenkins
jenkins_url = "http://your_jenkins_server_url/"
username = "youruserid"
token = "yourToken"
j = jenkins.Jenkins(jenkins_url, username=username, password=token)

if __name__ == "__main__":
    fp = open("your_jobs_lists.txt", "r")
    alllines = fp.readlines()
    for jobname in alllines:
        jobname = jobname.strip('\n')
        j.build_job(jobname,{'param1': 'test value 1', 'param2': 'test value 2'},{'token': token})            
        time.sleep(3)
    print "Done!"

对于那些不知道在哪里找到令牌的人,这里是如何:

登录 jenkins -> 从网页顶部单击您的用户 ID -> 配置 -> 显示 API 令牌...

好好享受。

于 2015-05-21T13:38:22.043 回答