feat: download and install k3d latest release

- Implemented functionality to fetch the latest k3d release tag from GitHub.
- Added logic to determine the appropriate binary URL based on the current platform.
- Implemented downloading and saving the binary to a specified directory.
- Included unit tests to verify the download and installation process.
- Added a `K3D_BIN_FILE_NAME` constant for clarity.
- Added logging for better debugging.
This commit is contained in:
2025-04-18 23:22:37 -04:00
parent 847d84b46f
commit 15785dd219
5 changed files with 631 additions and 13 deletions

View File

@@ -15,9 +15,18 @@ env_logger = { workspace = true }
async-trait = { workspace = true }
tokio = { workspace = true }
octocrab = "0.44.0"
regex = "1.11.1"
reqwest = { version = "0.12", features = ["stream"] }
#hyper-rustls = "0.27.5"
#hyper = { version = "1", features = [ "client" ] }
#hyper = { version = "1", features = ["full"] }
#http-body-util = "0.1"
#hyper-util = { version = "0.1", features = ["full"] }
url.workspace = true
sha2 = "0.10.8"
futures-util = "0.3.31"
#bytes = "1.10.1"
#serde_json = "1.0.133"
#tokio-util = { version = "0.7.13", features = [ "codec" ] }
#tokio-stream = "0.1.17"
[dev-dependencies]
pretty_assertions = "1.4.1"