mirror of https://github.com/jetkvm/kvm.git
45 lines
1.2 KiB
Bash
Executable File
45 lines
1.2 KiB
Bash
Executable File
#!/bin/bash
|
|
# Generate gRPC code from proto files
|
|
|
|
set -e
|
|
|
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
PROJECT_ROOT="$(cd "$SCRIPT_DIR/.." && pwd)"
|
|
|
|
cd "$PROJECT_ROOT"
|
|
|
|
# Check if protoc is installed
|
|
if ! command -v protoc &> /dev/null; then
|
|
echo "Error: protoc is not installed"
|
|
echo "Install it with:"
|
|
echo " sudo apt-get install protobuf-compiler # Debian/Ubuntu"
|
|
echo " brew install protobuf # macOS"
|
|
exit 1
|
|
fi
|
|
|
|
# Check if protoc-gen-go is installed
|
|
if ! command -v protoc-gen-go &> /dev/null; then
|
|
echo "Error: protoc-gen-go is not installed"
|
|
echo "Install it with: go install google.golang.org/protobuf/cmd/protoc-gen-go@latest"
|
|
exit 1
|
|
fi
|
|
|
|
# Check if protoc-gen-go-grpc is installed
|
|
if ! command -v protoc-gen-go-grpc &> /dev/null; then
|
|
echo "Error: protoc-gen-go-grpc is not installed"
|
|
echo "Install it with: go install google.golang.org/grpc/cmd/protoc-gen-go-grpc@latest"
|
|
exit 1
|
|
fi
|
|
|
|
# Generate code
|
|
echo "Generating gRPC code from proto files..."
|
|
protoc \
|
|
--go_out=. \
|
|
--go_opt=paths=source_relative \
|
|
--go-grpc_out=. \
|
|
--go-grpc_opt=paths=source_relative \
|
|
internal/native/proto/native.proto
|
|
|
|
echo "Done!"
|
|
|