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

Jenkins脚本管道-执行每个阶段后调用REST API

闾丘京
2023-03-14

我们有一个Jenkins脚本管道,包含6个阶段。我需要在每个阶段结束时调用RESTAPI,将阶段的状态推送到Cassandra DB。在詹金斯管道中有没有一种有效的方法?

目前,我正在每个阶段结束时调用一个状态为的函数。我必须在所有阶段编写这段代码,即使阶段成功或失败。

共有1个答案

毋炳
2023-03-14

你是否尝试过使用共享库函数,编写一次代码,然后在不同的管道中调用它?这是文档的链接。https://jenkins.io/doc/book/pipeline/shared-libraries

 类似资料:
  • 我希望能够在Jenkins中包装一个“阶段”,这样我就可以在一个阶段的开始和结束时执行自定义代码,比如: 我想我可以通过使用元类来做到这一点: 但是Groovy脚本本身似乎是一个绑定,它没有元类: 我还在学习Groovy和Jenkins管道是如何工作的,所以也许我只是错过了一些东西。

  • 问题内容: 我们正在使用 Script Pipeline 语法,其中定义了很多阶段来构建和部署代码。我们有一个用例,如果我要执行 完整构建,则要 运行所有阶段,但是如果需要执行一些AWS路由,则只运行一个特定阶段。我知道我可以使用跳过阶段或运行阶段。问题是我不想将这个条件应用于我的每个阶段。 在新的 声明性管道 语法中,使用该选项很容易实现。我们的基础架构中使用了许多自定义的Groovy帮助器函数

  • 问题内容: 我正在尝试在Jenkins脚本化管道中运行条件步骤,但是我不确定如何仅在上一步成功的情况下运行步骤。例如,在以下情况中,如果“测试”阶段成功,我只想运行“推送工件”阶段: 我知道声明性管道允许您使用“后”条件,但是我对Jenkins中的声明性管道与脚本化管道的理解是,脚本化管道提供了更大的灵活性。有没有一种方法可以基于脚本管道中其他阶段的成功来运行阶段? 问题答案: 在詹金斯管道中没有

  • 我正在编写一个Groovy脚本,其中包含部署terraform的作业。我正在使用作业DSL并使种子作业由JCasC实现,一切正常。然后我有一个包含作业的Groovy文件的存储库。 如果我将Groovy文件保持为单个作业,它就可以正常工作。 然而,我希望能够构建具有构建阶段的管道。我知道我可以把管道写在詹金斯文件中 我有这个作为开始: 但是,我看到了这个错误: 我已经尝试了各种方法,并阅读了一堆文档

  • 我们在工作描述中使用jenkins pipeline dsl。现在我们有了这样的东西: 生成过程中的一个阶段,仅当生成主分支时才应运行,您可以考虑部署作业或该方向的任何内容。问题是,我们带有该特定标签的代理商资源有限。当我们构建其他分支时,作业仍然调用slaver1代理,并且在检查分支不是主分支后跳过该阶段。这很糟糕,因为当所有 slave1 代理都在主分支作业上工作时,其他作业将不得不等待 sl

  • 问题内容: 我使用jQuery的.load函数将一些HTML代码加载到div中,其中包含要执行的一些代码; 加载ajax请求后,alert(); 函数起作用,但是someFunction无法起作用。 如何从Ajax调用执行此功能 执行的功能也不起作用。 问题答案: 可能您应该使用jQuery.getScript从服务器加载一些javascript并执行它。 更新: 在大多数情况下,仅加载纯HTML