Jelajahi Sumber

Merge pull request #8999 from yoheiueda/test-unit-without-parallel

Make test-unit runnable without parallel
unclejack 10 tahun lalu
induk
melakukan
7b7af6dbae
1 mengubah file dengan 20 tambahan dan 18 penghapusan
  1. 20 18
      hack/make/test-unit

+ 20 - 18
hack/make/test-unit

@@ -22,29 +22,31 @@ bundle_test_unit() {
 		if [ -z "$TESTDIRS" ]; then
 		if [ -z "$TESTDIRS" ]; then
 			TESTDIRS=$(find_dirs '*_test.go')
 			TESTDIRS=$(find_dirs '*_test.go')
 		fi
 		fi
-
-		if command -v parallel &> /dev/null; then (
-			# accomodate parallel to be able to access variables
-			export SHELL="$BASH"
-			export HOME="$(mktemp -d)"
-			mkdir -p "$HOME/.parallel"
-			touch "$HOME/.parallel/ignored_vars"
+		(
 			export LDFLAGS="$LDFLAGS $LDFLAGS_STATIC_DOCKER"
 			export LDFLAGS="$LDFLAGS $LDFLAGS_STATIC_DOCKER"
 			export TESTFLAGS
 			export TESTFLAGS
 			export HAVE_GO_TEST_COVER
 			export HAVE_GO_TEST_COVER
 			export DEST
 			export DEST
-			# some hack to export array variables
-			export BUILDFLAGS_FILE="$HOME/buildflags_file"
-			( IFS=$'\n'; echo "${BUILDFLAGS[*]}" ) > "$BUILDFLAGS_FILE"
+			if command -v parallel &> /dev/null; then
+				# accomodate parallel to be able to access variables
+				export SHELL="$BASH"
+				export HOME="$(mktemp -d)"
+				mkdir -p "$HOME/.parallel"
+				touch "$HOME/.parallel/ignored_vars"
 
 
-			echo "$TESTDIRS" | parallel --jobs "$PARALLEL_JOBS" --halt 2 --env _ "$(dirname "$BASH_SOURCE")/.go-compile-test-dir"
-			rm -rf "$HOME"
-		) else
-			# aww, no "parallel" available - fall back to boring
-			for test_dir in $TESTDIRS; do
-				"$(dirname "$BASH_SOURCE")/.go-compile-test-dir" "$test_dir"
-			done
-		fi
+				# some hack to export array variables
+				export BUILDFLAGS_FILE="$HOME/buildflags_file"
+				( IFS=$'\n'; echo "${BUILDFLAGS[*]}" ) > "$BUILDFLAGS_FILE"
+
+				echo "$TESTDIRS" | parallel --jobs "$PARALLEL_JOBS" --halt 2 --env _ "$(dirname "$BASH_SOURCE")/.go-compile-test-dir"
+				rm -rf "$HOME"
+			else
+				# aww, no "parallel" available - fall back to boring
+				for test_dir in $TESTDIRS; do
+					"$(dirname "$BASH_SOURCE")/.go-compile-test-dir" "$test_dir"
+				done
+			fi
+		)
 		echo "$TESTDIRS" | go_run_test_dir
 		echo "$TESTDIRS" | go_run_test_dir
 	}
 	}
 }
 }