config_hub-client 0.1.0 → 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 +4 -4
- data/Gemfile +1 -1
- data/Rakefile +3 -3
- data/config_hub-client.gemspec +20 -21
- data/lib/config_hub/client.rb +14 -6
- data/lib/config_hub/client/version.rb +2 -2
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a8bb4deec2ec0ae1e5fd29fee2f2f8c5746574aa
|
4
|
+
data.tar.gz: e1c775e547f0c6280d4432633c14662fc3f62e93
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7b300a680240fbd60a2e26bf27e39a5d4aedb59447cecb0d350645f0e2ae474c0f0756ef551f144fc097b4cf7324c692ab1c9ddc09addc0a62871c670b8c6f42
|
7
|
+
data.tar.gz: e599bdb53f2ad349e9329ca5cf7af4249a7f6a171b58aa31256ad7867f73d0c24b934655df9aef0d711cba5b81c9b310ea0a39e5df5b3d85d6f7532c706e4c8c
|
data/Gemfile
CHANGED
data/Rakefile
CHANGED
data/config_hub-client.gemspec
CHANGED
@@ -1,40 +1,39 @@
|
|
1
1
|
# coding: utf-8
|
2
|
-
|
2
|
+
|
3
|
+
lib = File.expand_path('../lib', __FILE__)
|
3
4
|
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
-
require
|
5
|
+
require 'config_hub/client/version'
|
5
6
|
|
6
7
|
Gem::Specification.new do |spec|
|
7
|
-
spec.name =
|
8
|
+
spec.name = 'config_hub-client'
|
8
9
|
spec.version = ConfigHub::Client::VERSION
|
9
|
-
spec.authors = [
|
10
|
-
spec.email = [
|
10
|
+
spec.authors = ['Jeremy Dunn']
|
11
|
+
spec.email = ['jeremy.dunn@vineti.com']
|
11
12
|
|
12
|
-
spec.summary =
|
13
|
-
spec.homepage =
|
13
|
+
spec.summary = 'Simple Ruby client for ConfigHub'
|
14
|
+
spec.homepage = 'https://github.com/vinetiworks/config_hub-client'
|
14
15
|
|
15
16
|
# Prevent pushing this gem to RubyGems.org. To allow pushes either set the 'allowed_push_host'
|
16
17
|
# to allow pushing to a single host or delete this section to allow pushing to any host.
|
17
18
|
if spec.respond_to?(:metadata)
|
18
|
-
spec.metadata[
|
19
|
+
spec.metadata['allowed_push_host'] = 'https://rubygems.org'
|
19
20
|
else
|
20
|
-
raise
|
21
|
-
|
21
|
+
raise 'RubyGems 2.0 or newer is required to protect against ' \
|
22
|
+
'public gem pushes.'
|
22
23
|
end
|
23
24
|
|
24
|
-
spec.files
|
25
|
+
spec.files = `git ls-files -z`.split("\x0").reject do |f|
|
25
26
|
f.match(%r{^(test|spec|features)/})
|
26
27
|
end
|
27
|
-
spec.bindir =
|
28
|
+
spec.bindir = 'exe'
|
28
29
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
29
|
-
spec.require_paths = [
|
30
|
+
spec.require_paths = ['lib']
|
30
31
|
|
31
|
-
spec.add_dependency
|
32
|
-
spec.add_dependency
|
33
|
-
# spec.add_dependency "pg", "~> 0.21"
|
32
|
+
spec.add_dependency 'faraday', '>= 0.12.2'
|
33
|
+
spec.add_dependency 'activerecord', '>= 4.2.0'
|
34
34
|
|
35
|
-
spec.add_development_dependency
|
36
|
-
spec.add_development_dependency
|
37
|
-
spec.add_development_dependency
|
38
|
-
spec.add_development_dependency
|
39
|
-
# spec.add_development_dependency "config"
|
35
|
+
spec.add_development_dependency 'bundler', '~> 1.15'
|
36
|
+
spec.add_development_dependency 'rake', '~> 10.0'
|
37
|
+
spec.add_development_dependency 'rspec', '~> 3.0'
|
38
|
+
spec.add_development_dependency 'awesome_print'
|
40
39
|
end
|
data/lib/config_hub/client.rb
CHANGED
@@ -11,7 +11,7 @@ module ConfigHub
|
|
11
11
|
@options = options
|
12
12
|
env = options[:environment] || defined?(Rails) ? Rails.env : 'development'
|
13
13
|
faraday_opts = options[:faraday] || {}
|
14
|
-
@conn = Faraday.new(server_url, ssl: {verify: env == 'production'}.merge(faraday_opts), headers: headers)
|
14
|
+
@conn = Faraday.new(server_url, ssl: { verify: env == 'production' }.merge(faraday_opts), headers: headers)
|
15
15
|
end
|
16
16
|
|
17
17
|
def pull
|
@@ -23,12 +23,10 @@ module ConfigHub
|
|
23
23
|
end
|
24
24
|
|
25
25
|
def fetch(key)
|
26
|
-
if
|
26
|
+
if config_pulled?
|
27
27
|
val = @data.dig('properties', key.to_s, 'val')
|
28
28
|
if val.nil?
|
29
|
-
if block_given? && !@data['properties'].key?(key.to_s)
|
30
|
-
yield
|
31
|
-
end
|
29
|
+
yield if block_given? && !@data['properties'].key?(key.to_s)
|
32
30
|
else
|
33
31
|
val
|
34
32
|
end
|
@@ -37,6 +35,16 @@ module ConfigHub
|
|
37
35
|
end
|
38
36
|
end
|
39
37
|
|
38
|
+
def to_h
|
39
|
+
if config_pulled?
|
40
|
+
@data['properties'].reduce({}) do |hash, (k, v)|
|
41
|
+
hash.merge(k => v['val'])
|
42
|
+
end
|
43
|
+
else
|
44
|
+
raise ConfigNotPulledError
|
45
|
+
end
|
46
|
+
end
|
47
|
+
|
40
48
|
private
|
41
49
|
|
42
50
|
def retrieve_remote_config
|
@@ -76,4 +84,4 @@ module ConfigHub
|
|
76
84
|
'Configuration was not loaded from ConfigHub server (use .pull)'
|
77
85
|
end
|
78
86
|
end
|
79
|
-
end
|
87
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: config_hub-client
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jeremy Dunn
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-09-
|
11
|
+
date: 2017-09-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: faraday
|