bazel-contrib / bazel-contrib/multitool
Running update when a github release page has multiple types of releases causes errors
- Dominant language
- Rust
- Stars
- 6
- Forks
- 2
- PR merge metrics
- No merged PRs in 30d
Description
### Replicating
Using a lock file as follows
```
{
"$schema": "https://raw.githubusercontent.com/theoremlp/rules_multitool/main/lockfile.schema.json",
"kubebuilder_tools_etcd": {
"binaries": [
{
"kind": "archive",
"url": "https://github.com/kubernetes-sigs/controller-tools/releases/download/envtest-v1.31.0/envtest-v1.31.0-darwin-arm64.tar.gz",
"file": "controller-tools/envtest/etcd",
"sha256": "",
"os": "macos",
"cpu": "arm64"
},
{
"kind": "archive",
"url": "https://github.com/kubernetes-sigs/controller-tools/releases/download/envtest-v1.31.0/envtest-v1.31.0-darwin-amd64.tar.gz",
"file": "controller-tools/envtest/etcd",
"sha256": "",
"os": "macos",
"cpu": "x86_64"
}
]
}
}
```
Then running the update command results in the following error:
```
Encountered error while attempting to update kubebuilder_tools_etcd: HTTP status client error (404 Not Found) for url (https://github.com/kubernetes-sigs/controller-tools/releases/download/v0.16.5/0.16.5-darwin-arm64.tar.gz)
Encountered error while attempting to update kubebuilder_tools_etcd: HTTP status client error (404 Not Found) for url (https://github.com/kubernetes-sigs/controller-tools/releases/download/v0.16.5/0.16.5-darwin-amd64.tar.gz)
```
Since there are multiple types of releases on the releases page https://github.com/kubernetes-sigs/controller-tools/releases
### Expected
Having some ability to filter the releases on the releases page would allow the update command to pull the correct archive
Contributor guide
Research direction
Start with the update command and the lock file example, then inspect how the command derives download URLs from the GitHub controller-tools releases page. Reproduce the two 404 errors using the supplied lock file and release URL. Done means the update command can select the intended release type and retrieve the matching archives.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- github, rust
- Domain
- cli
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100