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

如何在Jenkins中获取BitBucket Server拉取请求发起者邮箱

解决方案

1. 获取PR发起者邮箱(创建/更新PR场景)

Bitbucket Push and Pull Request插件会自动向Jenkins构建注入专属环境变量,直接使用BITBUCKET_PR_AUTHOR_EMAIL即可拿到PR发起者的邮箱地址。直接修改你的流水线代码:

post {
    always {
        emailext body: 'Test Message',
            subject: 'Test Subject',
            to: "${BITBUCKET_PR_AUTHOR_EMAIL}"
    }
}

2. PR合并时同时通知发起者和合并者

当PR被合并触发构建时,插件会额外注入合并者的邮箱变量BITBUCKET_PR_MERGER_EMAIL。你可以通过判断构建触发动作,拼接收件人列表:

pipeline {
    agent any
    environment {
        PR_RECIPIENTS = ""
    }
    stages {
        // 你的流水线执行阶段
    }
    post {
        always {
            script {
                // 判断是否为PR合并触发的构建
                if (env.BITBUCKET_PR_ACTION == 'MERGED') {
                    PR_RECIPIENTS = "${BITBUCKET_PR_AUTHOR_EMAIL}, ${BITBUCKET_PR_MERGER_EMAIL}"
                } else {
                    // 非合并场景仅通知发起者
                    PR_RECIPIENTS = "${BITBUCKET_PR_AUTHOR_EMAIL}"
                }
            }
            emailext body: 'Test Message',
                subject: 'Test Subject',
                to: "${PR_RECIPIENTS}"
        }
    }
}

3. 关键注意点

  • 确保Bitbucket Push and Pull Request插件配置正确,Webhook能正常触发Jenkins构建
  • 确认Bitbucket平台上的用户已填写有效的邮箱地址,且Jenkins能正常获取到这些用户信息
  • 若变量未生效,可在流水线中添加echo "${BITBUCKET_PR_AUTHOR_EMAIL}"调试变量是否存在

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.13 07:25:20