如何编写Jenkins管道函数以将其用作选项?

如何编写Jenkins管道函数以将其用作选项?,jenkins,jenkins-pipeline,Jenkins,Jenkins Pipeline,我想向Jenkins管道脚本添加一般功能,类似于您可以使用内置函数(时间戳、ansiColor)执行的操作: 选项{ 时间戳() ansiColor“xterm” //failureNotification()目前,我认为您正在使用的声明性语法不可能实现这一点。您可以编写自己的Jenkins插件来实现这一点,但这可能会有问题 如果你愿意使用稍微复杂一点的语法,我会看看这篇博文: 基本上,您需要创建一个共享groovy库,并使用其中的步骤来管理通知步骤 为您的共享库创建一个存储库。它应该有一个名为

我想向Jenkins管道脚本添加一般功能,类似于您可以使用内置函数(时间戳、ansiColor)执行的操作:

选项{
时间戳()
ansiColor“xterm”

//failureNotification()目前,我认为您正在使用的声明性语法不可能实现这一点。您可以编写自己的Jenkins插件来实现这一点,但这可能会有问题

如果你愿意使用稍微复杂一点的语法,我会看看这篇博文:

基本上,您需要创建一个共享groovy库,并使用其中的步骤来管理通知步骤

  • 为您的共享库创建一个存储库。它应该有一个名为“vars”的文件夹,这是您的步骤和步骤文档所在的位置
  • 在共享库中创建一个步骤。使用camelCase和groovy扩展名,创建一个文件名来描述您的步骤。这是您将在Jenkins文件中调用的。例如:sendFailureNotification.groovy
  • 在该文件中,创建一个名为call的函数。可以使用所需的任何参数。例如:def call(){}
  • 该调用函数是您的“步骤逻辑”。在您的情况下,听起来您希望查看构建结果并使用您认为必要的任何通知步骤
  • 从文档中复制…’要设置“全局管道库”,我导航到“管理Jenkins”→ Jenkins web UI中的“配置系统”。在“全局管道库”下,我添加了一个新库
  • 将库导入到Jenkins文件中,如下所示:
    @library(“”)
  • 现在,您应该能够在Jenkins文件的末尾调用sendFailureNotification()。也许是在这样的后期阶段

    职位{ 失败{ sendFailureNotification() } }

  • options {
        timestamps()
        ansiColor 'xterm'
        // failureNotification() <- I want to add this
    }