dendrite_lib 0.12.0

Event Sourcing and CQRS in Rust with AxonServer.
use std::fs;

fn main() -> Result<(), Box<dyn std::error::Error>> {
    tonic_build::configure()
        .out_dir("src")
        .type_attribute(".", "#[derive(serde::Serialize, serde::Deserialize)]")
        .compile(
        &[
            "proto/axon_server/command.proto",
            "proto/axon_server/control.proto",
            "proto/axon_server/event.proto",
            "proto/axon_server/query.proto",
            "proto/axon_server/common.proto"
        ],
        &["proto/axon_server"]
    )?;
    fs::remove_file("src/google.protobuf.rs").ok();
    fs::create_dir_all("src/axon_server").ok();
    fs::rename("src/io.axoniq.axonserver.grpc.common.rs", "src/axon_server/common.rs")?;
    fs::rename("src/io.axoniq.axonserver.grpc.command.rs", "src/axon_server/command.rs")?;
    fs::rename("src/io.axoniq.axonserver.grpc.control.rs", "src/axon_server/control.rs")?;
    fs::rename("src/io.axoniq.axonserver.grpc.event.rs", "src/axon_server/event.rs")?;
    fs::rename("src/io.axoniq.axonserver.grpc.query.rs", "src/axon_server/query.rs")?;
    Ok(())
}