vault_ruby_client 0.18.2 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (54) hide show
  1. checksums.yaml +4 -4
  2. data/.github/dependabot.yml +7 -0
  3. data/.github/workflows/ruby.yml +45 -0
  4. data/.gitignore +43 -0
  5. data/.rspec +2 -0
  6. data/CHANGELOG.md +3 -281
  7. data/Gemfile +10 -0
  8. data/LICENSE +0 -0
  9. data/README.md +17 -9
  10. data/Rakefile +6 -0
  11. data/lib/vault/api/approle.rb +0 -0
  12. data/lib/vault/api/auth.rb +0 -0
  13. data/lib/vault/api/auth_tls.rb +0 -0
  14. data/lib/vault/api/auth_token.rb +0 -0
  15. data/lib/vault/api/help.rb +0 -0
  16. data/lib/vault/api/kv.rb +0 -0
  17. data/lib/vault/api/logical.rb +0 -0
  18. data/lib/vault/api/secret.rb +0 -0
  19. data/lib/vault/api/sys/audit.rb +0 -0
  20. data/lib/vault/api/sys/auth.rb +0 -0
  21. data/lib/vault/api/sys/health.rb +0 -0
  22. data/lib/vault/api/sys/init.rb +0 -0
  23. data/lib/vault/api/sys/leader.rb +0 -0
  24. data/lib/vault/api/sys/lease.rb +0 -0
  25. data/lib/vault/api/sys/mount.rb +0 -0
  26. data/lib/vault/api/sys/namespace.rb +0 -0
  27. data/lib/vault/api/sys/policy.rb +0 -0
  28. data/lib/vault/api/sys/quota.rb +0 -0
  29. data/lib/vault/api/sys/seal.rb +0 -0
  30. data/lib/vault/api/sys.rb +0 -0
  31. data/lib/vault/api/transform/alphabet.rb +0 -0
  32. data/lib/vault/api/transform/role.rb +0 -0
  33. data/lib/vault/api/transform/template.rb +0 -0
  34. data/lib/vault/api/transform/transformation.rb +0 -0
  35. data/lib/vault/api/transform.rb +0 -0
  36. data/lib/vault/api.rb +0 -0
  37. data/lib/vault/client.rb +11 -0
  38. data/lib/vault/configurable.rb +0 -0
  39. data/lib/vault/defaults.rb +0 -0
  40. data/lib/vault/encode.rb +1 -1
  41. data/lib/vault/errors.rb +0 -0
  42. data/lib/vault/persistent/connection.rb +0 -0
  43. data/lib/vault/persistent/pool.rb +0 -0
  44. data/lib/vault/persistent/timed_stack_multi.rb +0 -0
  45. data/lib/vault/persistent.rb +0 -0
  46. data/lib/vault/request.rb +0 -0
  47. data/lib/vault/response.rb +0 -0
  48. data/lib/vault/vendor/connection_pool/timed_stack.rb +0 -0
  49. data/lib/vault/vendor/connection_pool/version.rb +0 -0
  50. data/lib/vault/vendor/connection_pool.rb +0 -0
  51. data/lib/vault/version.rb +2 -1
  52. data/lib/vault_ruby_client.rb +0 -0
  53. data/vault_ruby_client.gemspec +50 -0
  54. metadata +31 -8
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: bcb2a20987a39d207d4b1080bd4631a940b1be8261b7cd0bfbc3c51579a476a1
4
- data.tar.gz: 38ebaf464ad1ba4fda63274d19acee366fcc1324a5b2be78722d2a7a57967891
3
+ metadata.gz: 1326e9af43dc41b393da2221ef93be5fd2372e0207825646cd7ab568f7e9e94c
4
+ data.tar.gz: 700110ff9ab0f6ab2977f24072995048d541049de0cdcd47787d4482fa5a6817
5
5
  SHA512:
6
- metadata.gz: a1548a0313eb3d48c0991e6c29d2a1378a907b86d7dfd4749fd1bb325124afb6e01a811818e735af2897eacfba541787af4297edb5e38ddf8f0ca5eca040c1eb
7
- data.tar.gz: b6051a92669dbbd3da23d091c5ad595be025d5656db7ab7f25d485fc74834105230748d8e8d01e8b234dc0747e04cadad47eaa135e8f9e0325834926a6c6f7f1
6
+ metadata.gz: 0d81abee3a49207e5b20c27072791774b84dc229ed3e00f47d7c8c6602bef1a647eea51211e3cfe312172a1e919613b31970f8bb035689a0918f47f41bf98c3a
7
+ data.tar.gz: ecb8866a0f2b2ab13b1568c0ff65be47a87dd8b298f6b778867103f40f6cf3a784b150490ba2e83084c6305d9edfae11353a688022606d285622820077fb42c3
@@ -0,0 +1,7 @@
1
+ version: 2
2
+
3
+ updates:
4
+ - package-ecosystem: "github-actions"
5
+ directory: "/"
6
+ schedule:
7
+ interval: "daily"
@@ -0,0 +1,45 @@
1
+ name: Ruby
2
+ on:
3
+ push:
4
+ paths-ignore:
5
+ - 'README.md'
6
+ - 'CHANGELOG.md'
7
+ pull_request:
8
+ branches: [ master ]
9
+ paths-ignore:
10
+ - 'README.md'
11
+ - 'CHANGELOG.md'
12
+ jobs:
13
+ test:
14
+ strategy:
15
+ fail-fast: false
16
+ matrix:
17
+ # https://endoflife.date/ruby
18
+ ruby: ['2.7', '3.0', '3.1', '3.2']
19
+ vault: ['1.13.13', '1.15.5', '1.17.6']
20
+ runs-on: ubuntu-latest
21
+ timeout-minutes: 5
22
+ steps:
23
+ - name: Checkout
24
+ uses: actions/checkout@v2
25
+ - name: Setup Ruby
26
+ uses: ruby/setup-ruby@v1
27
+ with:
28
+ ruby-version: ${{ matrix.ruby }}
29
+ bundler-cache: true # runs 'bundle install' and caches installed gems automatically
30
+ - name: "Install vault cli"
31
+ run: |
32
+ curl -sLo vault.zip "https://releases.hashicorp.com/vault/${{ matrix.vault }}/vault_${{ matrix.vault }}_linux_amd64.zip"
33
+ unzip vault.zip
34
+ mkdir -p "$HOME/bin"
35
+ mv vault "$HOME/bin"
36
+ echo "$HOME/bin" >> "$GITHUB_PATH"
37
+ - run: bundle exec rake
38
+ - name: Publish code coverage
39
+ if: ${{ success() && env.CC_TEST_REPORTER_ID }}
40
+ uses: paambaati/codeclimate-action@v2.7.5
41
+ env:
42
+ CC_TEST_REPORTER_ID: ${{ secrets.CC_TEST_REPORTER_ID }}
43
+
44
+ permissions:
45
+ contents: read
data/.gitignore ADDED
@@ -0,0 +1,43 @@
1
+ ### Ruby ###
2
+ *.gem
3
+ *.rbc
4
+ /.config
5
+ /.vscode
6
+ /.idea
7
+ /coverage/
8
+ /InstalledFiles
9
+ /pkg/
10
+ /spec/reports/
11
+ /test/tmp/
12
+ /test/version_tmp/
13
+ /tmp/
14
+ /vendor/bundle/
15
+ /vendor/ruby/
16
+
17
+ ## Specific to RubyMotion:
18
+ .dat*
19
+ .repl_history
20
+ build/
21
+
22
+ ## Documentation cache and generated files:
23
+ /.yardoc/
24
+ /_yardoc/
25
+ /doc/
26
+ /rdoc/
27
+
28
+ ## Environment normalisation:
29
+ /.bundle/
30
+ /vendor/bundle
31
+ /lib/bundler/man/
32
+
33
+ # for a library or gem, you might want to ignore these files since the code is
34
+ # intended to run in multiple environments; otherwise, check them in:
35
+ Gemfile.lock
36
+ .ruby-version
37
+ .ruby-gemset
38
+
39
+ # unless supporting rvm < 1.11.0 or doing something fancy, ignore this:
40
+ .rvmrc
41
+
42
+ # Project-specific
43
+ spec/tmp
data/.rspec ADDED
@@ -0,0 +1,2 @@
1
+ --format documentation
2
+ --color
data/CHANGELOG.md CHANGED
@@ -1,287 +1,9 @@
1
1
  # Vault Ruby Changelog
2
2
 
3
- ## v?.??.? (Unreleased)
3
+ ## Unreleased
4
4
 
5
- ## v0.18.1 (September 14, 2023)
5
+ No changes.
6
6
 
7
- BUG FIXES
8
-
9
- - Restored the ability to use this gem with older Ruby versions that do not have
10
- the `OpenSSL::SSL::TLS1_2_VERSION` constant.
11
-
12
- ## v0.18.0 (September 14, 2023)
13
-
14
- IMPROVEMENTS
15
-
16
- - Added support for TLS v1.3 by replacing `ssl_version` with `min_version`.
17
-
18
- ## v0.17.0 (May 11, 2022)
19
-
20
- IMPROVEMENTS
21
-
22
- - Added MissingRequiredStateErr error type to refer to 412s returned by Vault 1.10 when the WAL index on the node does not match the index in the Server-Side Consistent Token. This error type can be passed as a parameter to `#with_retries`, and will also be retried automatically when `#with_retries` is used with no parameters.
23
-
24
- ## v0.16.0 (March 17, 2021)
25
-
26
- IMPROVEMENTS
27
-
28
- - The timeout used to get a connection from the connection pool that talks with vault is now configurable. Using `Vault.pool_timeout` or the env var `VAULT_POOL_TIMEOUT`.
29
-
30
- ## v0.15.0 (July 29, 2020)
31
-
32
- IMPROVEMENTS
33
-
34
- - Added support for Resource Quotas
35
-
36
- ## v0.14.0 (May 28, 2020)
37
-
38
- IMPROVEMENTS
39
-
40
- - Added support for the Transform Secrets Engine
41
-
42
- ## v0.13.2 (May 7, 2020)
43
-
44
- BUG FIXES
45
-
46
- - Fixed the ability to use namespace as an option for each request. Previously, that option was ignored.
47
- - aws-sigv4 gem was unlocked after a bug in 1.1.2 broke CI
48
-
49
- ## v0.13.1 (April 28, 2020)
50
-
51
- IMPROVEMENTS
52
-
53
- - Added support for defining a namespace when initializing the client, as well as options for changing the namespace via method.
54
- - Added support for sys/namespaces API. Ability to Get, Create, Delete, and List namespaces has been provided.
55
-
56
- ## v0.13.0 (October 1, 2019)
57
-
58
- IMPROVEMENTS
59
-
60
- - Add support for versioned KV secrets in the client
61
-
62
- ## v0.12.0 (August 14, 2018)
63
-
64
- IMPROVEMENTS
65
-
66
- - Expose the github login path as an optional argument
67
- - Support HTTP basic auth [GH-181]
68
- - Expose the AWS IAM path to use [GH-180]
69
- - Add GCP Auth [GH-173]
70
- - Add shutdown functionality to close persistent connections [GH-175]
71
-
72
- BUG FIXES
73
-
74
- - Specifing the hostname for SNI didn't work. The functionality has been disabled for now.
75
-
76
- ## v0.11.0 (March 19, 2018)
77
-
78
- IMPROVEMENTS
79
-
80
- - Access to health has been added.
81
- - Added ability to handle a Base64 encoded PEM (useful for certs in environment variables)
82
- - Added IAM EC2 authentication support
83
- - Add custom mount path support to TLS authentication
84
-
85
- ## v0.10.1 (May 8, 2017)
86
-
87
- IMPROVEMENTS
88
-
89
- - `vault-ruby` is licensed under Mozilla Public License 2.0, and has been for over 2 years. This patch release updates the gemspec to use the correct SPDX ID string for reporting this license, but **no change to the licensing of this gem has occurred**.
90
-
91
-
92
- ## v0.10.0 (April 19, 2017)
93
-
94
- IMPROVEMENTS
95
-
96
- - `#with_retries` now defaults to checking `HTTPServerError` if called without
97
- an error classes
98
-
99
- BUG FIXES
100
-
101
- - Don't randomly fail when parsing with Time.parse [GH-140]
102
-
103
-
104
- ## v0.9.0 (March 10, 2017)
105
-
106
- IMPROVEMENTS
107
-
108
- - The pool size used to talk with vault is now configurable. Using `Vault.pool_size` or the env var `VAULT_POOL_SIZE`.
109
-
110
- ## v0.8.0 (March 3, 2017)
111
-
112
- BREAKING CHANGES
113
-
114
- - Use PUT/POST for all functions that involve tokens [GH-117]. For Vault 0.6+,
115
- this will work as-expected. For older Vault versions, you will need to use an
116
- older client library which uses the URL instead. This is deprecated in Vault
117
- because the URL would include the token, thus revealing it in request logs.
118
- These new methods place the token in the body instead.
119
-
120
- BUG FIXES
121
-
122
- - Do not convert arrays in `#to_h` [GH-125]
123
- - Prevent mismatched checkout/checkin from the connection pool; this will avoid masking errors that occur on pool checkout.
124
-
125
- IMPROVEMENTS
126
-
127
- - Support new init API options [GH-127]
128
- - Return base64-encoded keys in init response [GH-128]
129
- - Add support for `#hostname` for specifying SNI hostname to validate [GH-112]
130
-
131
- ## v0.7.3 (October 25, 2016)
132
-
133
- BUG FIXES
134
-
135
- - Allow options to be set on `Vault` as well as any `Vault::Client`
136
- instance to be used properly.
137
- - Remove Ruby 2.0 syntax in favor of Ruby 1.9
138
-
139
- ## v0.7.2 (October 24, 2016)
140
-
141
- BUG FIXES
142
-
143
- - Set the default pool size to 16 rather than calculating from
144
- the number of available file descriptors.
145
-
146
- ## v0.7.1 (October 21, 2016)
147
-
148
- BUG FIXES
149
-
150
- - Properly vendor Net::HTTP::Persistent so that it doesn't collide
151
- with net-http-persistent
152
- - Fix behavior where `verify_mode` was forced to `VERIFY_PEER`
153
- if a custom CA was set
154
-
155
- ## v0.7.0 (October 18, 2016)
156
-
157
- DEPRECATIONS
158
-
159
- - Vault versions older than 0.5.3 are no longer tested
160
-
161
- NEW FEATURES
162
-
163
- - Add support for AppRole
164
- - Expose the auth/tune API
165
- - Add support for leader step down
166
- - Use persistent connections to Vault to speed up requests
167
- - Add support for a custom ssl certificate store
168
-
169
- BUG FIXES
170
-
171
- - Allow for spaces in secret names properly
172
-
173
- ## v0.6.0 (August 30, 2016)
174
-
175
- NEW FEATURES
176
-
177
- - Add support for Vault 0.6.1 APIs
178
- - Add new token `accessors` API method
179
- - Add TLS authentication endpoints
180
-
181
- BUG FIXES
182
-
183
- - Restore old `to_h` behavior on response objects
184
-
185
- IMPROVEMENTS
186
-
187
- - Bootstrap full testing harness against old Vault versions
188
-
189
- ## v0.5.0 (August 16, 2016)
190
-
191
- NEW FEATURES
192
-
193
- - Add TTL wrapping to logical and auth backends
194
- - Support passing PGP keys to init
195
-
196
- BUG FIXES
197
-
198
- - New API documentation
199
- - Remove recursive requires
200
-
201
- ## v0.4.0 (March 31, 2016)
202
-
203
- NEW FEATURES
204
-
205
- - Add LDAP authentication method [GH-61]
206
- - Add GitHub authentication method [GH-37]
207
- - Add `create_orphan` method [GH-65]
208
- - Add `lookup` and `lookup_self` for tokens
209
- - Accept `VAULT_SKIP_VERIFY` environment variable [GH-66]
210
-
211
- BUG FIXES
212
-
213
- - Prefer `VAULT_TOKEN` environment variable over disk to mirror Vault's own
214
- behavior [GH-98]
215
- - Do not duplicate query parameters on HEAD/GET requests [GH-62]
216
- - Yield exception in `with_retries` [GH-68]
217
-
218
- ## v0.3.0 (February 16, 2016)
219
-
220
- NEW FEATURES
221
-
222
- - Add API for `renew_self`
223
- - Add API for `revoke_self`
224
- - Add API for listing secrets where supported
225
-
226
- BUG FIXES
227
-
228
- - Relax bundler constraint
229
- - Fix race conditions on Ruby 2.3
230
- - Escape path params before posting to Vault
231
-
232
- ## v0.2.0 (December 2, 2015)
233
-
234
- IMPROVEMENTS
235
-
236
- - Add support for retries (clients must opt-in) [GH-47]
237
-
238
- BUG FIXES
239
-
240
- - Fix redirection on POST/PUT [GH-40]
241
- - Use `$HOME` instead of `~` for shell expansion
242
-
243
- ## v0.1.5 (September 1, 2015)
244
-
245
- IMPROVEMENTS
246
-
247
- - Use headers instead of cookies for authenticating to Vault [GH-36]
248
-
249
- BUG FIXES
250
-
251
- - Do not set undefined OpenSSL options
252
- - Add `ssl_pem_passphrase` as a configuration option [GH-35]
253
-
254
- ## v0.1.4 (August 15, 2015)
255
-
256
- IMPROVEMENTS
257
-
258
- - Add support for using a custom CA cert [GH-8]
259
- - Allow clients to specify timeouts [GH-12, GH-14]
260
- - Show which error caused the HTTPConnectionError [GH-30]
261
- - Allow clients to specify which SSL cipher suites to use [GH-29]
262
- - Allow clients to specify the SSL pem password [GH-22, GH-31]
263
-
264
- BUG FIXES
265
-
266
- - Read local token (`~/.vault-token`) for token if present [GH-13]
267
- - Disable bad SSL cipher suites and force TLSv1.2 [GH-16]
268
- - Update to test against Vault 0.2.0 [GH-20]
269
- - Do not attempt a read on logical path write [GH-11, GH-32]
270
-
271
- ## v0.1.3 (May 14, 2015)
272
-
273
- BUG FIXES
274
-
275
- - Decode logical response body if present
276
-
277
- ## v0.1.2 (May 3, 2015)
278
-
279
- BUG FIXES
280
-
281
- - Require vault/version before accessing Vault::VERSION in the client
282
- - Improve Travis CI test coverage
283
- - README and typo fixes
284
-
285
- ## v0.1.1 (April 4, 2015)
7
+ ## v0.18.2 (November 27, 2023)
286
8
 
287
9
  - Initial release
data/Gemfile ADDED
@@ -0,0 +1,10 @@
1
+ # Copyright (c) HashiCorp, Inc.
2
+ # SPDX-License-Identifier: MPL-2.0
3
+
4
+ source "https://rubygems.org"
5
+
6
+ group :test do
7
+ gem 'simplecov', '< 0.18'
8
+ end
9
+
10
+ gemspec
data/LICENSE CHANGED
File without changes
data/README.md CHANGED
@@ -6,13 +6,21 @@
6
6
  [![Code Climate](https://codeclimate.com/github/khiav223577/vault_ruby_client/badges/gpa.svg)](https://codeclimate.com/github/khiav223577/vault_ruby_client)
7
7
  [![Test Coverage](https://codeclimate.com/github/khiav223577/vault_ruby_client/badges/coverage.svg)](https://codeclimate.com/github/khiav223577/vault_ruby_client/coverage)
8
8
 
9
- Vault is the official Ruby client for interacting with [Vault](https://vaultproject.io) by HashiCorp.
9
+ Vault Ruby Client is a community-maintained Ruby client for interacting with [Vault](https://vaultproject.io) by HashiCorp.
10
+
11
+ The official Ruby client is no longer maintained. For more details, refer to the [deprecation announcement](https://developer.hashicorp.com/vault/docs/deprecation#ruby-client-libraries).
12
+
13
+ ## Supports
14
+ - Ruby 2.7, 3.0 ~ 3.2
15
+ - Vault 1.13 ~ 1.17
16
+
17
+ If you are using a Ruby version not supported by this gem, please use an older version of the [official Ruby client gem](https://github.com/hashicorp/vault-ruby) instead.
10
18
 
11
19
  Quick Start
12
20
  -----------
13
- Install Ruby 2.0+: [Guide](https://www.ruby-lang.org/en/documentation/installation/).
21
+ Install Ruby 2.7+: [Guide](https://www.ruby-lang.org/en/documentation/installation/).
14
22
 
15
- > Please note that as of Vault Ruby version 0.14.0 versions of Ruby prior to 2.0 are no longer supported.
23
+ Install Vault: [Guide](https://developer.hashicorp.com/vault/install?product_intent=vault).
16
24
 
17
25
  Install via Rubygems:
18
26
 
@@ -89,12 +97,12 @@ client_2 = Vault::Client.new(address: "https://other-vault.mycompany.com")
89
97
  And if you want to authenticate with a `AWS EC2` :
90
98
 
91
99
  ```ruby
92
- # Export VAULT_ADDR to ENV then
93
- # Get the pkcs7 value from AWS
94
- signature = `curl http://169.254.169.254/latest/dynamic/instance-identity/pkcs7`
95
- iam_role = `curl http://169.254.169.254/latest/meta-data/iam/security-credentials/`
96
- vault_token = Vault.auth.aws_ec2(iam_role, signature, nil)
97
- vault_client = Vault::Client.new(address: ENV["VAULT_ADDR"], token: vault_token.auth.client_token)
100
+ # Export VAULT_ADDR to ENV then
101
+ # Get the pkcs7 value from AWS
102
+ signature = `curl http://169.254.169.254/latest/dynamic/instance-identity/pkcs7`
103
+ iam_role = `curl http://169.254.169.254/latest/meta-data/iam/security-credentials/`
104
+ vault_token = Vault.auth.aws_ec2(iam_role, signature, nil)
105
+ vault_client = Vault::Client.new(address: ENV["VAULT_ADDR"], token: vault_token.auth.client_token)
98
106
  ```
99
107
 
100
108
  ### Making requests
data/Rakefile ADDED
@@ -0,0 +1,6 @@
1
+ require "bundler/gem_tasks"
2
+ require "rspec/core/rake_task"
3
+
4
+ RSpec::Core::RakeTask.new(:spec)
5
+
6
+ task default: :spec
File without changes
File without changes
File without changes
File without changes
File without changes
data/lib/vault/api/kv.rb CHANGED
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
data/lib/vault/api/sys.rb CHANGED
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
data/lib/vault/api.rb CHANGED
File without changes
data/lib/vault/client.rb CHANGED
@@ -305,6 +305,15 @@ module Vault
305
305
  end
306
306
  end
307
307
 
308
+ # Removes double slashes from a path.
309
+ #
310
+ # @param [String]
311
+ #
312
+ # @return [String]
313
+ def remove_double_slash(path)
314
+ path.b.gsub(%r{//+}, '/')
315
+ end
316
+
308
317
  # Construct a URL from the given verb and path. If the request is a GET or
309
318
  # DELETE request, the params are assumed to be query params are are
310
319
  # converted as such using {Client#to_query_string}.
@@ -333,6 +342,8 @@ module Vault
333
342
  # Don't merge absolute URLs
334
343
  uri = URI.parse(File.join(address, path)) unless uri.absolute?
335
344
 
345
+ uri.path = remove_double_slash(uri.path)
346
+
336
347
  # Return the URI object
337
348
  uri
338
349
  end
File without changes
File without changes
data/lib/vault/encode.rb CHANGED
@@ -12,7 +12,7 @@ module Vault
12
12
  #
13
13
  # @return [String]
14
14
  def encode_path(path)
15
- path.b.gsub(%r!([^a-zA-Z0-9_.-/]+)!) { |m|
15
+ path.b.gsub(%r!([^a-zA-Z0-9_.\-/]+)!) { |m|
16
16
  '%' + m.unpack('H2' * m.bytesize).join('%').upcase
17
17
  }
18
18
  end
data/lib/vault/errors.rb CHANGED
File without changes
File without changes
File without changes
File without changes
File without changes
data/lib/vault/request.rb CHANGED
File without changes
File without changes
File without changes
File without changes
File without changes
data/lib/vault/version.rb CHANGED
@@ -1,6 +1,7 @@
1
+ # frozen_string_literal: true
1
2
  # Copyright (c) HashiCorp, Inc.
2
3
  # SPDX-License-Identifier: MPL-2.0
3
4
 
4
5
  module Vault
5
- VERSION = "0.18.2"
6
+ VERSION = '1.0.0'
6
7
  end
File without changes
@@ -0,0 +1,50 @@
1
+ # coding: utf-8
2
+ lib = File.expand_path('../lib', __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
+ require 'vault/version'
5
+
6
+ Gem::Specification.new do |spec|
7
+ spec.name = 'vault_ruby_client'
8
+ spec.version = Vault::VERSION
9
+ spec.authors = ['khiav reoy']
10
+ spec.email = ['khiav223577@gmail.com']
11
+
12
+ spec.summary = 'Vault is a Ruby API client for interacting with a Vault server.'
13
+ spec.description = 'Vault is a Ruby API client for interacting with a Vault server.'
14
+ spec.homepage = 'https://github.com/khiav223577/vault_ruby_client'
15
+ spec.license = 'MIT'
16
+
17
+ # Prevent pushing this gem to RubyGems.org by setting 'allowed_push_host', or
18
+ # delete this section to allow pushing this gem to any host.
19
+ # if spec.respond_to?(:metadata)
20
+ # spec.metadata['allowed_push_host'] = "TODO: Set to 'http://mygemserver.com'"
21
+ # else
22
+ # raise "RubyGems 2.0 or newer is required to protect against public gem pushes."
23
+ # end
24
+
25
+ spec.required_ruby_version = ">= 2.0"
26
+ if Gem::Version.new(RUBY_VERSION) <= Gem::Version.new("2.4.0")
27
+ spec.add_runtime_dependency "aws-sigv4", "= 1.6.0"
28
+ spec.add_runtime_dependency "aws-eventstream", "= 1.2.0"
29
+ else
30
+ spec.add_runtime_dependency "aws-sigv4"
31
+ end
32
+
33
+ spec.files = `git ls-files -z`.split("\x0").reject{|f| f.match(%r{^(test|spec|features)/}) }
34
+ spec.bindir = 'exe'
35
+ spec.executables = spec.files.grep(%r{^exe/}){|f| File.basename(f) }
36
+ spec.require_paths = ['lib']
37
+ spec.metadata = {
38
+ 'homepage_uri' => 'https://github.com/khiav223577/vault_ruby_client',
39
+ 'changelog_uri' => 'https://github.com/khiav223577/vault_ruby_client/blob/master/CHANGELOG.md',
40
+ 'source_code_uri' => 'https://github.com/khiav223577/vault_ruby_client',
41
+ 'documentation_uri' => 'https://www.rubydoc.info/gems/vault_ruby_client',
42
+ 'bug_tracker_uri' => 'https://github.com/khiav223577/vault_ruby_client/issues',
43
+ }
44
+
45
+ spec.add_development_dependency "bundler", "~> 2"
46
+ spec.add_development_dependency "rake", "~> 13.2"
47
+ spec.add_development_dependency "rspec", "~> 3.13"
48
+ spec.add_development_dependency "webmock", "~> 3.24"
49
+ spec.add_development_dependency "webrick", "~> 1.9"
50
+ end
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: vault_ruby_client
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.18.2
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - khiav reoy
8
- autorequire:
9
8
  bindir: exe
10
9
  cert_chain: []
11
- date: 2024-11-21 00:00:00.000000000 Z
10
+ date: 2024-12-23 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: aws-sigv4
@@ -80,6 +79,20 @@ dependencies:
80
79
  - - "~>"
81
80
  - !ruby/object:Gem::Version
82
81
  version: '3.24'
82
+ - !ruby/object:Gem::Dependency
83
+ name: webrick
84
+ requirement: !ruby/object:Gem::Requirement
85
+ requirements:
86
+ - - "~>"
87
+ - !ruby/object:Gem::Version
88
+ version: '1.9'
89
+ type: :development
90
+ prerelease: false
91
+ version_requirements: !ruby/object:Gem::Requirement
92
+ requirements:
93
+ - - "~>"
94
+ - !ruby/object:Gem::Version
95
+ version: '1.9'
83
96
  description: Vault is a Ruby API client for interacting with a Vault server.
84
97
  email:
85
98
  - khiav223577@gmail.com
@@ -87,9 +100,15 @@ executables: []
87
100
  extensions: []
88
101
  extra_rdoc_files: []
89
102
  files:
103
+ - ".github/dependabot.yml"
104
+ - ".github/workflows/ruby.yml"
105
+ - ".gitignore"
106
+ - ".rspec"
90
107
  - CHANGELOG.md
108
+ - Gemfile
91
109
  - LICENSE
92
110
  - README.md
111
+ - Rakefile
93
112
  - lib/vault/api.rb
94
113
  - lib/vault/api/approle.rb
95
114
  - lib/vault/api/auth.rb
@@ -132,11 +151,16 @@ files:
132
151
  - lib/vault/vendor/connection_pool/version.rb
133
152
  - lib/vault/version.rb
134
153
  - lib/vault_ruby_client.rb
154
+ - vault_ruby_client.gemspec
135
155
  homepage: https://github.com/khiav223577/vault_ruby_client
136
156
  licenses:
137
- - MPL-2.0
138
- metadata: {}
139
- post_install_message:
157
+ - MIT
158
+ metadata:
159
+ homepage_uri: https://github.com/khiav223577/vault_ruby_client
160
+ changelog_uri: https://github.com/khiav223577/vault_ruby_client/blob/master/CHANGELOG.md
161
+ source_code_uri: https://github.com/khiav223577/vault_ruby_client
162
+ documentation_uri: https://www.rubydoc.info/gems/vault_ruby_client
163
+ bug_tracker_uri: https://github.com/khiav223577/vault_ruby_client/issues
140
164
  rdoc_options: []
141
165
  require_paths:
142
166
  - lib
@@ -151,8 +175,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
151
175
  - !ruby/object:Gem::Version
152
176
  version: '0'
153
177
  requirements: []
154
- rubygems_version: 3.1.4
155
- signing_key:
178
+ rubygems_version: 3.6.2
156
179
  specification_version: 4
157
180
  summary: Vault is a Ruby API client for interacting with a Vault server.
158
181
  test_files: []