[sysadmin-bin] Minor fixes



commit 2c529888d3796ce1a68b6a5ef8f915d307b37245
Author: Andrea Veri <averi redhat com>
Date:   Tue May 3 17:56:24 2022 +0200

    Minor fixes
    
    1. Remove uid from mailgrace in case member was re-added to foundation
    2. Use in the in operator and make sure we pick uid from within the loop

 membership/foundation-operations.py | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)
---
diff --git a/membership/foundation-operations.py b/membership/foundation-operations.py
index ac34011..689d7a5 100755
--- a/membership/foundation-operations.py
+++ b/membership/foundation-operations.py
@@ -82,11 +82,15 @@ def cleanup_mailgrace():
     today = dt.date.today()
 
     gracemails = glu.get_uids_from_group('mailgrace')
+    foundationmembers = glu.get_uids_from_group('foundation')
 
     for member in gracemails:
        ldap_vars = glu.get_attributes_from_ldap(member, 'LastRenewedOn', 'mail', 'cn')
        last_renewed_on = dt.datetime.strptime(ldap_vars[1], '%Y-%m-%d').date()
 
+       if member in foundationmembers:
+          glu.remove_user_from_ldap_group(member, 'mailgrace')
+
        if today >= (last_renewed_on + rtdelta_wrap('years', 2) + rtdelta_wrap('months', 3)):
           send_form_letters(alias_decomm, ldap_vars[2], ldap_vars[3], ldap_vars[1])
           glu.remove_user_from_ldap_group(member, 'mailgrace')
@@ -187,21 +191,23 @@ def subscribe_new_members():
     if socket.gethostname() != 'restaurant.gnome.org':
         sys.exit("This function should only be used on restaurant.gnome.org")
 
+    today = str(dt.date.today())
+
     foundationmembers = glu.get_uids_from_group('foundation')
-    new_members = []
+    members = []
 
     for member in foundationmembers:
         ldap_vars = glu.get_attributes_from_ldap(member, 'FirstAdded', 'LastRenewedOn')
 
-        if (ldap_vars[1] or ldap_vars[2]) == str(dt.date.today()):
+        if today in (ldap_vars[1], ldap_vars[2]):
             new_members.append(ldap_vars[0])
         else:
-            pass
+            continue
 
-    if len(new_members) > 0:
-        for i in new_members:
+    if len(members) > 0:
+        for member in members:
             with open('/tmp/new_subscribers', 'w') as fl:
-                fl.write(f'{ ldap_vars[0] }@gnome.org' + '\n')
+                fl.write(f'{ member }@gnome.org' + '\n')
 
             import subprocess
             subscribe = subprocess.Popen(['/usr/lib/mailman/bin/add_members', '-a', 'n', '-r', 
'/tmp/new_subscribers', 'foundation-announce'])


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]