package model type ConfigWebServer struct { Address string `yaml:"Address"` Port int `yaml:"Port"` PublicBase string `yaml:"PublicBase"` TrustedPlatform string `yaml:"TrustedPlatform"` JWT ConfigJWT `yaml:"JWT"` OAuth ConfigOAuth `yaml:"OAuth"` } type ConfigJWT struct { SigningKey string `yaml:"SigningKey"` ExpireHour int `yaml:"ExpireHour"` } type ConfigOAuth struct { Domain string `yaml:"Domain"` ClientID string `yaml:"ClientID"` ClientSecret string `yaml:"ClientSecret"` } type ConfigRedis struct { Db int `yaml:"Db"` QueueDb int `yaml:"QueueDb"` Address string `yaml:"Address"` Port int `yaml:"Port"` Password string `yaml:"Password"` } type ConfigDatabase struct { Host string `yaml:"Host"` Port int `yaml:"Port"` User string `yaml:"User"` Password string `yaml:"Password"` Database string `yaml:"Database"` Prefix string `yaml:"Prefix"` MaxOpenConns int `yaml:"MaxOpenConns"` MaxIdleConns int `yaml:"MaxIdleConns"` ConnMaxLifetime int `yaml:"ConnMaxLifetime"` TimeZone string `yaml:"TimeZone"` } type ConfigStorage struct { Endpoint string `yaml:"Endpoint"` UseSSL bool `yaml:"UseSSL"` AccessKey string `yaml:"AccessKey"` SecretKey string `yaml:"SecretKey"` Bucket string `yaml:"Bucket"` } type ConfigRunner struct { CGroup string `yaml:"CGroup"` Concurrency int `yaml:"Concurrency"` } type ConfigMetrics struct { Namespace string `yaml:"Namespace"` Subsystem string `yaml:"Subsystem"` } type Config struct { WebServer ConfigWebServer `yaml:"WebServer"` Redis ConfigRedis `yaml:"Redis"` Database ConfigDatabase `yaml:"Database"` Storage ConfigStorage `yaml:"Storage"` Runner ConfigRunner `yaml:"Runner"` Metrics ConfigMetrics `yaml:"Metrics"` Development bool `yaml:"Development"` }