summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNick Vatamaniuc <vatamane@apache.org>2019-07-26 19:52:19 -0400
committerNick Vatamaniuc <nickva@users.noreply.github.com>2019-07-29 13:59:23 -0400
commit220462a1dd2d921fc4ecba3488f5fedefb75217f (patch)
tree0f64cf47f132a3854e8b85b92d5b0659e34b990f
parentf37e1e73205e98d6a74a714a23c4a59f7cf2bb0b (diff)
downloadcouchdb-220462a1dd2d921fc4ecba3488f5fedefb75217f.tar.gz
Retry EUnit tests on failure
Whole app is retried 2 extra times if it fails. Added to *nix Makefile only for now. May not be needed for Windows as this is for CI flakiness mostly.
-rw-r--r--Makefile14
1 files changed, 12 insertions, 2 deletions
diff --git a/Makefile b/Makefile
index 58c814885..ed22509e2 100644
--- a/Makefile
+++ b/Makefile
@@ -170,8 +170,18 @@ eunit: export COUCHDB_QUERY_SERVER_JAVASCRIPT = $(shell pwd)/bin/couchjs $(shell
eunit: couch
@$(REBAR) setup_eunit 2> /dev/null
@for dir in $(subdirs); do \
- $(REBAR) -r eunit $(EUNIT_OPTS) apps=$$dir || exit 1; \
- done
+ tries=0; \
+ while true; do \
+ $(REBAR) -r eunit $(EUNIT_OPTS) apps=$$dir ; \
+ if [ $$? -eq 0 ]; then \
+ break; \
+ else \
+ let "tries=tries+1"; \
+ [ $$tries -gt 2 ] && exit 1; \
+ fi \
+ done \
+ done
+
.PHONY: exunit
# target: exunit - Run ExUnit tests