Skip to content

Commit 6e7b03d

Browse files
authored
Migration of users for multiworkspace environment (#1500)
1 parent b5859c9 commit 6e7b03d

File tree

2 files changed

+9
-3
lines changed

2 files changed

+9
-3
lines changed

platform/services/initial_user/app/account_service_client.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,8 +35,9 @@ def handle_rpcerror(self, rpc_err: RpcError, email: str) -> None:
3535

3636
def migrate_accounts(
3737
self, uh_connection: UsersHandlerConnection, postgresql_connection: PostgreSQLConnection, organization_id: str
38-
) -> None:
38+
) -> bool:
3939
users = uh_connection.get_accounts_for_migration()
40+
number_of_migrated_users = 0
4041
for index, user in enumerate(users):
4142
is_org_admin = index == 0
4243
if user["mail"] is None:
@@ -88,9 +89,13 @@ def migrate_accounts(
8889
organization_id=organization_id,
8990
is_admin=is_org_admin,
9091
)
92+
93+
number_of_migrated_users += 1
9194
except RpcError as rpc_err:
9295
self.handle_rpcerror(rpc_err, user["mail"])
9396

97+
return number_of_migrated_users == len(users)
98+
9499
@staticmethod
95100
def update_user_id_spicedb(
96101
postgresql_connection: PostgreSQLConnection, user_mail: str | None, user_uid: str

platform/services/initial_user/app/run_migration.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,10 +42,11 @@ def main() -> None:
4242
SpiceDB().link_organization_to_workspace_in_spicedb(workspace_id=workspace_id, organization_id=organization_id)
4343
psql_connection = PostgreSQLConnection()
4444
try: # https://www.psycopg.org/docs/usage.html#with-statement
45-
acc_svc.migrate_accounts(
45+
first_migration: bool = acc_svc.migrate_accounts(
4646
uh_connection=uh_connection, postgresql_connection=psql_connection, organization_id=organization_id
4747
)
48-
psql_connection.update_workspace_object_id(workspace_id=workspace_id)
48+
if first_migration:
49+
psql_connection.update_workspace_object_id(workspace_id=workspace_id)
4950
finally:
5051
psql_connection.close()
5152

0 commit comments

Comments
 (0)