about summary refs log tree commit diff
path: root/scripts
diff options
context:
space:
mode:
authorFrederick Muriuki Muriithi2024-05-30 12:03:38 -0500
committerFrederick Muriuki Muriithi2024-06-03 10:02:08 -0500
commit7c0ee01c1d134cbee0a2c8243dd55e4eeaaa5f7c (patch)
treecaeb61fab877b7b344608af4a55b36a18b3283c2 /scripts
parentd2e9e9afde6d01bca49e5173282ac318c37460e0 (diff)
downloadgn-auth-7c0ee01c1d134cbee0a2c8243dd55e4eeaaa5f7c.tar.gz
Move user creation from db resultset into static method
Creation of a User object from the database resultset will mostly be
the same. This commit moves the repetitive code into a static method
that can be called wherever we need it.

This improves maintainability, since we only ever need to do an update
in one place now.
Diffstat (limited to 'scripts')
-rw-r--r--scripts/migrate_existing_data.py3
1 files changed, 1 insertions, 2 deletions
diff --git a/scripts/migrate_existing_data.py b/scripts/migrate_existing_data.py
index ab3e739..1b44666 100644
--- a/scripts/migrate_existing_data.py
+++ b/scripts/migrate_existing_data.py
@@ -35,8 +35,7 @@ def sys_admins(conn: authdb.DbConnection) -> tuple[User, ...]:
             "INNER JOIN user_roles AS ur ON u.user_id=ur.user_id "
             "INNER JOIN roles AS r ON ur.role_id=r.role_id "
             "WHERE r.role_name='system-administrator'")
-        return tuple(User(UUID(row["user_id"]), row["email"], row["name"])
-                     for row in cursor.fetchall())
+        return tuple(User.from_sqlite3_row(row) for row in cursor.fetchall())
     return tuple()
 
 def choose_admin(enum_admins: dict[int, User]) -> int: