From eedad89b93e86098aa7fba9976e4e7a041f70dc2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jo=C3=A3o=20Reis?= Date: Wed, 15 Jun 2016 13:42:21 +0100 Subject: [PATCH 1/3] build: split CI rules in Makefile Some CI jobs compile Node and run the tests on different machines. This change enables collaborators to have finer control over what runs on these jobs, such as the exact suites to run. The test-ci rule was split into js and native, to allow for addons to be compiled only on the machines that are going to run them. --- Makefile | 23 +++++++++++++++++++---- 1 file changed, 19 insertions(+), 4 deletions(-) diff --git a/Makefile b/Makefile index 8d1796d14324dd..75ed9d732ecae9 100644 --- a/Makefile +++ b/Makefile @@ -184,11 +184,23 @@ test-all: test-build test/gc/node_modules/weak/build/Release/weakref.node test-all-valgrind: test-build $(PYTHON) tools/test.py --mode=debug,release --valgrind +CI_NATIVE_SUITES := addons +CI_JS_SUITES := doctool known_issues message parallel pseudo-tty sequential + +test-ci-native: | test/addons/.buildstamp + $(PYTHON) tools/test.py $(PARALLEL_ARGS) -p tap --logfile test.tap \ + --mode=release --flaky-tests=$(FLAKY_TESTS) \ + $(TEST_CI_ARGS) $(CI_NATIVE_SUITES) + +test-ci-js: + $(PYTHON) tools/test.py $(PARALLEL_ARGS) -p tap --logfile test.tap \ + --mode=release --flaky-tests=$(FLAKY_TESTS) \ + $(TEST_CI_ARGS) $(CI_JS_SUITES) + test-ci: | build-addons $(PYTHON) tools/test.py $(PARALLEL_ARGS) -p tap --logfile test.tap \ --mode=release --flaky-tests=$(FLAKY_TESTS) \ - $(TEST_CI_ARGS) addons doctool known_issues message pseudo-tty parallel \ - sequential + $(TEST_CI_ARGS) $(CI_NATIVE_SUITES) $(CI_JS_SUITES) test-release: test-build $(PYTHON) tools/test.py --mode=release @@ -299,9 +311,12 @@ docopen: out/doc/api/all.html docclean: -rm -rf out/doc -run-ci: +build-ci: $(PYTHON) ./configure $(CONFIG_FLAGS) $(MAKE) + +run-ci: + $(MAKE) build-ci $(MAKE) test-ci RAWVER=$(shell $(PYTHON) tools/getnodeversion.py) @@ -715,4 +730,4 @@ endif bench-all bench bench-misc bench-array bench-buffer bench-net \ bench-http bench-fs bench-tls cctest run-ci test-v8 test-v8-intl \ test-v8-benchmarks test-v8-all v8 lint-ci bench-ci jslint-ci doc-only \ - $(TARBALL)-headers + $(TARBALL)-headers test-ci test-ci-native test-ci-js build-ci From d7c09834168b19b52f0922e4fb40cefb377720fa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jo=C3=A3o=20Reis?= Date: Tue, 21 Jun 2016 17:05:15 +0100 Subject: [PATCH 2/3] fixup --- Makefile | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Makefile b/Makefile index 75ed9d732ecae9..c02ba9b8e67283 100644 --- a/Makefile +++ b/Makefile @@ -315,8 +315,7 @@ build-ci: $(PYTHON) ./configure $(CONFIG_FLAGS) $(MAKE) -run-ci: - $(MAKE) build-ci +run-ci: build-ci $(MAKE) test-ci RAWVER=$(shell $(PYTHON) tools/getnodeversion.py) From 0b041f6bcf3d61b613436e73608465ef8c8110df Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jo=C3=A3o=20Reis?= Date: Fri, 24 Jun 2016 15:17:24 +0100 Subject: [PATCH 3/3] fixup comments --- Makefile | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Makefile b/Makefile index c02ba9b8e67283..cf5cd93de176ed 100644 --- a/Makefile +++ b/Makefile @@ -187,11 +187,13 @@ test-all-valgrind: test-build CI_NATIVE_SUITES := addons CI_JS_SUITES := doctool known_issues message parallel pseudo-tty sequential +# Build and test addons without building anything else test-ci-native: | test/addons/.buildstamp $(PYTHON) tools/test.py $(PARALLEL_ARGS) -p tap --logfile test.tap \ --mode=release --flaky-tests=$(FLAKY_TESTS) \ $(TEST_CI_ARGS) $(CI_NATIVE_SUITES) +# This target should not use a native compiler at all test-ci-js: $(PYTHON) tools/test.py $(PARALLEL_ARGS) -p tap --logfile test.tap \ --mode=release --flaky-tests=$(FLAKY_TESTS) \