fullstorydev / fullstorydev/grpcurl
Emulate cURL CLI flags: --retry N --retry-all-errors
- Dominant language
- Go
- Stars
- 12.8k
- Forks
- 580
- Avg merge
- 1h 8m
- Merged PRs (30d)
- 5
Description
Feature request for your consideration.
`curl` does not retry by default, but it can be instructed to do so with the command line flags `--retry` and `--retry-all-errors`, maybe `grpcurl` should do the same or something similar.
Background: I'm doing a `docker run --detach --name MyApp MyApp`
Followed by a `docker run --network container:MyApp fullstorydev/grpcurl 127.0.0.1:50051 MyService/MyRPC`, but I get something like `Failed to dial target host "127.0.0.1:50051": dial tcp 127.0.0.1:50051: connect: connection refused` because nor the container or the app can come up as fast as the next command/script/etc.
Rather than adding an extra step to "wait for MYAPP to be ready" I rather just slap a command line flag to `grpcurl`
disclaimer:
- I know is almost impossible to keep feature parity with the real `curl`
- I know this can be accomplished in other ways, I just think it would be a "nice to have" feature
Thanks!
Contributor guide
No contributing guide indexed for this repository
Research direction
The issue names no files or tests. Start by locating grpcurl's command-line flag handling and connection setup, then define how --retry and --retry-all-errors should handle the reported connection-refused startup case; done means the CLI can reliably retry that case with documented flag behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- cli
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100