dtk-client 0.7.4.1 → 0.7.5

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.
Files changed (54) hide show
  1. checksums.yaml +4 -4
  2. data/bin/dtk +10 -3
  3. data/bin/dtk-shell +1 -1
  4. data/lib/command_helpers/git_repo.rb +26 -20
  5. data/lib/command_helpers/jenkins_client.rb +4 -3
  6. data/lib/command_helpers/service_importer.rb +37 -25
  7. data/lib/commands.rb +2 -2
  8. data/lib/commands/common/thor/assembly_workspace.rb +185 -173
  9. data/lib/commands/common/thor/base_command_helper.rb +42 -0
  10. data/lib/commands/common/thor/clone.rb +1 -1
  11. data/lib/commands/common/thor/module.rb +37 -58
  12. data/lib/commands/common/thor/module/import.rb +1 -1
  13. data/lib/commands/common/thor/pull_from_remote.rb +7 -12
  14. data/lib/commands/common/thor/purge_clone.rb +1 -1
  15. data/lib/commands/common/thor/push_clone_changes.rb +3 -1
  16. data/lib/commands/common/thor/task_status.rb +52 -75
  17. data/lib/commands/common/thor/task_status/refresh_mode.rb +56 -0
  18. data/lib/commands/common/thor/task_status/snapshot_mode.rb +11 -0
  19. data/lib/commands/common/thor/task_status/stream_mode.rb +31 -0
  20. data/lib/commands/common/thor/task_status/stream_mode/element.rb +90 -0
  21. data/lib/commands/common/thor/task_status/stream_mode/element/no_results.rb +10 -0
  22. data/lib/commands/common/thor/task_status/stream_mode/element/render.rb +88 -0
  23. data/lib/commands/common/thor/task_status/stream_mode/element/stage.rb +13 -0
  24. data/lib/commands/common/thor/task_status/stream_mode/element/task_end.rb +10 -0
  25. data/lib/commands/common/thor/task_status/stream_mode/element/task_start.rb +10 -0
  26. data/lib/commands/thor/account.rb +10 -8
  27. data/lib/commands/thor/assembly.rb +9 -2
  28. data/lib/commands/thor/component_module.rb +0 -52
  29. data/lib/commands/thor/library.rb +1 -0
  30. data/lib/commands/thor/node.rb +1 -36
  31. data/lib/commands/thor/node_template.rb +4 -47
  32. data/lib/commands/thor/service.rb +57 -46
  33. data/lib/commands/thor/service_module.rb +2 -49
  34. data/lib/commands/thor/target.rb +7 -7
  35. data/lib/commands/thor/workspace.rb +44 -27
  36. data/lib/context_router.rb +4 -0
  37. data/lib/core.rb +71 -99
  38. data/lib/domain/response.rb +9 -0
  39. data/lib/domain/response/error_handler.rb +61 -0
  40. data/lib/dtk-client/version.rb +1 -1
  41. data/lib/dtk_client.rb +14 -0
  42. data/lib/dtk_error.rb +91 -0
  43. data/lib/error.rb +3 -9
  44. data/lib/execute/cli_pure/cli_rerouter.rb +82 -0
  45. data/lib/parser/adapters/thor.rb +3 -0
  46. data/lib/shell.rb +2 -1
  47. data/lib/shell/domain/context_params.rb +2 -0
  48. data/lib/util/console.rb +1 -1
  49. data/lib/util/os_util.rb +1 -0
  50. data/lib/util/remote_dependency_util.rb +20 -3
  51. data/lib/view_processor/table_print.rb +7 -25
  52. metadata +17 -5
  53. data/lib/commands/common/thor/test_action_agent.rb +0 -39
  54. data/lib/commands/thor/repo.rb +0 -35
@@ -1,3 +1,4 @@
1
+ # TODO: Marked for removal [Haris]
1
2
  module DTK::Client
2
3
 
3
4
  class Library < CommandBaseThor
@@ -1,6 +1,5 @@
1
1
  dtk_require_common_commands('thor/task_status')
2
2
  dtk_require_common_commands('thor/set_required_attributes')
3
- dtk_require_common_commands('thor/test_action_agent')
4
3
 
5
4
  module DTK::Client
6
5
  class Node < CommandBaseThor
@@ -10,7 +9,6 @@ module DTK::Client
10
9
  no_tasks do
11
10
  include TaskStatusMixin
12
11
  include SetRequiredParamsMixin
13
- include TestActionAgent
14
12
  end
15
13
 
16
14
  def self.pretty_print_cols()
@@ -96,39 +94,6 @@ module DTK::Client
96
94
  post rest_url("node/info"), post_body
97
95
  end
98
96
 
99
- desc "NODE-NAME/ID test-action-agent BASH-COMMAND-LINE", "Run bash command on test action agent"
100
- def test_action_agent(context_params)
101
- response = test_agent_aux(context_params)
102
- return response unless response.ok?
103
-
104
- # this I will fix to have more clear output
105
- data = response.data(:results)
106
-
107
- datas = data.values.first['results']
108
- errors = data.values.first['errors']
109
-
110
-
111
- datas.each do |data|
112
- OsUtil.print("Command: #{data['description']}, status: #{data['status']}", :yellow)
113
- if data['stdout'] && !data['stdout'].empty?
114
- print data['stdout']
115
- end
116
-
117
- if data['stderr'] && !data['stderr'].empty?
118
- print data['stderr']
119
- end
120
- end
121
-
122
- if errors && !errors.empty?
123
- puts; puts;
124
- OsUtil.print('Some errors have been detected', :white)
125
- errors.each_with_index { |err, index| OsUtil.print("#{index+1}. #{err}", :red) }
126
- end
127
-
128
-
129
- return nil
130
- end
131
-
132
97
  desc "NODE-NAME/ID ssh REMOTE-USER [-i PATH-TO-PEM]","SSH into node, optional parameters are path to indentity file."
133
98
  method_option "--identity-file",:aliases => '-i',:type => :string, :desc => "Identity-File used for connection, if not provided default is used", :banner => "IDENTITY-FILE"
134
99
  def ssh(context_params)
@@ -164,7 +129,7 @@ module DTK::Client
164
129
 
165
130
  connection_string = "#{remote_user}@#{public_dns}"
166
131
 
167
-
132
+
168
133
  ssh_command = nil
169
134
 
170
135
  if identity_file_location
@@ -21,7 +21,7 @@ module DTK::Client
21
21
  desc "list", "List all node templates."
22
22
  method_option :all, :type => :boolean, :default => false
23
23
  method_option "target_identifier",:aliases => "-t" ,
24
- :type => :string,
24
+ :type => :string,
25
25
  :banner => "TARGET-IDENTIFIER",
26
26
  :desc => "Name or ID of desired target"
27
27
  def list(context_params)
@@ -46,10 +46,10 @@ module DTK::Client
46
46
  end
47
47
 
48
48
  desc "add-node-template NODE-TEMPLATE-NAME [-t TARGET-NAME/ID] --os OS --image-id IMAGE-ID --size SIZE[,SIZE2,..]", "Add new node template"
49
- method_option "target",:aliases => "-t"
49
+ method_option "target",:aliases => "-t"
50
50
  method_option "os"
51
- method_option "image-id",:aliases => "-i"
52
- method_option "size",:aliases => "-s"
51
+ method_option "image-id",:aliases => "-i"
52
+ method_option "size",:aliases => "-s"
53
53
  def add_node_template(context_params)
54
54
  node_template_name = context_params.retrieve_arguments([:option_1!],method_argument_names)
55
55
  size_array = options[:size] && options[:size].split(',')
@@ -73,49 +73,6 @@ module DTK::Client
73
73
  post rest_url("node/delete_node_template"), post_body
74
74
  end
75
75
 
76
- =begin
77
- #Not implemented yet
78
- desc "NODE-TEMPLATE-NAME/ID info", "Get information about given node template."
79
- method_option :list, :type => :boolean, :default => false
80
- def info(context_params)
81
- node_template_id = context_params.retrieve_arguments([:node_template_id!],method_argument_names)
82
- data_type = :node
83
-
84
- post_body = {
85
- :node_id => node_template_id,
86
- :subtype => 'template'
87
- }
88
- response = post rest_url("node/info"), post_body
89
-
90
- response.render_table(data_type) unless options.list?
91
-
92
- return response
93
- end
94
- =end
95
-
96
- =begin
97
- #TODO: move to form desc "NODE-TEMPLATE-NAME/ID stage [INSTANCE-NAME]"
98
- #will then have to reverse arguments
99
- desc "stage NODE-TEMPLATE-NAME [INSTANCE-NAME]", "Stage node template in target."
100
- method_option "in-target",:aliases => "-t" ,
101
- :type => :numeric,
102
- :banner => "TARGET-ID",
103
- :desc => "Target (id) to create node instance in"
104
- def stage(context_params)
105
- node_template_id, name = context_params.retrieve_arguments([:option_1!, :option_2],method_argument_names)
106
- post_body = {
107
- :node_template_identifier => node_template_id
108
- }
109
- post_body.merge!(:target_id => options["in-target"]) if options["in-target"]
110
- post_body.merge!(:name => name) if name
111
- response = post rest_url("node/stage"), post_body
112
- # when changing context send request for getting latest node_templates instead of getting from cache
113
- @@invalidate_map << :node_template
114
- @@invalidate_map << :node
115
-
116
- response
117
- end
118
- =end
119
76
  end
120
77
  end
121
78
 
@@ -17,7 +17,6 @@ DEBUG_SLEEP_TIME = DTK::Configuration.get(:debug_task_frequency)
17
17
 
18
18
  module DTK::Client
19
19
  class Service < CommandBaseThor
20
-
21
20
  no_tasks do
22
21
  include TaskStatusMixin
23
22
  include SetRequiredParamsMixin
@@ -45,8 +44,6 @@ module DTK::Client
45
44
  assembly_id
46
45
  end
47
46
 
48
-
49
-
50
47
  end
51
48
 
52
49
  def self.whoami()
@@ -169,7 +166,7 @@ module DTK::Client
169
166
  ]
170
167
  },
171
168
  :identifier_only => {
172
- :node => [
169
+ :node => [
173
170
  ['add-component',"add-component COMPONENT","# Add a component to the node."],
174
171
  ['delete-component',"delete-component COMPONENT-NAME [-y]","# Delete component from service's node"],
175
172
  ['info',"info","# Return info about node instance belonging to given workspace."],
@@ -211,7 +208,6 @@ module DTK::Client
211
208
  destroy_and_reset_nodes_aux(context_params)
212
209
  end
213
210
 
214
-
215
211
  desc "SERVICE-NAME/ID start [NODE-NAME]", "Starts all the service nodes. A single node can be selected."
216
212
  def start(context_params)
217
213
  start_aux(context_params)
@@ -251,32 +247,53 @@ module DTK::Client
251
247
  Response::Ok.new()
252
248
  end
253
249
 
254
- # TODO: DTK-1986 introduces the hidden optional terms [WORKFLOW-ACTION [WORKFLOW-PARAMS]]
255
- # desc "SERVICE-NAME/ID converge [-m COMMIT-MSG] [WORKFLOW-ACTION [WORKFLOW-PARAMS]]", "Converge service instance."
250
+ desc "SERVICE-NAME/ID execute-workflow WORKFLOW-ACTION [WORKFLOW-PARAMS] [-m COMMIT-MSG]", "Execute workflow."
251
+ method_option "commit_msg",:aliases => "-m" ,
252
+ :type => :string,
253
+ :banner => "COMMIT-MSG",
254
+ :desc => "Commit message"
255
+ def execute_workflow(context_params)
256
+ converge(context_params)
257
+ end
256
258
  desc "SERVICE-NAME/ID converge [-m COMMIT-MSG]", "Converge service instance."
257
259
  method_option "commit_msg",:aliases => "-m" ,
258
260
  :type => :string,
259
261
  :banner => "COMMIT-MSG",
260
262
  :desc => "Commit message"
261
263
  def converge(context_params)
262
- converge_aux(context_params)
264
+ opts = Hash.new
265
+ if context_params.pure_cli_mode
266
+ opts.merge!(:mode => :stream)
267
+ end
268
+ converge_aux(context_params,opts)
269
+ end
270
+
271
+ desc "SERVICE-NAME/ID execute-action COMPONENT-INSTANCE [ACTION-NAME [ACTION-PARAMS]]", "Converge the component or execute tha action on the component."
272
+ def execute_action(context_params)
273
+ execute_ad_hoc_action_aux(context_params)
274
+ end
275
+
276
+ desc "SERVICE-NAME/ID list-actions [--summary]", "List the actions defined on components in the service instance."
277
+ method_option :summary, :aliases => '-s', :type => :boolean, :default => false
278
+ def list_actions(context_params)
279
+ list_ad_hoc_actions_aux(context_params)
263
280
  end
264
281
 
265
282
  desc "SERVICE-NAME/ID push-assembly-updates [NAMESPACE:SERVICE-MODULE-NAME/ASSEMBLY-NAME]", "Push changes made to this service instance to the designated assembly; default is parent assembly."
266
283
  def push_assembly_updates(context_params)
267
- assembly_id, qualified_assembly_name = context_params.retrieve_arguments([:service_id!,:option_1],method_argument_names)
284
+ assembly_id, qualified_assembly_name = context_params.retrieve_arguments([:service_id!, :option_1], method_argument_names)
268
285
  service_module_name, assembly_template_name =
269
286
  if qualified_assembly_name
270
287
  if qualified_assembly_name =~ /(^[^\/]*)\/([^\/]*$)/
271
288
  [$1,$2]
272
289
  else
273
- raise DtkError,"The term (#{qualified_assembly_name}) must have form SERVICE-MODULE-NAME/ASSEMBLY-NAME"
290
+ raise DtkError, "The term (#{qualified_assembly_name}) must have form SERVICE-MODULE-NAME/ASSEMBLY-NAME"
274
291
  end
275
292
  else
276
- [nil,nil]
293
+ [nil, nil]
277
294
  end
278
295
 
279
- response = promote_assembly_aux(:update,assembly_id, service_module_name, assembly_template_name,{:use_module_namespace=>true})
296
+ response = promote_assembly_aux(:update, assembly_id, service_module_name, assembly_template_name, :use_module_namespace => true)
280
297
  return response unless response.ok?
281
298
  @@invalidate_map << :assembly
282
299
  Response::Ok.new()
@@ -300,9 +317,15 @@ module DTK::Client
300
317
  edit_module_aux(context_params)
301
318
  end
302
319
 
303
- desc "SERVICE-NAME/ID edit-workflow", "Edit service's workflow."
320
+ desc "SERVICE-NAME/ID create-workflow WORKFLOW-NAME [--from BASE-WORKFLOW-NAME]", "Create a new workflow in the service instance."
321
+ method_option :from, :type => :string
322
+ def create_workflow(context_params)
323
+ edit_or_create_workflow_aux(context_params,:create => true,:create_from => options.from)
324
+ end
325
+
326
+ desc "SERVICE-NAME/ID edit-workflow [WORKFLOW-NAME]", "Edit a workflow in the service instance."
304
327
  def edit_workflow(context_params)
305
- edit_workflow_aux(context_params)
328
+ edit_or_create_workflow_aux(context_params)
306
329
  end
307
330
 
308
331
  desc "SERVICE-NAME/ID edit-attributes", "Edit service's attributes."
@@ -341,21 +364,18 @@ TODO: will put in dot release and will rename to 'extend'
341
364
  return response
342
365
  end
343
366
 
344
- desc "ASSEMBLY-NAME/ID possible-extensions", "Lists the possible extensions to the assembly"
345
- def possible_extensions(context_params)
346
- assembly_id = context_params.retrieve_arguments([:assembly_id!],method_argument_names)
347
-
348
- post_body = {
349
- :assembly_id => assembly_id
350
- }
351
- response = post(rest_url("assembly/list_possible_add_ons"),post_body)
352
- response.render_table(:service_add_on)
353
- end
354
367
  =end
355
368
 
356
- desc "SERVICE-NAME/ID task-status [--wait] [--summarize]", "Get the task status of the running or last running service task."
357
- method_option :wait, :type => :boolean, :default => false
369
+ # TODO: deprecating --wait since subsubsumed by mode
370
+ # desc "SERVICE-NAME/ID task-status [--wait] [--summarize]", "Get the task status of the running or last running service task."
371
+ desc "SERVICE-NAME/ID task-status [--mode MODE] [--summarize]", "Get the task status of the running or last running service task."
372
+ method_option "mode",:aliases => "-m" ,
373
+ :type => :string,
374
+ :banner => "MODE",
375
+ :desc => "Mode in which task status display; one of [stream,snapshot,refresh]; default is 'snapshot'"
358
376
  method_option :summarize, :type => :boolean, :default => false, :aliases => '-s'
377
+ # leaving --wait in for backwards compatability
378
+ method_option :wait, :type => :boolean, :default => false
359
379
  def task_status(context_params)
360
380
  task_status_aw_aux(context_params)
361
381
  end
@@ -409,11 +429,16 @@ TODO: will put in dot release and will rename to 'extend'
409
429
  print_includes_aux(context_params)
410
430
  end
411
431
 
412
- desc "SERVICE-NAME/ID workflow-info", "Get the structure of the workflow associated with service."
432
+ desc "SERVICE-NAME/ID workflow-info [WORKFLOW-NAME]", "Get the contents of a workflow associated with the service."
413
433
  def workflow_info(context_params)
414
434
  workflow_info_aux(context_params)
415
435
  end
416
436
 
437
+ desc "SERVICE-NAME/ID workflow-list", "List the workflows associated with the service."
438
+ def workflow_list(context_params)
439
+ workflow_list_aux(context_params)
440
+ end
441
+
417
442
  desc "list","List services."
418
443
  def list(context_params)
419
444
  assembly_id, node_id, component_id, attribute_id, about = context_params.retrieve_arguments([:service_id,:node_id,:component_id,:attribute_id,:option_1],method_argument_names)
@@ -484,22 +509,6 @@ TODO: will put in dot release and will rename to 'extend'
484
509
  list_remote_module_diffs(context_params)
485
510
  end
486
511
 
487
- # desc "ASSEMBLY-NAME/ID list-attribute-mappings SERVICE-LINK-NAME/ID", "List attribute mappings associated with service link"
488
- # def list_attribute_mappings(context_params)
489
- # post_body = Helper(:service_link).post_body_with_id_keys(context_params,method_argument_names)
490
- # post rest_url("assembly/list_attribute_mappings"), post_body
491
- # end
492
-
493
- #desc "ASSEMBLY-NAME/ID list-smoketests","List smoketests on asssembly"
494
- #def list_smoketests(context_params)
495
- # assembly_id = context_params.retrieve_arguments([:assembly_id!],method_argument_names)
496
- #
497
- # post_body = {
498
- # :assembly_id => assembly_id
499
- # }
500
- # post rest_url("assembly/list_smoketests"), post_body
501
- #end
502
-
503
512
  desc "SERVICE-NAME/ID grant-access USER-ACCOUNT PUB-KEY-NAME [PATH-TO-PUB-KEY] [--nodes NODE-NAMES]", "Grants ssh access to user account USER-ACCOUNT for nodes in service instance"
504
513
  method_option :nodes, :type => :string, :default => nil
505
514
  def grant_access(context_params)
@@ -571,8 +580,10 @@ TODO: will put in dot release and will rename to 'extend'
571
580
  response
572
581
  end
573
582
 
574
- desc "SERVICE-NAME/ID set-attribute ATTRIBUTE-NAME [VALUE] [-u]", "(Un)Set attribute value. The option -u will unset the attribute's value."
583
+ desc "SERVICE-NAME/ID set-attribute ATTRIBUTE-NAME [VALUE] [-u] [-c] [-n]", "(Un)Set attribute value. The option -u will unset the attribute's value, -c to set component-attribute, -n to set node-attribute."
575
584
  method_option :unset, :aliases => '-u', :type => :boolean, :default => false
585
+ method_option :component_attribute, :aliases => '-c', :type => :boolean, :default => false
586
+ method_option :node_attribute, :aliases => '-n', :type => :boolean, :default => false
576
587
  def set_attribute(context_params)
577
588
  set_attribute_aux(context_params)
578
589
  end
@@ -626,7 +637,7 @@ TODO: will put in dot release and will rename to 'extend'
626
637
 
627
638
  # only supported at node-level
628
639
  # using HIDE_FROM_BASE to hide this command from base context (dtk:/assembly>)
629
- desc "HIDE_FROM_BASE add-component NODE-NAME COMPONENT", "Add a component to the service."
640
+ desc "SERVICE-NAME/ID add-component COMPONENT", "Add a component to the service."
630
641
  def add_component(context_params)
631
642
  response = create_component_aux(context_params)
632
643
 
@@ -690,7 +701,7 @@ TODO: will put in dot release and will rename to 'extend'
690
701
  end
691
702
 
692
703
  # using HIDE_FROM_BASE to hide this command from base context (dtk:/assembly>)
693
- desc "HIDE_FROM_BASE delete-component COMPONENT-NAME [-y]","Delete component from the service."
704
+ desc "SERVICE-NAME/ID delete-component COMPONENT-NAME [-y]","Delete component from the service."
694
705
  method_option :force, :aliases => '-y', :type => :boolean, :default => false
695
706
  def delete_component(context_params)
696
707
  response = delete_component_aux(context_params)
@@ -181,9 +181,9 @@ module DTK::Client
181
181
  # end
182
182
 
183
183
  # version_method_option
184
- desc "install NAMESPACE/REMOTE-SERVICE-MODULE-NAME [-y] [-i]", "Install remote service module into local environment. -y will automatically clone component modules. -i will ignore component import error."
184
+ desc "install NAMESPACE/REMOTE-SERVICE-MODULE-NAME [-y]", "Install remote service module into local environment. -y will automatically clone component modules."
185
185
  method_option :force, :aliases => '-y', :type => :boolean, :default => false
186
- method_option :ignore, :aliases => '-i', :type => :boolean, :default => false
186
+ # method_option :ignore, :aliases => '-i', :type => :boolean, :default => false
187
187
  method_option :update_none, :type => :boolean, :default => false
188
188
  def install(context_params)
189
189
  response = install_module_aux(context_params)
@@ -367,53 +367,6 @@ module DTK::Client
367
367
  edit_module_aux(context_params)
368
368
  end
369
369
 
370
- # desc "SERVICE-MODULE-NAME/ID create-version NEW-VERSION", "Snapshot current state of service module as a new version"
371
- # def create_version(context_params)
372
- # service_module_id,version = context_params.retrieve_arguments([:service_module_id!,:option_1!],method_argument_names)
373
- # post_body = {
374
- # :service_module_id => service_module_id,
375
- # :rsa_pub_key => SSHUtil.rsa_pub_key_content()
376
- # }
377
- # response = post rest_url("service_module/versions"), post_body
378
- # return response unless response.ok?
379
- # versions = (response.data.first && response.data.first['versions'])||Array.new
380
- # if versions.include?(version)
381
- # return Response::Error::Usage.new("Version #{version} exists already")
382
- # end
383
-
384
- # service_module_name = get_service_module_name(service_module_id)
385
- # module_location = OsUtil.module_location(:service_module,service_module_name,version)
386
- # if File.directory?(module_location)
387
- # raise DtkError, "Target service module directory for version #{version} (#{module_location}) exists already; it must be deleted and this comamnd retried"
388
- # end
389
-
390
- # post_body = {
391
- # :service_module_id => service_module_id,
392
- # :version => version
393
- # }
394
-
395
- # response = post rest_url("service_module/create_new_version"), post_body
396
- # return response unless response.ok?
397
-
398
- # internal_trigger = omit_output = true
399
- # clone_aux(:service_module,service_module_name,version,internal_trigger,omit_output)
400
- # end
401
-
402
- # desc "SERVICE-MODULE-NAME/ID set-component-module-version COMPONENT-MODULE-NAME VERSION", "Set the version of the component module to use in the service module's assemblies"
403
- # def set_component_module_version(context_params)
404
- # service_module_id,component_module_id,version = context_params.retrieve_arguments([:service_module_id!,:option_1!,:option_2!],method_argument_names)
405
- # post_body = {
406
- # :service_module_id => service_module_id,
407
- # :component_module_id => component_module_id,
408
- # :version => version
409
- # }
410
- # response = post rest_url("service_module/set_component_module_version"), post_body
411
- # @@invalidate_map << :service_module
412
- # return response unless response.ok?()
413
- # module_name,commit_sha,workspace_branch = response.data(:module_name,:commit_sha,:workspace_branch)
414
- # Helper(:git_repo).synchronize_clone(:service_module,module_name,commit_sha,:local_branch=>workspace_branch)
415
- # end
416
-
417
370
  # TODO: put in two versions, one that creates empty and anotehr taht creates from local dir; use --empty flag
418
371
  desc "import [NAMESPACE:]SERVICE-MODULE-NAME", "Create new service module from local clone"
419
372
  def import(context_params)
@@ -5,7 +5,7 @@ module DTK::Client
5
5
  class Target < CommandBaseThor
6
6
  include Commands
7
7
  include InventoryParserMixin
8
-
8
+
9
9
  def self.pretty_print_cols()
10
10
  PPColumns.get(:target)
11
11
  end
@@ -48,7 +48,7 @@ module DTK::Client
48
48
 
49
49
  import_type = parsed_source[1]
50
50
  path = parsed_source[2]
51
-
51
+
52
52
  raise DtkValidationError, "We do not support '#{import_type}' as import source at the moment. Valid sources: #{ValidImportTypes}" unless ValidImportTypes.include?(import_type)
53
53
 
54
54
  post_body = {:target_id => target_id}
@@ -57,7 +57,7 @@ module DTK::Client
57
57
  inventory_data = parse_inventory_file(path)
58
58
  post_body.merge!(:inventory_data => inventory_data)
59
59
  end
60
-
60
+
61
61
  response = post rest_url("target/import_nodes"), post_body
62
62
  return response unless response.ok?
63
63
 
@@ -142,12 +142,12 @@ module DTK::Client
142
142
  provider_id, target_id, about = context_params.retrieve_arguments([:provider_id, :target_id, :option_1],method_argument_names||="")
143
143
 
144
144
  if target_id.nil?
145
- post_body = {
145
+ post_body = {
146
146
  :subtype => :instance,
147
147
  :parent_id => provider_id
148
148
  }
149
149
  response = post rest_url("target/list"), post_body
150
-
150
+
151
151
  response.render_table(:target)
152
152
  else
153
153
  post_body = {
@@ -176,8 +176,8 @@ module DTK::Client
176
176
  target_id = context_params.retrieve_arguments([:option_1!],method_argument_names)
177
177
 
178
178
  # No -y options since risk is too great
179
- return unless Console.confirmation_prompt("Are you sure you want to delete target '#{target_id}' (all assemblies/nodes that belong to this target will be deleted as well)'"+'?')
180
-
179
+ return unless Console.confirmation_prompt("Are you sure you want to delete target '#{target_id}' (all services/nodes that belong to this target will be deleted as well)'"+'?')
180
+
181
181
  post_body = {
182
182
  :target_id => target_id,
183
183
  :type => 'instance'