A build helper that allows you to integrate buf.build with tonic-build. Using buf.build and tonic, you can easily manage third party dependencies for proto files and generate code for your proto files in Rust. Works with both buf.yaml and buf.work.yaml.
Add the following to your Cargo.toml:
tonic-buf-build = "*"
tonic-build = "*"
Then, in your build.rs:
fn main() -> Result<(), tonic_buf_build::error::TonicBufBuildError> {
tonic_buf_build::compile_from_buf(tonic_build::configure(), None)?;
Ok(())
}
To use buf workspaces, simply call tonic_buf_build::compile_from_buf_workspace
instead.
For complete and working examples, take a look at the examples folder.