forked from NationTech/harmony
- Adds functionality to download, install, and manage k3d clusters. - Includes methods for downloading the latest release, creating clusters, and verifying cluster existence. - Implements `ensure_k3d_installed`, `get_latest_release_tag`, `download_latest_release`, `is_k3d_installed`, `verify_cluster_exists`, `create_cluster` and `create_kubernetes_client`. - Provides a `get_client` method to access the Kubernetes client. - Includes unit tests for download and installation. - Adds handling for different operating systems. - Improves error handling and logging. - Introduces a `K3d` struct to encapsulate k3d cluster management logic. - Adds the ability to specify the cluster name during K3d initialization.
39 lines
1.1 KiB
TOML
39 lines
1.1 KiB
TOML
[package]
|
|
name = "harmony"
|
|
edition = "2024"
|
|
version.workspace = true
|
|
readme.workspace = true
|
|
license.workspace = true
|
|
|
|
[dependencies]
|
|
libredfish = "0.1.1"
|
|
reqwest = { version = "0.11", features = ["blocking", "json"] }
|
|
russh = "0.45.0"
|
|
rust-ipmi = "0.1.1"
|
|
semver = "1.0.23"
|
|
serde = { version = "1.0.209", features = ["derive"] }
|
|
serde_json = "1.0.127"
|
|
tokio = { workspace = true }
|
|
derive-new = { workspace = true }
|
|
log = { workspace = true }
|
|
env_logger = { workspace = true }
|
|
async-trait = { workspace = true }
|
|
cidr = { workspace = true }
|
|
opnsense-config = { path = "../opnsense-config" }
|
|
opnsense-config-xml = { path = "../opnsense-config-xml" }
|
|
harmony_macros = { path = "../harmony_macros" }
|
|
harmony_types = { path = "../harmony_types" }
|
|
uuid = { workspace = true }
|
|
url = { workspace = true }
|
|
kube = { workspace = true }
|
|
k8s-openapi = { workspace = true }
|
|
serde_yaml = { workspace = true }
|
|
http = { workspace = true }
|
|
serde-value = { workspace = true }
|
|
inquire.workspace = true
|
|
helm-wrapper-rs = "0.4.0"
|
|
non-blank-string-rs = "1.0.4"
|
|
k3d-rs = { path = "../k3d" }
|
|
directories = "6.0.0"
|
|
lazy_static = "1.5.0"
|