From d295ca11340cb6a350154e46c8a4ccc62d64bfdb Mon Sep 17 00:00:00 2001 From: Ryan Hitchman Date: Wed, 28 Feb 2018 20:44:37 -0800 Subject: [PATCH] Add support for `make verify WHAT=typecheck`. This will be used to make the typecheck job emit junit and avoids duplicating the rest of the verify logic. --- build/root/Makefile | 2 ++ hack/make-rules/verify.sh | 31 ++++++++++++++++++++++++------- 2 files changed, 26 insertions(+), 7 deletions(-) diff --git a/build/root/Makefile b/build/root/Makefile index d7dbed83456..51f77b8c617 100644 --- a/build/root/Makefile +++ b/build/root/Makefile @@ -112,10 +112,12 @@ define VERIFY_HELP_INFO # # Args: # BRANCH: Branch to be passed to verify-godeps.sh script. +# WHAT: List of checks to run # # Example: # make verify # make verify BRANCH=branch_x +# make verify WHAT="bazel typecheck" endef .PHONY: verify ifeq ($(PRINT_HELP),y) diff --git a/hack/make-rules/verify.sh b/hack/make-rules/verify.sh index 7ed9d3723e6..13fe2a13b4f 100755 --- a/hack/make-rules/verify.sh +++ b/hack/make-rules/verify.sh @@ -73,6 +73,17 @@ function is-quick { return 1 } +function is-explicitly-chosen { + local name="${1#verify-}" + name="${name%.*}" + for e in ${WHAT}; do + if [[ $e == "$name" ]]; then + return + fi + done + return 1 +} + function run-cmd { local filename="${2##*/verify-}" local testname="${filename%%.*}" @@ -109,13 +120,19 @@ function run-checks { for t in $(ls ${pattern}) do local check_name="$(basename "${t}")" - if is-excluded "${t}" ; then - echo "Skipping ${check_name}" - continue - fi - if ${QUICK} && ! is-quick "${t}" ; then - echo "Skipping ${check_name} in quick mode" - continue + if [[ ! -z ${WHAT:-} ]]; then + if ! is-explicitly-chosen "${check_name}"; then + continue + fi + else + if is-excluded "${t}" ; then + echo "Skipping ${check_name}" + continue + fi + if ${QUICK} && ! is-quick "${t}" ; then + echo "Skipping ${check_name} in quick mode" + continue + fi fi echo -e "Verifying ${check_name}" local start=$(date +%s)