You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Jenkins Pipeline的options块中传递webHookURL保密文本?

解决Jenkins Pipeline options块中配置Office365 Webhook保密URL的问题

由于options块属于Pipeline的初始化阶段,不支持嵌套withCredentials这类脚本化代码块,你可以直接使用Jenkins内置的credentials()函数引用保密文本凭据,具体修改示例如下:

pipeline {
    agent none

    options {
        office365ConnectorWebhooks([[
            name: 'myConnector',
            startNotification: true,
            url: credentials('webHookURL'), // 直接调用credentials()函数传入凭据ID
            notifyFailure: true,
            notifySuccess: true
        ]])
    }
}

关键说明:

  • credentials('webHookURL')中的webHookURL是你在Jenkins凭据管理中创建的保密文本凭据的ID,Jenkins会自动解析并注入真实的URL值,且不会在日志中泄露敏感内容。
  • 若使用的是带用户名密码的凭据类型(本文场景为保密文本,无需此操作),可通过credentials('凭据ID').password提取密码部分,保密文本直接调用credentials('凭据ID')即可返回完整值。

如果上述方法因插件版本兼容问题无法生效,可将Office365通知逻辑移至post阶段,在该阶段可正常使用withCredentials块,示例如下:

pipeline {
    agent none

    stages {
        // 此处定义你的Pipeline执行阶段
    }

    post {
        always {
            withCredentials([string(credentialsId: 'webHookURL', variable: 'WEBHOOK_URL')]) {
                office365ConnectorSend(
                    webhookUrl: WEBHOOK_URL,
                    message: 'Pipeline执行状态通知',
                    status: currentBuild.currentResult
                )
            }
        }
    }
}

内容的提问来源于stack exchange,提问作者mair

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.26 11:12:07