make hooks respect http basic authentication

This commit is contained in:
gitlab system 2012-08-02 09:48:46 +07:00
parent e8261313a7
commit 9912770c6f

View file

@ -11,7 +11,16 @@ class WebHook < ActiveRecord::Base
message: "should be a valid url" }
def execute(data)
WebHook.post(url, body: data.to_json, headers: { "Content-Type" => "application/json" })
parsed_url = URI.parse(url)
if parsed_url.userinfo.blank?
WebHook.post(url, body: data.to_json, headers: { "Content-Type" => "application/json" })
else
post_url = url.gsub(parsed_url.userinfo+"@", "")
WebHook.post(post_url,
body: data.to_json,
headers: { "Content-Type" => "application/json" },
basic_auth: {username: parsed_url.user, password: parsed_url.password})
end
end
end