2014-03-01 63 views
1

嗨,任何人都有一些腳本可能是例如我可以在GitLab存儲庫中創建掛鉤以在每次推送請求後自動從項目構建maven war archive? 請張貼腳本的一些例子! 在此先感謝!推事件GitLab掛鉤

回答

3

您可以使用Gitlab-API包裝器來創建鉤子。有幾種語言,我將以Ruby wrapper爲例。 添加一個鉤子一樣簡單:

h = Gitlab.add_project_hook(project_id, hook_url) 

當然,首先檢查是否掛鉤不存在。您的網址可能會以/maven結束。

您的掛鉤現在每次將某項內容推送到項目回購時,都會在url上觸發POST請求。

一個簡單的網絡服務器如Sinatra現在可以處理請求:

mavenjob.rb 
require 'sinatra' 

post '/maven' do 
    'Hook triggered'! 
    #Handle creation of maven archive 
end 

你可以考慮處理與一個排隊系統POST請求,如Resque。如果你想使用Ruby,Github上有一個Maven包裝器,但我從來沒有使用它。

希望它有幫助!

0

我的重新編譯是配置gitlab-ci並將它用於gitlab。你也可以在那裏運行一些其他的東西,它有非常好的界面。