From b3c19c13d93010345f35b5a9e946a0205ae92e3a Mon Sep 17 00:00:00 2001 From: Hummeltech <6109326+hummeltech@users.noreply.github.com> Date: Fri, 19 Jan 2024 15:39:07 -0700 Subject: [PATCH] Allow custom host specification with CTest (#374) * To facilitate running `memcached` tests for all jobs * `CentOS`/`Debian`/`Fedora` jobs don't seem to like running `memcached` on `localhost` * `FreeBSD` jobs don't seem to like running `memcached` on `0.0.0.0` --- .github/actions/dependencies/install/action.yml | 14 ++++++++++++++ .github/workflows/build-and-test.yml | 1 + tests/CMakeLists.txt | 17 +++++++++++++---- 3 files changed, 28 insertions(+), 4 deletions(-) diff --git a/.github/actions/dependencies/install/action.yml b/.github/actions/dependencies/install/action.yml index 94a8a0a..0b2f77c 100644 --- a/.github/actions/dependencies/install/action.yml +++ b/.github/actions/dependencies/install/action.yml @@ -32,6 +32,8 @@ inputs: default: >- apache2 jq + lcov + memcached fedora-build-dependencies: default: >- cairo-devel @@ -47,6 +49,8 @@ inputs: default: >- httpd jq + lcov + memcached freebsd-build-dependencies: default: >- apache24 @@ -61,6 +65,8 @@ inputs: freebsd-test-dependencies: default: >- jq + lcov + memcached macos-build-dependencies: default: >- apr @@ -76,6 +82,8 @@ inputs: default: >- coreutils jq + lcov + memcached opensuse-build-dependencies: default: >- apache2-devel @@ -92,6 +100,8 @@ inputs: apache2-event apache2-prefork jq + lcov + memcached opensuse-mapnik-build-dependencies: default: >- bzip2 @@ -129,6 +139,8 @@ inputs: default: >- httpd jq + lcov + memcached rhel-mapnik-build-dependencies: default: >- boost-devel @@ -181,6 +193,8 @@ inputs: default: >- apache2 jq + lcov + memcached mapnik-build-version-centos-stream: default: 3.1.0 mapnik-build-version-amazonlinux2-centos7: diff --git a/.github/workflows/build-and-test.yml b/.github/workflows/build-and-test.yml index 6efa7e8..5fe892c 100644 --- a/.github/workflows/build-and-test.yml +++ b/.github/workflows/build-and-test.yml @@ -176,6 +176,7 @@ jobs: continue-on-error: true env: BUILD_PARALLEL_LEVEL: 2 + CTEST_HOST: localhost LIBRARY_PATH: /usr/local/lib TMPDIR: /tmp name: >- diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index 8d33ced..d58bdc6 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -30,6 +30,15 @@ find_program(MKDIR_EXECUTABLE NAMES mkdir REQUIRED) find_program(SHA256SUM_EXECUTABLE NAMES gsha256sum sha256sum REQUIRED) find_program(TOUCH_EXECUTABLE NAMES gtouch touch REQUIRED) +# Sets the host to be used for CTest test services +if(DEFINED ENV{CTEST_HOST}) + # To the value of environment variable "CTEST_HOST" + set(CTEST_HOST "$ENV{CTEST_HOST}") +else() + # Or to 0.0.0.0 by default + set(CTEST_HOST "0.0.0.0") +endif() + #----------------------------------------------------------------------------- # # Test configurations @@ -37,13 +46,13 @@ find_program(TOUCH_EXECUTABLE NAMES gtouch touch REQUIRED) #----------------------------------------------------------------------------- set(DEFAULT_MAP_NAME "default") -set(HTTPD0_HOST "localhost") +set(HTTPD0_HOST "${CTEST_HOST}") set(HTTPD0_PORT_BASE "59000") -set(HTTPD1_HOST "localhost") +set(HTTPD1_HOST "${CTEST_HOST}") set(HTTPD1_PORT_BASE "59100") -set(MEMCACHED_HOST "localhost") +set(MEMCACHED_HOST "${CTEST_HOST}") set(MEMCACHED_PORT_BASE "60000") -set(RENDERD1_HOST "localhost") +set(RENDERD1_HOST "${CTEST_HOST}") set(RENDERD1_PORT_BASE "59500") set(CURL_CMD "${CURL_EXECUTABLE} --fail --silent")