diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index d27630cb06195b8cf495774f6010e7aea46a15ee..01093e1363ad4aef29ffda525d0858a1b3fcab8e 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -29,11 +29,8 @@ test:linux:amd64: deckard:linux:amd64: stage: test - before_script: - - git submodule update --init --recursive script: - - mkdir -p tests/deckard/contrib/libswrap/obj - - MAKEFLAGS="-j $(nproc)" LD_LIBRARY_PATH=$(pwd)/.local/lib TESTS=sets/resolver DAEMON=$(pwd)/.local/sbin/kresd tests/deckard/kresd_run.sh + - PREFIX=$(pwd)/.local MAKEFLAGS="--jobs $(nproc) --keep-going" make check-integration dependencies: - build:linux:amd64 tags: diff --git a/tests/tests.mk b/tests/tests.mk index f7e174e65f96017373a0ed7c1b795c0403c1c710..95244401357c8e0f45ced27731598c01919e3a8f 100644 --- a/tests/tests.mk +++ b/tests/tests.mk @@ -9,11 +9,18 @@ endif deckard_DIR := tests/deckard TESTS := sets/resolver TEMPLATE := template/kresd.j2 + +REAL_PREFIX=$(realpath $(PREFIX)) +REAL_CURDIR=$(realpath $(CURDIR)) + $(deckard_DIR)/Makefile: @git submodule update --init --recursive + check-integration: $(deckard_DIR)/Makefile + $(if $(findstring $(REAL_CURDIR),$(REAL_PREFIX)),, $(warning Warning: PREFIX does not point into source directory; testing the installed version!)) @mkdir -p $(deckard_DIR)/contrib/libswrap/obj - @$(MAKE) -s -C $(deckard_DIR) TESTS=$(TESTS) DAEMON=$(abspath daemon/kresd) TEMPLATE=$(TEMPLATE) DYLD_LIBRARY_PATH=$(DYLD_LIBRARY_PATH) + +TESTS=$(TESTS) DAEMON=$(abspath $(SBINDIR)/kresd) TEMPLATE=$(TEMPLATE) $(preload_syms) $(deckard_DIR)/kresd_run.sh + deckard: check-integration # Targets