| #!/bin/bash |
| set -e |
| |
| cd "$(dirname "$0")/.." |
| |
| tmpdir="$(mktemp -d)" |
| curl -Ls https://github.com/grpc/grpc-proto/archive/master.tar.gz | tar xz -C "$tmpdir" |
| base="$tmpdir/grpc-proto-master" |
| |
| # Copy protos in 'src/main/proto' from grpc-proto for these projects |
| for project in alts grpclb services rls interop-testing; do |
| while read -r proto; do |
| [ -f "$base/$proto" ] && cp "$base/$proto" "$project/src/main/proto/$proto" |
| echo "$proto" |
| done < <(cd "$project/src/main/proto" && find . -name "*.proto") |
| done | sort > "$tmpdir/grpc-java.lst" |
| |
| (cd "$base" && find . -name "*.proto") | sort > "$tmpdir/base.lst" |
| echo "Files synced:" |
| comm -12 "$tmpdir/grpc-java.lst" "$tmpdir/base.lst" |
| |
| echo |
| echo "Files in grpc-proto not synced:" |
| comm -13 "$tmpdir/grpc-java.lst" "$tmpdir/base.lst" |
| |
| echo |
| echo "Files in grpc-java not synced:" |
| comm -23 "$tmpdir/grpc-java.lst" "$tmpdir/base.lst" |
| |
| rm -r "$tmpdir" |