当前位置: 首页 > 知识库问答 >
问题:

使用 Groovy 脚本在 Jenkins 从节点中运行作业

秦炜
2023-03-14

我对是否可以在从属节点中使用Groovy脚本运行Jenkins作业感到困惑。我提到了一个 StackOverflow 答案 [1],它说 System Groovy 脚本作业可以在主站而不是从站中运行,并且要在从站中运行作业,它必须是 Groovy 脚本而不是 System Groovy 脚本。有人可以澄清我是否可以使用系统时髦脚本运行从属作业吗?由于我正在尝试通过Groovy脚本,因此无法访问几个Jenkins实例。请给我一个更好的解释方式。提前致谢

共有1个答案

南宫俊喆
2023-03-14

我终于发现,只能使用Grovvy脚本在Jenkins从节点中运行作业。系统groovy脚本在Hudson主机的JVM中运行。因此,它可以访问Hudson的所有内部对象,因此我们可以使用它来更改Hudson状态。它类似于Jenkins脚本控制台功能。

 类似资料:
  • 我想在詹金斯中强制执行以下场景: 我有工作A和工作B 我想在执行作业B时禁用作业A,在执行作业B后,我想再次启用作业A。 为了启用/禁用作业A,我使用了Groovy插件:Groovy插件 Groovy插件提供了两种可能性:执行Groovy脚本和执行系统Groovy脚本。 在开始执行作业B时,我添加了以下代码片段: 执行工作B后: 当我运行作业B时,它失败了,出现以下异常: 当我运行作业B时,它失败

  • 我想通过使用@Grab运行java类的main方法,以便自动处理需求。更具体地说,我希望运行pdfbox示例https://github.com/apache/pdfbox/blob/trunk/examples/src/main/java/org/apache/pdfbox/examples/util/removeAlltext.java 我编写了以下groovy脚本 main的@grab,im

  • 问题内容: 我是Jenkins中使用的Groovy脚本的新手。我的问题是,我们如何根据作业名称和内部版本号获取作业的时间戳? 示例 :我想获取“ MyDeployJob”(JobName)的时间戳,并获取BuildNumber-105的时间戳。 我尝试使用方法方法,但无法正常工作。另外,我发现环境变量具有时间戳,但是我无法弄清楚如何使用Groovy Script获取细节。请帮助。 提前致谢。 问题

  • 问题内容: 我正在使用Jenkins Build Flow插件来实现并行化。Groovy DSL执行某些文件操作。即使该选项设置为在特定从属服务器上运行作业,但DSL仍在主服务器上运行。这不是故意的。 有人可以告诉我如何限制DSL在指定的从站上运行吗?即使有一种方法可以通过DSL访问从文件系统,也应该可以。 通常,我们如何使用Groovy从Jenkins主节点访问节点从节点上的文件? 工作空间位于

  • 你好,詹金斯的朋友们, 我创建了一个JenkinsFreestyle项目,其中包含“执行Groovy脚本”步骤。从脚本中,我想在同一个Jenkins服务器上触发另一个参数化作业。 有人知道我该怎么做吗?

  • 问题内容: 但是,我需要从System Groovy脚本读取文件,因此使用Text-finder或Groovy PostBuild插件的解决方案将不起作用。 如何从系统Groovy脚本获取工作区路径?我尝试了以下方法: 谢谢! 问题答案: 每个构建都有一个 工作区 ,因此您需要首先找到所需的项目。(在詹金斯中,术语“工作”和“项目”在API中也是可以互换使用的。) 之后,您可以交叉手指,只需调用已