当前位置: 首页 > 知识库问答 >
问题:

复杂而漫长的单工作詹金斯工作管道构建:到了吗?

应安国
2023-03-14

如果不可用可恢复的检查点,那么在免费的Jenkins中为完整的长时间运行的部署/“构建”链设置一个Jenking作业管道作业有意义吗?

这与“历史的”(?)构建管道插件,让你在多个Jenkins工作中分裂“阶段”。编排这些作业总是很麻烦,更不用说在作业之间传递工件以及控制它们在不同节点上的运行方式了。

除了从旧的构建管道插件中得到的是能够重新启动“阶段”(当它失败时)--这是有效的,因为“阶段”只是一个Jenkins作业运行,您可以重复(它还将运行所有下游的东西)。

我们项目的C++构建有几个小时的编译时间,运行更长时间的自动化测试,最后打包和设置创建也不是在几分钟内完成的。

因此,考虑到对我来说,詹金斯的新工作管道没有能力从失败的一步中恢复过来,我似乎又回到了起点,无论如何,我必须把我的长期工作分成多个工作。

这就引出了一个问题:Jenkins Job Pipleine是否真的是这项工作的最佳工具--如果我必须协调多个工作,并且我想在创建端简化和自动化这项工作,我可以使用Job DSL插件从一个点维护所有这些工作--然后问题是“自由风格”的工作是否不能很好地完成这项工作。

另一方面,我可能会错过一些东西,这里有另一个很好的单一工作方法?

共有1个答案

潘安邦
2023-03-14

CloudBees最近决定开放checkpoint插件的源代码,正如您在注释中列出的Jenkins Jira链接问题中所看到的那样。

不过,我还没有看到这个插件的公开发布版本。

 类似资料:
  • 我有一个Jenkins管道,其中有10个作业被配置为在post build操作中一个接一个地运行。只要与作业相关的git代码发生更改,就会触发构建,并运行以下所有作业,尽管没有提交作业代码的其余部分。 例如,在一系列的10个工作在管道中,如果有一个代码变化在第二个工作,但没有在第三个工作,那么我想跳过第二个工作,直接构建第三个工作。同样,任何代码没有更改的作业都希望跳过并跳到下面的作业。 配置更改

  • 我们正在运行詹金斯2。x和爱的新管道插件。但是,由于存储库中有这么多分支,磁盘空间很快就会填满。 是否有任何与管道兼容的插件,我可以在成功构建时清除工作区?

  • 问题内容: 我想要一个可以通过作业名称卷曲的jenkins build / CI作业的API。jenkins是否有可用的此类API? 问题答案: 2小时前,我在这里发布了使用Jenkins REST API和Curl的解决方案:使用批处理脚本开始Jenkins构建 这是curl命令的示例(对于带有参数的作业): 和没有参数的工作: 如果您不想使用用户名/密码,则可以为您的Jenkins用户生成一个

  • 问题内容: 在我们的Jenkins Pipeline工作中,我们有两个阶段,我想要的是,如果其中任何一个阶段失败,那么停止构建,而不继续进行下一个阶段。 这是其中一个阶段的示例: 该脚本将失败,并且生成结果将更新,但是作业将继续进行到下一个阶段。发生这种情况时,我该如何中止或停止工作? 问题答案: 基本上,这就是该步骤的作用。如果不将结果捕获到变量中,则可以运行: 如果脚本生成非零的退出代码,则将

  • 我有一个詹金斯管道,负责大约5个阶段(构建和几个不同的测试)。我正在从Jenkins1.xx(没有管道)迁移到Jenkins2,我希望尽可能地复制我的过程。我在J2上设置的管道作业处理的一切都完全相同,除了使用JenkinsFile。唯一的问题是,管道插件似乎不支持特定构建的推广,就像你可以做的自由式工作一样。有人找到办法了吗?

  • 我正在使用jenkins管道,我的Jenkinsfile有几个阶段和工作。有没有办法在詹金斯管道之外运行特定的工作? 示例:假设其中一个阶段是执行“SCP构建工件到远程位置”。出于某种原因,这失败了,如果我想手动运行jenkins管道之外的其他工作,我如何做到这一点? 我对调用新的构建最不感兴趣。那么,我们可以手动运行jenkins管道以外的故障后的剩余作业吗?