summaryrefslogtreecommitdiffstats
path: root/modules/setting/webhook.go
diff options
context:
space:
mode:
authorLunny Xiao <xiaolunwen@gmail.com>2019-11-09 05:25:53 +0800
committertechknowlogick <techknowlogick@gitea.io>2019-11-08 16:25:53 -0500
commit55bdc9aa38177f75fdae4cb96e98bf465d7ecb2a (patch)
tree621333fde9de8cec79dac36bcaced0e4b499dfb3 /modules/setting/webhook.go
parent016a5d0438e551d4630819683dd6dc4fccb0cb51 (diff)
downloadgitea-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.go21
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(",")
}