blinkist-config 1.2.0 → 1.2.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: e3ced4954f00dac9ba41bf8942eadd20ed04c355
4
- data.tar.gz: 7dc2ca9ab278f071dec3417f8f0ca82ccc317e2c
3
+ metadata.gz: 353a2346a48c19ef03b27e92acf5886003889968
4
+ data.tar.gz: bbddc8979580d2d1c7d8c3d472723ad2be28a000
5
5
  SHA512:
6
- metadata.gz: d463681c830d3e57f99eec95bb6ed456ac304ea246db4926cb0c4765d469aa0e129f132edeab14346e15b2bf5d898fc1b3602441e46717ae6f2da9513216090e
7
- data.tar.gz: f090fa2cb1c05855b9b5dc22bd544c0bcec5b509a8a8cd7f9f3d553c5ed20b269c58be1998f6c59458263981480469d5fc4b4b48f88e18473a6baf0a05ce9510
6
+ metadata.gz: 7f837b33a8be95107bd0b0b9b64db641956a780375c915f35a989735fdba3d7994c3a7859e29e74facd06dde47de9516369db6713a8e154f119d60be0a0bbc55
7
+ data.tar.gz: 5ef268065e9c25eebc044665a8bf6be2938d9e6351b6cc8fb95879ae3a339b04dd9329d90509d1ad962e35f30123585b49bbe09b641a9cdfa1f4e960aa060a64
@@ -22,5 +22,5 @@ Gem::Specification.new do |spec|
22
22
  spec.add_development_dependency "rspec", "~> 3.0"
23
23
 
24
24
  spec.add_runtime_dependency "diplomat", "~> 1"
25
- spec.add_runtime_dependency "aws-sdk-ssm", "~> 1.3.0"
25
+ spec.add_runtime_dependency "aws-sdk-ssm", "~> 1"
26
26
  end
@@ -16,7 +16,7 @@ module Blinkist
16
16
  def get(key, default=nil, scope: nil)
17
17
  prefix = prefix_for(scope)
18
18
 
19
- query_ssm_parameter "#{prefix}/#{key}"
19
+ query_ssm_parameter prefix + key
20
20
  rescue Aws::SSM::Errors::ParameterNotFound
21
21
  default
22
22
  end
@@ -29,9 +29,9 @@ module Blinkist
29
29
 
30
30
  def prefix_for(scope)
31
31
  if scope.nil?
32
- DEFAULT_PREFIX + @app_name
32
+ DEFAULT_PREFIX + @app_name + "/"
33
33
  else
34
- DEFAULT_PREFIX + scope
34
+ DEFAULT_PREFIX + scope + "/"
35
35
  end
36
36
  end
37
37
 
@@ -43,11 +43,25 @@ module Blinkist
43
43
  end
44
44
 
45
45
  def query_all_ssm_parameters(prefix)
46
- @client.get_parameters_by_path(
47
- path: prefix,
48
- recursive: true,
49
- with_decryption: true
50
- ).parameters.map do |parameter|
46
+ parameters = []
47
+ next_token = nil
48
+
49
+ # SSM limits the results and we need to loop
50
+ loop do
51
+ result = @client.get_parameters_by_path(
52
+ path: prefix,
53
+ recursive: true,
54
+ with_decryption: true,
55
+ next_token: next_token
56
+ )
57
+
58
+ parameters += result.parameters
59
+ next_token = result.next_token
60
+
61
+ break if next_token.nil?
62
+ end
63
+
64
+ parameters.map do |parameter|
51
65
  @items_cache[parameter.name] = parameter.value
52
66
  end
53
67
  end
@@ -1,5 +1,5 @@
1
1
  module Blinkist
2
2
  class Config
3
- VERSION = "1.2.0".freeze
3
+ VERSION = "1.2.2".freeze
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: blinkist-config
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.0
4
+ version: 1.2.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sebastian Schleicher, Blinks Labs GmbH
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-11-24 00:00:00.000000000 Z
11
+ date: 2017-11-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -72,14 +72,14 @@ dependencies:
72
72
  requirements:
73
73
  - - "~>"
74
74
  - !ruby/object:Gem::Version
75
- version: 1.3.0
75
+ version: '1'
76
76
  type: :runtime
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
80
  - - "~>"
81
81
  - !ruby/object:Gem::Version
82
- version: 1.3.0
82
+ version: '1'
83
83
  description: This GEM allows you to keep your configuration class-based by calling
84
84
  Blinkist::Config.get!(...) instead of accessing the ENV directly. You can set up
85
85
  different types of adapters to connect to various configuration systems like your