From e232f565e9429005758ab0132fbe5347f5790dc0 Mon Sep 17 00:00:00 2001 From: Michael Matloob Date: Tue, 2 Jan 2024 16:12:20 -0500 Subject: devtools/cmd/wait_available: add timeout flag And properly set the timeout flag in devtools/docker/compose.yaml and tests/screentest/run.sh instead of dropping it. Change-Id: I6aeee276b5fe1d01bef2b809b017a570c4f73368 Reviewed-on: https://go-review.googlesource.com/c/pkgsite/+/553535 TryBot-Result: Gopher Robot Reviewed-by: Jonathan Amsterdam Run-TryBot: Michael Matloob kokoro-CI: kokoro LUCI-TryBot-Result: Go LUCI Reviewed-by: Dan Peterson --- devtools/cmd/wait_available/main.go | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) (limited to 'devtools/cmd') diff --git a/devtools/cmd/wait_available/main.go b/devtools/cmd/wait_available/main.go index 31fa72e0..e067f5bd 100644 --- a/devtools/cmd/wait_available/main.go +++ b/devtools/cmd/wait_available/main.go @@ -8,6 +8,7 @@ package main import ( "context" + "flag" "net" "os" "os/exec" @@ -18,27 +19,29 @@ import ( "golang.org/x/pkgsite/internal/log" ) -var timeout = 15 * time.Second +var timeout = flag.Duration("timeout", 15*time.Second, "timeout duration") func main() { + flag.Parse() ctx := context.Background() - if len(os.Args) < 2 { + args := flag.Args() + if len(args) < 1 { log.Fatalf(ctx, "expected at least one argument; got none") } - hostport := os.Args[1] + hostport := args[0] var command []string - if len(os.Args) > 2 { - if os.Args[2] != "--" { - log.Fatalf(ctx, "expected second argument to be \"--\"; got %q", os.Args[2]) + if len(args) > 1 { + if args[1] != "--" { + log.Fatalf(ctx, "expected second argument to be \"--\"; got %q", args[1]) } - command = os.Args[3:] + command = args[2:] } start := time.Now() for { - if time.Since(start) > timeout { + if time.Since(start) > *timeout { break } if conn, err := net.DialTimeout("tcp", hostport, 1*time.Second); err != nil { -- cgit v1.3-5-g9baa