aboutsummaryrefslogtreecommitdiffhomepage
path: root/tools/run_tests/artifact_targets.py
diff options
context:
space:
mode:
authorGravatar Jan Tattermusch <jtattermusch@google.com>2016-02-01 16:20:03 -0800
committerGravatar Jan Tattermusch <jtattermusch@google.com>2016-02-02 18:50:18 -0800
commit44372138c51a0758698e973f8c839ee08986ac4d (patch)
treee76671390e9003838b91a41a1880e0b52ff9d100 /tools/run_tests/artifact_targets.py
parent90262f8750fff78fe983052f6b91350375daf035 (diff)
build ruby artifact
Diffstat (limited to 'tools/run_tests/artifact_targets.py')
-rw-r--r--tools/run_tests/artifact_targets.py33
1 files changed, 32 insertions, 1 deletions
diff --git a/tools/run_tests/artifact_targets.py b/tools/run_tests/artifact_targets.py
index 573825699f..c7ca9a07c5 100644
--- a/tools/run_tests/artifact_targets.py
+++ b/tools/run_tests/artifact_targets.py
@@ -108,6 +108,35 @@ class PythonArtifact:
return self.name
+class RubyArtifact:
+ """Builds ruby native gem."""
+
+ def __init__(self, platform, arch):
+ self.name = 'ruby_native_gem_%s_%s' % (platform, arch)
+ self.platform = platform
+ self.arch = arch
+ self.labels = ['artifact', 'ruby', platform, arch]
+
+ def pre_build_jobspecs(self):
+ return []
+
+ def build_jobspec(self):
+ if self.platform == 'windows':
+ raise Exception("Not supported yet")
+ else:
+ if self.platform == 'linux':
+ environ = {}
+ if self.arch == 'x86':
+ environ['SETARCH_CMD'] = 'i386'
+ return create_docker_jobspec(self.name,
+ 'tools/dockerfile/grpc_artifact_linux_%s' % self.arch,
+ 'tools/run_tests/build_artifact_ruby.sh',
+ environ=environ)
+ else:
+ return create_jobspec(self.name,
+ ['tools/run_tests/build_artifact_ruby.sh'])
+
+
class CSharpExtArtifact:
"""Builds C# native extension library"""
@@ -164,4 +193,6 @@ def targets():
CSharpExtArtifact('windows', 'x86'),
CSharpExtArtifact('windows', 'x64'),
PythonArtifact('linux', 'x86'),
- PythonArtifact('linux', 'x64')]
+ PythonArtifact('linux', 'x64'),
+ RubyArtifact('linux', 'x86'),
+ RubyArtifact('linux', 'x64')]