#!/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"