Jenkins + GitBlit笔记

环境: Jenkins ver. 2.176.2 + gitblit-1.8.0

需要注意 gitblit 要在对应的 repository 下面设置post-receive scripts为自己的脚本 my-jenkins-notify.groovy

这个脚本放到 gitblitgroovy目录下 gitblit-1.8.0\data\groovy, 修改脚本中的192.168.31.8为你自己的jenkins服务器地址:

import com.gitblit.GitBlit
import com.gitblit.Keys
import com.gitblit.models.RepositoryModel
import com.gitblit.models.UserModel
import com.gitblit.utils.JGitUtils
import org.eclipse.jgit.lib.Repository
import org.eclipse.jgit.revwalk.RevCommit
import org.eclipse.jgit.transport.ReceiveCommand
import org.eclipse.jgit.transport.ReceiveCommand.Result
import org.slf4j.Logger

def triggerUrl = "http://${user.username}@192.168.31.8:8080/git/notifyCommit?url=${url}/r/${repository.name}"

logger.info("jenkins hook triggered by ${user.username} for ${repository.name}, notify " + triggerUrl)

new URL(triggerUrl).getContent()

Jenkins中建立Free style Project, 在其 Source Code Management 下面设置相应的 GitBlit 的 repository 地址, 同时在Build Triggers 中勾选Poll SCM,内容不填就ok了

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章