2019-02-10 04:37:37 +03:00
// Copyright 2019 The Gitea Authors. All rights reserved.
// Use of this source code is governed by a MIT-style
// license that can be found in the LICENSE file.
package setting
2019-11-09 00:25:53 +03:00
import (
"net/url"
"code.gitea.io/gitea/modules/log"
)
2022-01-20 20:46:10 +03:00
// Webhook settings
var Webhook = struct {
QueueLength int
DeliverTimeout int
SkipTLSVerify bool
AllowedHostList string
Types [ ] string
PagingNum int
ProxyURL string
ProxyURLFixed * url . URL
ProxyHosts [ ] string
} {
QueueLength : 1000 ,
DeliverTimeout : 5 ,
SkipTLSVerify : false ,
PagingNum : 10 ,
ProxyURL : "" ,
ProxyHosts : [ ] string { } ,
}
2019-02-10 04:37:37 +03:00
func newWebhookService ( ) {
sec := Cfg . Section ( "webhook" )
Webhook . QueueLength = sec . Key ( "QUEUE_LENGTH" ) . MustInt ( 1000 )
Webhook . DeliverTimeout = sec . Key ( "DELIVER_TIMEOUT" ) . MustInt ( 5 )
Webhook . SkipTLSVerify = sec . Key ( "SKIP_TLS_VERIFY" ) . MustBool ( )
2021-11-20 12:34:05 +03:00
Webhook . AllowedHostList = sec . Key ( "ALLOWED_HOST_LIST" ) . MustString ( "" )
2022-01-23 16:46:30 +03:00
Webhook . Types = [ ] string { "gitea" , "gogs" , "slack" , "discord" , "dingtalk" , "telegram" , "msteams" , "feishu" , "matrix" , "wechatwork" , "packagist" }
2019-02-10 04:37:37 +03:00
Webhook . PagingNum = sec . Key ( "PAGING_NUM" ) . MustInt ( 10 )
2019-11-09 00:25:53 +03:00
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 ( "," )
2019-02-10 04:37:37 +03:00
}