Profile updates from providers
What does this MR do?
This MR adds generalized profile updates for OmniAuth providers by introducing the sync_profile_from_provider
and sync_profile_attributes
options, in line with issue 34817.
Currently handles name, email and location from any OmniAuth provider.
Are there points in the code the reviewer needs to double check?
The MR handles backwards compatibility from the sync_email_from_provider
option that was introduced in the !11268(merged) merge request.
The backwards compatibility handling is done in the 1_settings.rb file, to keep things cleaner.
Additionally this MR drops two columns from the users
table. Given that, it uses the ignore_column
for these two columns (namely external_mail
and email_provider
). So the two ignore_column
lines need to be removed from the user
model in the appropriate time in the future.
Why was this MR needed?
In line with the proposal in issue 34817, to generalize the current functionality of keeping the email up to date when the user connects from an OAuth provider to keeping email, name, and location up to date.
This previous functionality was added by the !11268(merged) merge request.
Screenshots (if relevant)
Does this MR meet the acceptance criteria?
-
Changelog entry added, if necessary -
Documentation created/updated -
API support added - Tests
-
Added for this feature/bug -
All builds are passing
-
-
Conform by the merge request performance guides -
Conform by the style guides -
Branch has no merge conflicts with master
(if it does - rebase it please) -
Squashed related commits together
What are the relevant issue numbers?
Issue 34817.