cloudally 0.1.1 → 0.1.2
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 +4 -4
- data/.gitignore +1 -1
- data/CHANGELOG.md +9 -4
- data/cloudally.gemspec +16 -16
- data/lib/cloudally/authentication.rb +5 -5
- data/lib/cloudally/configuration.rb +4 -5
- data/lib/cloudally/connection.rb +17 -15
- data/lib/cloudally/version.rb +1 -1
- metadata +4 -10
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 26ff0cec39018a19e5f5f42cbb64628f060a19702ade85a67a9fa760b7edf0d4
|
4
|
+
data.tar.gz: 7d02ca3eb358d908ac2dec13b6f2b449d0e1213e97255414b7401dc826343799
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f50593cbf3f41eaf514a54a821eeb3f94f7360de5823ca066e13725faf1c58fe35e577852987eb20a7ecf402742c91e2a794a89d016d62230c725dcd31b7c815
|
7
|
+
data.tar.gz: d5757a6b9737d8558abfdf977e90972fbd1e3b47457d1a7f99592942726947bc62a80cb608b9da4a4b19473da9d07c71e024beac8845ab3d62967bdd87013fa8
|
data/.gitignore
CHANGED
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,10 @@
|
|
1
|
-
## [Unreleased]
|
1
|
+
## [Unreleased]
|
2
|
+
|
3
|
+
## [0.1.0] - 2024-01-25
|
4
|
+
- Initial release
|
2
5
|
|
3
|
-
## [0.1.
|
4
|
-
|
5
|
-
|
6
|
+
## [0.1.1] - 2024-01-25
|
7
|
+
- Missing files added to gem
|
8
|
+
|
9
|
+
## [0.1.2] - 2024-01-30
|
10
|
+
- Correct version faraday library
|
data/cloudally.gemspec
CHANGED
@@ -1,35 +1,35 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require_relative
|
3
|
+
require_relative 'lib/cloudally/version'
|
4
4
|
|
5
5
|
Gem::Specification.new do |s|
|
6
|
-
s.name =
|
6
|
+
s.name = 'cloudally'
|
7
7
|
s.version = CloudAlly::VERSION
|
8
|
-
s.authors = [
|
9
|
-
s.email =
|
10
|
-
s.license =
|
8
|
+
s.authors = ['Janco Tanis']
|
9
|
+
s.email = 'gems@jancology.com'
|
10
|
+
s.license = 'MIT'
|
11
11
|
|
12
|
-
s.summary =
|
13
|
-
s.homepage =
|
12
|
+
s.summary = 'A Ruby wrapper for the CloudAlly Partner Portal REST APIs (readonly)'
|
13
|
+
s.homepage = 'https://rubygems.org/gems/cloudally'
|
14
14
|
|
15
|
-
s.required_ruby_version = Gem::Requirement.new(
|
15
|
+
s.required_ruby_version = Gem::Requirement.new('>= 2.4.0')
|
16
16
|
|
17
|
-
s.metadata[
|
18
|
-
s.metadata[
|
17
|
+
s.metadata['homepage_uri'] = s.homepage
|
18
|
+
s.metadata['source_code_uri'] = 'https://github.com/jancotanis/cloudally'
|
19
19
|
|
20
20
|
# Specify which files should be added to the gem when it is released.
|
21
21
|
# The `git ls-files -z` loads the files in the RubyGem that have been added into git.
|
22
22
|
s.files = Dir.chdir(File.expand_path(__dir__)) do
|
23
23
|
`git ls-files -z`.split("\x0").reject { |f| f.match(%r{\A(?:test|spec|features)/}) }
|
24
24
|
end
|
25
|
-
s.bindir =
|
25
|
+
s.bindir = 'exe'
|
26
26
|
s.executables = s.files.grep(%r{\Aexe/}) { |f| File.basename(f) }
|
27
|
-
s.require_paths = [
|
27
|
+
s.require_paths = ['lib']
|
28
28
|
|
29
29
|
s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
30
30
|
s.platform = Gem::Platform::RUBY
|
31
|
-
s.add_runtime_dependency
|
32
|
-
s.add_development_dependency
|
33
|
-
s.add_development_dependency
|
34
|
-
s.add_development_dependency
|
31
|
+
s.add_runtime_dependency 'faraday'
|
32
|
+
s.add_development_dependency 'dotenv'
|
33
|
+
s.add_development_dependency 'minitest'
|
34
|
+
s.add_development_dependency 'rubocop'
|
35
35
|
end
|
@@ -1,5 +1,5 @@
|
|
1
1
|
module CloudAlly
|
2
|
-
#
|
2
|
+
# Deals with authentication flow and stores it within global configuration
|
3
3
|
module Authentication
|
4
4
|
# Authorize to the CloudAlly portal and return access_token
|
5
5
|
def auth(options = {})
|
@@ -40,10 +40,10 @@ module CloudAlly
|
|
40
40
|
def process_token(response)
|
41
41
|
at = nil
|
42
42
|
CloudAlly.configure do |config|
|
43
|
-
at = config.access_token
|
44
|
-
config.token_type
|
45
|
-
config.refresh_token
|
46
|
-
config.token_expires
|
43
|
+
at = config.access_token = response["accessToken"]
|
44
|
+
config.token_type = response["tokenType"]
|
45
|
+
config.refresh_token = response["refreshToken"]
|
46
|
+
config.token_expires = response["expiresIn"]
|
47
47
|
end
|
48
48
|
raise StandardError.new 'Could not find valid accessToken; response ' + response.to_s if at == '' || at.nil?
|
49
49
|
|
@@ -67,15 +67,14 @@ module CloudAlly
|
|
67
67
|
def reset
|
68
68
|
self.access_token = nil
|
69
69
|
self.token_type = nil
|
70
|
-
self.refresh_token = nil
|
71
|
-
self.token_expires = nil
|
70
|
+
self.refresh_token = nil
|
71
|
+
self.token_expires = nil
|
72
72
|
self.client_id = nil
|
73
73
|
self.client_secret = nil
|
74
74
|
self.username = nil
|
75
75
|
self.password = nil
|
76
|
-
|
77
|
-
self.logger =
|
78
|
-
|
76
|
+
|
77
|
+
self.logger = nil
|
79
78
|
self.connection_options = DEFAULT_CONNECTION_OPTIONS
|
80
79
|
self.endpoint = DEFAULT_ENDPOINT
|
81
80
|
self.format = DEFAULT_FORMAT
|
data/lib/cloudally/connection.rb
CHANGED
@@ -7,11 +7,11 @@ module CloudAlly
|
|
7
7
|
|
8
8
|
def connection
|
9
9
|
options = {
|
10
|
-
:
|
11
|
-
'Accept'
|
12
|
-
'User-Agent'
|
10
|
+
headers: {
|
11
|
+
'Accept': "application/#{format}; charset=utf-8",
|
12
|
+
'User-Agent': user_agent
|
13
13
|
},
|
14
|
-
:
|
14
|
+
url: endpoint
|
15
15
|
}.merge(connection_options)
|
16
16
|
|
17
17
|
Faraday::Connection.new(options) do |connection|
|
@@ -21,19 +21,21 @@ module CloudAlly
|
|
21
21
|
connection.authorization :Bearer, access_token if access_token
|
22
22
|
connection.headers['client-id'] = client_id
|
23
23
|
connection.headers['client-secret'] = client_secret
|
24
|
-
connection.response :json, :
|
24
|
+
connection.response :json, content_type: /\bjson$/
|
25
25
|
connection.use Faraday::Request::UrlEncoded
|
26
26
|
|
27
|
-
if logger
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
27
|
+
setup_logger_filtering(connection,logger) if logger
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
31
|
+
def setup_logger_filtering(connection,logger)
|
32
|
+
connection.response :logger, logger, { headers: true, bodies: true } do |l|
|
33
|
+
# filter json content
|
34
|
+
l.filter(/("password":")(.+?)(".*)/, '\1[REMOVED]\3')
|
35
|
+
l.filter(/("accessToken":")(.+?)(".*)/, '\1[REMOVED]\3')
|
36
|
+
# filter header content
|
37
|
+
l.filter(/(client-secret\:.)([^&]+)/, '\1[REMOVED]')
|
38
|
+
l.filter(/(Authorization\:.)([^&]+)/, '\1[REMOVED]')
|
37
39
|
end
|
38
40
|
end
|
39
41
|
end
|
data/lib/cloudally/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cloudally
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Janco Tanis
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-01-
|
11
|
+
date: 2024-01-30 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: faraday
|
@@ -16,20 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '0
|
20
|
-
- - "<"
|
21
|
-
- !ruby/object:Gem::Version
|
22
|
-
version: '0.10'
|
19
|
+
version: '0'
|
23
20
|
type: :runtime
|
24
21
|
prerelease: false
|
25
22
|
version_requirements: !ruby/object:Gem::Requirement
|
26
23
|
requirements:
|
27
24
|
- - ">="
|
28
25
|
- !ruby/object:Gem::Version
|
29
|
-
version: '0
|
30
|
-
- - "<"
|
31
|
-
- !ruby/object:Gem::Version
|
32
|
-
version: '0.10'
|
26
|
+
version: '0'
|
33
27
|
- !ruby/object:Gem::Dependency
|
34
28
|
name: dotenv
|
35
29
|
requirement: !ruby/object:Gem::Requirement
|