databuild/databuild/service/openapi_spec_generator.rs
Stuart Axelbrooke 57a0238f09
Some checks are pending
/ setup (push) Waiting to run
Add missing file
2025-07-12 08:14:55 -07:00

35 lines
No EOL
1 KiB
Rust

use databuild::service::BuildGraphService;
use std::collections::HashMap;
#[tokio::main]
async fn main() {
// Disable logging to keep output clean
log::set_max_level(log::LevelFilter::Off);
// Create a minimal service instance for OpenAPI generation
let service = match BuildGraphService::new(
"sqlite://:memory:", // Use in-memory database for spec generation
"//example:graph".to_string(),
"job_lookup".to_string(),
HashMap::new(),
).await {
Ok(service) => service,
Err(e) => {
eprintln!("Failed to create service for OpenAPI generation: {}", e);
std::process::exit(1);
}
};
// Generate and print OpenAPI spec
let spec = service.generate_openapi_spec();
match serde_json::to_string_pretty(&spec) {
Ok(json) => {
println!("{}", json);
std::process::exit(0);
}
Err(e) => {
eprintln!("Failed to serialize OpenAPI spec: {}", e);
std::process::exit(1);
}
}
}