- 13 commands with full gRPC implementations: service, train, tune, model, trade, broker, agent, data, risk, config, cluster, auth, backtest - Streaming support: train logs --follow, broker executions --follow - --json output on every command via OutputFormat/HumanReadable - Fix web-gateway monitoring URL default (50057 → 50051, API Gateway) - Rewire 7 remaining build.rs to consolidated proto/ root (web-gateway, backtesting_service, training_uploader, 3 test crates, e2e) - Fix web-gateway ml_training.proto new fields (mode, max_epochs, resume) - 75 fxt tests + 139 web-gateway tests, 0 clippy warnings, workspace clean Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
34 lines
1.2 KiB
Rust
34 lines
1.2 KiB
Rust
use std::io::Result;
|
|
|
|
fn main() -> Result<()> {
|
|
// Build gRPC service definitions for E2E test clients (Tonic 0.14+)
|
|
tonic_prost_build::configure()
|
|
.build_server(false) // We only need clients for E2E tests
|
|
.build_client(true)
|
|
.out_dir("src/proto")
|
|
// Suppress warnings in generated code
|
|
.server_mod_attribute(".", "#[allow(unused_qualifications)]")
|
|
.client_mod_attribute(".", "#[allow(unused_qualifications)]")
|
|
.compile_protos(
|
|
&[
|
|
"../../proto/trading.proto",
|
|
"../../proto/config.proto",
|
|
"../../proto/risk.proto",
|
|
"../../proto/ml_training.proto",
|
|
],
|
|
&["../../proto"],
|
|
)?;
|
|
|
|
// Build TLI protos separately (backtesting service uses TLI proto)
|
|
tonic_prost_build::configure()
|
|
.build_server(false)
|
|
.build_client(true)
|
|
.out_dir("src/proto")
|
|
.server_mod_attribute(".", "#[allow(unused_qualifications)]")
|
|
.client_mod_attribute(".", "#[allow(unused_qualifications)]")
|
|
.compile_protos(&["../../proto/fxt_trading.proto"], &["../../proto"])?;
|
|
|
|
println!("cargo:rerun-if-changed=../../proto/");
|
|
Ok(())
|
|
}
|