morpheus-cli 2.10.0 → 2.10.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (80) hide show
  1. checksums.yaml +4 -4
  2. data/bin/morpheus +27 -32
  3. data/lib/morpheus/api/accounts_interface.rb +36 -47
  4. data/lib/morpheus/api/api_client.rb +141 -110
  5. data/lib/morpheus/api/app_templates_interface.rb +56 -72
  6. data/lib/morpheus/api/apps_interface.rb +111 -132
  7. data/lib/morpheus/api/auth_interface.rb +30 -0
  8. data/lib/morpheus/api/clouds_interface.rb +71 -76
  9. data/lib/morpheus/api/custom_instance_types_interface.rb +21 -46
  10. data/lib/morpheus/api/dashboard_interface.rb +10 -17
  11. data/lib/morpheus/api/deploy_interface.rb +60 -72
  12. data/lib/morpheus/api/deployments_interface.rb +53 -71
  13. data/lib/morpheus/api/groups_interface.rb +55 -45
  14. data/lib/morpheus/api/instance_types_interface.rb +19 -23
  15. data/lib/morpheus/api/instances_interface.rb +179 -177
  16. data/lib/morpheus/api/key_pairs_interface.rb +11 -17
  17. data/lib/morpheus/api/license_interface.rb +18 -23
  18. data/lib/morpheus/api/load_balancers_interface.rb +54 -69
  19. data/lib/morpheus/api/logs_interface.rb +25 -29
  20. data/lib/morpheus/api/options_interface.rb +13 -17
  21. data/lib/morpheus/api/provision_types_interface.rb +19 -22
  22. data/lib/morpheus/api/roles_interface.rb +75 -94
  23. data/lib/morpheus/api/security_group_rules_interface.rb +28 -37
  24. data/lib/morpheus/api/security_groups_interface.rb +39 -51
  25. data/lib/morpheus/api/servers_interface.rb +113 -115
  26. data/lib/morpheus/api/setup_interface.rb +31 -0
  27. data/lib/morpheus/api/task_sets_interface.rb +36 -38
  28. data/lib/morpheus/api/tasks_interface.rb +56 -69
  29. data/lib/morpheus/api/users_interface.rb +67 -76
  30. data/lib/morpheus/api/virtual_images_interface.rb +61 -61
  31. data/lib/morpheus/api/whoami_interface.rb +12 -15
  32. data/lib/morpheus/cli.rb +71 -60
  33. data/lib/morpheus/cli/accounts.rb +254 -315
  34. data/lib/morpheus/cli/alias_command.rb +219 -0
  35. data/lib/morpheus/cli/app_templates.rb +264 -272
  36. data/lib/morpheus/cli/apps.rb +608 -671
  37. data/lib/morpheus/cli/cli_command.rb +259 -21
  38. data/lib/morpheus/cli/cli_registry.rb +99 -14
  39. data/lib/morpheus/cli/clouds.rb +599 -372
  40. data/lib/morpheus/cli/config_file.rb +126 -0
  41. data/lib/morpheus/cli/credentials.rb +141 -117
  42. data/lib/morpheus/cli/dashboard_command.rb +48 -56
  43. data/lib/morpheus/cli/deployments.rb +254 -268
  44. data/lib/morpheus/cli/deploys.rb +150 -142
  45. data/lib/morpheus/cli/error_handler.rb +38 -0
  46. data/lib/morpheus/cli/groups.rb +551 -179
  47. data/lib/morpheus/cli/hosts.rb +862 -617
  48. data/lib/morpheus/cli/instance_types.rb +103 -95
  49. data/lib/morpheus/cli/instances.rb +1335 -1009
  50. data/lib/morpheus/cli/key_pairs.rb +82 -90
  51. data/lib/morpheus/cli/library.rb +498 -499
  52. data/lib/morpheus/cli/license.rb +83 -101
  53. data/lib/morpheus/cli/load_balancers.rb +314 -300
  54. data/lib/morpheus/cli/login.rb +66 -44
  55. data/lib/morpheus/cli/logout.rb +47 -46
  56. data/lib/morpheus/cli/mixins/accounts_helper.rb +69 -31
  57. data/lib/morpheus/cli/mixins/infrastructure_helper.rb +106 -0
  58. data/lib/morpheus/cli/mixins/print_helper.rb +181 -17
  59. data/lib/morpheus/cli/mixins/provisioning_helper.rb +535 -458
  60. data/lib/morpheus/cli/mixins/whoami_helper.rb +2 -2
  61. data/lib/morpheus/cli/option_parser.rb +35 -0
  62. data/lib/morpheus/cli/option_types.rb +232 -192
  63. data/lib/morpheus/cli/recent_activity_command.rb +61 -65
  64. data/lib/morpheus/cli/remote.rb +446 -199
  65. data/lib/morpheus/cli/roles.rb +884 -906
  66. data/lib/morpheus/cli/security_group_rules.rb +213 -203
  67. data/lib/morpheus/cli/security_groups.rb +237 -192
  68. data/lib/morpheus/cli/shell.rb +338 -231
  69. data/lib/morpheus/cli/tasks.rb +326 -308
  70. data/lib/morpheus/cli/users.rb +457 -462
  71. data/lib/morpheus/cli/version.rb +1 -1
  72. data/lib/morpheus/cli/version_command.rb +16 -18
  73. data/lib/morpheus/cli/virtual_images.rb +526 -345
  74. data/lib/morpheus/cli/whoami.rb +125 -111
  75. data/lib/morpheus/cli/workflows.rb +338 -185
  76. data/lib/morpheus/formatters.rb +8 -1
  77. data/lib/morpheus/logging.rb +1 -1
  78. data/lib/morpheus/rest_client.rb +17 -8
  79. metadata +9 -3
  80. data/lib/morpheus/api/custom_instance_types.rb +0 -55
@@ -5,291 +5,277 @@ require 'table_print'
5
5
  require 'morpheus/cli/cli_command'
6
6
 
7
7
  class Morpheus::Cli::Deployments
8
- include Morpheus::Cli::CliCommand
8
+ include Morpheus::Cli::CliCommand
9
9
 
10
- def initialize()
11
- @appliance_name, @appliance_url = Morpheus::Cli::Remote.active_appliance
12
- end
10
+ register_subcommands :list, :add, :update, :remove, {:versions => 'list_versions'}
13
11
 
14
- def connect(opts)
15
- if opts[:remote]
16
- @appliance_url = opts[:remote]
17
- @appliance_name = opts[:remote]
18
- @access_token = Morpheus::Cli::Credentials.new(@appliance_name,@appliance_url).request_credentials(opts)
19
- else
20
- @access_token = Morpheus::Cli::Credentials.new(@appliance_name,@appliance_url).request_credentials(opts)
21
- end
22
- @api_client = Morpheus::APIClient.new(@access_token,nil,nil, @appliance_url)
23
- @deployments_interface = Morpheus::APIClient.new(@access_token,nil,nil, @appliance_url).deployments
24
- if @access_token.empty?
25
- print_red_alert "Invalid Credentials. Unable to acquire access token. Please verify your credentials and try again."
26
- exit 1
27
- end
28
- end
12
+ def initialize()
13
+ # @appliance_name, @appliance_url = Morpheus::Cli::Remote.active_appliance
14
+ end
29
15
 
16
+ def connect(opts)
17
+ @api_client = establish_remote_appliance_connection(opts)
18
+ @deployments_interface = Morpheus::APIClient.new(@access_token,nil,nil, @appliance_url).deployments
19
+ end
30
20
 
31
- def handle(args)
32
- if args.empty?
33
- puts "\nUsage: morpheus deployments [list,add, update,remove, versions]\n\n"
34
- return
35
- end
21
+ def handle(args)
22
+ handle_subcommand(args)
23
+ end
36
24
 
37
- case args[0]
38
- when 'list'
39
- list(args[1..-1])
40
- when 'add'
41
- add(args[1..-1])
42
- when 'update'
43
- update(args[1..-1])
44
- when 'remove'
45
- remove(args[1..-1])
46
- when 'versions'
47
- list_versions(args[1..-1])
48
- else
49
- puts "\nUsage: morpheus deployments [list,add, update,remove, versions]\n\n"
50
- exit 127
51
- end
52
- end
25
+ def list(args)
26
+ options = {}
27
+ optparse = OptionParser.new do|opts|
28
+ opts.banner = subcommand_usage()
29
+ build_common_options(opts, options, [:list, :json, :dry_run, :remote])
30
+ end
31
+ optparse.parse!(args)
32
+ connect(options)
33
+ begin
34
+ params = {}
35
+ [:phrase, :offset, :max, :sort, :direction].each do |k|
36
+ params[k] = options[k] unless options[k].nil?
37
+ end
38
+ if options[:dry_run]
39
+ print_dry_run @deployments_interface.dry.get(params)
40
+ return
41
+ end
42
+ json_response = @deployments_interface.get(params)
43
+ if options[:json]
44
+ puts JSON.pretty_generate(json_response)
45
+ else
46
+ deployments = json_response['deployments']
47
+ print "\n" ,cyan, bold, "Morpheus Deployments\n","====================", reset, "\n\n"
48
+ if deployments.empty?
49
+ puts yellow,"No deployments currently configured.",reset
50
+ else
51
+ print cyan
52
+ deployments_table_data = deployments.collect do |deployment|
53
+ {name: deployment['name'], id: deployment['id'], description: deployment['description'], updated: format_local_dt(deployment['lastUpdated'])}
54
+ end
55
+ tp deployments_table_data, :id, :name, :description, :updated
56
+ end
57
+ print reset,"\n"
58
+ end
59
+ rescue RestClient::Exception => e
60
+ print_rest_exception(e, options)
61
+ exit 1
62
+ end
63
+ end
53
64
 
54
- def list(args)
55
- options = {}
56
- optparse = OptionParser.new do|opts|
57
- opts.banner = "Usage: morpheus deployments list [-s] [-o] [-m]"
58
- build_common_options(opts, options, [:list, :json, :remote])
59
- end
60
- optparse.parse(args)
61
- connect(options)
62
- begin
63
- params = {}
64
- [:phrase, :offset, :max, :sort, :direction].each do |k|
65
- params[k] = options[k] unless options[k].nil?
66
- end
67
- json_response = @deployments_interface.get(params)
68
- if options[:json]
69
- puts JSON.pretty_generate(json_response)
70
- else
71
- deployments = json_response['deployments']
72
- print "\n" ,cyan, bold, "Morpheus Deployments\n","====================", reset, "\n\n"
73
- if deployments.empty?
74
- puts yellow,"No deployments currently configured.",reset
75
- else
76
- print cyan
77
- deployments_table_data = deployments.collect do |deployment|
78
- {name: deployment['name'], id: deployment['id'], description: deployment['description'], updated: format_local_dt(deployment['lastUpdated'])}
79
- end
80
- tp deployments_table_data, :id, :name, :description, :updated
81
- end
82
- print reset,"\n\n"
83
- end
84
-
85
-
86
- rescue RestClient::Exception => e
87
- print_rest_exception(e, options)
88
- exit 1
89
- end
90
- end
65
+ def list_versions(args)
66
+ options = {}
67
+ optparse = OptionParser.new do|opts|
68
+ opts.banner = subcommand_usage("[name] versions")
69
+ build_common_options(opts, options, [:list, :json, :dry_run, :remote])
70
+ end
71
+ optparse.parse!(args)
72
+ if args.count < 1
73
+ puts optparse
74
+ exit 1
75
+ end
76
+ deployment_name = args[0]
77
+ connect(options)
78
+ begin
79
+ params = {}
80
+ [:phrase, :offset, :max, :sort, :direction].each do |k|
81
+ params[k] = options[k] unless options[k].nil?
82
+ end
83
+ deployment = find_deployment_by_name_or_id(deployment_name)
84
+ exit 1 if deployment.nil?
91
85
 
92
- def list_versions(args)
93
- options = {}
94
- optparse = OptionParser.new do|opts|
95
- opts.banner = "Usage: morpheus deployments versions [deployment] [-s] [-o] [-m]"
96
- build_common_options(opts, options, [:list, :json, :remote])
97
- end
98
- optparse.parse(args)
99
- if args.count < 1
100
- puts "\n#{optparse.banner}\n\n"
101
- exit 1
102
- end
103
- deployment_name = args[0]
104
- connect(options)
105
- begin
106
- params = {}
107
- [:phrase, :offset, :max, :sort, :direction].each do |k|
108
- params[k] = options[k] unless options[k].nil?
109
- end
110
- deployment = find_deployment_by_name_or_code_or_id(deployment_name)
111
- exit 1 if deployment.nil?
86
+ if options[:dry_run]
87
+ print_dry_run @deployments_interface.dry.list_versions(deployment['id'],params)
88
+ return
89
+ end
90
+ json_response = @deployments_interface.list_versions(deployment['id'],params)
91
+ if options[:json]
92
+ puts JSON.pretty_generate(json_response)
93
+ else
94
+ versions = json_response['versions']
95
+ print "\n" ,cyan, bold, "Morpheus Deployment Versions\n","=============================", reset, "\n\n"
96
+ if versions.empty?
97
+ puts yellow,"No deployment versions currently exist.",reset
98
+ else
99
+ print cyan
100
+ versions_table_data = versions.collect do |version|
101
+ {version: version['userVersion'], type: version['deployType'], updated: format_local_dt(version['lastUpdated'])}
102
+ end
103
+ tp versions_table_data, :version, :type, :updated
104
+ end
105
+ print reset,"\n"
106
+ end
107
+ rescue RestClient::Exception => e
108
+ print_rest_exception(e, options)
109
+ exit 1
110
+ end
111
+ end
112
112
 
113
- json_response = @deployments_interface.list_versions(deployment['id'],params)
114
- if options[:json]
115
- puts JSON.pretty_generate(json_response)
116
- else
117
- versions = json_response['versions']
118
- print "\n" ,cyan, bold, "Morpheus Deployment Versions\n","=============================", reset, "\n\n"
119
- if versions.empty?
120
- puts yellow,"No deployment versions currently exist.",reset
121
- else
122
- print cyan
123
- versions_table_data = versions.collect do |version|
124
- {version: version['userVersion'], type: version['deployType'], updated: format_local_dt(version['lastUpdated'])}
125
- end
126
- tp versions_table_data, :version, :type, :updated
127
- end
128
- print reset,"\n\n"
129
- end
130
- rescue RestClient::Exception => e
131
- print_rest_exception(e, options)
132
- exit 1
133
- end
134
- end
113
+ def update(args)
114
+ deployment_name = args[0]
115
+ options = {}
116
+ account_name = nil
117
+ optparse = OptionParser.new do|opts|
118
+ opts.banner = subcommand_usage("[name] [options]")
119
+ build_common_options(opts, options, [:options, :json, :dry_run, :remote])
120
+ end
121
+ optparse.parse!(args)
122
+ if args.count < 1
123
+ puts optparse
124
+ exit 1
125
+ end
126
+ connect(options)
127
+ begin
128
+ deployment = find_deployment_by_name_or_id(deployment_name)
129
+ exit 1 if deployment.nil?
135
130
 
136
- def update(args)
137
- deployment_name = args[0]
138
- options = {}
139
- account_name = nil
140
- optparse = OptionParser.new do|opts|
141
- opts.banner = "Usage: morpheus deployments update [deployment] [options]"
142
- build_common_options(opts, options, [:options, :json, :remote])
143
- end
144
- if args.count < 1
145
- puts "\n#{optparse.banner}\n\n"
146
- exit 1
147
- end
148
- optparse.parse(args)
131
+ #params = Morpheus::Cli::OptionTypes.prompt(add_user_option_types, options[:options], @api_client, options[:params]) # options[:params] is mysterious
132
+ params = options[:options] || {}
149
133
 
150
- connect(options)
151
-
152
- begin
153
- deployment = find_deployment_by_name_or_code_or_id(deployment_name)
154
- exit 1 if deployment.nil?
134
+ if params.empty?
135
+ puts optparse
136
+ option_lines = update_deployment_option_types().collect {|it| "\t-O #{it['fieldContext'] ? (it['fieldContext'] + '.') : ''}#{it['fieldName']}=\"value\"" }.join("\n")
137
+ puts "\nAvailable Options:\n#{option_lines}\n\n"
138
+ exit 1
139
+ end
155
140
 
156
- #params = Morpheus::Cli::OptionTypes.prompt(add_user_option_types, options[:options], @api_client, options[:params]) # options[:params] is mysterious
157
- params = options[:options] || {}
141
+ #puts "parsed params is : #{params.inspect}"
142
+ deployment_keys = ['name','description']
143
+ changes_payload = (params.select {|k,v| deployment_keys.include?(k) })
144
+ deployment_payload = deployment
145
+ if changes_payload
146
+ deployment_payload.merge!(changes_payload)
147
+ end
158
148
 
159
- if params.empty?
160
- puts "\n#{optparse.banner}\n\n"
161
- option_lines = update_deployment_option_types().collect {|it| "\t-O #{it['fieldContext'] ? (it['fieldContext'] + '.') : ''}#{it['fieldName']}=\"value\"" }.join("\n")
162
- puts "\nAvailable Options:\n#{option_lines}\n\n"
163
- exit 1
164
- end
165
149
 
166
- #puts "parsed params is : #{params.inspect}"
167
- deployment_keys = ['name','description']
168
- changes_payload = (params.select {|k,v| deployment_keys.include?(k) })
169
- deployment_payload = deployment
170
- if changes_payload
171
- deployment_payload.merge!(changes_payload)
172
- end
150
+ payload = {deployment: deployment_payload}
151
+ if options[:dry_run]
152
+ print_dry_run @deployments_interface.dry.update(deployment['id'], payload)
153
+ return
154
+ end
155
+ response = @deployments_interface.update(deployment['id'], payload)
156
+ if options[:json]
157
+ print JSON.pretty_generate(json_response)
158
+ if !response['success']
159
+ exit 1
160
+ end
161
+ else
162
+ print "\n", cyan, "Deployment #{response['deployment']['name']} updated", reset, "\n\n"
163
+ end
164
+ rescue RestClient::Exception => e
165
+ print_rest_exception(e, options)
166
+ exit 1
167
+ end
168
+ end
173
169
 
170
+ def add(args)
171
+ options = {}
172
+ optparse = OptionParser.new do|opts|
173
+ opts.banner = subcommand_usage("[name]")
174
+ opts.on( '-d', '--description DESCRIPTION', "Description" ) do |val|
175
+ options[:description] = val
176
+ end
177
+ build_common_options(opts, options, [:options, :json, :dry_run, :remote])
178
+ end
179
+ optparse.parse!(args)
180
+ if args.count < 1
181
+ puts optparse
182
+ exit 1
183
+ end
184
+ deployment_name = args[0]
185
+ connect(options)
186
+ begin
187
+ payload = {deployment: {name: deployment_name, description: options[:description]}}
188
+ if options[:dry_run]
189
+ print_dry_run @deployments_interface.dry.create(payload)
190
+ return
191
+ end
192
+ json_response = @deployments_interface.create(payload)
193
+ if options[:json]
194
+ print JSON.pretty_generate(json_response)
195
+ else
196
+ print "\n", cyan, "Deployment #{json_response['deployment']['name']} created successfully", reset, "\n\n"
197
+ end
198
+ rescue RestClient::Exception => e
199
+ print_rest_exception(e, options)
200
+ exit 1
201
+ end
202
+ end
174
203
 
175
- request_payload = {deployment: deployment_payload}
176
- response = @deployments_interface.update(deployment['id'], request_payload)
177
- if options[:json]
178
- print JSON.pretty_generate(json_response)
179
- if !response['success']
180
- exit 1
181
- end
182
- else
183
- print "\n", cyan, "Deployment #{response['deployment']['name']} updated", reset, "\n\n"
184
- end
185
- rescue RestClient::Exception => e
186
- print_rest_exception(e, options)
187
- exit 1
188
- end
189
- end
204
+ def remove(args)
205
+ options = {}
206
+ optparse = OptionParser.new do|opts|
207
+ opts.banner = subcommand_usage("[name]")
208
+ build_common_options(opts, options, [:auto_confirm, :json, :dry_run, :remote])
209
+ end
210
+ optparse.parse!(args)
211
+ if args.count < 1
212
+ puts optparse
213
+ exit 1
214
+ end
215
+ deployment_name = args[0]
216
+ connect(options)
217
+ begin
218
+ deployment = find_deployment_by_name_or_id(deployment_name)
219
+ exit 1 if deployment.nil?
220
+ unless options[:yes] || Morpheus::Cli::OptionTypes.confirm("Are you sure you want to delete the deployment #{deployment['name']}?")
221
+ exit
222
+ end
223
+ if options[:dry_run]
224
+ print_dry_run @deployments_interface.dry.destroy(deployment['id'])
225
+ return
226
+ end
227
+ json_response = @deployments_interface.destroy(deployment['id'])
228
+ if options[:json]
229
+ print JSON.pretty_generate(json_response)
230
+ else
231
+ print "\n", cyan, "Deployment #{deployment['name']} removed", reset, "\n\n"
232
+ end
233
+ rescue RestClient::Exception => e
234
+ print_rest_exception(e, options)
235
+ exit 1
236
+ end
237
+ end
190
238
 
191
- def add(args)
192
- deployment_name = args[0]
193
- options = {}
194
- optparse = OptionParser.new do|opts|
195
- opts.banner = "Usage: morpheus deployments add [name]"
196
- opts.on( '-d', '--description DESCRIPTION', "Description" ) do |val|
197
- options[:description] = val
198
- end
199
- build_common_options(opts, options, [:options, :json, :remote])
200
- end
201
- if args.count < 1
202
- puts "\n#{optparse.banner}\n\n"
203
- exit 1
204
- end
205
- optparse.parse(args)
206
- connect(options)
207
239
 
208
- begin
209
- payload = {deployment: {name: deployment_name, description: options[:description]}}
210
- json_response = @deployments_interface.create(payload)
211
- if options[:json]
212
- print JSON.pretty_generate(json_response)
213
- else
214
- print "\n", cyan, "Deployment #{json_response['deployment']['name']} created successfully", reset, "\n\n"
215
- end
216
- rescue RestClient::Exception => e
217
- print_rest_exception(e, options)
218
- exit 1
219
- end
220
- end
240
+ private
241
+ def find_deployment_by_name_or_id(val)
242
+ raise "find_deployment_by_name_or_id passed a bad name: #{val.inspect}" if val.to_s == ''
243
+ results = @deployments_interface.get(val)
244
+ result = nil
245
+ if !results['deployments'].nil? && !results['deployments'].empty?
246
+ result = results['deployments'][0]
247
+ elsif val.to_i.to_s == val
248
+ results = @deployments_interface.get(val.to_i)
249
+ result = results['deployment']
250
+ end
251
+ if result.nil?
252
+ print_red_alert "Deployment not found by '#{val}'"
253
+ return nil
254
+ end
255
+ return result
256
+ end
221
257
 
222
- def remove(args)
223
- deployment_name = args[0]
224
- options = {}
225
- optparse = OptionParser.new do|opts|
226
- opts.banner = "Usage: morpheus deployments remove [deployment]"
227
- build_common_options(opts, options, [:auto_confirm, :json, :remote])
228
- end
229
- if args.count < 1
230
- puts "\n#{optparse.banner}\n\n"
231
- exit 1
232
- end
233
- optparse.parse(args)
234
- connect(options)
235
- begin
236
- deployment = find_deployment_by_name_or_code_or_id(deployment_name)
237
- exit 1 if deployment.nil?
238
- unless options[:yes] || Morpheus::Cli::OptionTypes.confirm("Are you sure you want to delete the deployment #{deployment['name']}?")
239
- exit
240
- end
241
- json_response = @deployments_interface.destroy(deployment['id'])
242
- if options[:json]
243
- print JSON.pretty_generate(json_response)
244
- else
245
- print "\n", cyan, "Deployment #{deployment['name']} removed", reset, "\n\n"
246
- end
247
- rescue RestClient::Exception => e
248
- print_rest_exception(e, options)
249
- exit 1
250
- end
251
- end
258
+ def find_deployment_type_by_name(val)
259
+ raise "find_deployment_type_by_name passed a bad name: #{val.inspect}" if val.to_s == ''
260
+ results = @deployments_interface.deployment_types(val)
261
+ result = nil
262
+ if !results['deploymentTypes'].nil? && !results['deploymentTypes'].empty?
263
+ result = results['deploymentTypes'][0]
264
+ elsif val.to_i.to_s == val
265
+ results = @deployments_interface.deployment_types(val.to_i)
266
+ result = results['deploymentType']
267
+ end
268
+ if result.nil?
269
+ print_red_alert "Deployment Type not found by '#{val}'"
270
+ return nil
271
+ end
272
+ return result
273
+ end
252
274
 
253
-
254
- private
255
- def find_deployment_by_name_or_code_or_id(val)
256
- raise "find_deployment_by_name_or_code_or_id passed a bad name: #{val.inspect}" if val.to_s == ''
257
- results = @deployments_interface.get(val)
258
- result = nil
259
- if !results['deployments'].nil? && !results['deployments'].empty?
260
- result = results['deployments'][0]
261
- elsif val.to_i.to_s == val
262
- results = @deployments_interface.get(val.to_i)
263
- result = results['deployment']
264
- end
265
- if result.nil?
266
- print_red_alert "Deployment not found by '#{val}'"
267
- return nil
268
- end
269
- return result
270
- end
271
-
272
- def find_deployment_type_by_name(val)
273
- raise "find_deployment_type_by_name passed a bad name: #{val.inspect}" if val.to_s == ''
274
- results = @deployments_interface.deployment_types(val)
275
- result = nil
276
- if !results['deploymentTypes'].nil? && !results['deploymentTypes'].empty?
277
- result = results['deploymentTypes'][0]
278
- elsif val.to_i.to_s == val
279
- results = @deployments_interface.deployment_types(val.to_i)
280
- result = results['deploymentType']
281
- end
282
- if result.nil?
283
- print_red_alert "Deployment Type not found by '#{val}'"
284
- return nil
285
- end
286
- return result
287
- end
288
-
289
- def update_deployment_option_types()
290
- [
291
- {'fieldName' => 'name', 'fieldLabel' => 'Name', 'type' => 'text', 'required' => true, 'displayOrder' => 0},
292
- {'fieldName' => 'description', 'fieldLabel' => 'Description', 'type' => 'text', 'required' => false, 'displayOrder' => 1}
293
- ]
294
- end
275
+ def update_deployment_option_types()
276
+ [
277
+ {'fieldName' => 'name', 'fieldLabel' => 'Name', 'type' => 'text', 'required' => true, 'displayOrder' => 0},
278
+ {'fieldName' => 'description', 'fieldLabel' => 'Description', 'type' => 'text', 'required' => false, 'displayOrder' => 1}
279
+ ]
280
+ end
295
281
  end