diff options
author | Alexander Polcyn <apolcyn@google.com> | 2018-03-06 16:16:57 -0800 |
---|---|---|
committer | Alexander Polcyn <apolcyn@google.com> | 2018-03-27 11:14:21 -0700 |
commit | a803c0340a54a97ed4b20cdd968f09b2b376b484 (patch) | |
tree | 76e9d91647ce0ca795c17e64681c9e8249602835 /test/distrib | |
parent | 8327acd9a23d80e979eb890b71a53966c3509a6d (diff) |
Remove source code and the grpc_c.so file that was built as a local binary from the ruby
binary packages
Diffstat (limited to 'test/distrib')
-rwxr-xr-x | test/distrib/ruby/run_distrib_test.sh | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/test/distrib/ruby/run_distrib_test.sh b/test/distrib/ruby/run_distrib_test.sh index 99fb873589..cb2eb1ff7d 100755 --- a/test/distrib/ruby/run_distrib_test.sh +++ b/test/distrib/ruby/run_distrib_test.sh @@ -35,3 +35,24 @@ gem generate_index --directory "${GEM_SOURCE}" bundle install bundle exec ./distribtest.rb + +# Attempt to repro https://github.com/google/protobuf/issues/4210. +# TODO: This sanity check only works for linux-based distrib tests and for +# binary gRPC packages. It will need to be ran conditionally if this test script is +# used for other types of distrib tests. +INSTALLATION_DIR="$(gem env | grep '\- INSTALLATION DIRECTORY' | awk '{ print $4 }')" +if [[ "$(find "$INSTALLATION_DIR" -name 'grpc_c.so' | wc -l)" == 0 ]]; then + echo "Sanity check failed. The gRPC package is not installed in $INSTALLATION_DIR." + exit 1 +fi +LIBRUBY_DEPENDENCY_EXISTS="$(find "$INSTALLATION_DIR" -name 'grpc_c.so' -exec ldd {} \; | grep -c 'libruby')" || true +if [[ "$LIBRUBY_DEPENDENCY_EXISTS" != 0 ]]; then + echo "A grpc_c.so file in this binary gRPC package is dynamically linked to libruby." +fi +DEPENDENCY_NOT_FOUND="$(find "$INSTALLATION_DIR" -name 'grpc_c.so' -exec ldd {} \; | grep -c 'not found')" || true +if [[ "$DEPENDENCY_NOT_FOUND" != 0 ]]; then + echo "A grpc_c.so file in this binary gRPC package has an non-portable dependency." +fi +if [ "$LIBRUBY_DEPENDENCY_EXISTS" != 0 ] || [ "$DEPENDENCY_NOT_FOUND" != 0 ]; then + exit 1 +fi |