[package]
edition = "2024"
rust-version = "1.87"
name = "foundation_deployment_platform"
version = "0.1.0"
authors = ["EweStudios Consulting Limited"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Foundation deployment platform — VM/container orchestration, Docker runtime, guest infrastructure"
readme = false
keywords = [
"ewe-platform",
"deployment",
"platform",
"docker",
"testcontainers",
]
license = "Apache-2.0"
repository = "https://github.com/ewe-studios/ewe_platform"
[features]
all-providers = [
"vms",
"docker",
]
buildkit = ["foundation_deployment_docker/buildkit"]
default = [
"docker",
"wireguard",
]
docker = ["foundation_deployment_docker/docker"]
multi = [
"foundation_core/multi",
"foundation_netio/multi",
]
vms = [
"dep:ssh2",
"dep:indicatif",
"dep:tar",
"dep:flate2",
"dep:xz2",
"dep:dirs",
"dep:anyhow",
"dep:image",
"dep:libc",
"dep:toml",
"dep:fs2",
"dep:sha2",
"dep:whoami",
"dep:which",
"dep:clap",
"dep:portpicker",
"dep:foundation_sshkit",
"dep:foundation_wireguard",
]
wireguard = ["dep:foundation_wireguard"]
[lib]
name = "foundation_deployment_platform"
path = "src/lib.rs"
[[bin]]
name = "platform"
path = "src/bin/platform.rs"
required-features = ["clap"]
[[test]]
name = "config_tests"
path = "tests/config_tests.rs"
[[test]]
name = "container_integration"
path = "tests/container_integration.rs"
[[test]]
name = "docker_macro_tests"
path = "tests/docker_macro_tests.rs"
[[test]]
name = "docker_provider_tests"
path = "tests/docker_provider_tests.rs"
[[test]]
name = "error_tests"
path = "tests/error_tests.rs"
[[test]]
name = "image_build_integration"
path = "tests/image_build_integration.rs"
[[test]]
name = "network_volume_integration"
path = "tests/network_volume_integration.rs"
[[test]]
name = "runner_integration_tests"
path = "tests/runner_integration_tests.rs"
[[test]]
name = "ssh_backend_tests"
path = "tests/ssh_backend_tests.rs"
[[test]]
name = "wait_for_tests"
path = "tests/wait_for_tests.rs"
[dependencies.anyhow]
version = "1"
optional = true
[dependencies.base64]
version = "0.22"
[dependencies.chrono]
version = "0.4"
features = ["serde"]
[dependencies.clap]
version = "4"
features = ["derive"]
optional = true
[dependencies.derive_more]
version = ">=2.0"
features = ["full"]
[dependencies.dirs]
version = "6"
optional = true
[dependencies.flate2]
version = "1"
optional = true
[dependencies.foundation_core]
version = "0.0.4"
[dependencies.foundation_deployment_docker]
version = "0.1.0"
features = ["docker"]
[dependencies.foundation_errstacks]
version = "0.0.1"
[dependencies.foundation_macros]
version = "0.0.5"
[dependencies.foundation_netio]
version = "0.0.2"
features = [
"ssl",
"multi",
]
[dependencies.foundation_sshkit]
version = "0.1.0"
optional = true
[dependencies.foundation_wireguard]
version = "0.0.1"
optional = true
default-features = false
[dependencies.fs2]
version = "0.4"
optional = true
[dependencies.futures-lite]
version = "2"
[dependencies.image]
version = "0.25"
optional = true
[dependencies.indicatif]
version = "0.17"
optional = true
[dependencies.libc]
version = "0.2"
optional = true
[dependencies.portpicker]
version = "0.1"
optional = true
[dependencies.serde]
version = "1.0.197"
features = ["derive"]
[dependencies.serde_json]
version = "1.0.114"
[dependencies.sha2]
version = "0.10"
optional = true
[dependencies.ssh2]
version = "0.9"
features = ["vendored-openssl"]
optional = true
[dependencies.tar]
version = "0.4"
optional = true
[dependencies.toml]
version = "0.8"
optional = true
[dependencies.tracing]
version = "0.1"
[dependencies.which]
version = "7"
optional = true
[dependencies.whoami]
version = "2"
optional = true
[dependencies.xz2]
version = "0.1"
optional = true
[dev-dependencies.tokio]
version = "1"
features = [
"rt",
"rt-multi-thread",
"macros",
]
[dev-dependencies.tracing-subscriber]
version = "0.3"
[lints.clippy.pedantic]
level = "warn"
priority = 0
[lints.rust.missing_debug_implementations]
level = "allow"
priority = 0
[lints.rust.missing_docs]
level = "allow"
priority = 0