diff --git a/templates/mariadb/listusersdep.sh.erb b/templates/mariadb/listusersdep.sh.erb new file mode 100644 index 0000000..de96b18 --- /dev/null +++ b/templates/mariadb/listusersdep.sh.erb @@ -0,0 +1,24 @@ +#!/bin/bash + +function usage () { + printf "Usage:\t%s \n" "${0##*/}" + printf "Example:\t%s uu int.uu.se\n" "${0##*/}" +} + +[[ -z "${1}" || -z "${2}" || ! "${1}" =~ ^[a-zA-Z0-9.]{1,200}$ || ! "${2}" =~ ^[a-zA-Z0-9.]{1,200}$ ]] && usage && exit 1 + +depdom="${2}" +customer="${1}" + +docker exec mariadb_db_1 /bin/bash -c 'mysql -p${MYSQL_ROOT_PASSWORD} -NB -e '\ +$'\'select JSON_PRETTY(JSON_OBJECTAGG(uid,displayname)) from ('\ +$' select nextcloud_'"${customer}"$'.oc_accounts.uid,nextcloud_'"${customer}"$'.oc_global_scale_users.displayname'\ +$' from nextcloud_'"${customer}"$'.oc_accounts,nextcloud_'"${customer}"$'.oc_global_scale_users'\ +$' where nextcloud_'"${customer}"$'.oc_accounts.uid = nextcloud_'"${customer}"$'.oc_global_scale_users.uid'\ +$' AND JSON_EXTRACT(nextcloud_'"${customer}"$'.oc_accounts.data, "$.email.value") like "%@'"${depdom}"$'\\\""'\ +$' UNION'\ +$' select nextcloud_'"${customer}"$'.oc_accounts.uid,nextcloud_'"${customer}"$'.oc_user_saml_users.displayname'\ +$' from nextcloud_'"${customer}"$'.oc_accounts,nextcloud_'"${customer}"$'.oc_user_saml_users'\ +$' where nextcloud_'"${customer}"$'.oc_accounts.uid = nextcloud_'"${customer}"$'.oc_user_saml_users.uid'\ +$' AND JSON_EXTRACT(nextcloud_'"${customer}"$'.oc_accounts.data, "$.email.value") like "%@'"${depdom}"$'\\\"") as users\'' \ +| sed 's/\\n/\n/g'