我想为个人用户提供一种方法,将一个repo路径发送到一个哈德森服务器,并让服务器启动该repo的构建.我不想留下动态创建的作业配置的踪迹.我想开始同一个工作的多个同时实例.显然,这要求不同实例的工作空间不同.我相信使用任何当前扩展都不可能.我对我正在努力实现的目标采取不同的方法.
我只是希望哈德森服务器能够从外部源接收构建请求,并且只要有免费执行程序就启动它们.我希望构建配置对于除repo位置之外的所有构建都是相同的.我不希望有几十个相同的工作与自动生成的名称坐在一起.
是否有人使用Hudson或Jenkins这样的事情?你是如何设置它的?我想有足够的脚本,我可以通过脚本中的CLI API动态创建必要的作业配置,然后在完成后将其销毁.但我想保留工件,因此在完成运行时销毁工作是一个问题.我真的不想写和维护我自己的扩展.
这应该非常直接与Jenkins一起使用而不需要任何插件,但这取决于您使用的SCM的类型.无论如何都
值得从Hudson 升级 ; 自从成为Jenkins以来,在许多版本中支持您的用例所需的功能肯定有所改进.
您希望将repo路径作为参数传递给构建,因此您应该在构建配置中选择" 此构建已参数化 "选项.在那里你可以添加一个名为REPO_PATH或类似的字符串参数.
接下来,在指定代码签出位置的位置,将路径替换为${REPO_PATH}.
如果您从脚本中检出代码 - 或者需要访问repo路径 - 该变量将自动添加到您的环境中,因此您可以${REPO_PATH}从shell脚本或Ant文件中引用.
此时,按下时Build Now,系统将提示您在构建开始之前输入repo路径.如上面的wiki页面所述,您可以调用buildWithParametersURL以使用所需参数直接启动构建,例如http://server/job/myjob/buildWithParameters?REPO_PATH=foo
最后,如果您希望构建同时执行,Jenkins可以通过为并发构建创建临时工作空间来为您管理.只需在作业配置中启用"必要时执行并发构建"选项.
工件将可用,与任何其他Jenkins构建相同.虽然可能你想管理最近保存的工件数量; 这可以通过选中"Discard Old Builds"来完成,然后在下面Advanced…,你可以选择输入"Max#of builds with artifact with artifacts".
| 归档时间: |
|
| 查看次数: |
1852 次 |
| 最近记录: |