AVRO-3222: Fix ruby interop scripts (#1353)

diff --git a/build.sh b/build.sh
index 0a5f158..231a20e 100755
--- a/build.sh
+++ b/build.sh
@@ -108,7 +108,7 @@
       #(cd lang/c++; make interop-data-generate)
       (cd lang/csharp; ./build.sh interop-data-generate)
       (cd lang/js; ./build.sh interop-data-generate)
-      (cd lang/ruby; rake generate_interop)
+      (cd lang/ruby; ./build.sh interop-data-generate)
       (cd lang/php; ./build.sh interop-data-generate)
       (cd lang/perl; ./build.sh interop-data-generate)
 
@@ -119,7 +119,7 @@
       #(cd lang/c++; make interop-data-test)
       (cd lang/csharp; ./build.sh interop-data-test)
       (cd lang/js; ./build.sh interop-data-test)
-      (cd lang/ruby; rake interop)
+      (cd lang/ruby; ./build.sh interop-data-test)
       (cd lang/php; ./build.sh test-interop)
       (cd lang/perl; ./build.sh interop-data-test)
 
diff --git a/lang/ruby/build.sh b/lang/ruby/build.sh
index fc945b2..db74236 100755
--- a/lang/ruby/build.sh
+++ b/lang/ruby/build.sh
@@ -38,6 +38,14 @@
       bundle exec rubocop
       ;;
 
+    interop-data-generate)
+      bundle exec rake generate_interop
+      ;;
+
+    interop-data-test)
+      bundle exec rake interop
+      ;;
+
     test)
       bundle exec rake test
       ;;
@@ -57,7 +65,7 @@
       ;;
 
     *)
-      echo "Usage: $0 {lint|test|dist|clean}"
+      echo "Usage: $0 {clean|dist|interop-data-generate|interop-data-test|lint|test}"
       exit 1
   esac
 done
diff --git a/share/test/interop/bin/test_rpc_interop.sh b/share/test/interop/bin/test_rpc_interop.sh
index 630c389..619d2fe 100755
--- a/share/test/interop/bin/test_rpc_interop.sh
+++ b/share/test/interop/bin/test_rpc_interop.sh
@@ -21,6 +21,8 @@
 
 VERSION=$(<share/VERSION.txt)
 
+export GEM_HOME="$PWD/lang/ruby/.gem/"
+
 java_tool() {
   java -jar "lang/java/tools/target/avro-tools-$VERSION.jar" "$@"
 }