Strategy for authenticating to your GitLab service
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
lib Bump version to 2.0.0 Aug 24, 2018
spec Remove backwards compatible with 1.0.x Aug 24, 2018
.gitignore init commit Mar 6, 2013
.project
.rspec
Gemfile
LICENSE.txt init commit Mar 6, 2013
README.md
Rakefile Cleanup code Jan 10, 2018
omniauth-gitlab.gemspec Add backwards compatible for 1.0.x Aug 24, 2018

README.md

Omniauth::Gitlab

Join the chat at https://gitter.im/linchus/omniauth-gitlab

This is the OAuth2 strategy for authenticating to your GitLab service.

Requirements

Gitlab 7.7.0+

Installation

Add this line to your application's Gemfile:

gem 'omniauth-gitlab'

And then execute:

$ bundle

Or install it yourself as:

$ gem install omniauth-gitlab

Basic Usage

use OmniAuth::Builder do
  provider :gitlab, ENV['GITLAB_KEY'], ENV['GITLAB_SECRET']
end

Standalone Usage

use OmniAuth::Builder do
  provider :gitlab, ENV['GITLAB_KEY'], ENV['GITLAB_SECRET'],
    {
       client_options: {
         site: 'https://gitlab.YOURDOMAIN.com/api/v4'
       }
    }
end

Custom scopes

By default, the api scope is requested and must be allowed in GitLab's application configuration. To use different scopes:

use OmniAuth::Builder do
  provider :gitlab, ENV['GITLAB_KEY'], ENV['GITLAB_SECRET'], scope: 'read_user openid'
end

Requesting a scope that is not configured will result the error "The requested scope is invalid, unknown, or malformed.".

Old API version

API V3 will be unsupported from GitLab 9.5 and will be removed in GitLab 9.5 or later.

https://gitlab.com/help/api/v3_to_v4.md

If you use GitLab 9.0 and below you could configure V3 API:

use OmniAuth::Builder do
  provider :gitlab, ENV['GITLAB_KEY'], ENV['GITLAB_SECRET'],
    {
       client_options: {
         site: 'https://gitlab.YOURDOMAIN.com/api/v3'
       }
    }
end

Contributing

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request