当前位置: 首页 > 面试题库 >

Jenkins运行并行脚本

云和同
2023-03-14
问题内容

我是詹金斯的新手,需要帮助。

我有4个Shell脚本:test1.sh,test2.sh,test3.sh和test4.sh

我希望test2.sh仅在test1.sh成功运行时运行,而test4.sh仅在test3.sh成功运行时运行。我还希望test1.sh和test3.sh并行运行。

我如何在詹金斯实现呢?

我正在使用“使用ssh在远程主机上执行shell脚本”和“有条件的步骤(多个)”(只是在探索)。我还设置了密钥,以便与远程服务器通信

使用屏幕快照或其他方式进行插图会很有帮助。

谢谢!


问题答案:

首先,确保test1.sh和test3.sh成功时返回标准成功代码(0)。然后,可以在任何命令行(不仅是Jenkins)上运行的简单方法是使用以下命令行:

((test1.sh && test2.sh) &) ; ((test3.sh && test4.sh) &)

每对括号形成一个子外壳,双“&”表示“如果先成功则运行第二”,而单“&”表示“在backgorund中运行”。因此,您将获得相当于两个后台外壳程序的外壳程序,每个外壳程序运行两个脚本,如果第一个脚本未返回0,则将退出。

詹金斯特定的解决方案是使一个节点具有两个(或更多)流道。创建两个作业,然后将两个作业都绑定到该节点。每个作业都运行单个外壳程序test1.sh && test2.sh,或者test3.sh && test4.sh



 类似资料:
  • 问题内容: 我有一个shell脚本 随机播放大型文本文件(600万行和6列) 根据第一列对文件进行排序 输出1000个文件 所以伪代码看起来像这样 有没有一种方法可以运行此Shell脚本以充分利用多核CPU? 在这一刻, 。按1到1000的顺序执行,非常慢。 谢谢你的帮助。 问题答案: 查看bash子外壳程序,这些外壳程序可用于并行运行脚本的各个部分。 我还没有测试过,但这可能是一个开始:

  • 我正在从NPM迁移到Thread,我希望并行运行脚本,例如: 它在纱线中的等价物是什么? 我发现它的等价物是分别运行每一个: 但是我不能并行运行脚本。 如何使用多个脚本

  • 问题内容: 我正在编写一个新的Jenkins管道,并具有一组最终要并行运行的步骤。但是,在开发此管道时,我想强制其顺序运行。我没有看到任何指定并行步骤使用的线程数或类似方法的方法。这是到目前为止的基本代码: 我希望能够依次运行这些Shell脚本而无需更改很多代码。 问题答案: 而不是您可以这样使用:

  • 问题内容: 我正在尝试运行Python工作。我创建了以下文件夹: C:\ Users \ herod \ jenkins_ws \ workspace \ window_testing 并添加了脚本“ testing.py”。 该脚本非常简单: 但是从Jenkins运行它时出现以下错误(如果我从命令行运行它会起作用): 我究竟做错了什么 ? 这是我尝试过的: 在构建部分的作业配置中,我选择“执行p

  • 问题内容: 在我的我有这两个脚本: 每当我开始在Node.js中开发时,我必须 并行 运行这两个脚本。我想到的第一件事是添加第三个脚本,如下所示: …但这将等待完成再运行。 如何并行运行它们? 请记住,我需要查看以下命令。另外,如果您的解决方案涉及构建工具,则我宁愿使用,因为我已经在另一个项目中使用了它。 问题答案: 使用并发调用的包。 然后按以下步骤设置您的任务:

  • 在我的中有以下两个脚本: 每次在Node.js中开始开发时,我都必须并行运行这两个脚本。我首先想到的是添加第三个这样的脚本: ...但在运行之前,将等待完成。 我如何并行运行这些?请记住,我需要查看这些命令的。另外,如果您的解决方案涉及构建工具,我宁愿使用而不是,因为我已经在另一个项目中使用了它。