GradleでJenkinsのコミットメッセージを取りたかった(deploygateのメッセージにJenkinsのコミットメッセージとビルド番号を入れたかった)のでGradleスクリプトを作ったのでメモ。
Gitsにも置きました。
// something
// jenkins
import groovy.json.*
ext {
jenkinsUrl = 'http://localhost:8080'
buildNumber = System.getenv("BUILD_NUMBER");
jobName = System.getenv("JOB_NAME");
println "build number is ${buildNumber}"
println "jobName is ${jobName}"
}
def getJson(url) {
println "start getJson $url"
def response = new URL(url).text
return new JsonSlurper().parseText(response)
}
def getJenkinsMessage(message) {
def url = "${jenkinsUrl}/job/${jobName}/${buildNumber}/api/json"
def items = getJson(url)['changeSet']['items']
items.eachWithIndex() { obj, i ->
message += obj['msg'] + ' '
}
return message
}
task jenkins << {
String message = "B${buildNumber} "
println getJenkinsMessage(message)
}
参考
【初心者でも】やろうぜGroovy!〜ファイル読み書きしたり、Web APIたたいたり、レスポンスの中身確認したり〜編【今すぐ使える】
0 件のコメント:
コメントを投稿