User mapping - POC
The objective of this task is to create a proof of concept for the improved user mapping feature described in &12378.
The main objective is to test the proposed feature, identify any oversights, and ensure its feasibility.
For the POC, we will implement some core features:
- Update Direct Transfer to create users during the import process and allocate contributions to these newly created users.
- Save additional information for each created user in a separate table. This information should include: source_user_id, source_hostname, source_name, source_username, and import_type.
- When creating a user in the user table, maintain consistency by using the same name as the source name. The username structure should follow a format similar to
%{source_username}_placeholder_user_%{unique number}
. - Make sure Direct Transfer only creates one user per source_user_id and re-use the user if a corresponding one exists.
- Make sure for these users to be re-used across multiple migrations
- Create a class that enables re-assigning a user's contributions in a project to another user. For the POC, we can execute the class using Rails console.
Edited by Rodrigo Tomonari