omniauth-mavenlink 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.gitignore +17 -0
- data/Gemfile +12 -0
- data/README.md +19 -0
- data/Rakefile +2 -0
- data/lib/omniauth-mavenlink.rb +2 -0
- data/lib/omniauth-mavenlink/version.rb +5 -0
- data/lib/omniauth/strategies/mavenlink.rb +48 -0
- data/omniauth-mavenlink.gemspec +24 -0
- metadata +135 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: d67cebb5193cfa5fc7d6c4116d8dc29c75c0f2b9
|
4
|
+
data.tar.gz: ac75aed14afdb258cdc961b18b01757843b293e1
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 8abd8ae313d0047cfe0a1388879cbbc2fe5a408c38a4f894468b04f0e60ab8002604c7d6593e8918ce0bd939fa0de1b6d06e48631144363b54475ee99d25a0b3
|
7
|
+
data.tar.gz: 986084ee63162520e8591287006b6b9860a84b8e59b5fbb7ee2c03536ebd18513e1b36c894684a9608345ddcdaac2f92e88e534732d0e8cef36edc6b58c95bc8
|
data/.gitignore
ADDED
data/Gemfile
ADDED
data/README.md
ADDED
@@ -0,0 +1,19 @@
|
|
1
|
+
# Omniauth Mavenlink
|
2
|
+
|
3
|
+
This is an OmniAuth strategy for authenticating to Mavenlink. To use it, you will need to add an OAuth2 application in Mavenlink and have the Client ID and Client Secret.
|
4
|
+
|
5
|
+
For more information about the Mavenlink API: http://developer.mavenlink.com/
|
6
|
+
|
7
|
+
## Basic Usage
|
8
|
+
|
9
|
+
If you are using Rails, add the gem to your `Gemfile`:
|
10
|
+
|
11
|
+
gem 'omniauth-mavenlink'
|
12
|
+
|
13
|
+
Once installed, add the following to `config/initializers/omniauth.rb`:
|
14
|
+
|
15
|
+
use OmniAuth::Builder do
|
16
|
+
provider :mavenlink, ENV['MAVENLINK_KEY'], ENV['MAVENLINK_SECRET']
|
17
|
+
end
|
18
|
+
|
19
|
+
|
data/Rakefile
ADDED
@@ -0,0 +1,48 @@
|
|
1
|
+
require 'omniauth-oauth2'
|
2
|
+
|
3
|
+
module OmniAuth
|
4
|
+
module Strategies
|
5
|
+
class Mavenlink < OmniAuth::Strategies::OAuth2
|
6
|
+
|
7
|
+
option :name, 'mavenlink'
|
8
|
+
|
9
|
+
option :client_options, {
|
10
|
+
site: 'https://app.mavenlink.com',
|
11
|
+
authorize_url: 'https://app.mavenlink.com/oauth/authorize?response_type=code',
|
12
|
+
token_url: 'https://app.mavenlink.com/oauth/token'
|
13
|
+
}
|
14
|
+
|
15
|
+
option :token_params, {
|
16
|
+
grant_type: 'authorization_code',
|
17
|
+
}
|
18
|
+
|
19
|
+
uid { parsed_info['id'].to_s }
|
20
|
+
|
21
|
+
info do {
|
22
|
+
:name => parsed_info['full_name'],
|
23
|
+
:email => parsed_info['email_address'],
|
24
|
+
:headline => parsed_info['headline'],
|
25
|
+
:account_id => parsed_info['account_id'].to_s,
|
26
|
+
:plan_type => parsed_info['plan_type'],
|
27
|
+
:account_permission => parsed_info['account_permission'],
|
28
|
+
:photo_path => parsed_info['photo_path']
|
29
|
+
}
|
30
|
+
end
|
31
|
+
|
32
|
+
extra do {
|
33
|
+
'raw_info' => raw_info
|
34
|
+
}
|
35
|
+
end
|
36
|
+
|
37
|
+
def raw_info
|
38
|
+
@raw_info ||= access_token.get('https://api.mavenlink.com/api/v1/users/me.json').parsed
|
39
|
+
end
|
40
|
+
|
41
|
+
def parsed_info
|
42
|
+
@parsed_info = raw_info['users'].values.first
|
43
|
+
end
|
44
|
+
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|
48
|
+
|
@@ -0,0 +1,24 @@
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
2
|
+
require File.expand_path('../lib/omniauth-mavenlink/version.rb', __FILE__)
|
3
|
+
|
4
|
+
Gem::Specification.new do |gem|
|
5
|
+
gem.authors = ["Adam Bedford"]
|
6
|
+
gem.email = ["abedford@mavenlink.com"]
|
7
|
+
gem.description = %q{OmniAuth strategy for Mavenlink.}
|
8
|
+
gem.summary = %q{OmniAuth strategy for Mavenlink.}
|
9
|
+
gem.homepage = "https://github.com/adambedford/omniauth-mavenlink"
|
10
|
+
|
11
|
+
gem.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
|
12
|
+
gem.files = `git ls-files`.split("\n")
|
13
|
+
gem.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
14
|
+
gem.name = "omniauth-mavenlink"
|
15
|
+
gem.require_paths = ["lib"]
|
16
|
+
gem.version = OmniAuth::Mavenlink::VERSION
|
17
|
+
|
18
|
+
gem.add_dependency 'omniauth', '~> 1.0'
|
19
|
+
gem.add_dependency 'omniauth-oauth2', '~> 1.1'
|
20
|
+
gem.add_development_dependency 'rspec', '~> 2.7'
|
21
|
+
gem.add_development_dependency 'rack-test'
|
22
|
+
gem.add_development_dependency 'simplecov'
|
23
|
+
gem.add_development_dependency 'webmock'
|
24
|
+
end
|
metadata
ADDED
@@ -0,0 +1,135 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: omniauth-mavenlink
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.1
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Adam Bedford
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2015-01-08 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: omniauth
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '1.0'
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - "~>"
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '1.0'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: omniauth-oauth2
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - "~>"
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '1.1'
|
34
|
+
type: :runtime
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - "~>"
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '1.1'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: rspec
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - "~>"
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '2.7'
|
48
|
+
type: :development
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - "~>"
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '2.7'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: rack-test
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - ">="
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
62
|
+
type: :development
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - ">="
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '0'
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: simplecov
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - ">="
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '0'
|
76
|
+
type: :development
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - ">="
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: '0'
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: webmock
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - ">="
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: '0'
|
90
|
+
type: :development
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - ">="
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: '0'
|
97
|
+
description: OmniAuth strategy for Mavenlink.
|
98
|
+
email:
|
99
|
+
- abedford@mavenlink.com
|
100
|
+
executables: []
|
101
|
+
extensions: []
|
102
|
+
extra_rdoc_files: []
|
103
|
+
files:
|
104
|
+
- ".gitignore"
|
105
|
+
- Gemfile
|
106
|
+
- README.md
|
107
|
+
- Rakefile
|
108
|
+
- lib/omniauth-mavenlink.rb
|
109
|
+
- lib/omniauth-mavenlink/version.rb
|
110
|
+
- lib/omniauth/strategies/mavenlink.rb
|
111
|
+
- omniauth-mavenlink.gemspec
|
112
|
+
homepage: https://github.com/adambedford/omniauth-mavenlink
|
113
|
+
licenses: []
|
114
|
+
metadata: {}
|
115
|
+
post_install_message:
|
116
|
+
rdoc_options: []
|
117
|
+
require_paths:
|
118
|
+
- lib
|
119
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
120
|
+
requirements:
|
121
|
+
- - ">="
|
122
|
+
- !ruby/object:Gem::Version
|
123
|
+
version: '0'
|
124
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
125
|
+
requirements:
|
126
|
+
- - ">="
|
127
|
+
- !ruby/object:Gem::Version
|
128
|
+
version: '0'
|
129
|
+
requirements: []
|
130
|
+
rubyforge_project:
|
131
|
+
rubygems_version: 2.4.5
|
132
|
+
signing_key:
|
133
|
+
specification_version: 4
|
134
|
+
summary: OmniAuth strategy for Mavenlink.
|
135
|
+
test_files: []
|