Skip to content

Commit 0d6a958

Browse files
committed
internal/middleware: move the timeout middleware to its own package
This removes the direct dependency from cmd/pkgsite to the middleware package. The middleware package has a lot of dependencies but most middlewares are not used by cmd/pkgsite. There are still some middlewares used by internal/frontend so the indirect dependency still exists. For #61399 Change-Id: I09eee46b2ff13e112d24df62073074eb5aa3e901 Reviewed-on: https://go-review.googlesource.com/c/pkgsite/+/511315 Run-TryBot: Michael Matloob <[email protected]> Reviewed-by: Jamal Carvalho <[email protected]> kokoro-CI: kokoro <[email protected]> TryBot-Result: Gopher Robot <[email protected]>
1 parent 0bc4b0e commit 0d6a958

File tree

5 files changed

+9
-7
lines changed

5 files changed

+9
-7
lines changed

cmd/frontend/main.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ import (
2424
"golang.org/x/pkgsite/internal/frontend"
2525
"golang.org/x/pkgsite/internal/log"
2626
"golang.org/x/pkgsite/internal/middleware"
27+
"golang.org/x/pkgsite/internal/middleware/timeout"
2728
"golang.org/x/pkgsite/internal/postgres"
2829
"golang.org/x/pkgsite/internal/proxy"
2930
"golang.org/x/pkgsite/internal/queue"
@@ -188,7 +189,7 @@ func main() {
188189
middleware.Experiment(experimenter),
189190
middleware.Panic(panicHandler),
190191
ermw,
191-
middleware.Timeout(54*time.Second),
192+
timeout.Timeout(54*time.Second),
192193
)
193194
addr := cfg.HostAddr(*hostAddr)
194195
log.Infof(ctx, "Listening on addr %s", addr)

cmd/pkgsite/main.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@ import (
7272
"golang.org/x/pkgsite/internal/fetchdatasource"
7373
"golang.org/x/pkgsite/internal/frontend"
7474
"golang.org/x/pkgsite/internal/log"
75-
"golang.org/x/pkgsite/internal/middleware"
75+
"golang.org/x/pkgsite/internal/middleware/timeout"
7676
"golang.org/x/pkgsite/internal/proxy"
7777
"golang.org/x/pkgsite/internal/source"
7878
"golang.org/x/pkgsite/internal/stdlib"
@@ -170,7 +170,7 @@ func main() {
170170

171171
router := http.NewServeMux()
172172
server.Install(router.Handle, nil, nil)
173-
mw := middleware.Timeout(54 * time.Second)
173+
mw := timeout.Timeout(54 * time.Second)
174174
srv := &http.Server{Addr: addr, Handler: mw(router)}
175175
die("%v", srv.Serve(ln))
176176
}

cmd/worker/main.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ import (
2323
"golang.org/x/pkgsite/internal/index"
2424
"golang.org/x/pkgsite/internal/log"
2525
"golang.org/x/pkgsite/internal/middleware"
26+
mtimeout "golang.org/x/pkgsite/internal/middleware/timeout"
2627
"golang.org/x/pkgsite/internal/proxy"
2728
"golang.org/x/pkgsite/internal/queue/gcpqueue"
2829
"golang.org/x/pkgsite/internal/source"
@@ -142,7 +143,7 @@ func main() {
142143

143144
mw := middleware.Chain(
144145
middleware.RequestLog(cmdconfig.Logger(ctx, cfg, "worker-log")),
145-
middleware.Timeout(time.Duration(timeout)*time.Minute),
146+
mtimeout.Timeout(time.Duration(timeout)*time.Minute),
146147
iap,
147148
middleware.Experiment(experimenter),
148149
)

internal/middleware/timeout.go renamed to internal/middleware/timeout/timeout.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
// Use of this source code is governed by a BSD-style
33
// license that can be found in the LICENSE file.
44

5-
package middleware
5+
package timeout
66

77
import (
88
"context"
@@ -12,7 +12,7 @@ import (
1212

1313
// Timeout returns a new Middleware that times out each request after the given
1414
// duration.
15-
func Timeout(d time.Duration) Middleware {
15+
func Timeout(d time.Duration) func(http.Handler) http.Handler {
1616
return func(h http.Handler) http.Handler {
1717
return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
1818
ctx, cancel := context.WithTimeout(r.Context(), d)

internal/middleware/timeout_test.go renamed to internal/middleware/timeout/timeout_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
// Use of this source code is governed by a BSD-style
33
// license that can be found in the LICENSE file.
44

5-
package middleware
5+
package timeout
66

77
import (
88
"fmt"

0 commit comments

Comments
 (0)