1
0
Fork 0

Configure Devise with OmniAuth for GitHub

This commit is contained in:
Alex Kotov 2018-12-04 07:28:16 +05:00
parent 68ad8fc2c1
commit 00d98742ca
No known key found for this signature in database
GPG Key ID: 4E831250F47DE154
5 changed files with 33 additions and 3 deletions

View File

@ -89,6 +89,12 @@ gem 'pundit', '~> 2.0'
# for performing complex user interactions.
gem 'interactor', '~> 3.1'
# A generalized Rack framework for multiple-provider authentication.
gem 'omniauth', '~> 1.8'
# Official OmniAuth strategy for GitHub.
gem 'omniauth-github', '~> 1.3'
group :development, :test do
# factory_bot provides a framework and DSL for defining and using factories.
gem 'factory_bot_rails', '~> 4.10'

View File

@ -150,6 +150,7 @@ GEM
gherkin (5.1.0)
globalid (0.4.1)
activesupport (>= 4.2.0)
hashie (3.5.7)
http-cookie (1.0.3)
domain_name (~> 0.5)
i18n (1.1.1)
@ -161,6 +162,7 @@ GEM
railties (>= 4.2.0)
thor (>= 0.14, < 2.0)
json (2.1.0)
jwt (2.1.0)
launchy (2.4.3)
addressable (~> 2.3)
letter_opener (1.6.0)
@ -190,6 +192,7 @@ GEM
msgpack (1.2.4)
multi_json (1.13.1)
multi_test (0.1.2)
multi_xml (0.6.0)
multipart-post (2.0.0)
net-scp (1.2.1)
net-ssh (>= 2.6.5)
@ -198,6 +201,21 @@ GEM
nio4r (2.3.1)
nokogiri (1.8.5)
mini_portile2 (~> 2.3.0)
oauth2 (1.4.1)
faraday (>= 0.8, < 0.16.0)
jwt (>= 1.0, < 3.0)
multi_json (~> 1.3)
multi_xml (~> 0.5)
rack (>= 1.2, < 3)
omniauth (1.8.1)
hashie (>= 3.4.6, < 3.6.0)
rack (>= 1.6.2, < 3)
omniauth-github (1.3.0)
omniauth (~> 1.5)
omniauth-oauth2 (>= 1.4.0, < 2.0)
omniauth-oauth2 (1.5.0)
oauth2 (~> 1.1)
omniauth (~> 1.2)
orm_adapter (0.5.0)
parallel (1.12.1)
parser (2.5.3.0)
@ -389,6 +407,8 @@ DEPENDENCIES
letter_opener (~> 1.6)
listen (>= 3.0.5, < 3.2)
mini_racer
omniauth (~> 1.8)
omniauth-github (~> 1.3)
pg (>= 0.18, < 2.0)
pry-rails (~> 0.3)
puma (~> 3.11)

View File

@ -5,13 +5,14 @@ class User < ApplicationRecord
:confirmable,
:database_authenticatable,
:lockable,
# :omniauthable,
:omniauthable,
:recoverable,
:registerable,
:rememberable,
:timeoutable,
:trackable,
:validatable,
omniauth_providers: %i[github],
)
belongs_to :account

View File

@ -1 +1 @@
Zz5yhPFWJUYxSjnvGVnK96y7BPjoB5O3uOmuky3X5NChnp+L6Akf1f10EjcGDW2btupSUDLM2PS1YuLdxMHOF/8HvRFAoRfVUNNOgdA1IxeOiTMU/v209dBGp/o6ZTF5XbIE8CfzudBxNMhLc8FbvBbJRcuXLXy5zSJvx2TEu+EsJr4b5BHHjPd++o/lbOTdAkxiv7A+0C+jpbkl/PslkZ84XYSK1QREQVTWzY/fpNeprHsZG7nwmDMK28hYi7zCBb9LlO2OVkXIhHmaDTGV/ASfVPS6y9/8h3EURcM3X/0iezE8MSg7YjO73qNzSbpOfNrOrrhmNc3iX4fQ7EZgBXuIVBLOBCBgQS94GfHG4Ml9vZtkMpkVofu1+L2dMlTXV7f8HLYDgqFA+yQEIoaLd7LnjmBAV1rxvkPJUNPNDlT/SL1JAk/vJhIdLXu/+FVVEkFw65E05QT+BxriWJyMwhin8KLihY29zG/Q53iBDR+zz5SgIea7CraSM39SVG2dejAU9ZfTJ5ddglJ90VQJFEd0e40gF6a5Wkvj4ikuX6ScO4pmP33gCy1xwLw0/aYvWtfyxBO0Xrtfpa7a/39Y+RUJUyHyM9CELV7eF64xebpxjdHfI4h+GcRqAqoYQlp4iM4gcRLO17B13pCDXuFEm/pOjSa1v1cs43RzGsWDF9Aw8eLYQE1PyONd04WCT+Utg/P6q4Qk3RWA5qpXWY/05/eZvo9d19+D3tKZzy0ItSIS4G99A46LkEaXV6LIJwdWh27SP1k5tx0jx+z0G/dYBWeF26BFSXjEmiPEX2ekoiIBQcDQPKp2U2oXQ1jACE/mrQwoYT5BnmrZA1w8USrCAvciDI20k29QQ1CI00xn5vAPN17w3YVzZEi4h39ZTQB4sVeY/oj1fbz5KNIEvRPIUq+zJmzqVq1HFy/uqmCYajDnM8HSw8FMVvNuCLkerEsxyvPTRya+BFFDk8Nxxz2a6rU4vQ==--v1aV0kZzjF/Kzvj2--xwpZ+D0K6fM0SquHxUblbw==
KlH7f4yCAXGaEEh4Afk8p9j0Yb9QggirR2n3HKuLwXZRjQH/VQNwn81s6c5qH/HNhJB/6yjgW241ZrmJsHJ4N8lo06e60ImIdyBmb3ZWJ4XHEAL7/AkvN3nsZOGutIq4UFcFUX/YlVXsbkZ+jGyUtDM5haTwriHNG3rtiN8iO76wPcuBnIIn7aLq52P8t4URFlklVAXbqbqGD98Vfi8KhfeJefZoPcvxr3EuFaZ4HhHcQSA2v7ljZVNI9YwyU0C67oeT5cszLKa6I7m2LyPkjBfTysHLVXKKdCcuXkXXOqZap68TeEF0tWpLSQuN11ArvQ12cTSKWQyECBCtfJTm0OTbNhMYuwQFJRbVCprlLOdH4PIR9FlM7C1AOfqN1t1JgI69dRVtpaQ6YpJzz3P67y/ZdvIG+0rSuV52ftJ7FvSTHWgE++gUtTngHbyVqSfcYptgWLLxcFieHHDgVbVfgMZaQT7vrCmBATZhrEUI4YboQtiUpwVP6+0FfqzUsOcKKV26A6vaMfFE9i/JXmRmYCUTh23kD4CVGqLvCOWNWWYlHNzF2xFZxfpNPw/VYPQ8ivQmmdTiDhcTTzGhZxcYh3XWWG6S3lQAp4w05hER1Ego+MS/mQoLSQjol6BDaw81Xk9c/TWv8xPdY9iEoTWIwfFXtGG3D9kDALLX0FL5FDBqgzkyYh/DXdgHxQ25dIEQpQyrweEdW16NUIufg+VIl/0VbS/gy1e9IyV6D3LX0fd4mabZUeg9GjpK6P4M+4I4CsuC3ePIm24Q1uQ8hoJX4xdGKnr+2lwJvhA2plsfrHMvL3Sb76H9gsCI8S2Byhw+366MZef6g5AVRLt/KmIWoO2EUex1G4MHMkdm0gamwMjKuyFwN2CNgFTSi0bkW8Wyeq7ucWRuUslqH3GbAPgac0Hm+Hz7i4IZAlMi4bVbuLipJYCvs0C0xnxRpn3dhFV2p4M8cqCXl/08LGu7D5qMbyg2WJQsZrY1OPBkCgnzliARi4OsTXZ8qR5QnifRzeOBAmFSb98ADGYy9A/MHxVfDe5rsiR47lOFLaIB7/ZA/JXMPj503FNL9pSB0iEMSzaNbPBn3otR0+WmGzLQHlh6UEcryDaTYBo=--Xc6ZkG4UOWIfxC8F--T8lW8mV3EQqct2DZugcELw==

View File

@ -260,7 +260,10 @@ Devise.setup do |config|
# ==> OmniAuth
# Add a new OmniAuth provider. Check the wiki for more information on setting
# up on your models and hooks.
# config.omniauth :github, 'APP_ID', 'APP_SECRET', scope: 'user,public_repo'
config.omniauth :github,
Rails.application.credentials.github[:client_id],
Rails.application.credentials.github[:client_secret],
scope: 'user,public_repo'
# ==> Warden configuration
# If you want to use other strategies, that are not supported by Devise, or