shiro 0.1.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 ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: e0065f9bf6fdf82f8dcbfff39ba0422c59a97691ebf4ebb42596b63063bf0aa7
4
+ data.tar.gz: b90f16777c189cdc817e82b60cc5fbbea31d3136f9896d48ba130afe3ee30a1c
5
+ SHA512:
6
+ metadata.gz: 65e5809bce6de212f468fd3f167c021cbaf6546d2f99a972b1afcf544f80dcae914991ab651b18043572ecffa4275c85e97592b7aa645cc46a59121f8714b5a2
7
+ data.tar.gz: 4e3c4bf6c500da21ac3f1448aa3854552b1d7d3077c84ec5d5f872512abb75c6373a9dc1192494648ca05763f0743526af1fc665a767dc94e8c88dd22dcc3d89
data/.gitignore ADDED
@@ -0,0 +1,16 @@
1
+ *.gem
2
+ *.rbc
3
+ .bundle
4
+ .config
5
+ .yardoc
6
+ Gemfile.lock
7
+ InstalledFiles
8
+ _yardoc
9
+ doc/
10
+ lib/bundler/man
11
+ pkg
12
+ rdoc
13
+ test/tmp
14
+ test/version_tmp
15
+ tmp
16
+ .DS_Store
data/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source "https://rubygems.org"
2
+
3
+ # Specify your gem's dependencies in shiro.gemspec
4
+ gemspec
data/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2024 OpenShiro
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
data/README.md ADDED
@@ -0,0 +1,27 @@
1
+ This is the official [Shiro API](https://openshiro.com/api/v1/docs) Ruby gem maintained by [OpenShiro](https://openshiro.com).
2
+
3
+ To use the gem, include it in your Rails gemfile with:
4
+
5
+ `bundle add shiro`
6
+
7
+ or directly in the gemfile:
8
+
9
+ `gem "shiro", "~> 0.1"`
10
+
11
+ Example usage:
12
+
13
+ ````
14
+ require "shiro"
15
+
16
+ Shiro.configure do |config|
17
+ config[:api_key] = "your_api_key..."
18
+ end
19
+
20
+ # List deployments
21
+ deployments = Shiro::Deployment.list
22
+ puts deployments.body
23
+
24
+ # Retrieve single deployment
25
+ deployment = Shiro::Deployment.retrieve("dpmt_lWokJnPAwQCeV2ZWovjG7BNr")
26
+ puts deployment.body
27
+ ````
data/Rakefile ADDED
@@ -0,0 +1,10 @@
1
+ require "bundler/gem_tasks"
2
+ require "rake/testtask"
3
+
4
+ Rake::TestTask.new do |t|
5
+ t.libs << "test"
6
+ t.test_files = FileList["test/**/*_test.rb"]
7
+ t.verbose = true
8
+ end
9
+
10
+ task default: :test
@@ -0,0 +1,27 @@
1
+ require "httparty"
2
+
3
+ module Shiro
4
+ class Client
5
+ include HTTParty
6
+ base_uri "https://openshiro.com/api/v1"
7
+
8
+ def initialize(api_key = ENV["SHIRO_API_KEY"])
9
+ raise "API key not defined" unless api_key
10
+ @api_key = api_key
11
+ end
12
+
13
+ def get(path)
14
+ self.class.get(path, headers: auth_header)
15
+ end
16
+
17
+ def post(path, body = {})
18
+ self.class.post(path, body: body.to_json, headers: auth_header.merge("Content-Type" => "application/json"))
19
+ end
20
+
21
+ private
22
+
23
+ def auth_header
24
+ {"Authorization" => "Bearer #{@api_key}"}
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,17 @@
1
+ module Shiro
2
+ class Deployment
3
+ def self.list
4
+ client.get("/deployments").parsed_response
5
+ end
6
+
7
+ def self.retrieve(id)
8
+ client.get("/deployments/#{id}").parsed_response
9
+ end
10
+
11
+ private_class_method
12
+
13
+ def self.client
14
+ @client ||= Client.new
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,3 @@
1
+ module Shiro
2
+ VERSION = "0.1.1"
3
+ end
data/lib/shiro.rb ADDED
@@ -0,0 +1,18 @@
1
+ require "net/http"
2
+ require "json"
3
+ require "uri"
4
+ require "shiro/client"
5
+ require "shiro/deployment"
6
+ require "shiro/version"
7
+
8
+ module Shiro
9
+ @config = {api_key: nil}
10
+
11
+ class << self
12
+ attr_accessor :config
13
+
14
+ def configure
15
+ yield(config)
16
+ end
17
+ end
18
+ end
data/shiro.gemspec ADDED
@@ -0,0 +1,27 @@
1
+ lib = File.expand_path("../lib", __FILE__)
2
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
3
+ require "shiro/version"
4
+
5
+ Gem::Specification.new do |gem|
6
+ gem.name = "shiro"
7
+ gem.version = Shiro::VERSION
8
+ gem.authors = ["Duncan Miller"]
9
+ gem.email = ["ruby@openshiro.com"]
10
+ gem.description = "Wrapper for the Shiro API"
11
+ gem.summary = "A system for consuming the Shiro API"
12
+ gem.homepage = "https://github.com/OpenShiro/shiro-ruby"
13
+
14
+ # Runtime dependencies
15
+ gem.add_dependency "httparty", ">= 0.17.3"
16
+
17
+ # Development dependencies
18
+ gem.add_development_dependency "minitest", "~> 5.0"
19
+ gem.add_development_dependency "vcr", "~> 6.2"
20
+ gem.add_development_dependency "standardrb"
21
+ gem.add_development_dependency "rake"
22
+ gem.add_development_dependency "webmock", "~> 3.0"
23
+
24
+ gem.files = `git ls-files`.split($/)
25
+ gem.executables = gem.files.grep(%r{^bin/}).map { |f| File.basename(f) }
26
+ gem.require_paths = ["lib"]
27
+ end
@@ -0,0 +1,30 @@
1
+ require "test_helper"
2
+ require "shiro"
3
+
4
+ class DeploymentTest < Minitest::Test
5
+ def setup
6
+ Shiro.configure do |config|
7
+ config[:api_key] = ENV["SHIRO_API_KEY"]
8
+ end
9
+ end
10
+
11
+ def test_list_deployments
12
+ VCR.use_cassette("deployments_list") do
13
+ response = Shiro::Deployment.list
14
+ assert response.first.has_key?("id"), "Expected first deployment to have an 'id'"
15
+ assert response.first.has_key?("name"), "Expected first deployment to have a 'name'"
16
+ # Add more assertions as needed based on the expected structure of a deployment
17
+ end
18
+ end
19
+
20
+ def test_retrieve_deployment
21
+ VCR.use_cassette("deployment_retrieve") do
22
+ deployment_id = Shiro::Deployment.list.first["id"]
23
+ response = Shiro::Deployment.retrieve(deployment_id)
24
+
25
+ assert_equal deployment_id, response["id"]
26
+ assert response.key?("name")
27
+ assert response.key?("environment_type")
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,13 @@
1
+ require "bundler/setup"
2
+ Bundler.require(:default, :test)
3
+
4
+ require "minitest/autorun"
5
+ require "vcr"
6
+ require "webmock/minitest"
7
+
8
+ VCR.configure do |config|
9
+ config.cassette_library_dir = "test/vcr_cassettes"
10
+ config.hook_into :webmock
11
+ config.filter_sensitive_data("<SHIRO_API_KEY>") { ENV["SHIRO_API_KEY"] }
12
+ config.default_cassette_options = {record: :new_episodes}
13
+ end
@@ -0,0 +1,185 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://openshiro.com/api/v1/deployments/dpmt_lWokJnPAwQCeV2ZWovjG7BNr
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Authorization:
11
+ - Bearer <SHIRO_API_KEY>
12
+ Accept-Encoding:
13
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
14
+ Accept:
15
+ - "*/*"
16
+ User-Agent:
17
+ - Ruby
18
+ response:
19
+ status:
20
+ code: 404
21
+ message: Not Found
22
+ headers:
23
+ Server:
24
+ - Cowboy
25
+ Date:
26
+ - Sun, 25 Feb 2024 07:30:17 GMT
27
+ Report-To:
28
+ - '{"group":"heroku-nel","max_age":3600,"endpoints":[{"url":"https://nel.heroku.com/reports?ts=1708846218&sid=e11707d5-02a7-43ef-b45e-2cf4d2036f7d&s=ZbYV%2BK%2FVaHIjbZJOaO61NdSl3OhGZ%2FBe4vLc1XEiSeE%3D"}]}'
29
+ Reporting-Endpoints:
30
+ - heroku-nel=https://nel.heroku.com/reports?ts=1708846218&sid=e11707d5-02a7-43ef-b45e-2cf4d2036f7d&s=ZbYV%2BK%2FVaHIjbZJOaO61NdSl3OhGZ%2FBe4vLc1XEiSeE%3D
31
+ Nel:
32
+ - '{"report_to":"heroku-nel","max_age":3600,"success_fraction":0.005,"failure_fraction":0.05,"response_headers":["Via"]}'
33
+ Connection:
34
+ - keep-alive
35
+ X-Frame-Options:
36
+ - SAMEORIGIN
37
+ X-Xss-Protection:
38
+ - '0'
39
+ X-Content-Type-Options:
40
+ - nosniff
41
+ X-Permitted-Cross-Domain-Policies:
42
+ - none
43
+ Referrer-Policy:
44
+ - strict-origin-when-cross-origin
45
+ Content-Type:
46
+ - application/json; charset=utf-8
47
+ X-Request-Id:
48
+ - b096e5ce-a064-4441-aa4f-a898670988df
49
+ X-Runtime:
50
+ - '0.083281'
51
+ Strict-Transport-Security:
52
+ - max-age=63072000; includeSubDomains
53
+ Content-Length:
54
+ - '21'
55
+ Via:
56
+ - 1.1 vegur
57
+ body:
58
+ encoding: UTF-8
59
+ string: '{"error":"Not found"}'
60
+ recorded_at: Sun, 25 Feb 2024 07:30:18 GMT
61
+ - request:
62
+ method: get
63
+ uri: https://openshiro.com/api/v1/deployments
64
+ body:
65
+ encoding: US-ASCII
66
+ string: ''
67
+ headers:
68
+ Authorization:
69
+ - Bearer <SHIRO_API_KEY>
70
+ Accept-Encoding:
71
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
72
+ Accept:
73
+ - "*/*"
74
+ User-Agent:
75
+ - Ruby
76
+ response:
77
+ status:
78
+ code: 200
79
+ message: OK
80
+ headers:
81
+ Server:
82
+ - Cowboy
83
+ Date:
84
+ - Sun, 25 Feb 2024 07:39:32 GMT
85
+ Report-To:
86
+ - '{"group":"heroku-nel","max_age":3600,"endpoints":[{"url":"https://nel.heroku.com/reports?ts=1708846772&sid=e11707d5-02a7-43ef-b45e-2cf4d2036f7d&s=cdr7XBdIFoAGME5VTc3DFKxAU7Nr720WZ%2FcYOtjLQls%3D"}]}'
87
+ Reporting-Endpoints:
88
+ - heroku-nel=https://nel.heroku.com/reports?ts=1708846772&sid=e11707d5-02a7-43ef-b45e-2cf4d2036f7d&s=cdr7XBdIFoAGME5VTc3DFKxAU7Nr720WZ%2FcYOtjLQls%3D
89
+ Nel:
90
+ - '{"report_to":"heroku-nel","max_age":3600,"success_fraction":0.005,"failure_fraction":0.05,"response_headers":["Via"]}'
91
+ Connection:
92
+ - keep-alive
93
+ X-Frame-Options:
94
+ - SAMEORIGIN
95
+ X-Xss-Protection:
96
+ - '0'
97
+ X-Content-Type-Options:
98
+ - nosniff
99
+ X-Permitted-Cross-Domain-Policies:
100
+ - none
101
+ Referrer-Policy:
102
+ - strict-origin-when-cross-origin
103
+ Content-Type:
104
+ - application/json; charset=utf-8
105
+ Etag:
106
+ - W/"df6856bf370905f0b5233c2350b8e440"
107
+ Cache-Control:
108
+ - max-age=0, private, must-revalidate
109
+ X-Request-Id:
110
+ - 713eeb82-2a79-4d93-b709-ec083cfc0c1c
111
+ X-Runtime:
112
+ - '0.026924'
113
+ Strict-Transport-Security:
114
+ - max-age=63072000; includeSubDomains
115
+ Content-Length:
116
+ - '296'
117
+ Via:
118
+ - 1.1 vegur
119
+ body:
120
+ encoding: UTF-8
121
+ string: '[{"id":"dpmt_o6drBgMEZv9YmU9vYjb5QwxR","name":"Categorization","environment_type":{"id":"env_ZWaJKVvg9wQEAILwnNqxk0zy","object":"environment_type","name":"PRODUCTION"},"created_at":1707946238,"updated_at":1707946238,"url":"https://openshiro.com/api/v1/deployments/dpmt_o6drBgMEZv9YmU9vYjb5QwxR"}]'
122
+ recorded_at: Sun, 25 Feb 2024 07:39:32 GMT
123
+ - request:
124
+ method: get
125
+ uri: https://openshiro.com/api/v1/deployments/dpmt_o6drBgMEZv9YmU9vYjb5QwxR
126
+ body:
127
+ encoding: US-ASCII
128
+ string: ''
129
+ headers:
130
+ Authorization:
131
+ - Bearer <SHIRO_API_KEY>
132
+ Accept-Encoding:
133
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
134
+ Accept:
135
+ - "*/*"
136
+ User-Agent:
137
+ - Ruby
138
+ response:
139
+ status:
140
+ code: 200
141
+ message: OK
142
+ headers:
143
+ Server:
144
+ - Cowboy
145
+ Date:
146
+ - Sun, 25 Feb 2024 07:39:32 GMT
147
+ Report-To:
148
+ - '{"group":"heroku-nel","max_age":3600,"endpoints":[{"url":"https://nel.heroku.com/reports?ts=1708846773&sid=e11707d5-02a7-43ef-b45e-2cf4d2036f7d&s=PwVcjx5PJ06B5oAnJPQ%2BIAinrPu%2B%2B7CBGpoKxrM9Bmc%3D"}]}'
149
+ Reporting-Endpoints:
150
+ - heroku-nel=https://nel.heroku.com/reports?ts=1708846773&sid=e11707d5-02a7-43ef-b45e-2cf4d2036f7d&s=PwVcjx5PJ06B5oAnJPQ%2BIAinrPu%2B%2B7CBGpoKxrM9Bmc%3D
151
+ Nel:
152
+ - '{"report_to":"heroku-nel","max_age":3600,"success_fraction":0.005,"failure_fraction":0.05,"response_headers":["Via"]}'
153
+ Connection:
154
+ - keep-alive
155
+ X-Frame-Options:
156
+ - SAMEORIGIN
157
+ X-Xss-Protection:
158
+ - '0'
159
+ X-Content-Type-Options:
160
+ - nosniff
161
+ X-Permitted-Cross-Domain-Policies:
162
+ - none
163
+ Referrer-Policy:
164
+ - strict-origin-when-cross-origin
165
+ Content-Type:
166
+ - application/json; charset=utf-8
167
+ Etag:
168
+ - W/"5d4652949327f6cd4f954400df309967"
169
+ Cache-Control:
170
+ - max-age=0, private, must-revalidate
171
+ X-Request-Id:
172
+ - bb7d1b3e-05fa-4ca2-b7a9-576d410f851e
173
+ X-Runtime:
174
+ - '0.021692'
175
+ Strict-Transport-Security:
176
+ - max-age=63072000; includeSubDomains
177
+ Content-Length:
178
+ - '294'
179
+ Via:
180
+ - 1.1 vegur
181
+ body:
182
+ encoding: UTF-8
183
+ string: '{"id":"dpmt_o6drBgMEZv9YmU9vYjb5QwxR","name":"Categorization","environment_type":{"id":"env_ZWaJKVvg9wQEAILwnNqxk0zy","object":"environment_type","name":"PRODUCTION"},"created_at":1707946238,"updated_at":1707946238,"url":"https://openshiro.com/api/v1/deployments/dpmt_o6drBgMEZv9YmU9vYjb5QwxR"}'
184
+ recorded_at: Sun, 25 Feb 2024 07:39:33 GMT
185
+ recorded_with: VCR 6.2.0
@@ -0,0 +1,65 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://openshiro.com/api/v1/deployments
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Authorization:
11
+ - Bearer <SHIRO_API_KEY>
12
+ Accept-Encoding:
13
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
14
+ Accept:
15
+ - "*/*"
16
+ User-Agent:
17
+ - Ruby
18
+ response:
19
+ status:
20
+ code: 200
21
+ message: OK
22
+ headers:
23
+ Server:
24
+ - Cowboy
25
+ Date:
26
+ - Sun, 25 Feb 2024 07:30:18 GMT
27
+ Report-To:
28
+ - '{"group":"heroku-nel","max_age":3600,"endpoints":[{"url":"https://nel.heroku.com/reports?ts=1708846218&sid=e11707d5-02a7-43ef-b45e-2cf4d2036f7d&s=ZbYV%2BK%2FVaHIjbZJOaO61NdSl3OhGZ%2FBe4vLc1XEiSeE%3D"}]}'
29
+ Reporting-Endpoints:
30
+ - heroku-nel=https://nel.heroku.com/reports?ts=1708846218&sid=e11707d5-02a7-43ef-b45e-2cf4d2036f7d&s=ZbYV%2BK%2FVaHIjbZJOaO61NdSl3OhGZ%2FBe4vLc1XEiSeE%3D
31
+ Nel:
32
+ - '{"report_to":"heroku-nel","max_age":3600,"success_fraction":0.005,"failure_fraction":0.05,"response_headers":["Via"]}'
33
+ Connection:
34
+ - keep-alive
35
+ X-Frame-Options:
36
+ - SAMEORIGIN
37
+ X-Xss-Protection:
38
+ - '0'
39
+ X-Content-Type-Options:
40
+ - nosniff
41
+ X-Permitted-Cross-Domain-Policies:
42
+ - none
43
+ Referrer-Policy:
44
+ - strict-origin-when-cross-origin
45
+ Content-Type:
46
+ - application/json; charset=utf-8
47
+ Etag:
48
+ - W/"df6856bf370905f0b5233c2350b8e440"
49
+ Cache-Control:
50
+ - max-age=0, private, must-revalidate
51
+ X-Request-Id:
52
+ - 3607b9bb-599f-4d2e-a4fb-85f9e7f7b287
53
+ X-Runtime:
54
+ - '0.033308'
55
+ Strict-Transport-Security:
56
+ - max-age=63072000; includeSubDomains
57
+ Content-Length:
58
+ - '296'
59
+ Via:
60
+ - 1.1 vegur
61
+ body:
62
+ encoding: UTF-8
63
+ string: '[{"id":"dpmt_o6drBgMEZv9YmU9vYjb5QwxR","name":"Categorization","environment_type":{"id":"env_ZWaJKVvg9wQEAILwnNqxk0zy","object":"environment_type","name":"PRODUCTION"},"created_at":1707946238,"updated_at":1707946238,"url":"https://openshiro.com/api/v1/deployments/dpmt_o6drBgMEZv9YmU9vYjb5QwxR"}]'
64
+ recorded_at: Sun, 25 Feb 2024 07:30:18 GMT
65
+ recorded_with: VCR 6.2.0
metadata ADDED
@@ -0,0 +1,140 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: shiro
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.1
5
+ platform: ruby
6
+ authors:
7
+ - Duncan Miller
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2024-02-25 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: httparty
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: 0.17.3
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: 0.17.3
27
+ - !ruby/object:Gem::Dependency
28
+ name: minitest
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '5.0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '5.0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: vcr
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '6.2'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '6.2'
55
+ - !ruby/object:Gem::Dependency
56
+ name: standardrb
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: rake
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: '3.0'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - "~>"
95
+ - !ruby/object:Gem::Version
96
+ version: '3.0'
97
+ description: Wrapper for the Shiro API
98
+ email:
99
+ - ruby@openshiro.com
100
+ executables: []
101
+ extensions: []
102
+ extra_rdoc_files: []
103
+ files:
104
+ - ".gitignore"
105
+ - Gemfile
106
+ - LICENSE
107
+ - README.md
108
+ - Rakefile
109
+ - lib/shiro.rb
110
+ - lib/shiro/client.rb
111
+ - lib/shiro/deployment.rb
112
+ - lib/shiro/version.rb
113
+ - shiro.gemspec
114
+ - test/deployment_test.rb
115
+ - test/test_helper.rb
116
+ - test/vcr_cassettes/deployment_retrieve.yml
117
+ - test/vcr_cassettes/deployments_list.yml
118
+ homepage: https://github.com/OpenShiro/shiro-ruby
119
+ licenses: []
120
+ metadata: {}
121
+ post_install_message:
122
+ rdoc_options: []
123
+ require_paths:
124
+ - lib
125
+ required_ruby_version: !ruby/object:Gem::Requirement
126
+ requirements:
127
+ - - ">="
128
+ - !ruby/object:Gem::Version
129
+ version: '0'
130
+ required_rubygems_version: !ruby/object:Gem::Requirement
131
+ requirements:
132
+ - - ">="
133
+ - !ruby/object:Gem::Version
134
+ version: '0'
135
+ requirements: []
136
+ rubygems_version: 3.3.7
137
+ signing_key:
138
+ specification_version: 4
139
+ summary: A system for consuming the Shiro API
140
+ test_files: []