1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75
|
# Omniauth::Gitlab
[](https://gitter.im/linchus/omniauth-gitlab?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
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'
}
}
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](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
|