From: Frank Lichtenheld Date: Fri, 22 Jul 2022 13:49:02 +0000 (+0200) Subject: t_client: Allow to force FAIL on prerequisite fails X-Git-Tag: v2.6_beta1~155 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=79932b94513303567fdd5d1c4e0abb79e6642b6e;p=thirdparty%2Fopenvpn.git t_client: Allow to force FAIL on prerequisite fails In automated tests we want the build to fail if the worker node is configured incorrectly. Signed-off-by: Frank Lichtenheld Acked-by: Gert Doering Message-Id: <20220722134902.22092-1-frank@lichtenheld.com> URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg24723.html Signed-off-by: Gert Doering --- diff --git a/tests/t_client.sh.in b/tests/t_client.sh.in index 294546be5..465c3a33d 100755 --- a/tests/t_client.sh.in +++ b/tests/t_client.sh.in @@ -12,6 +12,10 @@ # - for "ping6" checks: fping6 binary in $PATH # +# by changing this to 1 we can force automated builds to fail +# that are expected to have all the prerequisites +TCLIENT_SKIP_RC="${TCLIENT_SKIP_RC:-77}" + srcdir="${srcdir:-.}" top_builddir="${top_builddir:-..}" if [ -r "${top_builddir}"/t_client.rc ] ; then @@ -21,25 +25,25 @@ elif [ -r "${srcdir}"/t_client.rc ] ; then else echo "$0: cannot find 't_client.rc' in build dir ('${top_builddir}')" >&2 echo "$0: or source directory ('${srcdir}'). SKIPPING TEST." >&2 - exit 77 + exit "${TCLIENT_SKIP_RC}" fi # Check for external dependencies which fping > /dev/null if [ $? -ne 0 ]; then echo "$0: fping is not available in \$PATH" >&2 - exit 77 + exit "${TCLIENT_SKIP_RC}" fi which fping6 > /dev/null if [ $? -ne 0 ]; then echo "$0: fping6 is not available in \$PATH" >&2 - exit 77 + exit "${TCLIENT_SKIP_RC}" fi KILL_EXEC=`which kill` if [ $? -ne 0 ]; then echo "$0: kill not found in \$PATH" >&2 - exit 77 + exit "${TCLIENT_SKIP_RC}" fi if [ ! -x "${top_builddir}/src/openvpn/openvpn" ] @@ -56,12 +60,12 @@ fi if [ -z "$CA_CERT" ] ; then echo "CA_CERT not defined in 't_client.rc'. SKIP test." >&2 - exit 77 + exit "${TCLIENT_SKIP_RC}" fi if [ -z "$TEST_RUN_LIST" ] ; then echo "TEST_RUN_LIST empty, no tests defined. SKIP test." >&2 - exit 77 + exit "${TCLIENT_SKIP_RC}" fi # Ensure PREFER_KSU is in a known state @@ -91,7 +95,7 @@ else then echo "$0: this test must run be as root, or RUN_SUDO=... " >&2 echo " must be set correctly in 't_client.rc'. SKIP." >&2 - exit 77 + exit "${TCLIENT_SKIP_RC}" else # We have to use sudo. Make sure that we (hopefully) do not have # to ask the users password during the test. This is done to @@ -101,7 +105,7 @@ else echo "$0: $RUN_SUDO $KILL_EXEC -0 succeeded, good." else echo "$0: $RUN_SUDO $KILL_EXEC -0 failed, cannot go on. SKIP." >&2 - exit 77 + exit "${TCLIENT_SKIP_RC}" fi fi fi