groovy 当所需的状态检查失败时,是否有自动通知GitHub PR作者的方法?

euoag5mw  于 2023-06-28  发布在  Git
关注(0)|答案(1)|浏览(120)

在我们公司的GitHub org/repo中,PR“* 在合并之前需要通过状态检查 *”。状态检查,如Gearset CI作业、代码可运行等。

我们计划在GitHub仓库中启用“允许自动合并”功能。我们向我们的团队宣传此功能-“* 您可以创建PR,单击“启用自动合并”按钮并离开。您不必照看它。*”如果所有必需的状态检查都通过了,这将正常工作。但如果他们中的任何一个失败了,那就是一个问题。开发人员不会知道他们的PR被卡住,直到几个小时后,当他们手动回来检查。

所以我的问题是--当任何必需的状态检查失败时,是否有任何自动化的方法来通知PR作者?现在,作者在这些事件中自动收到一封电子邮件-

  • 当审核人批准请购单时,
  • 当有人在PR上留言时
  • 当PR关闭时。
  • 当PR被合并的时候

是否有一个可用的配置,以便他们将得到电子邮件(或松弛消息)自动如果他们的公关所需的状态检查失败?
另外,是否有任何GitHub webhook事件可以触发工作流?因此,无论何时状态检查失败,都会在Jenkins中触发一个作业。我检查了“状态”活动文档,但看起来不像是公关状态检查。有什么想法吗

我已经试过了

我签入了https://github.com/settings/notifications,但没有失败的必要状态检查选项。
Google搜索结果显示可以使用GitHub Actions完成,但GHA在我们的组织中被禁用。
我尝试使用GitHub webhook作为触发器创建Jenkins管道,只是为了检查触发器是否工作-

pipeline {
    options {
        timestamps()
    }
    triggers {
        eventTrigger jmespathQuery("provider=='github' && eventName=='status' && webhook.state=='failure' && webhook.context='Gearset 3. uat to UAT Deploy' && webhook.repository.name=='sfdc'")
    }
    agent { agent details here. }
    stages {
        stage('PR Status Checker') {
            steps {
                script {
                    def causes = currentBuild.getBuildCauses()[0]['event']
                    println "Causes: " + causes
                }
            }
        }
    }
}

但Jenkins的案子根本没有触发。(相比之下,eventName==“pull_request”管道触发良好。)

c9x0cxw0

c9x0cxw01#

你可以做的是在Github PR上发表评论,如果你的管道失败了,我已经使用Github Actions应用了这个,这很简单,但我很确定它也可以使用Jenkins来完成,无论是使用任何插件还是使用Github API。
PR评论示例https://github.com/kahootali/golang-sample-app/pull/38#issuecomment-1279916092

相关问题