2017-02-09 142 views
0

剛剛開始使用Jenkins,因爲沒有SCM配置選項卡,所以我似乎無法得到如何正確配置管道的SCM。我添加了一個網絡掛接到我的gitlab項目,URL從Gitlab webhook觸發Jenkins管道

http://my-jenkins-server.com/git/notifyCommit?url=https://my-gitlab-server.com/my-repo.git

但是,當我訪問該網址,詹金斯告訴我

No Git consumers using SCM API plugin for: https://my-gitlab-server.com/my-repo.git 

哪種類型的有道理的,因爲我沒有明確的詹金斯說,我的管道綁這個回購協議,只是在詹金斯腳本含蓄:

stage('Build'){ 
    git url: 'https://my-gitlab-server.com/my-repo.git', branch: 'master', credentialsId: '<some-hash>' 
    sh 'cd linux-native; make clean all' 
} 

那我怎麼告訴詹金斯說管道是綁在特異性ic回購?或者,我如何找到適合我管道的notifyCommit網址?

回答

1

假設你已經啓用了Poll SCM選項,Git webhooks的功能應該和Freestyle作業一樣。

但是,您需要在/git/notifyCommit掛鉤工作之前至少手動運行一次管道。

對於自由式項目,Jenkins可以非常容易地檢查作業配置並查看配置了哪個SCM。對於腳本管道,Jenkins無法確定您使用的SCM(如果有),直到它實際執行管道。

+0

雖然我已經手動運行過幾次! –

+0

@embedded_crysis您是否啓用了Poll SCM觸發器?我剛剛創建了一個新工作,啓用了該觸發器並添加了一個簡單的GitLab管道:'node {git'https://gitlab.com/...'}'。完成作業的第一輪後,我可以使用'/ git/notifyCommit'。 –

+0

它仍然不適合我 - 但是,我還沒有做一個成功的構建。也許這跟它有關係? –