From 26bc5fd62bcfa8bae27e8132cd4047872c91e3d5 Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Sat, 20 Nov 2021 23:16:21 +0100 Subject: [PATCH] Update _common.sh --- scripts/_common.sh | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/scripts/_common.sh b/scripts/_common.sh index 599b8ce..c6117d6 100644 --- a/scripts/_common.sh +++ b/scripts/_common.sh @@ -26,3 +26,40 @@ libreoffice_app_dependencies="unoconv libreoffice-writer" #================================================= # FUTURE OFFICIAL HELPERS #================================================= + +# get the first available redis database +# +# usage: ynh_redis_get_free_db +# | returns: the database number to use +ynh_redis_get_free_db() { + local result max db + result=$(redis-cli INFO keyspace) + + # get the num + max=$(cat /etc/redis/redis.conf | grep ^databases | grep -Eow "[0-9]+") + + db=0 + # default Debian setting is 15 databases + for i in $(seq 0 "$max") + do + if ! echo "$result" | grep -q "db$i" + then + db=$i + break 1 + fi + db=-1 + done + + test "$db" -eq -1 && ynh_die --message="No available Redis databases..." + + echo "$db" +} + +# Flush Redis key +# +# usage: ynh_redis_remove_db database +# | arg: database - the database to erase +ynh_redis_remove_db() { + local db=$1 + redis-cli -n "$db" flushall +}