问题标签 [jenkins-pipeline]

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 投票
1 回答
41686 浏览

jenkins - 错误:在 Jenkins groovy 脚本中并行出现“预期的命名参数”

我有一个 Jenkins 2.0 管道,带有这样的 groovyscript:

每个单独的作业都构建得很好,但是当我尝试运行管道时,它会在遇到并行步骤时吐出这个错误:

有什么想法可能导致这样的事情吗?

0 投票
4 回答
200864 浏览

jenkins - 在 Jenkins Pipeline 插件中获取工作区目录的绝对路径

我目前正在对 Jenkins Pipeline 插件(以前称为 Workflow 插件)进行一些评估。阅读文档后,我发现我目前无法使用以下方法检索工作区路径 env.WORKSPACE

以下变量当前在工作流脚本中不可用:

NODE_LABELS

工作空间

SCM 特定变量,例如 SVN_REVISION

还有其他方法可以获取当前工作区的绝对路径吗?我需要这个运行一些测试,然后得到一些参数(一些可执行文件的绝对路径)。我已经尝试new File("").absolutePath()在一个@NonCPS部分中使用,但看起来非 CPS 的东西总是在主服务器上执行。

有没有人知道如何在运行一些批处理脚本的情况下获取此路径,该脚本将路径存储到某个文件中,以后可以再次读取该文件?

0 投票
1 回答
570 浏览

jenkins - 如何创建管道脚本?

我在 Jenkins 中创建了一个管道作业,我需要创建一个管道脚本来显示开发阶段的失败和不稳定的构建。在 Jenkins 2.0 中创建它的步骤是什么,或者是否有任何示例管道脚本

0 投票
3 回答
5303 浏览

jenkins - 如何在詹金斯管道控制台输出中抑制源脚本行回显?

我正在 Jenkins 中编写一个管道作业,它在管道控制台输出中显示下游作业的输出控制台。到目前为止,这项工作正在工作,但由于管道作业本身添加到输出中的所有回声线,输出真的很难阅读。

管道插件、Groovy 或 Jenkins 中是否有选项、配置、命令或任何内容允许我抑制所有额外的“回声”以使控制台输出更具可读性?

0 投票
3 回答
13161 浏览

jenkins - jenkins 通过在 Pipeline(以前称为 Workflow)中发送邮件在不同步骤中发生通知错误

我有一个包含多个步骤的管道,例如:

如果工作中出现问题,我想发送电子邮件,无论错误在哪里触发,我如何发送电子邮件,例如:

0 投票
2 回答
42103 浏览

jenkins - 如何在 Jenkins 2.0 Pipeline 作业中执行命令,然后返回标准输出

有没有更好的方法在 Jenkins 2.0 管道中运行 shell 任务,然后返回stdout命令。我可以让它工作的唯一方法是将命令的输出通过管道传输到文件,然后将文件读入变量。

这似乎是返回输出的一种非常糟糕的方式。我希望我可以做类似的事情:

或者

这可能吗?

0 投票
2 回答
225 浏览

jenkins - 测试 Jenkins 2.0 Pipeline 但什么都不做

我尝试为新管道执行 Jenkins 的示例。
当我启动它时,构建正在运行,但是当我显示控制台时,里面什么都没有,除了Started by user anonymous
我让管道运行几分钟然后我强行杀死它。

正如我所说,我在 Jenkins 中尝试了演示脚本:

0 投票
1 回答
1935 浏览

jenkins - 具有多个起点的 Jenkins 多分支管道

我在 Jenkins 2.1 多分支管道上苦苦挣扎,我从同一个 git 存储库构建了多个工件。一些工件是独立的,应该在其各自目录中的更改上触发构建。有些是依赖的,应该由先前的步骤/构建触发。

存储库有一个控制整个管道的 Jenkinsfile。Jenkins Multibranch Pipeline 作业触发所有更改(无其他行为)。

我看不到如何构建工件 A 以触发目录 dirA 中的更改。

位于 file:///repopath 的 git repo 中的 Jenkinsfile 如下所示:

这将始终触发 buildA.sh 的运行 :-(

我正在使用以下插件:

  • Git客户端插件1.19.6
  • Git 插件 2.4.4
  • Git 服务器插件 1.6
  • 管道 2.0
  • 管道:API 2.0
  • 管道:基本步骤 2.0
  • 管道:构建步骤 2.0
  • 管道:Groovy 2.1
  • 管道:输入步骤 2.0
  • 管道:工作 2.1
  • 管道:多分支 2.3
  • 管道:节点和进程 2.0
  • 管道:REST API 插件 1.3
  • 管道:SCM 步骤 2.0
  • 管道:共享 Groovy 库 2.0
  • 管道:阶段步骤 2.0
  • 管道:舞台视图插件 1.3
  • 管道:步骤 API 2.0
  • 管道:支持 API 2.0
0 投票
3 回答
11615 浏览

jenkins - 在 Workflow/Pipeline 插件中访问 Stage 结果

我有一个不同阶段的管道。我希望当前作业检查上一个构建中经过了多少阶段并将其记录在控制台中?

考虑这是我目前的管道

我想要一个 groovy 脚本来给我这样的东西

我的代码的目的是在我的构建中跟踪不同阶段的成功和失败。这种方法有其他选择吗?

0 投票
1 回答
18530 浏览

jenkins - 詹金斯管道无法读取文件

我有一个简单的 Jenkinsfile,我想从工作区加载一些数据。我正在使用管道插件来利用存储库中的 Jenkinsfile。构建被移植到匹配的 Jenkins 代理。当我尝试使用“readFile”时,我收到以下消息:

java.io.FileNotFoundException: /path/to/jenkins/workspace/XXXXX/project/data.json (没有这样的文件或目录)

尝试从工作区加载 Groovy 文件时,我也会收到相同的消息。

我的Jenkinsfile样子:

任何想法为什么我无法读取这些文件?

谢谢,蒂姆