70 lines
1.9 KiB
Go
70 lines
1.9 KiB
Go
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 {
|
|
Address string `yaml:"Address"`
|
|
}
|
|
|
|
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"`
|
|
}
|