通过hudson API 启动构建并且指定revision版本

Hudson API 构建指定版本
本文介绍如何使用Hudson API 来启动构建并指定SVN版本号。需配置带有参数REVISION的Hudson任务,并设置SVN地址包含此参数。通过GET方式传递REVISION值来触发特定版本的构建。
如何通过hudson API 启动构建并且指定revision版本?

首先,需要你的hudson job是这样配置的
1、有一个String类型的参数,例如REVISION

2、svn地址,带上REVISION变量


注意:REVISION的Default Value应为空,这样默认就是拉最新代码。如果Default Value等于@111,则表示拉取revision为111的代码。Defaut Value如果等于@head,是不能拉取最新代码的(不清楚是否为hudson bug)

其次,调用HUDSON API.
例如,要启动@111的版本,请求url是:https: //server/path/job/jobname/buildWithParameters?REVISION=@111
注意:REVISION参数,得用get方法传入,也就是如上所示拼接url,用post方法是不生效的
Started by user WUWENKE Running as SYSTEM Building in workspace C:\ProgramData\Jenkins\.jenkins\workspace\自动化测试 The recommended git tool is: NONE using credential e73878ec1dac9be8d63b76f179a9907f > git.exe rev-parse --resolve-git-dir C:\ProgramData\Jenkins\.jenkins\workspace\自动化测试\.git # timeout=10 Fetching changes from the remote Git repository > git.exe config remote.origin.url https://gitee.com/weike1234/api_auto_test.git # timeout=10 Fetching upstream changes from https://gitee.com/weike1234/api_auto_test.git > git.exe --version # timeout=10 > git --version # 'git version 2.51.1.windows.1' using GIT_ASKPASS to set credentials > git.exe fetch --tags --force --progress -- https://gitee.com/weike1234/api_auto_test.git +refs/heads/*:refs/remotes/origin/* # timeout=10 > git.exe rev-parse "refs/remotes/origin/master^{commit}" # timeout=10 Checking out Revision a3b4e4b365e749ec43866d5d873213a3c95602ee (refs/remotes/origin/master) > git.exe config core.sparsecheckout # timeout=10 > git.exe checkout -f a3b4e4b365e749ec43866d5d873213a3c95602ee # timeout=10 Commit message: "第一次提交" > git.exe rev-list --no-walk a3b4e4b365e749ec43866d5d873213a3c95602ee # timeout=10 [自动化测试] $ sh -xe C:\WINDOWS\TEMP\jenkins178274333009868265.sh The system cannot find the file specified FATAL: command execution failed java.io.IOException: CreateProcess error=2, 系统找不到指定的文件。 at java.base/java.lang.ProcessImpl.create(Native Method) at java.base/java.lang.ProcessImpl.<init>(ProcessImpl.java:506) at java.base/java.lang.ProcessImpl.start(ProcessImpl.java:159) at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1126) Caused: java.io.IOException: Cannot run program "sh" (in directory "C:\ProgramData\Jenkins\.jenkins\workspace\自动化测试"): CreateProcess error=2, 系统找不到指定的文件。 at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1170) at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1089) at hudson.Proc$LocalProc.<init>(Proc.java:252) at hudson.Proc$LocalProc.<init>(Proc.java:221) at hudson.Launcher$LocalLauncher.launch(Launcher.java:995) at hudson.Launcher$ProcStarter.start(Launcher.java:507) at hudson.tasks.CommandInterpreter.perform(CommandInterpreter.java:144) at hudson.tasks.CommandInterpreter.perform(CommandInterpreter.java:92) at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20) at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:818) at hudson.model.Build$BuildExecution.build(Build.java:199) at hudson.model.Build$BuildExecution.doRun(Build.java:164) at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:527) at hudson.model.Run.execute(Run.java:1860) at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:44) at hudson.model.ResourceController.execute(ResourceController.java:101) at hudson.model.Executor.run(Executor.java:460) Build step 'Execute shell' marked build as failure Finished: FAILURE 哪里出问题了
最新发布
10-26
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值