travis-config 1.1.1 → 1.1.2
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.lock +1 -1
- data/lib/travis/config/env.rb +9 -4
- data/lib/travis/config/version.rb +1 -1
- data/spec/travis/config_spec.rb +6 -1
- 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: 433d2ae5f4f45116356930ff15e065024a49d71a
|
4
|
+
data.tar.gz: 60c43e328234c5daee5f9db106eb6794bc2038b6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2ef4c5d4471c3169d231cc2f0cc73798e8d3bcf4d22e827e2ef1d6b0848779aa0f5ad35cc922fe9664776c1f95bab00aa340ac27507f43c461f2b23fca199a94
|
7
|
+
data.tar.gz: 7c504acfebd025a4e9410df3fc917016dc6e9f6c387a09ed63f372c0012469aa8fea4fbc960825afd5926ce1784da474b948fe3cea7a3f2b4ac739009b61aab8
|
data/Gemfile.lock
CHANGED
data/lib/travis/config/env.rb
CHANGED
@@ -14,15 +14,16 @@ module Travis
|
|
14
14
|
FALSE = /^(false|no|off)$/
|
15
15
|
|
16
16
|
def to_h
|
17
|
-
|
17
|
+
hash(ENV, prefix.dup, defaults)
|
18
18
|
end
|
19
19
|
|
20
20
|
private
|
21
21
|
|
22
22
|
def hash(env, prefix, defaults)
|
23
|
-
defaults.inject({}) do |config, (key, default)|
|
23
|
+
hash = defaults.inject({}) do |config, (key, default)|
|
24
24
|
config.merge key => obj(env, prefix + [key], default)
|
25
25
|
end
|
26
|
+
compact(hash)
|
26
27
|
end
|
27
28
|
|
28
29
|
def obj(env, keys, default)
|
@@ -45,7 +46,7 @@ module Travis
|
|
45
46
|
|
46
47
|
def var(env, key, default)
|
47
48
|
key = key.map(&:upcase).join('_')
|
48
|
-
value = env
|
49
|
+
value = env[key]
|
49
50
|
raise UnexpectedString.new(key, value) if value.is_a?(String) && hashes?(default)
|
50
51
|
default.is_a?(Array) ? split(value) : cast(value, default)
|
51
52
|
end
|
@@ -70,7 +71,7 @@ module Travis
|
|
70
71
|
when ''
|
71
72
|
nil
|
72
73
|
else
|
73
|
-
default.is_a?(Symbol) ? value.to_sym : value
|
74
|
+
value && default.is_a?(Symbol) ? value.to_sym : value
|
74
75
|
end
|
75
76
|
end
|
76
77
|
|
@@ -82,6 +83,10 @@ module Travis
|
|
82
83
|
def hashes?(obj)
|
83
84
|
obj.is_a?(Array) && obj.first.is_a?(Hash)
|
84
85
|
end
|
86
|
+
|
87
|
+
def compact(hash)
|
88
|
+
hash.reject { |_, value| value.nil? }
|
89
|
+
end
|
85
90
|
end
|
86
91
|
|
87
92
|
def self.prefix(prefix = nil)
|
data/spec/travis/config_spec.rb
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
describe Travis::Config do
|
2
|
-
let(:config) { Travis::Test::Config.load
|
2
|
+
let(:config) { Travis::Test::Config.load }
|
3
3
|
|
4
4
|
describe 'Hashr behaviour' do
|
5
5
|
after :each do
|
@@ -56,4 +56,9 @@ describe Travis::Config do
|
|
56
56
|
it { expect(config.logs_database).to eq nil }
|
57
57
|
end
|
58
58
|
end
|
59
|
+
|
60
|
+
describe 'loading from keychain and env' do
|
61
|
+
env travis_config: YAML.dump('redis' => { 'url' => 'redis://url' })
|
62
|
+
it { expect(config.redis.url).to eq 'redis://url' }
|
63
|
+
end
|
59
64
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: travis-config
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.1.
|
4
|
+
version: 1.1.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Travis CI
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-04-
|
11
|
+
date: 2017-04-28 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: hashr
|