[package] name = "lrzcc-api" description = "Rust API server for the LRZ-specific features of the Openstack-based LRZ Compute Cloud." authors = ["Sandro-Alessio Gierens "] categories = ["web-programming"] edition = "2021" homepage = "https://github.com/LRZ-BADW/lrzcc" repository = "https://github.com/LRZ-BADW/lrzcc" exclude = [] readme = "README.md" license = "MIT" version = "0.3.0" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [lib] crate-type = ["cdylib", "rlib"] name = "lrzcc_api" path = "src/lib.rs" [[bin]] name = "lrzcc-api" path = "src/main.rs" [features] default = ["all"] all = ["accounting", "budgeting", "hello", "pricing", "quota", "resources", "user"] accounting = ["lrzcc-wire/accounting"] budgeting = ["lrzcc-wire/budgeting"] hello = ["lrzcc-wire/hello"] pricing = ["lrzcc-wire/pricing"] quota = ["lrzcc-wire/quota"] resources = ["lrzcc-wire/resources"] user = ["lrzcc-wire/user"] [dependencies] actix-web = "4" tracing = { version = "0.1", features = ["log"] } tracing-subscriber = { version = "0.3", features = ["registry", "env-filter"] } tracing-bunyan-formatter = "0.3" tracing-log = "0.2" tracing-actix-web = "0.7" secrecy = { version = "0.10.2", features = ["serde"] } anyhow = "1" serde = { version = "1.0", features = ["derive"] } serde_json = "1" serde-aux = "4" config = "0.14" tokio = { version = "1", features = ["macros", "rt-multi-thread"] } jzon = "0.12" lrzcc-wire = { version = "1.2", path = "../wire" } thiserror = "1.0" [dependencies.sqlx] version = "0.8" default-features = false features = [ "runtime-tokio", "tls-rustls", "macros", "mysql", "uuid", "chrono", "migrate", ] [dependencies.reqwest] version = "0.12" default-features = false features = ["json", "rustls-tls", "cookies"] [dev-dependencies] once_cell = "1" cargo-husky = { workspace = true } wiremock = "0.6" rand = "0.8" lrzcc-test = { path = "../test" }