Commit 5436d6af authored by Dmitriy Zaporozhets's avatar Dmitriy Zaporozhets

Make oauth works for google oauth too

Signed-off-by: default avatarDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
parent 021faad3
......@@ -8,6 +8,7 @@ v 6.8.0
- Create branches via API (sponsored by O'Reilly Media)
- Changed permission of gitlab-satellites directory not to be world accessible
- Protected branch does not allow force push
- Allow oauth signup without email for twitter and github
v 6.7.3
- Fix the merge notification email not being sent (Pierre de La Morinerie)
......
......@@ -30,12 +30,18 @@ module Gitlab
user = model.build_user(opts, as: :admin)
user.skip_confirmation!
# Services like twitter and github does not return email via oauth
# In this case we generate temporary email and force user to fill it later
if user.email.blank?
user.generate_tmp_oauth_email
user.save!(validate: false)
else
# Google oauth returns email but dont return nickname
# So we use part of email as username for new user
user.username = email.match(/^[^@]*/)[0]
user.save
end
user.save!(validate: false)
log.info "(OAuth) Creating user #{email} from login with extern_uid => #{uid}"
if Gitlab.config.omniauth['block_auto_created_users'] && !ldap?
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment