diff --git a/Rakefile b/Rakefile index 98d6aef69cd..bc0fb496edf 100755 --- a/Rakefile +++ b/Rakefile @@ -144,7 +144,7 @@ task 'gem:native', [:plat] do |t, args| verbose = ENV['V'] || '0' grpc_config = ENV['GRPC_CONFIG'] || 'opt' - ruby_cc_versions = ['3.2.0', '3.1.0', '3.0.0', '2.7.0'].join(':') + ruby_cc_versions = ['3.2.0', '3.1.0', '3.0.0', '2.7.0', '2.6.10'].join(':') selected_plat = "#{args[:plat]}" # use env variable to set artifact build paralellism diff --git a/tools/dockerfile/distribtest/ruby_stretch_x64_ruby_2_6.current_version b/tools/dockerfile/distribtest/ruby_stretch_x64_ruby_2_6.current_version new file mode 100644 index 00000000000..266b98f7ba2 --- /dev/null +++ b/tools/dockerfile/distribtest/ruby_stretch_x64_ruby_2_6.current_version @@ -0,0 +1 @@ +us-docker.pkg.dev/grpc-testing/testing-images-public/ruby_stretch_x64_ruby_2_6:4b215aa6d7029aaa63679881d54b8ca620e2d775@sha256:b9cc471908386767a9dbf3baffb7a67aa93c4cd1057c4ba8572c691c8ba4b3e6 \ No newline at end of file diff --git a/tools/dockerfile/distribtest/ruby_stretch_x64_ruby_2_6/Dockerfile b/tools/dockerfile/distribtest/ruby_stretch_x64_ruby_2_6/Dockerfile new file mode 100644 index 00000000000..eea189f3c97 --- /dev/null +++ b/tools/dockerfile/distribtest/ruby_stretch_x64_ruby_2_6/Dockerfile @@ -0,0 +1,42 @@ +# Copyright 2015 gRPC authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +FROM debian:stretch + +# Install Git and basic packages. +RUN apt-get update && apt-get install -y \ + gnupg2 \ + procps \ + curl \ + gcc && apt-get clean + +#================== +# Ruby dependencies + +# Install rvm +RUN gpg2 --keyserver hkp://keyserver.ubuntu.com --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB +RUN \curl -sSL https://get.rvm.io | bash -s stable + +# Install Ruby 2.6 +RUN /bin/bash -l -c "rvm install ruby-2.6.5" +RUN /bin/bash -l -c "rvm use --default ruby-2.6.5" +RUN /bin/bash -l -c "echo 'gem: --no-document' > ~/.gemrc" +RUN /bin/bash -l -c "echo 'export PATH=/usr/local/rvm/bin:$PATH' >> ~/.bashrc" +RUN /bin/bash -l -c "echo 'rvm --default use ruby-2.6.5' >> ~/.bashrc" +RUN /bin/bash -l -c "gem install bundler --no-document" + +RUN mkdir /var/local/jenkins + +# Define the default command. +CMD ["bash"] diff --git a/tools/run_tests/artifacts/distribtest_targets.py b/tools/run_tests/artifacts/distribtest_targets.py index 8f0561b524c..963263f9c91 100644 --- a/tools/run_tests/artifacts/distribtest_targets.py +++ b/tools/run_tests/artifacts/distribtest_targets.py @@ -431,6 +431,12 @@ def targets(): PythonDistribTest('linux', 'x64', 'arch', source=True), PythonDistribTest('linux', 'x64', 'ubuntu2004', source=True), # Ruby + RubyDistribTest('linux', + 'x64', + 'stretch', + ruby_version='ruby_2_6', + source=True, + presubmit=True), RubyDistribTest('linux', 'x64', 'stretch',