cli: avoid data-dir initialization for version; create db parent dirs; redact generated passwords in CLI output
- Prevent 'nx9-wg version' from creating data directories by avoiding database initialization. - Create parent directories when an explicit --database path is provided. - Redact printed generated administrator passwords; announce file path or redact instead. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
commit
2ac6c81dfe
140 files changed
+31342
No files matched your search
+103
@@ -0,0 +1,103 @@
|
||||
[workspace]
|
||||
members = [
|
||||
"crates/nx9-wg-core",
|
||||
"crates/nx9-wg-db",
|
||||
"crates/nx9-wireguard",
|
||||
"crates/nx9-wg-network",
|
||||
"crates/nx9-wg-api",
|
||||
"crates/nx9-wg-ui",
|
||||
]
|
||||
|
||||
[workspace.package]
|
||||
version = "0.1.0"
|
||||
edition = "2024"
|
||||
|
||||
[workspace.dependencies]
|
||||
# Internal crates
|
||||
nx9-wg-core = { path = "crates/nx9-wg-core" }
|
||||
nx9-wg-db = { path = "crates/nx9-wg-db" }
|
||||
nx9-wireguard = { path = "crates/nx9-wireguard" }
|
||||
nx9-wg-network = { path = "crates/nx9-wg-network" }
|
||||
nx9-wg-api = { path = "crates/nx9-wg-api" }
|
||||
nx9-wg-ui = { path = "crates/nx9-wg-ui" }
|
||||
|
||||
# Serialization
|
||||
serde = { version = "1", features = ["derive"] }
|
||||
serde_json = "1"
|
||||
toml = "0.8"
|
||||
|
||||
# Async runtime
|
||||
tokio = { version = "1", features = ["full"] }
|
||||
|
||||
# Date/time
|
||||
chrono = { version = "0.4", features = ["serde"] }
|
||||
|
||||
# Identifiers
|
||||
uuid = { version = "1", features = ["v4", "serde"] }
|
||||
|
||||
# Errors
|
||||
thiserror = "2"
|
||||
|
||||
# Observability
|
||||
tracing = "0.1"
|
||||
tracing-subscriber = { version = "0.3", features = ["env-filter", "json"] }
|
||||
|
||||
# Crypto
|
||||
argon2 = "0.5"
|
||||
x25519-dalek = { version = "2", features = ["static_secrets"] }
|
||||
rand = "0.8"
|
||||
base64 = "0.22"
|
||||
sha2 = "0.10"
|
||||
|
||||
# Network types
|
||||
ipnet = { version = "2", features = ["serde"] }
|
||||
|
||||
# CLI
|
||||
clap = { version = "4", features = ["derive", "env", "string"] }
|
||||
|
||||
# HTTP
|
||||
axum = { version = "0.8", features = ["ws", "macros"] }
|
||||
tower = "0.5"
|
||||
tower-http = { version = "0.7", features = ["trace", "cors", "compression-gzip", "timeout", "fs"] }
|
||||
|
||||
# Database
|
||||
sqlx = { version = "0.8", features = ["runtime-tokio", "sqlite", "macros", "migrate", "chrono", "uuid"] }
|
||||
|
||||
# QR
|
||||
qrcode = "0.14"
|
||||
image = "0.25"
|
||||
|
||||
# Dev
|
||||
tempfile = "3"
|
||||
|
||||
# ── Root binary crate ──────────────────────────────────────────────────
|
||||
|
||||
[package]
|
||||
name = "nx9-wg"
|
||||
version.workspace = true
|
||||
edition.workspace = true
|
||||
description = "Native Rust WireGuard management application for the NX9 ecosystem"
|
||||
|
||||
[[bin]]
|
||||
name = "nx9-wg"
|
||||
path = "src/main.rs"
|
||||
|
||||
[dependencies]
|
||||
nx9-wg-core.workspace = true
|
||||
nx9-wg-db.workspace = true
|
||||
nx9-wg-api.workspace = true
|
||||
nx9-wireguard.workspace = true
|
||||
nx9-wg-network.workspace = true
|
||||
tokio.workspace = true
|
||||
tracing.workspace = true
|
||||
tracing-subscriber.workspace = true
|
||||
clap.workspace = true
|
||||
axum.workspace = true
|
||||
chrono.workspace = true
|
||||
serde.workspace = true
|
||||
serde_json.workspace = true
|
||||
uuid.workspace = true
|
||||
base64.workspace = true
|
||||
|
||||
[dev-dependencies]
|
||||
tempfile.workspace = true
|
||||
Reference in new issue
Block a user