From d143b10c4be9a6a8177d51821eeb696937840093 Mon Sep 17 00:00:00 2001 From: Jim Garlick Date: Sat, 14 Dec 2024 09:01:07 -0800 Subject: [PATCH] ci: run passing tests on macos Problem: a subset of flux works on macos so far, but because we do not run 'make check' in CI, regressions are likely. Add a script that runs specific tests known to work on macos. Call it from the macos builder in CI. --- .github/workflows/main.yml | 2 ++ Makefile.am | 3 ++- scripts/check-macos.sh | 18 ++++++++++++++++++ 3 files changed, 22 insertions(+), 1 deletion(-) create mode 100755 scripts/check-macos.sh diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 125843d3c4fd..4cd84f6f54fe 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -128,6 +128,8 @@ jobs: run: scripts/configure-macos.sh - name: make, including test programs run: make check -j4 TESTS= + - name: check what works so far + run: scripts/check-macos.sh generate-matrix: # https://stackoverflow.com/questions/59977364 diff --git a/Makefile.am b/Makefile.am index 361e819f8e7d..a67b3fd5a43a 100644 --- a/Makefile.am +++ b/Makefile.am @@ -14,7 +14,8 @@ EXTRA_DIST = \ scripts/install-deps-deb.sh \ scripts/install-deps-rpm.sh \ scripts/install-deps-macos.sh \ - scripts/configure-macos.sh + scripts/configure-macos.sh \ + scripts/check-macos.sh ACLOCAL_AMFLAGS = -I config diff --git a/scripts/check-macos.sh b/scripts/check-macos.sh new file mode 100755 index 000000000000..7a4e5f44b3e3 --- /dev/null +++ b/scripts/check-macos.sh @@ -0,0 +1,18 @@ +#!/bin/bash + +# Check what should work so far in src/common on macos + +die() { + echo "$(basename $0): $@" >&2 + exit 1 +} + +CONF_SCRIPT=scripts/configure-macos.sh + +test -f $CONF_SCRIPT || die "please run from the top level of the source tree" +test -f configure || die "please run $CONF_SCRIPT first" + +COMMON_WORKING="libtap libtestutil libyuarel libpmi liblsd libutil libflux libfluxutil libkvs libjob liboptparse libidset libtomlc99 libschedutil libeventlog libioencode librouter libdebugged libcontent libjob libhostlist libczmqcontainers libccan libzmqutil libtaskmap libfilemap libsdexec libmissing" +COMMON_BROKEN="libsubprocess libterminus librlist" + +make -j4 -C src/common check SUBDIRS="$COMMON_WORKING"