jenkins-pipeline相关内容

在 Jenkins 管道中使用的 groovy 脚本中调用 shell 命令

我有一个 Jenkins 流水线脚本,其中我加载了一个外部 Groovy 脚本,其中包含一些函数来执行我的构建.这些功能应该是普通的,因为如果有人在某处的本地计算机上运行构建,我也想在 Jenkins 之外使用它们. 在这些函数中,我需要执行 shell 命令并评估结果.这在 groovy 调用类似 的函数时效果很好 def SomeFunction() {def result = "一 ..
发布时间:2022-01-18 17:05:29 其他开发

Jenkins复制工件解析复制的构建ID

我在 Jenkins 2.73.1 中使用多分支管道 复制Artifact Plugin 要从其他两个管道获取最后成功的工件,请参阅我的 Jenkinsfile: def branchname = "${BRANCH_NAME}".replace("/", "%2F")管道{代理人 {标签“窗户"}阶段{阶段('获取工件'){脚步 {脚本 {并行('获取后端':{step([$class: 'C ..
发布时间:2022-01-18 17:05:09 其他开发

使用 Jenkins 进行 Azure 预配

作为 QA 管道(在 Jenkins 中)的一部分,目标是自动配置和配置 VM 以运行 QA 测试. Jenkins 管道可以触发 Terraform 代码以自动配置 VM 和用于配置 VM 的 ansible 代码,但是,回滚、错误处理等问题并不容易,除非我们使用一些供应商特定的模板,例如 AzureResourceManager 模板. 那么,对于 Jenkins 管道,在 Azu ..

在詹金斯管道的多个步骤中定义和访问变量

我来自这篇文章 定义变量在 Jenkins Pipeline 的 shell 脚本部分中 我的情况如下,如果生成的文件发生更改(它们每几周或更短时间更改一次),我有一个管道正在更新一些文件并在我的存储库中生成 PR. 在我的管道结束时,我有一个发布操作,可以通过电子邮件将结果发送到我们的团队连接器. 我想知道能否以某种方式生成一个变量并将该变量包含在我的电子邮件中. 它看起 ..
发布时间:2022-01-18 17:04:45 其他开发

我可以安排一次构建在 Jenkins 中运行吗?没有 cron 的任何解决方案

我不需要 cron 作业,因为构建只需要在生产中运行一次,而不是定期运行.有没有办法在没有 cron 的情况下在预定时间构建管道. 解决方案 一种方法是 - 你可以远程触发它https://www.jenkins.io/doc/book/using/remote-access-api/ 假设你有一个 Linux 机器,你可以使用“at"来安排它.命令 周五晚上 9:30curl - ..
发布时间:2022-01-18 17:04:38 其他开发

为什么 groovy 不能在 Jenkins 管道中运行?

我目前正试图从我的管道中运行一个 groovy 脚本作为我的节点之一,但我遇到了这个错误: [CompanyName] 运行 shell 脚本+ ./ideainspect.groovyenv:groovy:没有这样的文件或目录 另外,我尝试为 groovy 安装插件,但由于某种原因,它无法安装.每当我刷新工具页面时,安装程​​序就会消失.我安装groovy错了吗?请帮忙! 编辑:相关数 ..

如何在通过参数和标签选项选择的节点上运行 jenkins 声明性管道

我想通过节点和标签插件运行将节点设置为参数的管道. 如何更改声明式管道 管道{代理人 {标签“随便"}... 使用 EXECUTION_NODE 作为代理来执行管道?这似乎比我想象的要复杂得多,或者我遗漏了一些明显的东西. 解决方案 问题是这样的:给你呈现“带参数构建"页面,Jenkins 需要运行你的管道并解析它的参数.要运行管道,Jenkins 需要一个节点.要拥有一个节点 ..
发布时间:2022-01-18 17:04:12 其他开发

Jenkins groovy 管道 - 需要从执行 jar 文件中输出命令的标准输出

我正在使用 Jenkins v:1.647 和 Pipeline 插件 v:1.14.我的管道作业提取了一个运行我的编排的 groovy 脚本.我的问题是我有一个可执行的 jar,它将执行一些 Scalar API 操作并返回一个新的服务器主机名,传入标准输出.我有一个在 Jenkins 之外工作的工作片段. def serverHostName = "java -jar scalr-api.j ..
发布时间:2022-01-18 17:04:04 其他开发

如何在 Jenkins 上制作 groovy 以与凭据相同的方式屏蔽变量的输出?

在 Jenkins 的 groovy 中是否有一种方法可以获取任意字符串变量——比如对另一个服务的 API 调用的结果——并让 Jenkins 在控制台输出中将其屏蔽,就像它自动为从凭据管理器读取的值所做的那样? 解决方案 更新解决方案:要隐藏变量的输出,您可以使用 Mask Password Plugin 这是一个例子: String myPassword = 'toto'节点{ ..
发布时间:2022-01-18 17:03:38 其他开发

如何将 Cmd 行输出定向到 jenkins

Stage("执行") {脚步 {bat '启动 cmd.exe/c c:\\users\\doc\\sample.bat'}} 上面的脚本只是打开cmd提示符并执行它.它没有获取执行的输出.即使执行失败,该阶段也显示为成功,并进入下一个阶段进行部署.我想开发它,以便 cmd 提示符中的输出应该被 Jenkins 当作输入,并且阶段应该继续.如果阶段在执行期间失败,阶段应该显示失败,如果执行成功 ..
发布时间:2022-01-18 17:03:32 其他开发

如何使用詹金斯管道将战争部署到tomcat?

我想使用管道部署战争文件.什么是正确的做法.有没有办法在管道代码中使用部署到容器.使用 jenkins manager 调用 catalina.sh 或使用 curl 命令进行部署的问题是我找不到任何检测成功部署的方法. 有没有标准的方法来做到这一点 解决方案 在tomcat中,部署war有两种选择: 将战争复制到 webapps 文件夹 将战争上传到您的 tomcat 发布 ..
发布时间:2022-01-18 17:03:12 服务器开发

从 Jenkins 管道并行步骤收集数据

从并行步骤收集数据(例如通过/失败结果)的最佳方式是什么. 到目前为止我已经达到了什么: #!groovydef fspam(名称,垃圾邮件){spam[name] = "也去过那里"}//管道节点('奴隶'){阶段(“测试"){目标 = ["a", "b"]定义任务 = [:]默认垃圾邮件 = [:]目标.each{ 任务["${it}"] = {节点('奴隶'){echo "试运行 $ ..
发布时间:2022-01-18 17:03:06 其他开发

按顺序运行 Jenkins 并行任务

我正在编写一个新的 Jenkins 管道,并有一组我最终希望并行运行的步骤.但是,当我正在开发这条管道时,我想强制它按顺序运行.我没有看到任何方法来指定并行步骤使用的线程数或类似的东西.这是到目前为止的基本代码: node('x') {阶段(“清理"){def cleanupScripts = [:]cleanupScripts[1] = { sh(script: "cleanup1.sh") ..
发布时间:2022-01-18 17:02:52 其他开发

Jenkins Pipelines:为什么没有加载 CPS Global Lib?

我正在关注 上的教程管道库插件.我创建了一个包含以下文件的存储库: D:.│ Test.groovy│├───src└────变量helloWorld.groovy helloWorld.groovy 包含: def 调用(名称){回声“你好世界,${name}"} Test.groovy 包含: helloWorld("乔") 我安装了所有管道插件,尤其是 workflow-cps- ..
发布时间:2022-01-18 17:02:44 其他开发

在 Jenins 2 Pipeline 脚本中使用任意插件

使用 Jenkins 2 中的 Snippet Generator 工具,我可以像在工作中一样设置一个插件,然后它会生成我可以在我的 Pipeline 脚本中使用的 Groovy. 但是,如果我对检测感兴趣的插件未列在 Snippet Generator 的“示例步骤"下拉列表中怎么办?如何确定如何创建脚本块来检测我要使用的插件? 就我而言,我想使用“灵活发布" 我的 Pipeline ..
发布时间:2022-01-18 17:02:28 其他开发

如何从 jenkins 作业的 scm 轮询中排除 jenkins 文件

我正在使用声明性管道语法.我的 jenkins 文件存储在 git hub 存储库中,与要构建的代码分开,因此我设置了 jenkins 作业以从 scm 获取管道脚本,并在 master 分支上选择我的 git 存储库.在我的管道脚本中,我使用 checkout 步骤从另一个源(在我的例子中是一个 RTC 存储库,但我想另一个 git 存储库将是相同的场景)获取我的真实代码.一切正常,如果我能够通 ..
发布时间:2022-01-18 17:02:20 其他开发