use std::path::Path;
fn main() {
let manifest = std::env::var("CARGO_MANIFEST_DIR").expect("CARGO_MANIFEST_DIR");
let spec = Path::new(&manifest).join("../../artefacts/cloud_providers/cloudflare/openapi.json");
if !spec.exists() {
return;
}
println!("cargo:rerun-if-changed={}", spec.display());
println!("cargo:rerun-if-changed=build.rs");
let codegen = foundation_codegentools::generate()
.provider("cloudflare")
.spec(&spec)
.crate_dir(&manifest);
match codegen.check() {
Ok(()) => {}
Err(foundation_codegentools::CodegenError::Stale { .. }) => {
codegen.write().expect("regenerate cloudflare's API surface");
println!("cargo:warning=regenerated cloudflare's src/generated/ from {}", spec.display());
}
Err(e) => panic!("{e}"),
}
}