simple_config_man 0.3.8.1 → 0.3.9
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/lib/simple_config_man.rb +12 -7
- data/lib/simple_config_man/version.rb +1 -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: 102580643b7e7ccf9b123e16c3763acb452fc7cf
|
4
|
+
data.tar.gz: 28d0163f3860ffb2fa432dbdbbdc9cfda0d563e3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 15a68f75e7747c85d52bccb472736d27c860e91447fdacecacec323d3f79b7e14f60bfa1ecbb148264aa0cd27dfd4cb431c999b96c7b1b98320a8284bbcdcacc
|
7
|
+
data.tar.gz: 3f28b8494aad6cfd3b47decfc9d0a9449caa9a9c743a1fd51409531b7d6b4dcca333dac7947910a8faa7d324f5bb90cec3ef21ae2e916dd7759e8ab70d7365c9
|
data/lib/simple_config_man.rb
CHANGED
@@ -2,22 +2,22 @@ require "simple_config_man/version"
|
|
2
2
|
require 'simple_speaker'
|
3
3
|
|
4
4
|
module SimpleConfigMan
|
5
|
-
def self.configure_node(node, name = '', current = nil)
|
5
|
+
def self.configure_node(node, name = '', current = nil, remove_existing = 0)
|
6
6
|
if name == '' || speaker.ask_if_needed("Do you want to configure #{name}? (y/n)", 0, 'y') == 'y'
|
7
7
|
node.each do |k, v|
|
8
8
|
curr_v = current ? current[k] : nil
|
9
9
|
if v.is_a?(Hash)
|
10
|
-
node[k] = self.configure_node(v, name + ' ' + k, curr_v)
|
10
|
+
node[k] = self.configure_node(v, name + ' ' + k, curr_v, remove_existing)
|
11
11
|
elsif ['password','client_secret'].include?(k)
|
12
12
|
node[k] = STDIN.getpass("What is your #{name} #{k}? ")
|
13
13
|
else
|
14
14
|
speaker.speak_up "What is your #{name} #{k}? [#{curr_v}] "
|
15
15
|
node[k] = STDIN.gets.strip
|
16
16
|
end
|
17
|
-
node[k] = curr_v if (node[k].nil? || node[k] == '') && !v.is_a?(Hash)
|
17
|
+
node[k] = curr_v if (node[k].nil? || node[k] == '') && !v.is_a?(Hash) && remove_existing == 0
|
18
18
|
end
|
19
19
|
else
|
20
|
-
node = current
|
20
|
+
node = remove_existing > 0 ? nil : current
|
21
21
|
end
|
22
22
|
node
|
23
23
|
end
|
@@ -25,18 +25,23 @@ module SimpleConfigMan
|
|
25
25
|
def self.load_settings(config_dir, config_file, config_example)
|
26
26
|
Dir.mkdir(config_dir) unless File.exist?(config_dir)
|
27
27
|
unless File.exist?(config_file)
|
28
|
-
FileUtils.copy config_example, config_file
|
29
28
|
self.reconfigure(config_file, config_example)
|
30
29
|
end
|
31
30
|
YAML.load_file(config_file)
|
32
31
|
end
|
33
32
|
|
34
33
|
def self.reconfigure(config_file, config_example)
|
35
|
-
|
34
|
+
remove_existing = 0
|
35
|
+
begin
|
36
|
+
config = YAML.load_file(config_file)
|
37
|
+
rescue
|
38
|
+
remove_existing = 1
|
39
|
+
config = YAML.load_file(config_example)
|
40
|
+
end
|
36
41
|
default_config = YAML.load_file(config_example)
|
37
42
|
#Let's set the first config
|
38
43
|
speaker.speak_up 'The configuration file needs to be initialized.'
|
39
|
-
config = self.configure_node(default_config, '', config)
|
44
|
+
config = self.configure_node(default_config, '', config, remove_existing)
|
40
45
|
speaker.speak_up 'All set!'
|
41
46
|
File.write(config_file, YAML.dump(config))
|
42
47
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: simple_config_man
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.9
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- R
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-
|
11
|
+
date: 2018-11-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|