chore: Use a local Docker builder image for Rust protobuf generation (#320)
* feat: dockerize rust protobuf generation in make and CI Agent-Logs-Url: https://github.com/GreptimeTeam/greptime-proto/sessions/6438cfba-52ed-4c85-b8fe-1268cc55755a Co-authored-by: WenyXu <32535939+WenyXu@users.noreply.github.com> * fix: unify make all and CI generation with local builder image Agent-Logs-Url: https://github.com/GreptimeTeam/greptime-proto/sessions/6438cfba-52ed-4c85-b8fe-1268cc55755a Co-authored-by: WenyXu <32535939+WenyXu@users.noreply.github.com> * fix: only use custom Docker image for rust target, go/java/cpp use protoc-all directly Agent-Logs-Url: https://github.com/GreptimeTeam/greptime-proto/sessions/6e6885ee-2919-46f5-9dc5-301c3303888d Co-authored-by: WenyXu <32535939+WenyXu@users.noreply.github.com> * chore: fix README wording and add --user flag to rust docker run Agent-Logs-Url: https://github.com/GreptimeTeam/greptime-proto/sessions/3983f532-e5e5-45e4-953d-27bc551ec13d Co-authored-by: WenyXu <32535939+WenyXu@users.noreply.github.com> * fix: make cargo/rustup dirs world-writable so --user flag works in container Agent-Logs-Url: https://github.com/GreptimeTeam/greptime-proto/sessions/1bddab48-992c-481b-937f-6698dd9cc067 Co-authored-by: WenyXu <32535939+WenyXu@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: WenyXu <32535939+WenyXu@users.noreply.github.com>
This commit is contained in:
@@ -7,7 +7,7 @@ GreptimeDB protobuf definitions and pre-generated Rust bindings.
|
||||
### Requirement
|
||||
|
||||
- Rust consumers do not need `protoc`.
|
||||
- Maintainers need [google/protobuf][protobuf] v3 to regenerate Rust bindings after `.proto` changes.
|
||||
- Maintainers need Docker to regenerate checked-in bindings after `.proto` changes.
|
||||
|
||||
### Command
|
||||
|
||||
@@ -29,7 +29,7 @@ GreptimeDB protobuf definitions and pre-generated Rust bindings.
|
||||
make java
|
||||
```
|
||||
|
||||
The compilation for Go and Java will use builder container `namely/protoc-all`.
|
||||
Rust generation uses the local builder image built from `docker/protoc-all/Dockerfile`. Go, Java, and C++ generation uses `namely/protoc-all:1.51_2` directly.
|
||||
|
||||
## Usage
|
||||
|
||||
@@ -53,7 +53,7 @@ use greptime_proto::prometheus::remote::*;
|
||||
When working in this repository, regenerate the checked-in Rust bindings after `.proto` changes with:
|
||||
|
||||
```console
|
||||
cargo run --manifest-path xtask/Cargo.toml -- generate-rust
|
||||
make rust
|
||||
```
|
||||
|
||||
### Go
|
||||
|
||||
Reference in New Issue
Block a user