问题标签 [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.
jenkins - 归档具有相同名称的工件
我正在使用声明性管道作为 Jenkins 工作。阶段“构建”和“归档”并行运行以从不同平台(linux 32 和 64、windows 等)的节点构建和收集工件
不幸的是,这些工件都是同名的。我无法mylib.so
在单个管道作业中存档多个。或者我可以吗?
好吧,在 Windows 的情况下,库将是 a .dll
,因此存在差异,但这不能成为解决此问题的整体解决方案。
有没有办法区分由多个节点构建的工件?
我的管道看起来类似于:
我也看过这个,所以可能没有直接开箱即用的东西。
jenkins - 如何使用 Jenkins 声明式管道语法修剪孤立作业?
如何使用 Jenkins 声明式管道语法修剪孤立作业?
有,logRotator
但还不够。已删除分支的所有作业仍然存在。
jenkins - Jenkins 声明式管道 docker 代理:超时运行
我正在尝试改善我的 Jenkins 作业的构建时间,并尝试构建预先安装了我的依赖项的 docker 容器。
我有以下(部分)Jenkinsfile
:
而且,根据日志,詹金斯正在正确下载此图像。当它尝试运行它时会出现问题:
有谁知道为什么会超时?如果我提供了一个 dockerfile(代理 { dockerfile: true })它构建得很好。并不是说这不是使用类似管道语法的脚本,而是使用较新的声明性格式。
github - 从远程仓库调用 Jenkinsfile 到构建管道
我想将声明式 Jenkinsfile 的源代码控制版本拉入多分支 jenkins 作业。
例如,我有 20 个多分支构建作业,每个构建作业都构建一个应用程序并进行部署,每个构建作业都有一个静态 jenkinsfile 指向、拉取和使用版本控制的 jenkinsfile。
这将减少在进行更改时跨所有存储库进行更改的需要
(我们确实在相关的地方使用共享库)
提前致谢
jenkins - 如何在 Jenkins 声明式管道中创建方法?
在 Jenkins 脚本化管道中,我们能够创建方法并调用它们。
在 Jenkins 声明性管道中是否也有可能?如何?
regex - 使用正则表达式 101 的 Jenkins 声明式管道
我是声明式管道和探索其功能的新手。我尝试使用正则表达式。以下示例是反复试验的结果。那里有更好的解决方案吗?我正在寻找一种新的闪亮的声明性管道方式,如果有的话。
我没有得到的是,为什么我必须使用script{}-Enviroment
以及为什么我必须使用局部变量(def matcherX
)?
工作示例,然后是第一次尝试:
工作示例:
错误:没有脚本{}
错误:使用脚本但使用全局变量
jenkins - Jenkins 共享库 - 如何定义声明式管道的常用选项
我在声明性管道中有许多类似的配置,例如代理、工具、选项或帖子部分。是否有任何选项可以以某种方式定义这些选项,以便单个作业只需定义步骤(可能来自共享库)?
在“Defining a more ststructured DSL”中有一个描述,其中有一些类似于我想要实现的东西,但这似乎适用于脚本化管道。
实际上,我尝试过类似的方法,试图将闭包传递给管道,但这似乎不起作用。可能如果它有效,有一些关于如何做到这一点的文档。
并以某种方式这样称呼它:
jenkins-pipeline - jenkins 声明性管道不适用于使用 maven 命令的 xl-deploy
我想创建 jenkins 声明性管道,以便使用 maven 命令在 xl-deploy 上进行部署。我没有使用 xl-deploy 插件,我只是为此使用 maven 命令。
我收到以下异常:
未能执行目标 com.xebialabs.xldeploy:xldeploy-maven-plugin:5.0.2:generate-deployment-package。
直到发布,它工作正常。但在执行部署阶段时出现异常
jenkins-pipeline - jenkins 声明式管道中的模板 docker 代理
我有一个使用 docker 代理的声明性管道的 Jenkinsfile。许多步骤使用 docker 代理,为这些步骤添加相同的代理有点重复
例如
有什么方法可以模板代理(或编写我自己的),以便我可以执行以下操作
这样我就不必重复编写相同的代理,并且可能我可以在我的所有 Dockerfile 中重用它
docker - 管道中的jenkins docker插件使用-u标志,怎么可能不使用
我正在使用带有 docker 插件的 jenkins 版本 2.89.1。在声明性管道阶段,我启动了一个安装了 ansible 2.4.x 的 docker 容器,以便运行一些 playbook,如下所示:
管道设法旋转 docker 容器并尝试执行 ansible playbook,但我面临以下问题:
查看 Jenkins 日志,我发现当它旋转 docker 容器时,它以下列方式启动:
其中 112 是 jenkins uid,116 是 jenkins gid。
如果我在没有 -u 标志的情况下手动启动的同一个容器中启动相同的 ansible playbook,它可以正常工作。
那么是否可以在没有 -u 标志的情况下启动容器???为什么认为 docker 容器应该具有与 jenkins 服务器相同的 uid 和 gid ?
非常感谢马可