crowbar-client 3.5.1 → 3.5.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +5 -0
- data/lib/crowbar/client/command/proposal/edit.rb +41 -1
- data/lib/crowbar/client/version.rb +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 46b7ba57caa745cb2c4b7b61f72fb3c4c44a6a9c23b8bf5437f5da433028ae44
|
4
|
+
data.tar.gz: a11888a2f0e8cd2276294e32da87479b542517bfbdd8e595bc76b9e3c687ec7f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 32da261c491ce8d2bfbf5303b36b0869f71d2fef7fb226371efc05fcaadc6e252650ed7eba8e730bc182cd3bb05efea6bc68dd0d15837829581945cabcb4f8d6
|
7
|
+
data.tar.gz: 086f06ec09baa46b080e64bc22f14dcafdc5438872778c9a38d1835b102fd6fccc9d6730b5de8eb498d8d66e9b07dbd79717a24b1b31d2938087df8d0570e801
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,10 @@
|
|
1
1
|
# Changelog
|
2
2
|
|
3
|
+
## [3.5.2](https://github.com/crowbar/crowbar-client/releases/tag/v3.5.2) - 2018-01-09
|
4
|
+
|
5
|
+
* BUGFIX
|
6
|
+
* Display invalid nodes when editing proposal
|
7
|
+
|
3
8
|
## [3.5.1](https://github.com/crowbar/crowbar-client/releases/tag/v3.5.1) - 2017-12-05
|
4
9
|
|
5
10
|
* BUGFIX
|
@@ -76,6 +76,9 @@ module Crowbar
|
|
76
76
|
err "Failed to parse JSON"
|
77
77
|
end
|
78
78
|
|
79
|
+
# check if the nodes in the configuration are in the list of nodes
|
80
|
+
check_nodes(json)
|
81
|
+
|
79
82
|
if options[:merge]
|
80
83
|
proposal_preload.easy_merge(
|
81
84
|
json
|
@@ -104,6 +107,9 @@ module Crowbar
|
|
104
107
|
err "Failed to process file"
|
105
108
|
end
|
106
109
|
|
110
|
+
# check if the nodes in the configuration are in the list of nodes
|
111
|
+
check_nodes(json)
|
112
|
+
|
107
113
|
if options[:merge]
|
108
114
|
proposal_preload.easy_merge(
|
109
115
|
json
|
@@ -116,8 +122,12 @@ module Crowbar
|
|
116
122
|
def from_editor
|
117
123
|
editor = Util::Editor.new content: proposal_preload
|
118
124
|
editor.edit!
|
125
|
+
result = editor.result
|
119
126
|
|
120
|
-
|
127
|
+
# check if the nodes in the configuration are in the list of nodes
|
128
|
+
check_nodes(result)
|
129
|
+
|
130
|
+
result
|
121
131
|
rescue EditorAbortError => e
|
122
132
|
err e.message
|
123
133
|
rescue EditorStartupError => e
|
@@ -140,6 +150,36 @@ module Crowbar
|
|
140
150
|
from_editor
|
141
151
|
end
|
142
152
|
end
|
153
|
+
|
154
|
+
def check_nodes(configuration)
|
155
|
+
invalid_nodes = []
|
156
|
+
nodes_and_clusters = valid_elements
|
157
|
+
|
158
|
+
configuration["deployment"].each do |service_name, service|
|
159
|
+
next if service["elements"].nil?
|
160
|
+
|
161
|
+
service["elements"].each do |role, nodes|
|
162
|
+
nodes.each do |node|
|
163
|
+
unless nodes_and_clusters.include?(node)
|
164
|
+
invalid_nodes << { "node" => node, "role" => role,
|
165
|
+
"service_name" => service_name }
|
166
|
+
end
|
167
|
+
end
|
168
|
+
end
|
169
|
+
end
|
170
|
+
|
171
|
+
return if invalid_nodes.empty?
|
172
|
+
|
173
|
+
error_str = ""
|
174
|
+
|
175
|
+
invalid_nodes.each do |error|
|
176
|
+
error_str += "ERROR : #{error["node"]} is not available in the list of" \
|
177
|
+
" possible nodes and clusters. Added in role #{error["role"]}" \
|
178
|
+
" of service #{error["service_name"]}\r\n"
|
179
|
+
end
|
180
|
+
|
181
|
+
err error_str
|
182
|
+
end
|
143
183
|
end
|
144
184
|
end
|
145
185
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: crowbar-client
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.5.
|
4
|
+
version: 3.5.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Thomas Boerger
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date:
|
13
|
+
date: 2018-01-09 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: bundler
|
@@ -621,7 +621,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
621
621
|
version: '0'
|
622
622
|
requirements: []
|
623
623
|
rubyforge_project:
|
624
|
-
rubygems_version: 2.7.
|
624
|
+
rubygems_version: 2.7.4
|
625
625
|
signing_key:
|
626
626
|
specification_version: 4
|
627
627
|
summary: Crowbar commandline client
|