Skip to content

Commit e85081a

Browse files
committed
Makefile: Clearer warning on missing validation executable(s)
Instead of reporting total ................................................. 0/0 and passing (which node-tap seems to do when given missing files as arguments), report: missing test executable; run 'make runtimetest validation-executables' and error out. Having a separate step to build the executables is useful for: * Not building them as root, which reduces the change of security issues by using as little privilege as possible. * Not rebuilding them on each test, since we haven't told Make about the full dependency tree for the test executables. The separate build step was introduced in e11b77f (validation: Use prove(1) as a TAP harness, 2017-11-25, #439), but I didn't do a good job of motivating it in that commit message. Signed-off-by: W. Trevor King <[email protected]>
1 parent 0c2e37e commit e85081a

File tree

1 file changed

+8
-0
lines changed

1 file changed

+8
-0
lines changed

Makefile

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,14 @@ clean:
4040
rm -f oci-runtime-tool runtimetest *.1 $(VALIDATION_TESTS)
4141

4242
localvalidation:
43+
@for EXECUTABLE in runtimetest $(VALIDATION_TESTS); \
44+
do \
45+
if test ! -x "$${EXECUTABLE}"; \
46+
then \
47+
echo "missing test executable $${EXECUTABLE}; run 'make runtimetest validation-executables'" >&2; \
48+
exit 1; \
49+
fi; \
50+
done
4351
RUNTIME=$(RUNTIME) $(TAP) $(VALIDATION_TESTS)
4452

4553
.PHONY: validation-executables

0 commit comments

Comments
 (0)