bestool 0.28.0

BES Deployment tooling
Documentation
[[bin]]
name = "bestool"
path = "src/main.rs"

[build-dependencies.windows_exe_info]
features = ["manifest"]
version = "0.4.1"

[dependencies.algae-cli]
optional = true
version = "1.0.8"

[dependencies.binstalk-downloader]
features = ["hickory-dns"]
optional = true
version = "0.13.13"

[dependencies.blake3]
optional = true
version = "1.6.1"

[dependencies.boxcar]
version = "0.2.10"

[dependencies.bytes]
version = "1.10.0"

[dependencies.chrono]
version = "0.4.40"

[dependencies.clap]
features = ["cargo", "derive", "wrap_help", "env", "unicode", "string"]
version = "4.5.31"

[dependencies.clap_complete]
optional = true
version = "4.5.46"

[dependencies.clap_complete_nushell]
optional = true
version = "4.5.1"

[dependencies.ctrlc]
optional = true
version = "3.4.4"

[dependencies.detect-targets]
optional = true
version = "0.1.43"

[dependencies.dirs]
optional = true
version = "6.0.0"

[dependencies.duct]
optional = true
version = "0.13.7"

[dependencies.dunce]
optional = true
version = "1.0.5"

[dependencies.embedded-graphics]
optional = true
version = "0.8.1"

[dependencies.folktime]
optional = true
version = "0.2.1"

[dependencies.fs4]
features = ["tokio"]
optional = true
version = "0.13.0"

[dependencies.futures]
version = "0.3.30"

[dependencies.glob]
optional = true
version = "0.3.2"

[dependencies.hickory-resolver]
optional = true
version = "0.25.0-alpha.3"

[dependencies.humantime]
optional = true
version = "2.1.0"

[dependencies.indicatif]
features = ["tokio"]
optional = true
version = "0.17.9"

[dependencies.is-root]
optional = true
version = "0.1.3"

[dependencies.itertools]
optional = true
version = "0.14.0"

[dependencies.json5]
optional = true
version = "0.4.1"

[dependencies.leon]
optional = true
version = "3.0.1"

[dependencies.leon-macros]
optional = true
version = "1.0.2"

[dependencies.lloggs]
version = "1.0.1"

[dependencies.mailgun-rs]
optional = true
version = "1.0.0"

[dependencies.merkle_hash]
optional = true
version = "3.7.0"

[dependencies.miette]
features = ["fancy"]
version = "7.5.0"

[dependencies.mimalloc]
version = "0.1.41"

[dependencies.node-semver]
optional = true
version = "2.2.0"

[dependencies.pulldown-cmark]
optional = true
version = "0.13.0"

[dependencies.regex]
optional = true
version = "1.10.6"

[dependencies.reqwest]
default-features = false
features = ["default-tls", "json"]
version = "0.12.11"

[dependencies.rpi-st7789v2-driver]
features = ["miette"]
optional = true
version = "0.3.7"

[dependencies.rppal]
optional = true
version = "0.22.1"

[dependencies.serde]
features = ["derive"]
version = "1.0.218"

[dependencies.serde_json]
version = "1.0.139"

[dependencies.serde_yml]
optional = true
version = "0.0.12"

[dependencies.ssh-key]
optional = true
version = "0.6.6"

[dependencies.sysinfo]
optional = true
version = "0.33.1"

[dependencies.tempfile]
version = "3.17.1"

[dependencies.tera]
optional = true
version = "1.19.1"

[dependencies.thiserror]
version = "2.0.9"

[dependencies.tokio]
features = ["full"]
version = "1.43.0"

[dependencies.tokio-postgres]
features = ["with-chrono-0_4", "with-uuid-1"]
optional = true
version = "0.7.13"

[dependencies.tokio-util]
optional = true
version = "0.7.13"

[dependencies.tracing]
features = ["attributes"]
version = "0.1.41"

[dependencies.upgrade]
optional = true
version = "2.0.1"

[dependencies.uuid]
version = "1.15.1"

[dependencies.walkdir]
optional = true
version = "2.5.0"

[dependencies.zip]
default-features = false
features = ["time"]
optional = true
version = "2.2.3"

[dependencies.zmq]
optional = true
version = "0.10.0"

[dev-dependencies.trycmd]
version = "0.15.9"

[features]
__iti = ["dep:zmq"]
__tamanu = ["dep:dirs", "dep:glob", "dep:itertools", "dep:json5", "dep:leon-macros", "dep:leon", "dep:node-semver"]
caddy = ["download", "dep:tera"]
completions = ["dep:clap_complete", "dep:clap_complete_nushell"]
crypto = ["dep:algae-cli", "dep:blake3", "dep:merkle_hash"]
default = ["caddy", "completions", "crypto", "self-update", "ssh", "tamanu"]
download = ["dep:binstalk-downloader", "dep:detect-targets", "dep:hickory-resolver"]
file = ["dep:blake3", "dep:indicatif", "dep:tokio-util"]
iti = ["iti-battery", "iti-lcd", "iti-temperature"]
iti-battery = ["__iti", "dep:folktime", "dep:humantime", "dep:rppal"]
iti-lcd = ["__iti", "dep:ctrlc", "dep:embedded-graphics", "dep:rpi-st7789v2-driver", "dep:sysinfo"]
iti-temperature = ["__iti", "dep:duct", "dep:humantime"]
self-update = ["download", "dep:upgrade", "dep:windows-env"]
ssh = ["dep:dirs", "dep:duct", "dep:fs4", "dep:is-root", "dep:ssh-key", "dep:windows", "dep:windows-acl"]
tamanu = ["tamanu-alerts", "tamanu-backup", "tamanu-backup-configs", "tamanu-config", "tamanu-download", "tamanu-find", "tamanu-greenmask", "tamanu-psql", "tamanu-upgrade"]
tamanu-alerts = ["__tamanu", "tamanu-config", "dep:folktime", "dep:humantime", "dep:mailgun-rs", "dep:pulldown-cmark", "dep:serde_yml", "dep:sysinfo", "dep:tera", "dep:tokio-postgres", "dep:walkdir"]
tamanu-backup = ["__tamanu", "file", "tamanu-config", "tamanu-pg-common", "dep:algae-cli", "dep:duct"]
tamanu-backup-configs = ["__tamanu", "tamanu-backup", "dep:walkdir", "dep:zip"]
tamanu-config = ["__tamanu"]
tamanu-download = ["__tamanu", "download"]
tamanu-find = ["__tamanu"]
tamanu-greenmask = ["__tamanu", "tamanu-config", "tamanu-pg-common", "dep:dunce", "dep:serde_yml", "dep:walkdir"]
tamanu-pg-common = []
tamanu-psql = ["__tamanu", "tamanu-config", "tamanu-pg-common", "dep:duct", "dep:windows"]
tamanu-upgrade = ["__tamanu", "caddy", "tamanu-config", "dep:regex"]

[lib]
name = "bestool"
path = "src/lib.rs"

[package]
authors = ["Félix Saparelli <felix@passcod.name>", "BES Developers <contact@bes.au>"]
autobenches = false
autobins = false
autoexamples = false
autolib = false
autotests = false
build = "build.rs"
categories = ["command-line-utilities"]
description = "BES Deployment tooling"
edition = "2021"
keywords = ["bes", "tamanu", "tupaia"]
license = "GPL-3.0-or-later"
name = "bestool"
readme = false
repository = "https://github.com/beyondessential/bestool"
rust-version = "1.76.0"
version = "0.28.0"

[package.metadata.binstall]
pkg-fmt = "bin"
pkg-url = "https://tools.ops.tamanu.io/bestool/{ version }/{ target }/{ name }{ binary-ext }"

[target.'cfg(target_env = "musl")'.dependencies.openssl-sys]
features = ["vendored"]
version = "0.9.106"

[target.'cfg(target_os = "windows")'.dependencies.windows]
features = ["Win32_System_Console"]
optional = true
version = "0.60.0"

[target.'cfg(target_os = "windows")'.dependencies.windows-acl]
optional = true
version = "0.3.0"

[target.'cfg(target_os = "windows")'.dependencies.windows-env]
optional = true
version = "0.1.1"

[[test]]
name = "cli_tests"
path = "tests/cli_tests.rs"

[[test]]
name = "fixture_pg"
path = "tests/fixture_pg.rs"