]> git.ipfire.org Git - thirdparty/ccache.git/commitdiff
test: Support valkey in remote_redis test suite
authorJoel Rosdahl <joel@rosdahl.net>
Sat, 6 Dec 2025 09:58:04 +0000 (10:58 +0100)
committerJoel Rosdahl <joel@rosdahl.net>
Sat, 6 Dec 2025 09:58:04 +0000 (10:58 +0100)
test/suites/remote_redis.bash

index dfe93d3acf764e99f0d32f129e26010786f1928a..0340bdb711e45a445d8ac4c63bdfab58849529bc 100644 (file)
@@ -1,14 +1,17 @@
+REDIS_SERVER=$(command -v redis-server || command -v valkey-server)
+REDIS_CLI=$(command -v redis-cli || command -v valkey-cli)
+
 SUITE_remote_redis_PROBE() {
     if ! $CCACHE --version | grep -Fq -- redis-storage &> /dev/null; then
         echo "redis-storage not available"
         return
     fi
-    if ! command -v redis-server &> /dev/null; then
-        echo "redis-server not found"
+    if [ -z "${REDIS_SERVER}" ]; then
+        echo "neither redis-server nor valkey-server found"
         return
     fi
-    if ! command -v redis-cli &> /dev/null; then
-        echo "redis-cli not found"
+    if [ -z "${REDIS_CLI}" ]; then
+        echo "neither redis-cli nor valkey-cli found"
         return
     fi
 }
@@ -17,16 +20,16 @@ start_redis_server() {
     local port="$1"
     local password="${2:-}"
 
-    redis-server --bind localhost --port "${port}" >/dev/null &
+    ${REDIS_SERVER} --bind localhost --port "${port}" >/dev/null &
     # Wait for server start.
     i=0
-    while [ $i -lt 100 ] && ! redis-cli -p "${port}" ping &>/dev/null; do
+    while [ $i -lt 100 ] && ! ${REDIS_CLI} -p "${port}" ping &>/dev/null; do
         sleep 0.1
         i=$((i + 1))
     done
 
     if [ -n "${password}" ]; then
-        redis-cli -p "${port}" config set requirepass "${password}" &>/dev/null
+        ${REDIS_CLI} -p "${port}" config set requirepass "${password}" &>/dev/null
     fi
 }
 
@@ -41,7 +44,7 @@ expect_number_of_redis_cache_entries() {
     local url=$2
     local actual
 
-    actual=$(redis-cli -u "$url" keys "ccache:*" 2>/dev/null | wc -l)
+    actual=$(${REDIS_CLI} -u "$url" keys "ccache:*" 2>/dev/null | wc -l)
     if [ "$actual" -ne "$expected" ]; then
         test_failed_internal "Found $actual (expected $expected) entries in $url"
     fi