Skip to content

Commit

Permalink
Merge pull request #7592 from filecoin-project/feat/wait-api-flags
Browse files Browse the repository at this point in the history
add timeout flag to wait-api command
  • Loading branch information
magik6k authored Nov 4, 2021
2 parents 6056858 + 60b3ae2 commit 40d5c6f
Show file tree
Hide file tree
Showing 3 changed files with 26 additions and 6 deletions.
26 changes: 22 additions & 4 deletions cli/wait.go
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package cli

import (
"context"
"fmt"
"time"

Expand All @@ -10,8 +11,22 @@ import (
var WaitApiCmd = &cli.Command{
Name: "wait-api",
Usage: "Wait for lotus api to come online",
Flags: []cli.Flag{
&cli.DurationFlag{
Name: "timeout",
Usage: "duration to wait till fail",
Value: time.Second * 30,
},
},
Action: func(cctx *cli.Context) error {
for i := 0; i < 30; i++ {
ctx := ReqContext(cctx)
ctx, cancel := context.WithTimeout(ctx, cctx.Duration("timeout"))
defer cancel()
for {
if ctx.Err() != nil {
break
}

api, closer, err := GetAPI(cctx)
if err != nil {
fmt.Printf("Not online yet... (%s)\n", err)
Expand All @@ -20,15 +35,18 @@ var WaitApiCmd = &cli.Command{
}
defer closer()

ctx := ReqContext(cctx)

_, err = api.Version(ctx)
if err != nil {
return err
}

return nil
}
return fmt.Errorf("timed out waiting for api to come online")

if ctx.Err() == context.DeadlineExceeded {
return fmt.Errorf("timed out waiting for api to come online")
}

return ctx.Err()
},
}
3 changes: 2 additions & 1 deletion documentation/en/cli-lotus-miner.md
Original file line number Diff line number Diff line change
Expand Up @@ -590,7 +590,8 @@ CATEGORY:
DEVELOPER
OPTIONS:
--help, -h show help (default: false)
--timeout value duration to wait till fail (default: 30s)
--help, -h show help (default: false)
```

Expand Down
3 changes: 2 additions & 1 deletion documentation/en/cli-lotus.md
Original file line number Diff line number Diff line change
Expand Up @@ -2450,7 +2450,8 @@ CATEGORY:
DEVELOPER
OPTIONS:
--help, -h show help (default: false)
--timeout value duration to wait till fail (default: 30s)
--help, -h show help (default: false)
```

Expand Down

0 comments on commit 40d5c6f

Please sign in to comment.