danarchy_sys 0.2.14 → 0.2.15
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/danarchy_sys/cli/providers.rb +1 -1
- data/lib/danarchy_sys/config_manager.rb +34 -16
- data/lib/danarchy_sys/version.rb +1 -1
- metadata +2 -3
- data/config/.gitignore +0 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a6941e444194b1fb07c1dedb70c8aeb3ff636dd9
|
4
|
+
data.tar.gz: 0219493fc680ca3be83fbb3ddfc143e71e6f50d8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 734046026bdc11d9ba8ce27b9aa7972675c4b2a2b134ecf5cb45d0220049a05e83ede80b6be5e9a264620270d11433b1a0cc5b00417de6d14be2ce794c7ba532
|
7
|
+
data.tar.gz: 45a347fa21e336206b66f589a923a16b50e9bb8c12c9b9a8119b23a3543be0a159fb838905edb77f505e2185719f773b4e6a5d89ce59f74e895b642ae7ecd53e
|
@@ -1,3 +1,4 @@
|
|
1
|
+
require 'fileutils'
|
1
2
|
require 'yaml'
|
2
3
|
require_relative 'config_manager/openstack'
|
3
4
|
|
@@ -6,14 +7,14 @@ module DanarchySys
|
|
6
7
|
module ConfigManager
|
7
8
|
class Config
|
8
9
|
def self.new
|
9
|
-
|
10
|
-
|
10
|
+
danarchysys_cfg_path = File.join(File.realpath(ENV['HOME']), '.danarchy_sys')
|
11
|
+
config_yml = File.join(danarchysys_cfg_path, 'danarchysys.yml')
|
11
12
|
|
12
|
-
if File.exists?(
|
13
|
-
return YAML.load_file(
|
13
|
+
if File.exists?(config_yml)
|
14
|
+
return YAML.load_file(config_yml)
|
14
15
|
else
|
15
16
|
puts 'No existing configuration found!'
|
16
|
-
return new_config
|
17
|
+
return new_config(danarchysys_cfg_path, config_yml)
|
17
18
|
end
|
18
19
|
end
|
19
20
|
|
@@ -24,15 +25,33 @@ module DanarchySys
|
|
24
25
|
def self.config_template
|
25
26
|
config_template = {
|
26
27
|
global_settings: {
|
27
|
-
ssh_key_path:
|
28
|
+
ssh_key_path: nil
|
28
29
|
},
|
29
30
|
connections: {}
|
30
31
|
}
|
31
32
|
end
|
32
33
|
|
33
|
-
def self.new_config
|
34
|
+
def self.new_config(danarchysys_cfg_path, config_yml)
|
34
35
|
config = config_template
|
35
|
-
|
36
|
+
ssh_path = File.join(danarchysys_cfg_path, 'ssh')
|
37
|
+
|
38
|
+
puts "dAnarchy_sys config location: #{danarchysys_cfg_path}"
|
39
|
+
FileUtils.mkdir_p(danarchysys_cfg_path, mode: 0700) unless Dir.exist?(danarchysys_cfg_path)
|
40
|
+
|
41
|
+
print "Default ssh key location: #{ssh_path}. Is this location okay?: (Y/N) "
|
42
|
+
answer = gets.chomp
|
43
|
+
|
44
|
+
until answer =~ /^y(es)?$/i
|
45
|
+
print 'Enter a path for SSH keys: '
|
46
|
+
ssh_path = gets.chomp
|
47
|
+
print "Setting SSH key path to: #{ssh_path}. Is this location okay? (Y/N): "
|
48
|
+
answer = gets.chomp
|
49
|
+
end
|
50
|
+
|
51
|
+
puts "SSH key path set to: #{ssh_path}"
|
52
|
+
FileUtils.mkdir_p(ssh_path, mode: 0700) unless Dir.exist?(ssh_path)
|
53
|
+
global_setting_add(config, 'ssh_key_path', ssh_path)
|
54
|
+
|
36
55
|
provider = nil
|
37
56
|
if providers.count > 1
|
38
57
|
num_providers = Helpers.array_to_numhash(providers)
|
@@ -75,23 +94,22 @@ module DanarchySys
|
|
75
94
|
puts 'AWS not yet implemented!'
|
76
95
|
end
|
77
96
|
|
78
|
-
save(config)
|
79
|
-
puts
|
97
|
+
save(config_yml, config)
|
98
|
+
puts "Configuration has been saved to #{config_yml}"
|
99
|
+
puts "Copy any existing #{provider} SSH keys to: #{ssh_path}"
|
80
100
|
config
|
81
101
|
end
|
82
102
|
|
83
|
-
def self.save(param_hash)
|
84
|
-
File.write(
|
103
|
+
def self.save(config_file, param_hash)
|
104
|
+
File.write(config_file, param_hash.to_yaml)
|
85
105
|
end
|
86
106
|
|
87
107
|
|
88
|
-
def self.global_setting_add(name, value)
|
89
|
-
config = load
|
108
|
+
def self.global_setting_add(config, name, value)
|
90
109
|
config[:global_settings][name.to_sym] = value
|
91
110
|
end
|
92
111
|
|
93
|
-
def self.global_setting_delete(name)
|
94
|
-
config = load
|
112
|
+
def self.global_setting_delete(config, name)
|
95
113
|
config[:global_settings].delete(name.to_sym)
|
96
114
|
end
|
97
115
|
end
|
data/lib/danarchy_sys/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: danarchy_sys
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.15
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Dan James
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-07-
|
11
|
+
date: 2017-07-19 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: fog-openstack
|
@@ -91,7 +91,6 @@ files:
|
|
91
91
|
- Rakefile
|
92
92
|
- bin/console
|
93
93
|
- bin/danarchy_sys
|
94
|
-
- config/.gitignore
|
95
94
|
- danarchy_sys.gemspec
|
96
95
|
- lib/danarchy_sys.rb
|
97
96
|
- lib/danarchy_sys/aws.rb
|
data/config/.gitignore
DELETED