つばくろぐ @takamii228

知は力なり

JenkinsのMultibranch PipelineでGitLab PluginのaddGitLabMRCommentが動かない

はじめに

tag pushに続いて、Jenkins Multibranch Pipeline + GitLab Pluginネタです。

takamii.hatenablog.com

GitLabプラグインDSLの中にaddGitLabMRCommentとあったので、Merge RequestのCIの結果をJenkinsからGitLabにコメント連携できるやんけ、と思って設定してみました。

https://jenkins.io/doc/pipeline/steps/gitlab-plugin/#addgitlabmrcomment-add-comment-on-gitlab-merge-request

動かない。

JenkinsfileのDeclarativeのpostの中でsuccessとfailureそれぞれにaddGitLabMRCommentを追加してみましたが動きません。

pipeline {
    agent any

    post {
        success {
            updateGitlabCommitStatus name: 'build', state: 'success'
            updateGitlabCommitStatus name: 'test', state: 'success'
            mattermostSend color: "good", message: ":smile: [${env.JOB_NAME}](${env.BUILD_URL}) のビルドに成功しました"
            addGitLabMRComment comment: ":smile: [${env.JOB_NAME}](${env.BUILD_URL}) のビルドに成功しました" //追記
        }
        failure {
            updateGitlabCommitStatus name: 'build', state: 'failed'
            updateGitlabCommitStatus name: 'test', state: 'failed'
            mattermostSend color: "danger", message: ":dizzy_face: [${env.JOB_NAME}](${env.BUILD_URL}) のビルドに失敗しました"
            addGitLabMRComment comment: ":dizzy_face: [${env.JOB_NAME}](${env.BUILD_URL}) のビルドに失敗しました" //追記
        }
    }
....

JenkinsとGitLabの連携方法はこちらをご覧ください↓

qiita.com

Issueが上がってた

あれれーと思って調べていたらIssueが上がっていた。

github.com

bugとなっていて、結びに以下のコメントが。

I think that's because this is a Multibranch Pipeline job. For those, MR hooks won't trigger.

どうやらMerge Requestのhookイベントがうまく連携できていない模様。

Multibranch PipelineがMerge Requestのフックがうまくうけとれないっぽい。

よく見たらREADMEに書いてあった

Multibranch Pipelineと相性悪いんかなと思ってREADME読んでたら書いてあるやんけ・・・。

Due to this, the plugin just listens for GitLab Push Hooks for multibranch pipeline jobs; merge Request hooks are ignored.

github.com

IntegrationのところでTestしたら409が返ってきた。

stackoverflow.com

ちーん。

GitLabつらいのでGHEつかいたい。