From 04486312bdba9b610edbd71d23b5f4a428e04a40 Mon Sep 17 00:00:00 2001 From: Paul Cristian Sarbu Date: Wed, 15 Nov 2023 15:37:10 +0100 Subject: test: Check that serve service works in compatible mode Added compatibility envariable to the with_serve rule, guarded tests using --fetch-absent such that they run only in native mode, and made all serve-service tests aware of the compatibility flag. --- test/end-to-end/serve-service/serve_export_deps.sh | 17 +++++++++++++---- test/end-to-end/serve-service/serve_start_execute.sh | 16 ++++++++++++++-- test/end-to-end/serve-service/serve_target_cache_hit.sh | 8 ++++++++ .../serve-service/serve_target_remote_build.sh | 9 +++++++-- 4 files changed, 42 insertions(+), 8 deletions(-) (limited to 'test/end-to-end/serve-service') diff --git a/test/end-to-end/serve-service/serve_export_deps.sh b/test/end-to-end/serve-service/serve_export_deps.sh index 6c21734d..64886a4c 100644 --- a/test/end-to-end/serve-service/serve_export_deps.sh +++ b/test/end-to-end/serve-service/serve_export_deps.sh @@ -31,6 +31,11 @@ readonly LBR="${TEST_TMPDIR}/local-build-root" readonly LOCAL_DIR="${TEST_TMPDIR}/local" readonly ABSENT_DIR="${TEST_TMPDIR}/absent" +COMPAT="" +if [ "${COMPATIBLE:-}" = "YES" ]; then + COMPAT="--compatible" +fi + # Set up sample repository readonly GENERATOR="${TEST_TMPDIR}/generate.sh" readonly GEN_DIR="{TEST_TMPDIR}/gen-dir" @@ -81,7 +86,7 @@ cat repos.json CONF=$("${JUST_MR}" --norc --local-build-root "${SERVE_LBR}" setup) cat "${CONF}" -"${JUST}" build --local-build-root "${SERVE_LBR}" -C "${CONF}" -r ${REMOTE_EXECUTION_ADDRESS} main +"${JUST}" build --local-build-root "${SERVE_LBR}" -C "${CONF}" -r ${REMOTE_EXECUTION_ADDRESS} ${COMPAT} main ) # Set up local repository @@ -149,11 +154,15 @@ echo rm "${GENERATOR}" -CONF=$("${JUST_MR}" --norc --local-build-root "${LBR}" setup --all) +CONF=$("${JUST_MR}" --norc --local-build-root "${LBR}" ${COMPAT} setup --all) cat "${CONF}" echo # test that we can successfully compile using just serve -"${JUST}" build --main local --local-build-root "${LBR}" -C "${CONF}" --remote-serve-address ${SERVE} -r ${REMOTE_EXECUTION_ADDRESS} main -"${JUST}" build --main local --local-build-root "${LBR}" -C "${CONF}" --remote-serve-address ${SERVE} -r ${REMOTE_EXECUTION_ADDRESS} main +"${JUST}" build --main local --local-build-root "${LBR}" -C "${CONF}" \ + --remote-serve-address ${SERVE} \ + -r ${REMOTE_EXECUTION_ADDRESS} ${COMPAT} main +"${JUST}" build --main local --local-build-root "${LBR}" -C "${CONF}" \ + --remote-serve-address ${SERVE} \ + -r ${REMOTE_EXECUTION_ADDRESS} ${COMPAT} main ) diff --git a/test/end-to-end/serve-service/serve_start_execute.sh b/test/end-to-end/serve-service/serve_start_execute.sh index 5cad0400..d15d14eb 100644 --- a/test/end-to-end/serve-service/serve_start_execute.sh +++ b/test/end-to-end/serve-service/serve_start_execute.sh @@ -31,10 +31,20 @@ readonly PIDFILE="${PWD}/pid.txt" # test that, if no remote endpoint is passed to just-serve, it will spawn a # just-execute instance +COMPAT="" cat > .just-servec <> .just-servec <> .just-servec < TARGETS <&2 && exit 1 @@ -158,6 +165,7 @@ echo "failed as expected" --remote-serve-address "${SERVE}" \ -C "${CONF}" \ -r "${REMOTE_EXECUTION_ADDRESS}" \ + ${COMPAT} \ ${REMOTE_PROPERTIES} \ ${DISPATCH} \ main diff --git a/test/end-to-end/serve-service/serve_target_remote_build.sh b/test/end-to-end/serve-service/serve_target_remote_build.sh index 66138476..660e9460 100644 --- a/test/end-to-end/serve-service/serve_target_remote_build.sh +++ b/test/end-to-end/serve-service/serve_target_remote_build.sh @@ -27,6 +27,11 @@ readonly JUST="${PWD}/bin/tool-under-test" readonly JUST_MR="${PWD}/bin/mr-tool-under-test" readonly LBR="${TEST_TMPDIR}/local-build-root" +COMPAT="" +if [ "${COMPATIBLE:-}" = "YES" ]; then + COMPAT="--compatible" +fi + mkdir work cd work touch ROOT @@ -48,7 +53,7 @@ EOF CONF=$("${JUST_MR}" --norc --local-build-root "${LBR}" \ --remote-serve-address ${SERVE} \ - -r ${REMOTE_EXECUTION_ADDRESS} \ + -r ${REMOTE_EXECUTION_ADDRESS} ${COMPAT} \ setup) cat $CONF @@ -57,7 +62,7 @@ cat $CONF ${JUST} build --local-build-root "${LBR}" -C "${CONF}" \ --remote-serve-address ${SERVE} \ --log-limit 8 \ - -r "${REMOTE_EXECUTION_ADDRESS}" greet 2>&1 && \ + -r "${REMOTE_EXECUTION_ADDRESS}" ${COMPAT} greet 2>&1 && \ echo "This test should fail" && exit 1 echo OK -- cgit v1.2.3