-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCargo.toml
More file actions
54 lines (51 loc) · 2.31 KB
/
Copy pathCargo.toml
File metadata and controls
54 lines (51 loc) · 2.31 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
# agentctl workspace — the Kubernetes control plane for fleets of conformant agents.
#
# Rust for every component, on the `kube-rs` ecosystem, in one Cargo workspace. The
# data plane is ANY agent that conforms to the Agent Control Contract (see
# `contract/`); `agentd` is the reference implementation, never a dependency.
[workspace]
resolver = "2"
members = [
"crates/agent-contract-client",
"crates/agent-api",
"crates/agentctl-operator",
"crates/agentctl-crdgen",
"crates/agentctl-cli",
"crates/mock-agent",
"crates/agentctl-apiserver",
"crates/agentctl-gateway",
"crates/agentctl-modelgateway",
"crates/agentctl-mcpgateway",
"crates/agentctl-admission",
"crates/agentctl-telemetry",
"crates/agentctl-coordination",
"crates/agentctl-scaler",
]
# The end-to-end + scale-benchmark harness is DELIBERATELY
# excluded from the workspace: it is a cluster-driving tool (kube-rs + kubectl +
# helm shell-outs) whose binaries assert against a live cluster. Keeping it out of
# `[workspace].members` means `cargo test --workspace` never compiles or runs it,
# so the default test run stays hermetic and requires NO cluster. Build it on its
# own with `cargo build` from `crates/agentctl-e2e/` (it resolves as a standalone
# package against this same `[workspace.package]`/path deps via the exclude rule).
exclude = [
"crates/agentctl-e2e",
]
[workspace.package]
edition = "2021"
rust-version = "1.89" # resolved deps (enum-ordinalize 1.89, kube 4.0.0 1.88) require it
license = "Apache-2.0"
repository = "https://github.com/AgentCTL-dev/source-code"
[workspace.dependencies]
serde = { version = "1", features = ["derive"] }
serde_json = "1"
# Distributed tracing (OTLP) — wired through the shared `agentctl-telemetry`
# crate. The exporter is OTLP/gRPC over tonic with NO TLS feature, so it pulls
# no aws-lc-rs/openssl (stays pure-Rust, no C toolchain — matches the rustls/ring
# stack). The OTLP layer is installed only when `OTEL_EXPORTER_OTLP_ENDPOINT` is
# set; absent it, behaviour is the fmt-only default. Versions resolve cleanly
# with the existing tracing 0.1 / tokio 1 / hyper 1 / http 1 in the lockfile.
opentelemetry = "0.32"
opentelemetry_sdk = "0.32"
opentelemetry-otlp = { version = "0.32", default-features = false, features = ["trace", "grpc-tonic"] }
tracing-opentelemetry = "0.33"