aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar Jan Tattermusch <jtattermusch@google.com>2016-02-03 11:54:37 -0800
committerGravatar Jan Tattermusch <jtattermusch@google.com>2016-02-03 12:13:55 -0800
commit3e7cc18213de33688ec18418df72a16cbd29d073 (patch)
treebb25434cd7d5df96a70a35362afd79242bc78ed1
parent4253522c76fd7694a621dc62a7092ffa6e802e15 (diff)
enable running distribtest on jenkins
-rwxr-xr-xtools/jenkins/docker_run.sh2
-rwxr-xr-xtools/jenkins/run_distribtest.sh49
2 files changed, 50 insertions, 1 deletions
diff --git a/tools/jenkins/docker_run.sh b/tools/jenkins/docker_run.sh
index 693e87c0b9..49553aae2f 100755
--- a/tools/jenkins/docker_run.sh
+++ b/tools/jenkins/docker_run.sh
@@ -43,6 +43,6 @@ fi
cd /var/local/git/grpc
-nvm use 4
+nvm use 4 || true
$RUN_COMMAND
diff --git a/tools/jenkins/run_distribtest.sh b/tools/jenkins/run_distribtest.sh
new file mode 100755
index 0000000000..156417754e
--- /dev/null
+++ b/tools/jenkins/run_distribtest.sh
@@ -0,0 +1,49 @@
+#!/usr/bin/env bash
+# Copyright 2016, Google Inc.
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met:
+#
+# * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+# * Redistributions in binary form must reproduce the above
+# copyright notice, this list of conditions and the following disclaimer
+# in the documentation and/or other materials provided with the
+# distribution.
+# * Neither the name of Google Inc. nor the names of its
+# contributors may be used to endorse or promote products derived from
+# this software without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+#
+# This script is invoked by Jenkins and triggers run of distribution tests.
+#
+# To prevent cygwin bash complaining about empty lines ending with \r
+# we set the igncr option. The option doesn't exist on Linux, so we fallback
+# to just 'set -ex' there.
+# NOTE: No empty lines should appear in this file before igncr is set!
+set -ex -o igncr || set -ex
+
+curr_platform="$platform"
+unset platform # variable named 'platform' breaks the windows build
+
+# Try collecting the artifacts to test from previous Jenkins build step
+mkdir -p input_artifacts
+cp -r platform=windows/artifacts/* input_artifacts || true
+cp -r platform=linux/artifacts/* input_artifacts || true
+
+python tools/run_tests/task_runner.py -j 4 \
+ -f distribtest $language $curr_platform $architecture \
+ $@