bazelbuild / bazelbuild/bazelisk

bazelisk should retry when it fails to download bazel

Open
#648 3 comments 0 reactions 0 assignees View on GitHub
help wanted P2
Dominant language
Go
Stars
2.7k
Forks
424
PR merge metrics
No merged PRs in 30d

Description

We just switched to bazelisk in our CI builds to manage our bazel versions, and are seeing flakes.

```
2024/12/16 10:38:20 Downloading [https://releases.bazel.build/8.0.0/release/bazel-8.0.0-linux-x86_64.](https://www.google.com/url?q=https://releases.bazel.build/8.0.0/release/bazel-8.0.0-linux-x86_64.&sa=D)..
2024/12/16 10:38:24 could not download Bazel: failed to download bazel: failed to download bazel: could not copy from [https://releases.bazel.build/8.0.0/release/bazel-8.0.0-linux-x86_64](https://www.google.com/url?q=https://releases.bazel.build/8.0.0/release/bazel-8.0.0-linux-x86_64&sa=D) to /root/.cache/bazelisk/downloads/_tmp/download83244553: stream error: stream ID 1; INTERNAL_ERROR; received from peer
```

If I manually retry, it succeeds, so I guess bazelisk could handle this internally.
It seems to already have retries for some types of errors, but apparently not this one.

Thanks!

Contributor guide

Open the contributing guide

Research direction

No files, tests, or entry points are named. Start by tracing Bazel download handling and the existing retry logic, then reproduce the stream error or inspect its error path. Done means transient download failures such as the reported stream error are retried and a successful manual retry is no longer required.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
cli
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.