From ec06f036b4183a1a513f6812a0ef429b9dc353d4 Mon Sep 17 00:00:00 2001 From: Max Kratz Date: Tue, 16 Jul 2024 20:44:29 +0200 Subject: [PATCH] Updates user email notifications preference to 'onmention' Closes #169. --- .../templates/docker-compose.yml.j2 | 1 + ...e-users-email-notifications-preferences.sh | 23 +++++++++++++++++++ 2 files changed, 24 insertions(+) create mode 100644 scripts/update-users-email-notifications-preferences.sh diff --git a/roles/forgejo-dc/templates/docker-compose.yml.j2 b/roles/forgejo-dc/templates/docker-compose.yml.j2 index 912485d..7b824e9 100644 --- a/roles/forgejo-dc/templates/docker-compose.yml.j2 +++ b/roles/forgejo-dc/templates/docker-compose.yml.j2 @@ -50,6 +50,7 @@ services: - GITEA__attachment__MAX_SIZE=100 - GITEA__cron__ENABLED=true - GITEA__cron__SCHEDULE=@every 8h00m + - GITEA__admin__DEFAULT_EMAIL_NOTIFICATIONS=onmention restart: unless-stopped networks: - forgejo diff --git a/scripts/update-users-email-notifications-preferences.sh b/scripts/update-users-email-notifications-preferences.sh new file mode 100644 index 0000000..925eeb0 --- /dev/null +++ b/scripts/update-users-email-notifications-preferences.sh @@ -0,0 +1,23 @@ +#!/bin/bash + +# +# This script updates the 'email_notifications_preference' of some users to 'onmention' to prevent +# large amounts of notification emails. +# + +# Some useful comments for psql: +# SELECT * FROM public.user WHERE public.user.lower_name = 'maxkratz'; +# UPDATE public.user SET email_notifications_preference = 'onmention' WHERE public.user.lower_name = 'maxkratz'; + +# The actual script: + +declare -a users=( + "maxkratz" +) + +for u in "${users[@]}" +do + docker compose exec -it db psql -U forgejo -c "UPDATE public.user SET email_notifications_preference = 'onmention' WHERE public.user.lower_name = '$u';" +done + +exit 0;