diff options
Diffstat (limited to '')
-rw-r--r-- | modules/setting/proxy.go | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/modules/setting/proxy.go b/modules/setting/proxy.go new file mode 100644 index 0000000..4ff420d --- /dev/null +++ b/modules/setting/proxy.go @@ -0,0 +1,37 @@ +// Copyright 2021 The Gitea Authors. All rights reserved. +// SPDX-License-Identifier: MIT + +package setting + +import ( + "net/url" + + "code.gitea.io/gitea/modules/log" +) + +// Proxy settings +var Proxy = struct { + Enabled bool + ProxyURL string + ProxyURLFixed *url.URL + ProxyHosts []string +}{ + Enabled: false, + ProxyURL: "", + ProxyHosts: []string{}, +} + +func loadProxyFrom(rootCfg ConfigProvider) { + sec := rootCfg.Section("proxy") + Proxy.Enabled = sec.Key("PROXY_ENABLED").MustBool(false) + Proxy.ProxyURL = sec.Key("PROXY_URL").MustString("") + if Proxy.ProxyURL != "" { + var err error + Proxy.ProxyURLFixed, err = url.Parse(Proxy.ProxyURL) + if err != nil { + log.Error("Global PROXY_URL is not valid") + Proxy.ProxyURL = "" + } + } + Proxy.ProxyHosts = sec.Key("PROXY_HOSTS").Strings(",") +} |