dtk-client 0.7.0 → 0.7.1
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 +5 -13
- data/dtk-client.gemspec +2 -2
- data/lib/commands/common/thor/access_control.rb +55 -2
- data/lib/commands/common/thor/assembly_workspace.rb +11 -0
- data/lib/commands/common/thor/module.rb +4 -4
- data/lib/commands/common/thor/push_clone_changes.rb +0 -1
- data/lib/commands/thor/node.rb +5 -7
- data/lib/commands/thor/service.rb +18 -0
- data/lib/commands/thor/workspace.rb +18 -0
- data/lib/dtk-client/version.rb +1 -1
- data/lib/parser/adapters/thor.rb +1 -1
- data/lib/shell/interactive_wizard.rb +15 -15
- data/lib/view_processor/table_print.rb +10 -19
- metadata +23 -23
checksums.yaml
CHANGED
@@ -1,15 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
|
5
|
-
data.tar.gz: !binary |-
|
6
|
-
YWU3YjdjMjgxNjk4MDMwZDJkMjM5NjhkM2QxNmUwNjQxYTQyMWFiNA==
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: d6d5f969664f0353c5a8389cb2ff93c540eb3e69
|
4
|
+
data.tar.gz: e7161714340eceba543449faceaeed05244c96f6
|
7
5
|
SHA512:
|
8
|
-
metadata.gz:
|
9
|
-
|
10
|
-
OWUxMmQwMjFlYmEyMWI0ZGE1OWQ1YmMyOTI0MzljMDU4MDI0YzM2NmY0ZWEw
|
11
|
-
ZjY0YTliNzRmMGZjMmMzYzg4YzM5ZDFiNzNkZTBiNWY1OTM3NjQ=
|
12
|
-
data.tar.gz: !binary |-
|
13
|
-
MDMyYzU2YWZmYzc4NjQ0YTI2YTIzN2E2OTllMjRhMDZlM2Q5ODU2ZGY1ZTI5
|
14
|
-
M2Q2OTY3NWY5ODJiOGMxZWY3MzZiZDdhZWViZTZiNGMyYzNlM2Q0YmQ0ODkx
|
15
|
-
N2NlNzZhYWE5Y2UzYWIzOGJjZDc3ZWUzYzFmZDcyYmNhNzdkMTM=
|
6
|
+
metadata.gz: 84773c714f5c6ec8b62c6fe5e3d3aebdd26a75097864e2be1caa5fd217a142109f3ce82a7f0b085182ffcf6de58ad39460504e2e890ddc2b1fab037bccd51427
|
7
|
+
data.tar.gz: bad5dfff733069e5538294cc04910251bfcdd8fbbade2e60fe73a479737100cf070f42d9f2e2c7ea7661ca6c1c879c048fb3cea7221a02f870f11ddc21e4b1a4
|
data/dtk-client.gemspec
CHANGED
@@ -15,7 +15,7 @@ Gem::Specification.new do |gem|
|
|
15
15
|
gem.files += Dir.glob("puppet/**/*")
|
16
16
|
gem.files += Dir.glob("spec/**/*")
|
17
17
|
gem.files += Dir.glob("views/**/*")
|
18
|
-
|
18
|
+
|
19
19
|
gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
|
20
20
|
gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
|
21
21
|
gem.name = "dtk-client"
|
@@ -29,7 +29,7 @@ Gem::Specification.new do |gem|
|
|
29
29
|
gem.add_dependency 'hirb','~> 0.7.0'
|
30
30
|
gem.add_dependency 'thor','~> 0.15.4'
|
31
31
|
gem.add_dependency 'erubis','~> 2.7.0'
|
32
|
-
gem.add_dependency 'dtk-common-core','
|
32
|
+
gem.add_dependency 'dtk-common-core','0.7.0'
|
33
33
|
gem.add_dependency 'git','~> 1.2.6'
|
34
34
|
gem.add_dependency 'colorize','~> 0.5.8'
|
35
35
|
gem.add_dependency 'highline', '1.6.16'
|
@@ -1,15 +1,68 @@
|
|
1
1
|
module DTK::Client
|
2
2
|
module AccessControlMixin
|
3
3
|
|
4
|
-
def chmod_aux(module_id, permission_string, namespace = nil)
|
4
|
+
def chmod_aux(module_id, permission_string, namespace = nil, chmod_action = :chmod)
|
5
5
|
permission_selector = PermissionUtil.validate_permissions!(permission_string.downcase)
|
6
6
|
post_body = {
|
7
7
|
:module_id => module_id,
|
8
8
|
:permission_selector => permission_selector,
|
9
|
+
:chmod_action => chmod_action,
|
9
10
|
:rsa_pub_key => SSHUtil.rsa_pub_key_content(),
|
10
11
|
:remote_module_namespace => namespace
|
11
12
|
}
|
12
|
-
post rest_url("#{resolve_module_type}/remote_chmod"), post_body
|
13
|
+
response = post rest_url("#{resolve_module_type}/remote_chmod"), post_body
|
14
|
+
return response unless response.ok?
|
15
|
+
|
16
|
+
if response.data(:simple_flow)
|
17
|
+
puts "Module is now public."
|
18
|
+
else
|
19
|
+
# in case there are dependencies
|
20
|
+
main_module_name = response.data(:main_module)['full_name']
|
21
|
+
puts "Main module '#{main_module_name}' has dependencies that are not public: "
|
22
|
+
unless response.data(:missing_modules).empty?
|
23
|
+
missing = response.data(:missing_modules).collect { |a| a['full_name'] }
|
24
|
+
OsUtil.print(" These modules are missing on repository: #{missing.join(', ')}", :red)
|
25
|
+
end
|
26
|
+
unless response.data(:no_permission).empty?
|
27
|
+
no_permission = response.data(:no_permission).collect { |a| a['full_name'] }
|
28
|
+
OsUtil.print(" You cannot change permissions for dependencies: #{no_permission.join(', ')}", :yellow)
|
29
|
+
end
|
30
|
+
unless response.data(:with_permission).empty?
|
31
|
+
with_permission = response.data(:with_permission)
|
32
|
+
with_permission_names = with_permission.collect { |a| a['full_name'] }
|
33
|
+
OsUtil.print(" You can change permissions for dependencies: #{with_permission_names.join(', ')}", :white)
|
34
|
+
|
35
|
+
# fix for bug in comments for DTK-1959
|
36
|
+
# need to send hash instead of array to be able to parse properly in rest_request_params
|
37
|
+
with_permission_hash = {}
|
38
|
+
with_permission.each do |wp|
|
39
|
+
with_permission_hash.merge!("#{wp['name']}" => wp)
|
40
|
+
end
|
41
|
+
|
42
|
+
response.data["with_permission"] = with_permission_hash
|
43
|
+
end
|
44
|
+
|
45
|
+
puts "How should we resolve these dependencies: "
|
46
|
+
input = ::DTK::Shell::InteractiveWizard.resolve_input("(A)ll / (M)ain Module / (N)one ", ['M','A','N'], true)
|
47
|
+
if 'N'.eql?(input)
|
48
|
+
return nil
|
49
|
+
else
|
50
|
+
puts "Sending input information ... "
|
51
|
+
post_body = {
|
52
|
+
:module_id => module_id,
|
53
|
+
:module_info => response.data,
|
54
|
+
:public_action => 'A'.eql?(input) ? :all : :one,
|
55
|
+
:rsa_pub_key => SSHUtil.rsa_pub_key_content(),
|
56
|
+
:remote_module_namespace => namespace
|
57
|
+
}
|
58
|
+
|
59
|
+
response = post rest_url("#{resolve_module_type}/confirm_make_public"), post_body
|
60
|
+
return response unless response.ok?
|
61
|
+
puts "Modules are now public."
|
62
|
+
end
|
63
|
+
end
|
64
|
+
|
65
|
+
nil
|
13
66
|
end
|
14
67
|
|
15
68
|
def chown_aux(module_id, remote_user, namespace = nil)
|
@@ -674,6 +674,17 @@ module DTK::Client
|
|
674
674
|
post rest_url("assembly/add_node"), post_body
|
675
675
|
end
|
676
676
|
|
677
|
+
def create_node_group_aux(context_params)
|
678
|
+
assembly_or_workspace_id, node_group_name, node_template_identifier = context_params.retrieve_arguments([[:service_id, :workspace_id!],:option_1!,:option_2!],method_argument_names)
|
679
|
+
post_body = {
|
680
|
+
:assembly_id => assembly_or_workspace_id,
|
681
|
+
:cardinality => options.cardinality,
|
682
|
+
:node_group_name => node_group_name,
|
683
|
+
:node_template_identifier => node_template_identifier
|
684
|
+
}
|
685
|
+
post rest_url("assembly/add_node_group"), post_body
|
686
|
+
end
|
687
|
+
|
677
688
|
def purge_aux(context_params)
|
678
689
|
assembly_or_workspace_id = context_params.retrieve_arguments([REQ_ASSEMBLY_OR_WS_ID],method_argument_names)
|
679
690
|
unless options.force?
|
@@ -22,7 +22,7 @@ PULL_CATALOGS = ["dtkn"]
|
|
22
22
|
module DTK::Client
|
23
23
|
class CommonModule
|
24
24
|
dtk_require_common_commands('thor/module/import')
|
25
|
-
|
25
|
+
|
26
26
|
def initialize(command,context_params)
|
27
27
|
@command = command
|
28
28
|
@context_params = context_params
|
@@ -374,12 +374,12 @@ module DTK::Client
|
|
374
374
|
|
375
375
|
def make_public_module_aux(context_params)
|
376
376
|
module_id = context_params.retrieve_arguments([REQ_MODULE_ID], method_argument_names)
|
377
|
-
chmod_aux(module_id, "o+r", options.namespace)
|
377
|
+
chmod_aux(module_id, "o+r", options.namespace, :make_public)
|
378
378
|
end
|
379
379
|
|
380
380
|
def make_private_module_aux(context_params)
|
381
381
|
module_id = context_params.retrieve_arguments([REQ_MODULE_ID], method_argument_names)
|
382
|
-
chmod_aux(module_id, "o-rwd", options.namespace)
|
382
|
+
chmod_aux(module_id, "o-rwd", options.namespace, :make_private)
|
383
383
|
end
|
384
384
|
|
385
385
|
def add_collaborators_module_aux(context_params)
|
@@ -442,7 +442,7 @@ module DTK::Client
|
|
442
442
|
# if catalog.to_s.eql?("origin")
|
443
443
|
# push_clone_changes_aux(:component_module,component_module_id,version,options["message"]||DEFAULT_COMMIT_MSG,internal_trigger)
|
444
444
|
if catalog.to_s.eql?("dtkn")
|
445
|
-
module_refs_content = RemoteDependencyUtil.module_ref_content(module_location)
|
445
|
+
module_refs_content = RemoteDependencyUtil.module_ref_content(module_location)
|
446
446
|
remote_module_info = get_remote_module_info_aux(module_type.to_sym, module_id, options["namespace"], version, module_refs_content, local_namespace)
|
447
447
|
return remote_module_info unless remote_module_info.ok?
|
448
448
|
|
@@ -34,7 +34,6 @@ module DTK::Client
|
|
34
34
|
post_body = get_workspace_branch_info_post_body(module_type, module_id, version, opts).merge(:json_diffs => json_diffs, :commit_sha => commit_sha)
|
35
35
|
post_body.merge!(:modification_type => opts[:modification_type]) if opts[:modification_type]
|
36
36
|
post_body.merge!(:force_parse => true) if options['force-parse'] || opts[:force_parse]
|
37
|
-
post_body.merge!(:skip_module_ref_update => true) if opts[:skip_module_ref_update]
|
38
37
|
post_body.merge!(:update_from_includes => true) if opts[:update_from_includes]
|
39
38
|
|
40
39
|
if opts[:set_parsed_false]
|
data/lib/commands/thor/node.rb
CHANGED
@@ -143,6 +143,10 @@ module DTK::Client
|
|
143
143
|
unless File.exists?(identity_file_location)
|
144
144
|
raise ::DTK::Client::DtkError, "Not able to find identity file, '#{identity_file_location}'"
|
145
145
|
end
|
146
|
+
elsif default_identity_file = OsUtil.dtk_identity_file_location()
|
147
|
+
if File.exists?(default_identity_file)
|
148
|
+
identity_file_location = default_identity_file
|
149
|
+
end
|
146
150
|
end
|
147
151
|
|
148
152
|
context_params.forward_options({ :json_return => true })
|
@@ -160,8 +164,7 @@ module DTK::Client
|
|
160
164
|
|
161
165
|
connection_string = "#{remote_user}@#{public_dns}"
|
162
166
|
|
163
|
-
|
164
|
-
|
167
|
+
|
165
168
|
ssh_command = nil
|
166
169
|
|
167
170
|
if identity_file_location
|
@@ -170,11 +173,6 @@ module DTK::Client
|
|
170
173
|
elsif SSHUtil.ssh_reachable?(remote_user, public_dns)
|
171
174
|
# it has PUB key access
|
172
175
|
ssh_command = "ssh -o \"StrictHostKeyChecking no\" -o \"UserKnownHostsFile /dev/null\" #{connection_string}"
|
173
|
-
else
|
174
|
-
# using default identity_file
|
175
|
-
if default_identity_file
|
176
|
-
ssh_command = "ssh -o \"StrictHostKeyChecking no\" -o \"UserKnownHostsFile /dev/null\" -i #{default_identity_file} #{connection_string}"
|
177
|
-
end
|
178
176
|
end
|
179
177
|
|
180
178
|
raise ::DTK::Client::DtkError, "No public key access or PEM provided, please grant access or provide valid PEM key" if ssh_command.nil?
|
@@ -73,6 +73,7 @@ module DTK::Client
|
|
73
73
|
:context => {
|
74
74
|
:add_component => "component_template",
|
75
75
|
:create_node => "node_template",
|
76
|
+
:create_node_group => "node_template",
|
76
77
|
:add_component_dependency => "component_template"
|
77
78
|
},
|
78
79
|
:command => {
|
@@ -621,6 +622,23 @@ TODO: will put in dot release and will rename to 'extend'
|
|
621
622
|
DTK::Client::OsUtil.print(message, :yellow)
|
622
623
|
end
|
623
624
|
|
625
|
+
desc "SERVICE-NAME/ID create-node-group ^^NODE-GROUP-NAME NODE-TEMPLATE [-n CARDINALITY]", "Add (stage) a new node group in the service."
|
626
|
+
method_option :cardinality, :aliases => '-n', :type => :string, :default => 1
|
627
|
+
def create_node_group(context_params)
|
628
|
+
response = create_node_group_aux(context_params)
|
629
|
+
return response unless response.ok?
|
630
|
+
|
631
|
+
@@invalidate_map << :assembly
|
632
|
+
@@invalidate_map << :assembly_node
|
633
|
+
@@invalidate_map << :service
|
634
|
+
@@invalidate_map << :service_node
|
635
|
+
@@invalidate_map << :workspace
|
636
|
+
@@invalidate_map << :workspace_node
|
637
|
+
|
638
|
+
message = "Created node group '#{response.data["display_name"]}'."
|
639
|
+
DTK::Client::OsUtil.print(message, :yellow)
|
640
|
+
end
|
641
|
+
|
624
642
|
desc "SERVICE-NAME/ID link-components TARGET-CMP-NAME SOURCE-CMP-NAME [DEPENDENCY-NAME]","Link the target component to the source component."
|
625
643
|
def link_components(context_params)
|
626
644
|
link_components_aux(context_params)
|
@@ -48,6 +48,7 @@ module DTK::Client
|
|
48
48
|
:context => {
|
49
49
|
:add_component => "component_template",
|
50
50
|
:create_node => "node_template",
|
51
|
+
:create_node_group => "node_template",
|
51
52
|
:add_component_dependency => "component_template",
|
52
53
|
:set_target => 'target'
|
53
54
|
},
|
@@ -266,6 +267,23 @@ module DTK::Client
|
|
266
267
|
DTK::Client::OsUtil.print(message, :yellow)
|
267
268
|
end
|
268
269
|
|
270
|
+
desc "WORKSPACE-NAME/ID create-node-group ^^NODE-GROUP-NAME NODE-TEMPLATE [-n CARDINALITY]", "Add (stage) a new node group in the workspace."
|
271
|
+
method_option :cardinality, :aliases => '-n', :type => :string, :default => 1
|
272
|
+
def create_node_group(context_params)
|
273
|
+
response = create_node_group_aux(context_params)
|
274
|
+
return response unless response.ok?
|
275
|
+
|
276
|
+
@@invalidate_map << :assembly
|
277
|
+
@@invalidate_map << :assembly_node
|
278
|
+
@@invalidate_map << :service
|
279
|
+
@@invalidate_map << :service_node
|
280
|
+
@@invalidate_map << :workspace
|
281
|
+
@@invalidate_map << :workspace_node
|
282
|
+
|
283
|
+
message = "Created node group '#{response.data["display_name"]}'."
|
284
|
+
DTK::Client::OsUtil.print(message, :yellow)
|
285
|
+
end
|
286
|
+
|
269
287
|
desc "WORKSPACE-NAME/ID link-components TARGET-CMP-NAME SOURCE-CMP-NAME [DEPENDENCY-NAME]","Link the target component to the source component."
|
270
288
|
def link_components(context_params)
|
271
289
|
link_components_aux(context_params)
|
data/lib/dtk-client/version.rb
CHANGED
data/lib/parser/adapters/thor.rb
CHANGED
@@ -468,7 +468,7 @@ module DTK
|
|
468
468
|
namespace, name = nil, ''
|
469
469
|
|
470
470
|
if (component_full_name||'').include?(':')
|
471
|
-
match = component_full_name.match(/(
|
471
|
+
match = component_full_name.match(/(^[^:]+):{1}(.*$)/)
|
472
472
|
namespace, name = [$1,$2]
|
473
473
|
|
474
474
|
return [nil, component_full_name] if (name.include?(':') && !name.include?('::'))
|
@@ -11,16 +11,16 @@ module DTK
|
|
11
11
|
|
12
12
|
PP_LINE_HEAD = '--------------------------------- DATA ---------------------------------'
|
13
13
|
PP_LINE = '------------------------------------------------------------------------'
|
14
|
-
INVALID_INPUT = Client::OsUtil.colorize(" Input is not valid.", :yellow)
|
14
|
+
INVALID_INPUT = Client::OsUtil.colorize(" Input is not valid. ", :yellow)
|
15
15
|
EC2_REGIONS = ['us-east-1','us-west-1','us-west-2','eu-west-1','sa-east-1','ap-northeast-1','ap-southeast-1','ap-southeast-2' ]
|
16
|
-
|
16
|
+
|
17
17
|
|
18
18
|
def initialize
|
19
19
|
end
|
20
20
|
|
21
21
|
def self.validate_region(region)
|
22
22
|
unless EC2_REGIONS.include? region
|
23
|
-
raise ::DTK::Client::DtkValidationError.new("Region '#{region}' is not EC2 region, use one of: #{EC2_REGIONS.join(',')}")
|
23
|
+
raise ::DTK::Client::DtkValidationError.new("Region '#{region}' is not EC2 region, use one of: #{EC2_REGIONS.join(',')}")
|
24
24
|
end
|
25
25
|
end
|
26
26
|
|
@@ -42,7 +42,7 @@ module DTK
|
|
42
42
|
validation = nil
|
43
43
|
when :question
|
44
44
|
output = "#{metadata[:question]} (#{metadata[:options].join('|')}): "
|
45
|
-
validation =
|
45
|
+
validation =
|
46
46
|
metadata[:options]
|
47
47
|
when :selection
|
48
48
|
options = ""
|
@@ -90,7 +90,7 @@ module DTK
|
|
90
90
|
end
|
91
91
|
|
92
92
|
|
93
|
-
def self.resolve_input(output, validation, is_required, is_recursion_call)
|
93
|
+
def self.resolve_input(output, validation, is_required, is_recursion_call=false)
|
94
94
|
tab_prefix = is_recursion_call ? "\t" : ""
|
95
95
|
|
96
96
|
# there was a bug within windows that does not support multiline input in readline method
|
@@ -100,10 +100,10 @@ module DTK
|
|
100
100
|
puts prompt_input
|
101
101
|
prompt_input = ">> "
|
102
102
|
end
|
103
|
-
|
103
|
+
|
104
104
|
# while line = Readline.readline(prompt_input, true)
|
105
105
|
#using 'ask' from highline gem to be able to hide input for key and secret
|
106
|
-
while line = ask("#{prompt_input}") { |q| q.echo =
|
106
|
+
while line = ask("#{prompt_input}") { |q| q.echo = true }
|
107
107
|
if is_required && line.empty?
|
108
108
|
puts INVALID_INPUT
|
109
109
|
next
|
@@ -130,7 +130,7 @@ module DTK
|
|
130
130
|
description =
|
131
131
|
if param_info['display_name'] =~ Regexp.new(param_info['description'])
|
132
132
|
param_info['display_name']
|
133
|
-
else
|
133
|
+
else
|
134
134
|
"#{param_info['display_name']} (#{param_info['description']})"
|
135
135
|
end
|
136
136
|
datatype_info = (param_info['datatype'] ? DTK::Client::OsUtil.colorize(" [#{param_info['datatype'].upcase}]", :yellow) : '')
|
@@ -143,7 +143,7 @@ module DTK
|
|
143
143
|
checkup_hash[id] = {:value => line, :description => description}
|
144
144
|
break
|
145
145
|
end
|
146
|
-
|
146
|
+
|
147
147
|
end
|
148
148
|
|
149
149
|
# pp print for provided parameters
|
@@ -152,14 +152,14 @@ module DTK
|
|
152
152
|
# make sure this is satisfactory
|
153
153
|
while line = Readline.readline("Is provided information ok? (yes|no) ", true)
|
154
154
|
# start all over again
|
155
|
-
return resolve_missing_params(param_list) if 'no'.eql? line
|
155
|
+
return resolve_missing_params(param_list) if 'no'.eql? line
|
156
156
|
# continue with the code
|
157
157
|
break if 'yes'.eql? line
|
158
158
|
end
|
159
159
|
|
160
160
|
rescue Interrupt => e
|
161
161
|
puts
|
162
|
-
# TODO: Provide original error here
|
162
|
+
# TODO: Provide original error here
|
163
163
|
raise DTK::Client::DtkError, "You have decided to skip correction wizard."
|
164
164
|
end
|
165
165
|
|
@@ -188,7 +188,7 @@ end
|
|
188
188
|
=begin
|
189
189
|
desc "create","Wizard that will guide you trough creation of target and target-template"
|
190
190
|
def create(context_params)
|
191
|
-
|
191
|
+
|
192
192
|
# we get existing templates
|
193
193
|
target_templates = post rest_url("target/list"), { :subtype => :template }
|
194
194
|
|
@@ -206,9 +206,9 @@ end
|
|
206
206
|
# in case user has not selected template id we will needed information to create target
|
207
207
|
wizard_params.concat([
|
208
208
|
{:iaas_type => { :type => :selection, :options => [:ec2] }},
|
209
|
-
{:aws_install => { :type => :question,
|
210
|
-
:question => "Do we have your permission to add necessery 'key-pair' and 'security-group' to your EC2 account?",
|
211
|
-
:options => ["yes","no"],
|
209
|
+
{:aws_install => { :type => :question,
|
210
|
+
:question => "Do we have your permission to add necessery 'key-pair' and 'security-group' to your EC2 account?",
|
211
|
+
:options => ["yes","no"],
|
212
212
|
:required_options => ["yes"],
|
213
213
|
:explanation => "This permission is necessary for creation of a custom target."
|
214
214
|
}},
|
@@ -104,30 +104,21 @@ module DTK
|
|
104
104
|
error_index = ""
|
105
105
|
error_type = value_of(structured_element,'errors.dtk_type') || ""
|
106
106
|
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
error_type = val.scan( /\d+[,.]\d?[,.]?\d?[,.]?\d?[,.]?\d?/ ).first
|
111
|
-
end
|
112
|
-
|
113
|
-
# we set index for each message first => [ 1 ], second => [ 2 ], etc.
|
114
|
-
if error_type == "user_error" || error_type == "test_error"
|
115
|
-
error_index = "[ #{@error_data.size + 1} ]"
|
116
|
-
else
|
117
|
-
server_error = true
|
118
|
-
error_index = error_type
|
119
|
-
end
|
107
|
+
val = value_of(structured_element,'dtk_type')||''
|
108
|
+
# extract e.g. 3.1.1.1 from '3.1.1.1 action' etc.
|
109
|
+
error_index = "[ #{val.scan( /\d+[,.]\d?[,.]?\d?[,.]?\d?[,.]?\d?/ ).first} ]"
|
120
110
|
|
121
111
|
# original table takes that index
|
122
112
|
evaluated_element.send("#{k}=", error_index)
|
123
113
|
# we set new error element
|
124
|
-
error_element.id
|
125
|
-
|
126
|
-
if
|
127
|
-
error_element.message = "[
|
114
|
+
error_element.id = error_index
|
115
|
+
|
116
|
+
if error_type == "user_error"
|
117
|
+
error_element.message = "[USER ERROR] " + error_message
|
118
|
+
elsif error_type == "test_error"
|
119
|
+
error_element.message = "[TEST ERROR] " + error_message
|
128
120
|
else
|
129
|
-
error_element.message = "[
|
130
|
-
error_element.message = "[TEST ERROR] " + error_message if error_type == "test_error"
|
121
|
+
error_element.message = "[SERVER ERROR] " + error_message
|
131
122
|
end
|
132
123
|
|
133
124
|
# add it with other
|
metadata
CHANGED
@@ -1,27 +1,27 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: dtk-client
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.7.
|
4
|
+
version: 0.7.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Rich PELAVIN
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-
|
11
|
+
date: 2015-03-12 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- -
|
17
|
+
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
19
|
version: 1.2.4
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
|
-
- -
|
24
|
+
- - ">="
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: 1.2.4
|
27
27
|
- !ruby/object:Gem::Dependency
|
@@ -56,98 +56,98 @@ dependencies:
|
|
56
56
|
name: mime-types
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
|
-
- - ~>
|
59
|
+
- - "~>"
|
60
60
|
- !ruby/object:Gem::Version
|
61
61
|
version: '1.25'
|
62
62
|
type: :runtime
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
|
-
- - ~>
|
66
|
+
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: '1.25'
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: hirb
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
|
-
- - ~>
|
73
|
+
- - "~>"
|
74
74
|
- !ruby/object:Gem::Version
|
75
75
|
version: 0.7.0
|
76
76
|
type: :runtime
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
|
-
- - ~>
|
80
|
+
- - "~>"
|
81
81
|
- !ruby/object:Gem::Version
|
82
82
|
version: 0.7.0
|
83
83
|
- !ruby/object:Gem::Dependency
|
84
84
|
name: thor
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
86
86
|
requirements:
|
87
|
-
- - ~>
|
87
|
+
- - "~>"
|
88
88
|
- !ruby/object:Gem::Version
|
89
89
|
version: 0.15.4
|
90
90
|
type: :runtime
|
91
91
|
prerelease: false
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
|
-
- - ~>
|
94
|
+
- - "~>"
|
95
95
|
- !ruby/object:Gem::Version
|
96
96
|
version: 0.15.4
|
97
97
|
- !ruby/object:Gem::Dependency
|
98
98
|
name: erubis
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|
100
100
|
requirements:
|
101
|
-
- - ~>
|
101
|
+
- - "~>"
|
102
102
|
- !ruby/object:Gem::Version
|
103
103
|
version: 2.7.0
|
104
104
|
type: :runtime
|
105
105
|
prerelease: false
|
106
106
|
version_requirements: !ruby/object:Gem::Requirement
|
107
107
|
requirements:
|
108
|
-
- - ~>
|
108
|
+
- - "~>"
|
109
109
|
- !ruby/object:Gem::Version
|
110
110
|
version: 2.7.0
|
111
111
|
- !ruby/object:Gem::Dependency
|
112
112
|
name: dtk-common-core
|
113
113
|
requirement: !ruby/object:Gem::Requirement
|
114
114
|
requirements:
|
115
|
-
- -
|
115
|
+
- - '='
|
116
116
|
- !ruby/object:Gem::Version
|
117
|
-
version: 0.
|
117
|
+
version: 0.7.0
|
118
118
|
type: :runtime
|
119
119
|
prerelease: false
|
120
120
|
version_requirements: !ruby/object:Gem::Requirement
|
121
121
|
requirements:
|
122
|
-
- -
|
122
|
+
- - '='
|
123
123
|
- !ruby/object:Gem::Version
|
124
|
-
version: 0.
|
124
|
+
version: 0.7.0
|
125
125
|
- !ruby/object:Gem::Dependency
|
126
126
|
name: git
|
127
127
|
requirement: !ruby/object:Gem::Requirement
|
128
128
|
requirements:
|
129
|
-
- - ~>
|
129
|
+
- - "~>"
|
130
130
|
- !ruby/object:Gem::Version
|
131
131
|
version: 1.2.6
|
132
132
|
type: :runtime
|
133
133
|
prerelease: false
|
134
134
|
version_requirements: !ruby/object:Gem::Requirement
|
135
135
|
requirements:
|
136
|
-
- - ~>
|
136
|
+
- - "~>"
|
137
137
|
- !ruby/object:Gem::Version
|
138
138
|
version: 1.2.6
|
139
139
|
- !ruby/object:Gem::Dependency
|
140
140
|
name: colorize
|
141
141
|
requirement: !ruby/object:Gem::Requirement
|
142
142
|
requirements:
|
143
|
-
- - ~>
|
143
|
+
- - "~>"
|
144
144
|
- !ruby/object:Gem::Version
|
145
145
|
version: 0.5.8
|
146
146
|
type: :runtime
|
147
147
|
prerelease: false
|
148
148
|
version_requirements: !ruby/object:Gem::Requirement
|
149
149
|
requirements:
|
150
|
-
- - ~>
|
150
|
+
- - "~>"
|
151
151
|
- !ruby/object:Gem::Version
|
152
152
|
version: 0.5.8
|
153
153
|
- !ruby/object:Gem::Dependency
|
@@ -337,17 +337,17 @@ require_paths:
|
|
337
337
|
- lib
|
338
338
|
required_ruby_version: !ruby/object:Gem::Requirement
|
339
339
|
requirements:
|
340
|
-
- -
|
340
|
+
- - ">="
|
341
341
|
- !ruby/object:Gem::Version
|
342
342
|
version: '0'
|
343
343
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
344
344
|
requirements:
|
345
|
-
- -
|
345
|
+
- - ">="
|
346
346
|
- !ruby/object:Gem::Version
|
347
347
|
version: '0'
|
348
348
|
requirements: []
|
349
349
|
rubyforge_project:
|
350
|
-
rubygems_version: 2.
|
350
|
+
rubygems_version: 2.4.1
|
351
351
|
signing_key:
|
352
352
|
specification_version: 4
|
353
353
|
summary: DTK CLI client for DTK server interaction.
|