问题标签 [jenkins-build-flow]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
25576 浏览

jenkins - 如何在 Jenkins 工作流构建期间修复 NotSerializableException 错误?

当我在 Jenkins 工作流程(Jenkins 1.609.1,工作流程 1.8)上运行以下代码时,我收到“NotSerializableException”错误(也在下方)。但是,如果我将“构建作业”移到“for”范围之外,它工作正常(作业被激活)。有什么想法为什么会出现这种行为?

得到错误:

0 投票
0 回答
1697 浏览

groovy - 如何在构建流程 [Jenkins] 中使用 Groovy 创建文本文件?

我有一个Builflow. Groovy script我似乎无法创建新文件。该命令确实执行了,但我在workspace.

首先要在 WORKSPACE 中创建它,我需要知道它在哪里。

然后定义并创建文件

0 投票
0 回答
250 浏览

jenkins - 使用 Multijob 项目构建 Flow 作业工作问题

我已经在我的 multijob 中添加了构建流程作业。我在构建流程作业方面遇到了一些问题。每当我进行构建时,它总是执行两次。

以前有没有人遇到并解决过这个问题?

0 投票
3 回答
6917 浏览

ios - 访问被拒绝:UserXXX 缺少整体/读取权限

我正在使用 jenkins,不幸的是,我被添加了一个用户作为管理员,我忘记了该用户的密码,所以当我尝试与其他用户一起登录时,它的显示如下图所示。我试图在 config.xml 中将 userSecurity 设置为 false 并重新启动 jenkins,但它没有修复。请建议我如何克服这个问题

在此处输入图像描述

0 投票
4 回答
15776 浏览

file-io - 使用 Groovy 从 Jenkins 主节点访问节点从属节点上的文件

我正在使用 Jenkins Build Flow 插件来实现并行化。Groovy DSL 执行某些文件操作。即使该选项Restrict where this project can be run设置为在特定从属设备上运行作业,DSL 也会在主设备上运行。这不是故意的。

有人能告诉我如何限制 DSL 在指定的从站上运行吗?即使有一种方法可以通过 DSL 访问从属文件系统,也应该可以。

一般来说,我们如何使用 Groovy 从 Jenkins 主节点访问节点从节点上的文件?

工作区在从节点上,但是当我尝试将 FileSet 打开到远程 FilePath 时,上面的代码失败了。

0 投票
1 回答
1468 浏览

jenkins - 使用 DSL 构建流程将选择参数传递给 Jenkins 中的另一个作业

我正在使用 Build Flow 插件来执行并行构建。我需要将选择参数(branch_name)从父作业传递给子作业。我不确定如何让这个工作。选择参数有多个分支名称。我怎样才能做到这一点?

这是代码示例,

我究竟做错了什么?请帮忙。谢谢。

0 投票
4 回答
3419 浏览

jenkins - 如何在完成一组其他工作后触发 Jenkins 工作?

根据一组其他作业的完成情况,您只有一个作业的简单情况很简单:使用多作业或使用带有parallel { ... }. 我试图解决的情况更普遍,例如:

我希望这些作业中的每一个都尽快触发,并且仅在其先决条件完成时触发。

看起来构建流程插件、连接插件或作业 DSL 插件都没有一个好的机制。当然,我可以开始我所有的工作并让他们投票给詹金斯,但这会很丑陋。

另一个死胡同是“上游作业触发器”。我想触发特定的作业构建,而不仅仅是上游作业的任何运行。

更新

一个答案提到了多任务插件。它确实可以用来解决这个问题,但调度和总构建时间几乎总是最坏的情况。例如,假设这个依赖图,构建时间如下所示:

使用 multijob 插件,您可以获得:

如果我有办法在所有先决条件都完成后准确地触发下一个工作,那么总构建时间将只有 57m。

这里的答案应该解释我如何获得这种行为,最好不要编写我自己的轮询机制。

更新 1 1/2 在下面的评论中,建议我将左侧任务和右侧任务组合成一个子任务。是的,这可以在这个例子中完成,但通常很难自动完成。例如,假设有一个额外的依赖关系:right2 依赖于 left1。在给定构建时间的情况下,最佳构建时间不应该改变,因为 left1 在启动 right2 之前很久就完成了,但是如果没有这些知识,您就不能再将 left1 和 left2 放在同一组中,而不会冒没有 right1 的风险可用的。

更新 2

看起来这里没有现成的答案。看来我将不得不自己编写一个系统 groovy 脚本。请参阅我自己对这个问题的回答。

更新 3

我们最终分叉了 multijob 插件并在其中编写了新的逻辑。我希望我们可以在一些清理之后将它作为一个新插件发布......

0 投票
0 回答
299 浏览

jenkins - Jenkins - 从 Build Flow Job 开始一个作业,其内部版本号与正在运行的作业相同

使用 DSL,我可以执行以下操作:

这很棒。似乎设置了下游作业的 BUILD_NUMBER 变量。但是,显示名称仍然是自动递增的编号,并且如果我之后手动启动作业,它将从错误的版本号(不是作为参数传递的版本号)递增。我猜还需要其他操作作为 shell 脚本或设置 BUILD_NUMBER 和 Displayname 并将其在配置中递增保存为 nextBuildNumber 文件。也许这个插件可以帮助:

https://wiki.jenkins-ci.org/display/JENKINS/Next+Build+Number+Plugin

问题是是否有更好的方法或者我应该继续朝着同一个方向努力?是否有更好的方法将下游作业的构建号设置为与构建流程作业相同?

0 投票
3 回答
4978 浏览

jenkins - 即使上一个作业在 Jenkins 构建流程中失败,也按顺序运行下一个作业

我有一个构建流程,依次构建 4 个作业

例如;

即使之前的任何作业也失败了,我也想运行作业 4。我怎样才能在构建流程中做到这一点?

0 投票
1 回答
1483 浏览

jenkins - 在从机上运行 jenkins DSL 脚本

我有一个构建流程项目,它有一个 DSL 脚本来配置流程。

这是我的脚本:

在我的工作配置中,我检查了Restrict where this project can be run并给出了正确的从标签。

我的工作因以下错误而失败:

我发现 DSL 脚本在主节点而不是从节点上运行。

如何在从站上运行 DSL?(或者至少在slave上执行脚本)

谢谢