yukari/config/config.go
yakumo.izuru 279093536b Incorporate most of the open pull requests found on GitHub
Signed-off-by: Izuru Yakumo <yakumo.izuru@chaotic.ninja>

git-svn-id: file:///srv/svn/repo/yukari/trunk@140 f3bd38d9-da89-464d-a02a-eb04e43141b5
2023-04-20 06:12:13 +00:00

47 lines
1.0 KiB
Go

package config
import (
"os"
)
type Config struct {
Debug bool
ListenAddress string
Key string
IPV6 bool
RequestTimeout uint
FollowRedirect bool
MaxConnsPerHost uint
UrlParameter string
HashParameter string
}
var DefaultConfig *Config
func init() {
default_listen_addr := os.Getenv("MORTY_ADDRESS")
if default_listen_addr == "" {
default_listen_addr = "127.0.0.1:3000"
}
default_url_parameter := os.Getenv("MORTY_URL_PARAM")
if default_url_parameter == "" {
default_url_parameter = "mortyurl"
}
default_hash_parameter := os.Getenv("MORTY_HASH_PARAM")
if default_hash_parameter == "" {
default_hash_parameter = "mortyhash"
}
default_key := os.Getenv("MORTY_KEY")
DefaultConfig = &Config{
Debug: os.Getenv("DEBUG") != "false",
ListenAddress: default_listen_addr,
Key: default_key,
IPV6: true,
RequestTimeout: 5,
FollowRedirect: false,
MaxConnsPerHost: 4,
UrlParameter: default_url_parameter,
HashParameter: default_hash_parameter,
}
}