traefik/configuration.go
2015-09-11 16:37:13 +02:00

47 lines
877 B
Go

package main
type GlobalConfiguration struct {
Port string
GraceTimeOut int64
AccessLogsFile string
TraefikLogsFile string
TraefikLogsStdout bool
LogLevel string
Docker *DockerProvider
File *FileProvider
Web *WebProvider
Marathon *MarathonProvider
}
func NewGlobalConfiguration() *GlobalConfiguration {
globalConfiguration := new(GlobalConfiguration)
// default values
globalConfiguration.Port = ":8080"
globalConfiguration.GraceTimeOut = 10
return globalConfiguration
}
type Backend struct {
Servers map[string]Server
}
type Server struct {
Url string
Weight int
}
type Rule struct {
Category string
Value string
}
type Route struct {
Backend string
Rules map[string]Rule
}
type Configuration struct {
Backends map[string]Backend
Routes map[string]Route
}