kurtosis-tech / kurtosis-testsuite-starter-pack

The Unlicense
1 stars 1 forks source link

Push Protobuf binding generation into the Docker step #22

Open mieubrisse opened 3 years ago

mieubrisse commented 3 years ago

As it stands, the regenerate-protobuf-output.sh isn't part of the CI build chain. This means that users need to run it locally on their machine to regenerate the Protobuf bindings. However, once we have more than one developer, this means that the output will be nondeterministic.

To fix, we need to push the Protobuf binding generation into the Docker build step; this is pain because we'll both need to generate the bindings locally (so the user's IDE doesn't get confused by missing files) as well as generate them inside the Docker image as the lib is built.

When this is done, we can get rid of https://github.com/kurtosis-tech/rust-protobuf-binding-generator

mieubrisse commented 3 years ago

For Rust, we can likely use the build.rs pre-compilation hook; Go would need to be figured out

mieubrisse commented 3 years ago

Potentially replace with buf.build

mieubrisse commented 3 years ago

Synced with Buf; this is a very strong candidate for replacing with them

mieubrisse commented 3 years ago

In the meantime, we could use https://github.com/kurtosis-tech/developer-tools/issues/27 to standardize the generation across our team