diff --git a/gateway/Dockerfile.build b/gateway/Dockerfile.build index 76536426fcdfb0fd39b908cc9e4d16b0d3465bff..2b9b18a7e930e340d1ee843883a601e35b5c4925 100644 --- a/gateway/Dockerfile.build +++ b/gateway/Dockerfile.build @@ -18,8 +18,6 @@ COPY requests requests COPY tests tests COPY server.go . COPY readconfig.go . -COPY config_test.go . -RUN go test && \ - go test -v ./tests && \ +RUN go test -v ./tests && \ CGO_ENABLED=0 GOOS=linux go build -a -installsuffix cgo -o app . diff --git a/gateway/Dockerfile.build.armhf b/gateway/Dockerfile.build.armhf index 6facfaeca2806e8cf3450030b7b7149656954055..cc7de611130bbb77ccd53dc063a8292d9158dcb0 100644 --- a/gateway/Dockerfile.build.armhf +++ b/gateway/Dockerfile.build.armhf @@ -17,8 +17,6 @@ COPY handlers handlers COPY server.go . COPY readconfig.go . -COPY config_test.go . -RUN go test && \ - go test -v ./tests && \ +RUN go test -v ./tests && \ CGO_ENABLED=0 GOOS=linux go build -a -installsuffix cgo -o app . diff --git a/gateway/Dockerfile.multistage b/gateway/Dockerfile.multistage index b4cf782d950d362dda724fb3928221a9ddbad6fc..66d0697d656bfd13b17ef1451afee87064d56960 100644 --- a/gateway/Dockerfile.multistage +++ b/gateway/Dockerfile.multistage @@ -9,7 +9,6 @@ COPY requests requests COPY tests tests COPY server.go . COPY readconfig.go . -COPY config_test.go . RUN CGO_ENABLED=0 GOOS=linux go build -a -installsuffix cgo -o gateway . diff --git a/gateway/Dockerfile.newbuild b/gateway/Dockerfile.newbuild index 1effa537edb403bc689519e31520938500143a8e..e51fa31ec8db893d75fd8c1fcf00d0fd2d2a2b34 100644 --- a/gateway/Dockerfile.newbuild +++ b/gateway/Dockerfile.newbuild @@ -10,7 +10,6 @@ COPY requests requests COPY tests tests COPY server.go . COPY readconfig.go . -COPY config_test.go . RUN CGO_ENABLED=0 GOOS=linux go build -a -installsuffix cgo -o gateway . diff --git a/gateway/readconfig.go b/gateway/readconfig.go index c91dfd4813918c65f193066f5a8b74fb52181f16..30eda67c99f2dffa4600a0c5500ca161c048e39e 100644 --- a/gateway/readconfig.go +++ b/gateway/readconfig.go @@ -48,14 +48,14 @@ func (ReadConfig) Read(hasEnv HasEnv) GatewayConfig { readTimeout := parseIntValue(hasEnv.Getenv("read_timeout"), 8) writeTimeout := parseIntValue(hasEnv.Getenv("write_timeout"), 8) - cfg.readTimeout = time.Duration(readTimeout) * time.Second - cfg.writeTimeout = time.Duration(writeTimeout) * time.Second + cfg.ReadTimeout = time.Duration(readTimeout) * time.Second + cfg.WriteTimeout = time.Duration(writeTimeout) * time.Second return cfg } // GatewayConfig for the process. type GatewayConfig struct { - readTimeout time.Duration - writeTimeout time.Duration + ReadTimeout time.Duration + WriteTimeout time.Duration } diff --git a/gateway/server.go b/gateway/server.go index 2840706a782574d83aba82a0648ff34e581fd440..6ae366669edaea93e6d1240fbbf7867d879580c8 100644 --- a/gateway/server.go +++ b/gateway/server.go @@ -23,8 +23,8 @@ func main() { readConfig := ReadConfig{} config := readConfig.Read(osEnv) - log.Printf("HTTP Read Timeout: %s", config.readTimeout) - log.Printf("HTTP Write Timeout: %s", config.writeTimeout) + log.Printf("HTTP Read Timeout: %s", config.ReadTimeout) + log.Printf("HTTP Write Timeout: %s", config.WriteTimeout) var dockerClient *client.Client var err error @@ -71,8 +71,8 @@ func main() { s := &http.Server{ Addr: fmt.Sprintf(":%d", tcpPort), - ReadTimeout: config.readTimeout, - WriteTimeout: config.writeTimeout, + ReadTimeout: config.ReadTimeout, + WriteTimeout: config.WriteTimeout, MaxHeaderBytes: http.DefaultMaxHeaderBytes, // 1MB - can be overridden by setting Server.MaxHeaderBytes. Handler: r, } diff --git a/gateway/config_test.go b/gateway/tests/config_test.go similarity index 60% rename from gateway/config_test.go rename to gateway/tests/config_test.go index 588be9fa28f6316f73ed2741424c818871765a14..2060e6da93e187a71baa007403bb4498e67b8096 100644 --- a/gateway/config_test.go +++ b/gateway/tests/config_test.go @@ -1,11 +1,13 @@ // Copyright (c) Alex Ellis 2017. All rights reserved. // Licensed under the MIT license. See LICENSE file in the project root for full license information. -package main +package tests import ( "testing" "time" + + gateway "github.com/alexellis/faas/gateway" ) type EnvBucket struct { @@ -28,16 +30,16 @@ func (e EnvBucket) Setenv(key string, value string) { func TestRead_EmptyTimeoutConfig(t *testing.T) { defaults := NewEnvBucket() - readConfig := ReadConfig{} + readConfig := gateway.ReadConfig{} config := readConfig.Read(defaults) - if (config.readTimeout) != time.Duration(8)*time.Second { - t.Log("readTimeout incorrect") + if (config.ReadTimeout) != time.Duration(8)*time.Second { + t.Log("ReadTimeout incorrect") t.Fail() } - if (config.writeTimeout) != time.Duration(8)*time.Second { - t.Log("writeTimeout incorrect") + if (config.WriteTimeout) != time.Duration(8)*time.Second { + t.Log("WriteTimeout incorrect") t.Fail() } } @@ -47,15 +49,15 @@ func TestRead_ReadAndWriteTimeoutConfig(t *testing.T) { defaults.Setenv("read_timeout", "10") defaults.Setenv("write_timeout", "60") - readConfig := ReadConfig{} + readConfig := gateway.ReadConfig{} config := readConfig.Read(defaults) - if (config.readTimeout) != time.Duration(10)*time.Second { - t.Logf("readTimeout incorrect, got: %d\n", config.readTimeout) + if (config.ReadTimeout) != time.Duration(10)*time.Second { + t.Logf("ReadTimeout incorrect, got: %d\n", config.ReadTimeout) t.Fail() } - if (config.writeTimeout) != time.Duration(60)*time.Second { - t.Logf("writeTimeout incorrect, got: %d\n", config.writeTimeout) + if (config.WriteTimeout) != time.Duration(60)*time.Second { + t.Logf("WriteTimeout incorrect, got: %d\n", config.WriteTimeout) t.Fail() } }