[package]
name = "openstack_cli"
version = "0.7.2"
authors = [
"Artem Goncharov (gtema)",
]
description = "OpenStack client rewritten in Rust"
categories = ["command-line-interface"]
rust-version.workspace = true
edition.workspace = true
license.workspace = true
homepage.workspace = true
repository.workspace = true
[lib]
bench = false
[[bin]]
name = "osc"
path = "src/bin/osc.rs"
test = false
bench = false
[features]
default = [
"openstack_sdk/async",
"block_storage",
"compute",
"identity",
"image",
"load_balancer",
"network",
"object_store"
]
block_storage = ["openstack_sdk/block_storage"]
compute = ["openstack_sdk/compute"]
identity = ["openstack_sdk/identity"]
image = ["openstack_sdk/image"]
load_balancer = ["openstack_sdk/load_balancer"]
network = ["openstack_sdk/network"]
object_store = ["openstack_sdk/object_store"]
[dependencies]
better-panic = { workspace = true }
bytes = {workspace = true}
clap = { workspace = true, features = ["color", "derive", "env"] }
clap_complete = { workspace = true }
cli-table = "^0.4"
color-eyre = { workspace = true }
dialoguer = { workspace = true, features=["fuzzy-select"] }
eyre = { version = "^0.6" }
http = { workspace = true }
human-panic = { workspace = true }
json-patch = { workspace = true }
openstack_sdk = { path="../openstack_sdk", version = "^0.11", default-features = false, features = ["async", "identity"] }
indicatif = "^0.17"
regex = "^1.10"
reqwest = { workspace = true }
serde = { workspace = true }
serde_json = {workspace = true}
strip-ansi-escapes = { workspace = true }
structable_derive = { path = "../structable_derive", version = "^0.1" }
tokio = { workspace = true, features = ["fs", "macros", "net", "sync", "rt-multi-thread", "io-std"]}
tokio-util = {workspace = true}
thiserror = { workspace = true }
tracing = { workspace = true}
tracing-subscriber = { version = "^0.3" }
url = { workspace = true }
[dev-dependencies]
assert_cmd = "^2.0"
file_diff = "^1.0"
rand = "^0.8"
tempfile = "^3.12"
[[test]]
name = "functional"
path = "tests/main.rs"
test = false