gpt4 book ai didi

Jenkins 插件,如何在远程节点上执行系统命令?

转载 作者:行者123 更新时间:2023-12-04 17:11:09 25 4
gpt4 key购买 nike

我们公司的Jenkins有一个master和两个slave节点。我正在为它编写插件。插件要做的一件事是从 svn check out 一些文件。无法从插件中提取此操作。
为此,我从插件的 Java 代码执行控制台命令“svn checkout”。问题是来自 svn 的文件被 check out 到主节点,而不是从节点。
如何将文件 check out 到从属设备?

最佳答案

首先你有这些对象,通常作为 perform 的参数接收。方法:

Launcher launcher;
AbstractBuild<?, ?> build;
BuildListener listener;

然后你已经创建并添加了参数到一个argumentListBuilder,可能是这样的:
ArgumentListBuilder command = new ArgumentListBuilder();
command.addTokenized("xcopy /?");

然后,执行以下操作:
ProcStarter ps = launcher.new ProcStarter();
ps = ps.cmds(command).stdout(listener);
ps = ps.pwd(build.getWorkspace()).envs(build.getEnvironment(listener));
Proc proc = launcher.launch(ps);
int retcode = proc.join();

ProcStarter 将在 launcher 指定的节点上运行命令实例。但是请在使用前至少浏览一下上述所有类的 javadoc,以上不是直接从工作代码复制粘贴。

关于Jenkins 插件,如何在远程节点上执行系统命令?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13176635/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com