-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathCargo.toml
More file actions
86 lines (76 loc) · 2.45 KB
/
Copy pathCargo.toml
File metadata and controls
86 lines (76 loc) · 2.45 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
[package]
name = "five_spot"
version = "0.1.1"
edition = "2021"
rust-version = "1.90"
authors = ["Erick Bourgeois<erick.bourgeois@rbccm.com>"]
description = "A cloud-native Kubernetes controller for managing machine scheduling on physical nodes"
license = "Apache-2.0"
repository = "https://github.com/RBC/5-spot"
[[bin]]
name = "5spot"
path = "src/main.rs"
[[bin]]
name = "crdgen"
path = "src/bin/crdgen.rs"
[[bin]]
name = "crddoc"
path = "src/bin/crddoc.rs"
[[bin]]
name = "auto-vex-presence"
path = "src/bin/auto_vex_presence.rs"
[[bin]]
name = "auto-vex-reachability"
path = "src/bin/auto_vex_reachability.rs"
[dependencies]
kube = { version = "3.1", features = ["runtime", "derive", "client", "ws"] }
kube-lease-manager = "0.11"
k8s-openapi = { version = "0.27", features = ["latest", "schemars"] }
tokio = { version = "1", features = ["full"] }
serde = { version = "1", features = ["derive"] }
serde_json = "1"
serde_yaml = "0.9"
anyhow = "1"
thiserror = "2"
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["env-filter", "json"] }
chrono = { version = "0.4", features = ["serde"] }
chrono-tz = "0.10"
schemars = "1"
futures = "0.3"
async-trait = "0.1"
clap = { version = "4", features = ["derive", "env"] }
prometheus = { version = "0.14", features = ["process"] }
hyper = { version = "1", features = ["full"] }
hyper-util = { version = "0.1", features = ["full"] }
http-body-util = "0.1"
tower = "0.5"
regex = "1"
lazy_static = "1.5"
# warp 0.4 made every previously-default feature opt-in. We use
# `warp::serve` for the metrics + health/readiness HTTP servers
# (src/main.rs and src/health.rs), so the `server` feature must be
# enabled explicitly.
warp = { version = "0.4", default-features = false, features = ["server"] }
toml = "1.1"
# Linux-only — used by the reclaim-agent's rung 2 netlink proc connector
# subscriber (`src/netlink_proc.rs`). The portable byte parsers in that
# module have no `nix` dep; only the actual socket / bind / send / recv
# dance does. Non-Linux builds compile the module's `Subscriber::new` to
# a stub that returns `NetlinkError::Unsupported`.
[target.'cfg(target_os = "linux")'.dependencies]
nix = { version = "0.31", default-features = false, features = ["socket", "net", "uio"] }
[[bin]]
name = "5spot-reclaim-agent"
path = "src/bin/reclaim_agent.rs"
[dev-dependencies]
tokio-test = "0.4"
mockall = "0.14"
test-log = "0.2"
tempfile = "3"
tower-test = "0.4"
http = "1"
[profile.release]
opt-level = 3
lto = true
codegen-units = 1