28 lines
762 B
Bash
28 lines
762 B
Bash
#!/usr/bin/env bash
|
|
# Generate Go code from protobuf definitions.
|
|
# Requires: protoc, protoc-gen-go, protoc-gen-go-grpc
|
|
#
|
|
# Install tools:
|
|
# go install google.golang.org/protobuf/cmd/protoc-gen-go@latest
|
|
# go install google.golang.org/grpc/cmd/protoc-gen-go-grpc@latest
|
|
|
|
set -euo pipefail
|
|
|
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
PROJECT_ROOT="$(dirname "$SCRIPT_DIR")"
|
|
|
|
PROTO_DIR="$PROJECT_ROOT/api/proto"
|
|
OUT_DIR="$PROJECT_ROOT/internal/app/scoutfs-manager/sync/syncpb"
|
|
|
|
mkdir -p "$OUT_DIR"
|
|
|
|
protoc \
|
|
--proto_path="$PROTO_DIR" \
|
|
--go_out="$OUT_DIR" \
|
|
--go_opt=paths=source_relative \
|
|
--go-grpc_out="$OUT_DIR" \
|
|
--go-grpc_opt=paths=source_relative \
|
|
"$PROTO_DIR/sync/v1/sync.proto"
|
|
|
|
echo "Proto generation complete: $OUT_DIR"
|