lib/omniauth/strategies/gitlab.rb (24 lines of code) (raw):

require 'omniauth-oauth2' module OmniAuth module Strategies class GitLab < OmniAuth::Strategies::OAuth2 option :name, 'gitlab' option :client_options, { site: 'https://gitlab.com', authorize_url: '/oauth/authorize/', token_url: '/oauth/token/' } uid { raw_info["id"] } info do { email: raw_info["email"], username: raw_info["username"], name: raw_info["name"] } end def raw_info @raw_info ||= access_token.get('/api/v3/user').parsed end end # GitLab end # Strategies end # OmniAuth