aboutsummaryrefslogtreecommitdiffhomepage
path: root/tools
diff options
context:
space:
mode:
authorGravatar yang-g <yangg@google.com>2016-01-15 16:07:36 -0800
committerGravatar yang-g <yangg@google.com>2016-01-15 16:07:36 -0800
commit15b805067513c2bd684d26d19da052c8d917b172 (patch)
tree6fa906f71279eb5181e25b3903f0b746fecad45c /tools
parent512c4f7447740b52807b51e79ae64c6d439bfdf5 (diff)
parenta0fffb7bfb4b9ad7e51395a3a818518c3134a2e0 (diff)
Merge remote-tracking branch 'upstream/master' into sync_async_mix
Diffstat (limited to 'tools')
-rwxr-xr-xtools/distrib/check_trailing_newlines.sh67
-rwxr-xr-xtools/run_tests/check_sources_and_headers.py4
-rwxr-xr-xtools/run_tests/run_sanity.sh2
-rwxr-xr-xtools/run_tests/run_tests.py7
4 files changed, 74 insertions, 6 deletions
diff --git a/tools/distrib/check_trailing_newlines.sh b/tools/distrib/check_trailing_newlines.sh
new file mode 100755
index 0000000000..0be21f0cff
--- /dev/null
+++ b/tools/distrib/check_trailing_newlines.sh
@@ -0,0 +1,67 @@
+#!/bin/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.
+
+# change to root directory
+cd $(dirname $0)/../..
+
+function find_without_newline() {
+ find . -type f -not -path './third_party/*' -and \( \
+ -name '*.c' \
+ -or -name '*.cc' \
+ -or -name '*.proto' \
+ -or -name '*.rb' \
+ -or -name '*.py' \
+ -or -name '*.cs' \
+ -or -name '*.sh' \) -print0 \
+ | while IFS= read -r -d '' f; do
+ if [[ ! -z $f ]]; then
+ if [[ $(tail -c 1 "$f") != $NEWLINE ]]; then
+ echo "Error: file '$f' is missing a trailing newline character."
+ if $2; then # fix
+ sed -i -e '$a\' $f
+ echo 'Fixed!'
+ fi
+ fi
+ fi
+ done
+}
+
+if [[ $# == 1 && $1 == '--fix' ]]; then
+ ERRORS=$(find_without_newline true)
+else
+ ERRORS=$(find_without_newline false)
+fi
+
+if [[ "$ERRORS" != '' ]]; then
+ echo "$ERRORS"
+ if ! $FIX; then
+ exit 1
+ fi
+fi
diff --git a/tools/run_tests/check_sources_and_headers.py b/tools/run_tests/check_sources_and_headers.py
index cee32888dc..50574f44b0 100755
--- a/tools/run_tests/check_sources_and_headers.py
+++ b/tools/run_tests/check_sources_and_headers.py
@@ -1,5 +1,5 @@
#!/usr/bin/env python2.7
-# Copyright 2015, Google Inc.
+# Copyright 2015-2016, Google Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -80,4 +80,4 @@ for target in js:
target['name'], fn, m.group(1)))
errors += 1
-assert errors == 0 \ No newline at end of file
+assert errors == 0
diff --git a/tools/run_tests/run_sanity.sh b/tools/run_tests/run_sanity.sh
index 690332daae..467f06edd7 100755
--- a/tools/run_tests/run_sanity.sh
+++ b/tools/run_tests/run_sanity.sh
@@ -60,4 +60,4 @@ fi
./tools/buildgen/generate_projects.sh
./tools/distrib/check_copyright.py
./tools/distrib/clang_format_code.sh
-
+./tools/distrib/check_trailing_newlines.sh
diff --git a/tools/run_tests/run_tests.py b/tools/run_tests/run_tests.py
index 0de20a634a..97962bd928 100755
--- a/tools/run_tests/run_tests.py
+++ b/tools/run_tests/run_tests.py
@@ -772,9 +772,10 @@ else:
return [jobset.JobSpec([os.getenv('MAKE', 'make'),
'-f', makefile,
'-j', '%d' % (multiprocessing.cpu_count() + 1),
- 'EXTRA_DEFINES=GRPC_TEST_SLOWDOWN_MACHINE_FACTOR=%f' %
- args.slowdown,
- 'CONFIG=%s' % cfg] + targets,
+ 'EXTRA_DEFINES=GRPC_TEST_SLOWDOWN_MACHINE_FACTOR=%f' % args.slowdown,
+ 'CONFIG=%s' % cfg] +
+ ([] if not args.travis else ['JENKINS_BUILD=1']) +
+ targets,
timeout_seconds=30*60)]
else:
return []