-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathmain.go
33 lines (30 loc) · 865 Bytes
/
main.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
package main
import (
log "github.com/Sirupsen/logrus"
"github.com/haisum/httpcacheserver/proxy"
"github.com/spf13/viper"
)
func init() {
viper.SetDefault("HTTP_PORT", 8081)
viper.SetDefault("HTTP_HOST", "")
viper.SetDefault("PROXY_URL", "http://mirror.centos.org/centos/")
viper.SetDefault("PROXY_SUFFIX", "/proxy")
viper.SetDefault("DATA_DIR", "./cache")
viper.SetConfigName("config")
viper.AddConfigPath(".")
if err := viper.ReadInConfig(); err != nil {
log.WithError(err).Warn("Couldn't read config file.")
}
viper.SetEnvPrefix("HCS")
viper.AutomaticEnv()
}
func main() {
err := proxy.Start(viper.GetString("PROXY_URL"),
viper.GetString("PROXY_SUFFIX"),
viper.GetString("DATA_DIR"),
viper.GetString("HTTP_HOST"),
viper.GetInt("HTTP_PORT"))
if err != nil {
log.WithError(err).Fatal("Error happened in starting proxy server.")
}
}