samanage 1.4 → 1.5.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 +4 -4
- data/lib/samanage/api.rb +12 -4
- data/lib/samanage/api/custom_forms.rb +1 -1
- data/lib/samanage/api/hardwares.rb +3 -3
- data/lib/samanage/api/incidents.rb +2 -2
- data/lib/samanage/api/other_assets.rb +2 -2
- data/lib/samanage/api/requester.rb +1 -1
- data/lib/samanage/api/users.rb +4 -4
- data/lib/samanage/error.rb +1 -1
- data/lib/samanage/url_builder.rb +1 -1
- data/samanage.gemspec +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3e49ce72a751f5236319e16bc11da84747b6af2b
|
4
|
+
data.tar.gz: b919e086c1293a6253ff9b365d0331962c25378c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9056b29ff625771ac418e12ec935e7f089f411b0e52d6561d827d32954e3bc0c76e215e8391a1522d7267d4d615f2e4405d2ebbdd4ca486b2a44ac2e0015314d
|
7
|
+
data.tar.gz: cd9fcee69f53de525ee2a519e89c9d114a14a2aa7a51931287e906e4842cac216fb9658cf43c8d68304634b88cef829fd805a576bdd37bedb34f483f385347ee
|
data/lib/samanage/api.rb
CHANGED
@@ -9,7 +9,7 @@ module Samanage
|
|
9
9
|
custom_forms: 'custom_forms.json',
|
10
10
|
}
|
11
11
|
attr_accessor :datacenter, :content_type, :base_url, :token, :custom_forms
|
12
|
-
def initialize(token: , dacenter: '', development_mode: false)
|
12
|
+
def initialize(token: '', dacenter: '', development_mode: false)
|
13
13
|
self.token = token
|
14
14
|
self.datacenter = nil || datacenter
|
15
15
|
self.base_url = "https://api#{datacenter}.samanage.com/"
|
@@ -22,11 +22,15 @@ module Samanage
|
|
22
22
|
end
|
23
23
|
|
24
24
|
def authorize
|
25
|
-
|
25
|
+
self.execute(path: 'api.json')
|
26
|
+
rescue OpenSSL::SSL::SSLError => e
|
27
|
+
puts "Raised: #{e} #{e.class}"
|
28
|
+
puts 'Disabling Local SSL Verification'
|
29
|
+
self.execute(path: 'api.json', ssl_fix: true)
|
26
30
|
end
|
27
31
|
|
28
32
|
# Defaults to GET
|
29
|
-
def execute(http_method: 'get', path: , payload: nil, verbose: nil)
|
33
|
+
def execute(http_method: 'get', path: nil, payload: nil, verbose: nil, ssl_fix: false)
|
30
34
|
unless verbose.nil?
|
31
35
|
verbose = '?layout=long'
|
32
36
|
end
|
@@ -36,7 +40,11 @@ module Samanage
|
|
36
40
|
'Content-type' => "application/#{self.content_type}",
|
37
41
|
'X-Samanage-Authorization' => 'Bearer ' + self.token
|
38
42
|
)
|
39
|
-
|
43
|
+
ctx = OpenSSL::SSL::SSLContext.new
|
44
|
+
if ssl_fix
|
45
|
+
ctx.verify_mode = OpenSSL::SSL::VERIFY_NONE
|
46
|
+
end
|
47
|
+
api_call = api_call.public_send(http_method.to_sym, self.base_url + Addressable::URI.encode_component(path, Addressable::URI::CharacterClasses::QUERY).gsub('+',"%2B"), :body => payload, ssl_context: ctx)
|
40
48
|
response = Hash.new
|
41
49
|
response[:code] = api_call.code.to_i
|
42
50
|
response[:json] = api_call.body
|
@@ -19,12 +19,12 @@ module Samanage
|
|
19
19
|
hardwares
|
20
20
|
end
|
21
21
|
|
22
|
-
def create_hardware(payload: , options: {})
|
22
|
+
def create_hardware(payload: nil, options: {})
|
23
23
|
api_call = self.execute(path: PATHS[:hardware], http_method: 'post', payload: payload)
|
24
24
|
api_call
|
25
25
|
end
|
26
26
|
|
27
|
-
def find_hardware(id: )
|
27
|
+
def find_hardware(id: nil)
|
28
28
|
path = "hardwares/#{id}.json"
|
29
29
|
api_call = self.execute(path: path)
|
30
30
|
api_call
|
@@ -38,7 +38,7 @@ module Samanage
|
|
38
38
|
end
|
39
39
|
|
40
40
|
|
41
|
-
def update_hardware(payload
|
41
|
+
def update_hardware(payload: nil, id:, options: {})
|
42
42
|
path = "hardwares/#{id}.json"
|
43
43
|
api_call = self.execute(path: path, http_method: 'put', payload: payload)
|
44
44
|
api_call
|
@@ -24,13 +24,13 @@ module Samanage
|
|
24
24
|
api_call
|
25
25
|
end
|
26
26
|
|
27
|
-
def find_incident(id: )
|
27
|
+
def find_incident(id: nil)
|
28
28
|
path = "incidents/#{id}.json"
|
29
29
|
api_call = self.execute(path: path)
|
30
30
|
api_call
|
31
31
|
end
|
32
32
|
|
33
|
-
def update_incident(payload
|
33
|
+
def update_incident(payload: nil, id: nil, options: {})
|
34
34
|
path = "incidents/#{id}.json"
|
35
35
|
api_call = self.execute(path: path, http_method: 'put', payload: payload)
|
36
36
|
api_call
|
@@ -25,13 +25,13 @@ module Samanage
|
|
25
25
|
api_call
|
26
26
|
end
|
27
27
|
|
28
|
-
def find_other_asset(id: )
|
28
|
+
def find_other_asset(id: nil)
|
29
29
|
path = "other_assets/#{id}.json"
|
30
30
|
api_call = self.execute(path: path)
|
31
31
|
api_call
|
32
32
|
end
|
33
33
|
|
34
|
-
def update_other_asset(payload
|
34
|
+
def update_other_asset(payload: nil, id: nil, options: {})
|
35
35
|
path = "other_assets/#{id}.json"
|
36
36
|
api_call = self.execute(path: path, http_method: 'put', payload: payload)
|
37
37
|
api_call
|
data/lib/samanage/api/users.rb
CHANGED
@@ -21,24 +21,24 @@ module Samanage
|
|
21
21
|
users
|
22
22
|
end
|
23
23
|
|
24
|
-
def create_user(payload: , options: {})
|
24
|
+
def create_user(payload: nil, options: {})
|
25
25
|
api_call = self.execute(path: PATHS[:user], http_method: 'post', payload: payload)
|
26
26
|
api_call
|
27
27
|
end
|
28
28
|
|
29
|
-
def find_user(id: )
|
29
|
+
def find_user(id: nil)
|
30
30
|
path = "users/#{id}.json"
|
31
31
|
api_call = self.execute(path: path)
|
32
32
|
api_call
|
33
33
|
end
|
34
34
|
|
35
|
-
def check_user(field: 'email', value: )
|
35
|
+
def check_user(field: 'email', value: nil)
|
36
36
|
url = "users.json?#{field}=#{value}"
|
37
37
|
api_call = self.execute(path: url)
|
38
38
|
api_call
|
39
39
|
end
|
40
40
|
|
41
|
-
def update_user(payload
|
41
|
+
def update_user(payload: nil, id: nil)
|
42
42
|
path = "users/#{id}.json"
|
43
43
|
puts "Path: #{path}"
|
44
44
|
api_call = self.execute(path: path, http_method: 'put', payload: payload)
|
data/lib/samanage/error.rb
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
module Samanage
|
2
2
|
class Error < StandardError
|
3
3
|
attr_accessor :status_code, :response, :error
|
4
|
-
def initialize(error: , response: {})
|
4
|
+
def initialize(error: nil, response: {})
|
5
5
|
self.status_code = response[:code]
|
6
6
|
self.response = response[:data] ||= response[:response]
|
7
7
|
self.error = error
|
data/lib/samanage/url_builder.rb
CHANGED
data/samanage.gemspec
CHANGED