我在測試服務器上設置了帶有Github插件的Jenkins。我已經通過只允許通過身份驗證的用戶(匿名用戶沒有任何權利)和安全連接來保護Jenkins。通過HTTP將Github連接到安全的Jenkins Post-Commit Hook
不幸的是,Github提供的post-commit hook在我的情況下似乎不起作用。我試圖手動訪問網址https://jenkins.on.my.server/github-webhook/,它給了我一個「net.sf.json.JSONException:null對象」錯誤,這很好,因爲我沒有發佈任何JSON以及我的請求。
我的問題:
我已獲得詹金斯與身份驗證的用戶,因此,我必須在格式https://[email protected]:jenkins.on.my.server/github-webhook/使用的網址,對不對?由於我不想通過網絡發佈證書,我可以使用安全連接作爲Github的post-commit鉤子嗎?
你還必須設置在這種情況下,post-commit鉤子? –
是的,從Github到Jenkins的通信仍然通過post-commit鉤子完成。 Github OAuth插件解決了我的問題,因爲我可以排除掛鉤的URL不受保護,從而允許Github通知我提交。 – r3nj1
如果您使用Github OAuth,請不要忘記檢查'爲/ github-webhook授予讀取權限',這將允許webhook由Github服務器在未經身份驗證的情況下執行。當我安裝插件時,這並未默認啓用,並花了一些時間來挖掘爲什麼我的構建沒有被觸發。 – qnm