diff options
author | Lunny Xiao <xiaolunwen@gmail.com> | 2019-11-09 05:25:53 +0800 |
---|---|---|
committer | techknowlogick <techknowlogick@gitea.io> | 2019-11-08 16:25:53 -0500 |
commit | 55bdc9aa38177f75fdae4cb96e98bf465d7ecb2a (patch) | |
tree | 621333fde9de8cec79dac36bcaced0e4b499dfb3 /modules/setting/webhook.go | |
parent | 016a5d0438e551d4630819683dd6dc4fccb0cb51 (diff) | |
download | gitea-55bdc9aa38177f75fdae4cb96e98bf465d7ecb2a.tar.gz gitea-55bdc9aa38177f75fdae4cb96e98bf465d7ecb2a.zip |
Webhook support custom proxy (#8760)
* Webhook support custom proxy
* Add glob support on webhook proxy host rules
* fix app.ini.sample
* improve code and app.ini.sample
* update cheetsheet about added webhook options
Diffstat (limited to 'modules/setting/webhook.go')
-rw-r--r-- | modules/setting/webhook.go | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/modules/setting/webhook.go b/modules/setting/webhook.go index b0e7d66ad2..4a953616f1 100644 --- a/modules/setting/webhook.go +++ b/modules/setting/webhook.go @@ -4,6 +4,12 @@ package setting +import ( + "net/url" + + "code.gitea.io/gitea/modules/log" +) + var ( // Webhook settings Webhook = struct { @@ -12,11 +18,16 @@ var ( SkipTLSVerify bool Types []string PagingNum int + ProxyURL string + ProxyURLFixed *url.URL + ProxyHosts []string }{ QueueLength: 1000, DeliverTimeout: 5, SkipTLSVerify: false, PagingNum: 10, + ProxyURL: "", + ProxyHosts: []string{}, } ) @@ -27,4 +38,14 @@ func newWebhookService() { Webhook.SkipTLSVerify = sec.Key("SKIP_TLS_VERIFY").MustBool() Webhook.Types = []string{"gitea", "gogs", "slack", "discord", "dingtalk", "telegram", "msteams"} Webhook.PagingNum = sec.Key("PAGING_NUM").MustInt(10) + Webhook.ProxyURL = sec.Key("PROXY_URL").MustString("") + if Webhook.ProxyURL != "" { + var err error + Webhook.ProxyURLFixed, err = url.Parse(Webhook.ProxyURL) + if err != nil { + log.Error("Webhook PROXY_URL is not valid") + Webhook.ProxyURL = "" + } + } + Webhook.ProxyHosts = sec.Key("PROXY_HOSTS").Strings(",") } |