diff --git a/tortuous.go b/tortuous.go index 927304bfa..b4d61df4a 100644 --- a/tortuous.go +++ b/tortuous.go @@ -16,12 +16,10 @@ import ( ) type Backend struct { - Name string Servers []string } type Server struct { - Name string Url string } @@ -31,14 +29,14 @@ type Rule struct { } type Route struct { - Name string + Backends []string Rules map[string]Rule } type Config struct { - Backends []Backend - Servers []Server - Routes []Route + Backends map[string]Backend + Servers map[string]Server + Routes map[string]Route } var srv *graceful.Server @@ -60,7 +58,11 @@ func main() { systemRouter.Methods("GET").Path("/").HandlerFunc(GetPidHandler) go http.ListenAndServe(":8000", systemRouter) + userRouter := mux.NewRouter() + /*for i := range config.Routes { + fmt.Printf("%+v\n", config.Routes[i] ) + }*/ fwd, _ := forward.New() lb, _ := roundrobin.New(fwd) @@ -68,7 +70,6 @@ func main() { lb.UpsertServer(testutils.ParseURI("http://172.17.0.2:80")) lb.UpsertServer(testutils.ParseURI("http://172.17.0.3:80")) - userRouter := mux.NewRouter() userRouter.Host("test.zenika.fr").Handler(lb) goAway := false diff --git a/tortuous.toml b/tortuous.toml index 3fb69eca9..39aa34f16 100644 --- a/tortuous.toml +++ b/tortuous.toml @@ -1,19 +1,16 @@ -[[backends]] -name = "backend1" -servers = ["server1", "server2"] +[backends] + [backends.backend1] + servers = ["server1", "server2"] -[[servers]] -name = "server1" -url = "http://172.17.0.2:80" +[servers] + [servers.server1] + url = "http://172.17.0.2:80" + [servers.server2] + url = "http://172.17.0.3:80" -[[servers]] -name = "server2" -url = "http://172.17.0.3:80" - -[[routes]] -name = "route1" -backends = ["backend1"] - [[rules]] - [[rules.1]] - category = "Host" - value = "test.zenika.fr" +[routes] + [routes.route1] + backends = ["backend1"] + [routes.route1.rules.test_zenika] + category = "Host" + value = "test.zenika.fr"