问题标签 [jenkins-declarative-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 回答
690 浏览

jenkins - 我可以为脚本管道中的方法创建一个共享库 .groovy 脚本吗?

我正在尝试将我工作场所的所有脚本化管道转换为声明性管道。我是新来的。我有一个有 2 种方法的脚本化管道。我能够完成其余的脚本以声明性但被困在方法上。由于声明性并不真正支持方法,并且由于我必须在其他声明性管道中多次使用此方法,因此我想将此方法描述为共享库中的 groovy 脚本。

我的问题是,由于这是脚本管道中的一种方法,我可以直接将我的方法复制粘贴到 groovy 脚本中,还是它需要 groovy 的确切语法我检查了 groovy 语法并且在那里并没有真正看到太多差异?

下面是其中一种方法:我可以将其复制到 getversion.groovy 之类的内容中并从我的 dec 管道中调用它吗?还是需要更改语法/代码才能放入 groovy 脚本?

}

在我试图转换为声明性的其他一些脚本化管道中还有一些其他复杂的方法,因此这些信息将非常有帮助。

谢谢

0 投票
2 回答
5402 浏览

jenkins - 存储库中没有 Jenkins 文件的 Jenkins 声明式管道

我正在尝试升级我当前的回归基础设施以使用管道插件,我意识到有两种方法:scripted pipelinedeclarative pipeline. 通过多篇文章,我意识到它declarative pipeline更具未来性和更强大,因此我倾向于使用它。但似乎有以下限制,我不想在我的设置中拥有:

  1. jenkinsfile需要在存储库中。我不想将我的保留jenkinsfile在代码存储库中。

  2. 由于jenkinsfile需要在单片机中。这是否意味着在将文件签入存储库之前,我无法测试文件中的任何修改。

上面的任何细节都将非常有帮助。

0 投票
2 回答
4226 浏览

jenkins - 如何在詹金斯的“修剪陈旧的远程跟踪分支”上执行代码?

删除分支后,我想为作业创建的工件(例如 AMI、docker 图像、terraform 服务)等内容执行额外的清理代码。我正在使用声明性管道,是否有一个钩子或插件可以让我实现这一点?

0 投票
1 回答
3112 浏览

jenkins - 等待进程完成以将阶段标记为已完成的声明性管道步骤

使用声明性管道,我如何根据给定条件标记已完成的阶段?

对于以下示例,我想在没有进程运行时将阶段标记为已完成。

此示例将用于检查给定应用程序在软终止后何时未运行以继续部署

0 投票
1 回答
2133 浏览

jenkins - 带有命名参数的自定义 jenkins 声明性管道 dsl

我已经尝试了一段时间,开始努力将我们的自由风格项目转移到管道上。为此,我觉得最好建立一个共享库,因为我们的大多数构建都是相同的。我通读了 Jenkins 的这篇博文。我想出了以下

在我的管道项目中,我将管道配置为使用管道脚本,脚本如下:

我尝试过使用和不使用环境块,但结果最终与每个参数的值为“null”相同。奇怪的是,代码的脚本部分也不会使构建失败......所以不确定有什么问题。回声部分也显示为空。我究竟做错了什么?

0 投票
1 回答
650 浏览

jenkins - 如何使用声明式语法在 Jenkinsfile 中声明多个代理?

在 Pipeline 脚本语法中,我们使用此语法来声明特定节点的特定步骤:

但是我想用Pipeline Declarative Syntax,可以放很多代理吗?

0 投票
1 回答
102 浏览

jenkins - Jenkins Pipeline file

I am in the process of writing a declarative jenkinsfile to build a pipeline project. Some of the steps within a few of the stages will require some remote commands to be run. The remote ssh sites have been configured in the main jenkins configuration.

How can I declare these steps within my jenkinsfile? I know I can run shell commands locally using sh but it's the remote servers that i need to know about?

0 投票
1 回答
14401 浏览

if-statement - Jenkins 声明式管道。post块中的条件语句

有一个 Jenkins 管道。构建成功时需要/想要发送电子邮件。将有关所有分支的电子邮件发送到maillist-1并将 master 分支的构建过滤到maillist-master
我尝试使用ifwhen语句步骤,但它们都在 post 块中失败。

如何实现想要的行为?

0 投票
0 回答
155 浏览

windows - 如何在 Windows docker 主机上运行阶段?

在 linux docker 主机上,这可以正常工作:

但我卑鄙地安装了 Docker EE 的 windows 2016 服务器:

我收到此错误:

0 投票
1 回答
3582 浏览

jenkins - 如何以声明性语法获取从共享库中的方法返回的值?

我正在使用管道声明性语法,我需要获取从共享库中的方法返回的值