Remove source code and the grpc_c.so file that was built as a local binary from the ruby

binary packages
pull/14634/head
Alexander Polcyn 7 years ago
parent 8327acd9a2
commit a803c0340a
  1. 6
      Rakefile
  2. 21
      test/distrib/ruby/run_distrib_test.sh
  3. 2
      tools/dockerfile/distribtest/ruby_fedora20_x64/Dockerfile
  4. 2
      tools/dockerfile/distribtest/ruby_fedora21_x64/Dockerfile
  5. 2
      tools/dockerfile/distribtest/ruby_fedora22_x64/Dockerfile
  6. 2
      tools/dockerfile/distribtest/ruby_fedora23_x64/Dockerfile

@ -23,6 +23,12 @@ end
# Add the extension compiler task
Rake::ExtensionTask.new('grpc_c', spec) do |ext|
unless RUBY_PLATFORM =~ /darwin/
# TODO: also set "no_native to true" for mac if possible. As is,
# "no_native" can only be set if the RUBY_PLATFORM doing
# cross-compilation is contained in the "ext.cross_platform" array.
ext.no_native = true
end
ext.source_pattern = '**/*.{c,h}'
ext.ext_dir = File.join('src', 'ruby', 'ext', 'grpc')
ext.lib_dir = File.join('src', 'ruby', 'lib', 'grpc')

@ -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

@ -14,6 +14,6 @@
FROM fedora:20
RUN yum clean all && yum update -y && yum install -y ruby
RUN yum clean all && yum update -y && yum install -y ruby findutils
RUN gem install bundler

@ -19,6 +19,6 @@ FROM fedora:21
# https://github.com/docker/docker/issues/10180
RUN yum install -y yum-plugin-ovl
RUN yum clean all && yum update -y && yum install -y ruby
RUN yum clean all && yum update -y && yum install -y ruby findutils
RUN gem install bundler

@ -14,6 +14,6 @@
FROM fedora:22
RUN yum clean all && yum update -y && yum install -y ruby
RUN yum clean all && yum update -y && yum install -y ruby findutils
RUN gem install bundler

@ -14,6 +14,6 @@
FROM fedora:23
RUN yum clean all && yum update -y && yum install -y ruby
RUN yum clean all && yum update -y && yum install -y ruby findutils
RUN gem install bundler

Loading…
Cancel
Save