mortar 0.15.43 → 0.15.44

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: 1ff4d687d125de2935d53cfb7574dc44b5f762ec
4
- data.tar.gz: 184ce0eee7620f7fd53b35ea3e9ac921535117a7
3
+ metadata.gz: 69018fe3fcc68f124e0ce0956e95c119f0e95f0c
4
+ data.tar.gz: 1f87f69724e6d035058f424908e3fb4722e13dbc
5
5
  SHA512:
6
- metadata.gz: 8d0712c21b88082a049277c79f040dc3e9f4a7214e008ad255bfbbb945b0c85f6c64bdd555124851ccd9114a04eddd414a39473c045418eeb31b0a720f038326
7
- data.tar.gz: 6c528df7e3b87b5577a860254e3c2bed6c6580fb3f17f418ea22387059c17c41fe54f3babb4618a5d78161438750346c824ed69576c0ee1d9323fcac0d87b0bb
6
+ metadata.gz: c148ae56445cfe61e2abeb86329ad40404ea0959e1d38ed2eb04fbb5cfd1b8f002a101ab669984a0b3e2efee8ab4f470cce57fa9193711d1e5b241b3f7d82403
7
+ data.tar.gz: a06d738aca0278dd07867fa04c762e7282c8d5fa0a5acab31c5fedaa72de65382eae79306994a932f9fbfe3e0f5307b9f10e5884368ae532bfd06baf2e0c523a
@@ -25,23 +25,11 @@ class Mortar::Command::Config < Mortar::Command::Base
25
25
 
26
26
  # config
27
27
  #
28
- # Display the config vars for a project.
29
- #
30
- # -s, --shell # output config vars in shell format.
31
- #
28
+ # Display the config keys (but not values) for a project.
32
29
  #
33
30
  # $ mortar config
34
- # A: one
35
- # B: three
36
- #
37
- # == Project config settings overriden by user config
38
- # B: two
39
- #
40
- #
41
- # $ mortar config --shell
42
- # A=one
43
- # B=three
44
- #
31
+ # A
32
+ # B
45
33
  def index
46
34
  validate_arguments!
47
35
  project_name = options[:project] || project.name
@@ -51,49 +39,16 @@ class Mortar::Command::Config < Mortar::Command::Base
51
39
  if vars.empty?
52
40
  display("#{project_name} has no config vars.")
53
41
  else
54
- vars.each {|key, value| vars[key] = value.to_s}
55
- if options[:shell]
56
- vars.keys.sort.each do |key|
57
- display(%{#{key}=#{vars[key]}})
58
- end
59
- else
60
- styled_header("#{project_name} Config Vars")
61
- styled_hash(vars)
62
- unless shadow_vars.empty?
63
- shadow_vars.each {|key, value| shadow_vars[key] = value.to_s}
64
- display("\n")
65
- styled_header("Project config settings overriden by user config")
66
- styled_hash(shadow_vars)
67
- end
42
+ styled_header("#{project_name} Config Vars")
43
+ keys = vars.keys.sort
44
+ keys.each {|key| display("#{key}")}
45
+ unless shadow_vars.empty?
46
+ styled_header("Project config settings overriden by user config")
47
+ shadow_vars.each {|key, value| display("#{key}")}
68
48
  end
69
49
  end
70
50
  end
71
-
72
- # config:get KEY
73
- #
74
- # display a config var for a project
75
- #
76
- #Examples:
77
- #
78
- # $ mortar config:get MY_CONFIG_VAR
79
- # one
80
- #
81
- def get
82
- unless key = shift_argument
83
- error("Usage: mortar config:get KEY\nMust specify KEY.")
84
- end
85
- validate_arguments!
86
- project_name = options[:project] || project.name
87
51
 
88
- vars = api.get_config_vars(project_name).body['config']
89
- key_name, value = vars.detect {|k,v| k == key}
90
- unless key_name
91
- error("Config var #{key} is not defined for project #{project_name}.")
92
- end
93
-
94
- display(value.to_s)
95
- end
96
-
97
52
  # config:set KEY1=VALUE1 [KEY2=VALUE2 ...]
98
53
  #
99
54
  # Set one or more config vars
@@ -16,5 +16,5 @@
16
16
 
17
17
  module Mortar
18
18
  # see http://semver.org/
19
- VERSION = "0.15.43"
19
+ VERSION = "0.15.44"
20
20
  end
@@ -50,70 +50,12 @@ STDOUT
50
50
  stderr, stdout = execute("config", p, @git)
51
51
  stdout.should == <<-STDOUT
52
52
  === myproject Config Vars
53
- BAR: sheepdog
54
- foo: ABCDEFGHIJKLMNOP
53
+ BAR
54
+ foo
55
55
  STDOUT
56
56
  end
57
57
  end
58
58
 
59
- it "does not trim long values" do
60
- with_git_initialized_project do |p|
61
- # stub api request
62
- configs = {'LONG' => 'A' * 60 }
63
- mock(Mortar::Auth.api).get_config_vars("myproject").returns(Excon::Response.new(:body => {"config" => configs}))
64
-
65
- stderr, stdout = execute("config", p, @git)
66
- stdout.should == <<-STDOUT
67
- === myproject Config Vars
68
- LONG: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
69
- STDOUT
70
- end
71
- end
72
-
73
- it "handles when value is nil" do
74
- with_git_initialized_project do |p|
75
- # stub api request
76
- configs = { 'FOO_BAR' => 'one', 'BAZ_QUX' => nil }
77
- mock(Mortar::Auth.api).get_config_vars("myproject").returns(Excon::Response.new(:body => {"config" => configs}))
78
-
79
- stderr, stdout = execute("config", p, @git)
80
- stdout.should == <<-STDOUT
81
- === myproject Config Vars
82
- BAZ_QUX:
83
- FOO_BAR: one
84
- STDOUT
85
- end
86
- end
87
-
88
- it "handles when value is a boolean" do
89
- with_git_initialized_project do |p|
90
- # stub api request
91
- configs = {'FOO_BAR' => 'one', 'BAZ_QUX' => true}
92
- mock(Mortar::Auth.api).get_config_vars("myproject").returns(Excon::Response.new(:body => {"config" => configs}))
93
-
94
- stderr, stdout = execute("config", p, @git)
95
- stdout.should == <<-STDOUT
96
- === myproject Config Vars
97
- BAZ_QUX: true
98
- FOO_BAR: one
99
- STDOUT
100
- end
101
- end
102
-
103
- it "shows configs in a shell compatible format" do
104
- with_git_initialized_project do |p|
105
- # stub api request
106
- configs = {'A' => 'one', 'B' => 'two three'}
107
- mock(Mortar::Auth.api).get_config_vars("myproject").returns(Excon::Response.new(:body => {"config" => configs}))
108
-
109
- stderr, stdout = execute("config --shell", p, @git)
110
- stdout.should == <<-STDOUT
111
- A=one
112
- B=two three
113
- STDOUT
114
- end
115
- end
116
-
117
59
  it "shows shadowed config vars" do
118
60
  with_git_initialized_project do |p|
119
61
  # stup api request
@@ -124,60 +66,17 @@ STDOUT
124
66
  stderr, stdout = execute("config", p, @git)
125
67
  stdout.should == <<-STDOUT
126
68
  === myproject Config Vars
127
- A: one
128
- B: two
129
-
69
+ A
70
+ B
130
71
  === Project config settings overriden by user config
131
- B: three
132
- STDOUT
133
- end
134
- end
135
-
136
- it "doesn't show shadowed config vars on shell output" do
137
- with_git_initialized_project do |p|
138
- # stup api request
139
- config = {'A' => 'one', 'B' => 'two'}
140
- shadow_config = {'B' => 'three'}
141
- mock(Mortar::Auth.api).get_config_vars("myproject").returns(Excon::Response.new(:body => {"config" => config,"shadow_config" => shadow_config}))
142
-
143
- stderr, stdout = execute("config --shell", p, @git)
144
- stdout.should == <<-STDOUT
145
- A=one
146
- B=two
72
+ B
147
73
  STDOUT
148
74
  end
149
75
  end
150
76
 
151
77
  end
152
-
153
- context("get") do
154
- it "shows a single config for get" do
155
- with_git_initialized_project do |p|
156
- # stub api request
157
- configs = {"foo" => "ABCDEFGHIJKLMNOP", "BAR" => "sheepdog"}
158
- mock(Mortar::Auth.api).get_config_vars("myproject").returns(Excon::Response.new(:body => {"config" => configs}))
159
-
160
- stderr, stdout = execute("config:get BAR", p, @git)
161
- stdout.should == <<-STDOUT
162
- sheepdog
163
- STDOUT
164
- end
165
- end
166
-
167
- it "errors when a config is missing" do
168
- with_git_initialized_project do |p|
169
- # stub api request
170
- configs = {"foo" => "ABCDEFGHIJKLMNOP", "BAR" => "sheepdog"}
171
- mock(Mortar::Auth.api).get_config_vars("myproject").returns(Excon::Response.new(:body => {"config" => configs}))
172
-
173
- stderr, stdout = execute("config:get NOPE", p, @git)
174
- stderr.should == <<-STDERR
175
- ! Config var NOPE is not defined for project myproject.
176
- STDERR
177
- end
178
- end
179
- end
180
-
78
+
79
+
181
80
  context("set") do
182
81
  it "sets config vars" do
183
82
  with_git_initialized_project do |p|
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mortar
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.15.43
4
+ version: 0.15.44
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mortar Data
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-06-30 00:00:00.000000000 Z
11
+ date: 2016-10-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rdoc