Adds Docker provider support
Co-authored-by: Julien Salleyron <julien@containo.us>
This commit is contained in:
parent
8735263930
commit
b54c956c5e
78 changed files with 3476 additions and 5587 deletions
|
@ -2,13 +2,12 @@ package integration
|
|||
|
||||
import (
|
||||
"encoding/json"
|
||||
"io/ioutil"
|
||||
"net/http"
|
||||
"os"
|
||||
"time"
|
||||
|
||||
"github.com/containous/traefik/api"
|
||||
"github.com/containous/traefik/integration/try"
|
||||
"github.com/containous/traefik/old/types"
|
||||
"github.com/containous/traefik/testhelpers"
|
||||
"github.com/go-check/check"
|
||||
checker "github.com/vdemeester/shakers"
|
||||
|
@ -56,23 +55,27 @@ func (s *DockerComposeSuite) TestComposeScale(c *check.C) {
|
|||
_, err = try.ResponseUntilStatusCode(req, 1500*time.Millisecond, http.StatusOK)
|
||||
c.Assert(err, checker.IsNil)
|
||||
|
||||
resp, err := http.Get("http://127.0.0.1:8080/api/providers/docker")
|
||||
resp, err := http.Get("http://127.0.0.1:8080/api/providers/docker/services")
|
||||
c.Assert(err, checker.IsNil)
|
||||
|
||||
defer resp.Body.Close()
|
||||
body, err := ioutil.ReadAll(resp.Body)
|
||||
|
||||
var services []api.ServiceRepresentation
|
||||
err = json.NewDecoder(resp.Body).Decode(&services)
|
||||
c.Assert(err, checker.IsNil)
|
||||
|
||||
var provider types.Configuration
|
||||
c.Assert(json.Unmarshal(body, &provider), checker.IsNil)
|
||||
// check that we have only one service with n servers
|
||||
c.Assert(services, checker.HasLen, 1)
|
||||
c.Assert(services[0].ID, checker.Equals, composeService+"_integrationtest"+composeProject)
|
||||
c.Assert(services[0].LoadBalancer.Servers, checker.HasLen, serviceCount)
|
||||
|
||||
// check that we have only one backend with n servers
|
||||
c.Assert(provider.Backends, checker.HasLen, 1)
|
||||
resp, err = http.Get("http://127.0.0.1:8080/api/providers/docker/routers")
|
||||
c.Assert(err, checker.IsNil)
|
||||
defer resp.Body.Close()
|
||||
|
||||
myBackend := provider.Backends["backend-"+composeService+"-integrationtest"+composeProject]
|
||||
c.Assert(myBackend, checker.NotNil)
|
||||
c.Assert(myBackend.Servers, checker.HasLen, serviceCount)
|
||||
var routers []api.RouterRepresentation
|
||||
err = json.NewDecoder(resp.Body).Decode(&routers)
|
||||
c.Assert(err, checker.IsNil)
|
||||
|
||||
// check that we have only one frontend
|
||||
c.Assert(provider.Frontends, checker.HasLen, 1)
|
||||
// check that we have only one router
|
||||
c.Assert(routers, checker.HasLen, 1)
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue