Class: App42::Command::Setup
Instance Method Summary collapse
-
#delete_cloud_api ⇒ Object
Delete App42 cloud API setup, return true or error code/message.
-
#downgrade ⇒ Object
collect BPaaS setup name from user and proceed BPaaS downgrade request.
-
#get_flavour ⇒ Object
return flavour.
-
#get_setup_type ⇒ Object
return setup type.
-
#info ⇒ Object
get details information of App42 cloud setup.
-
#restart ⇒ Object
collect BPaaS setup name from user and proceed BPaaS restart request.
-
#setup_cloud_api ⇒ Object
Collect all required attributes for new App42 cloud setup spawn required inputs are setup_name, vm_type, iaas, setup_type and flavour.
-
#setups ⇒ Object
List all setups.
-
#start ⇒ Object
collect BPaaS setup name from user and proceed BPaaS start request.
-
#stop ⇒ Object
collect BPaaS setup name from user and proceed BPaaS stop request.
-
#upgrade ⇒ Object
collect BPaaS setup name from user and proceed BPaaS upgrade request.
Methods inherited from Base
#app_information, #app_operation, #app_url_availability, #assign_release_static_ip, #cloudapi_operation, #collect_app_source, #create_cloud_setup, #create_gpaas_setup, #create_infrastructure, #create_service, #create_service_tunnel, #create_wordpress_setup, #custom_url_information, #custom_url_operation, #delete_cloudapi, #delete_gpaas, #delete_service, #delete_service_tunnel, #delete_wordpress, #get_app_name, #get_app_name_and_check_app_url_availability, #get_app_source, #get_custom_url, #get_framework, #get_iaas_providers, #get_instance, #get_kontena, #get_os_for_app, #get_os_for_service, #get_runtime, #get_setup_name, #get_setup_name_and_check_setup_url_availability, #get_subscription, #get_vm_types, #get_vmconfig, #get_webserver, #get_wordpress_name, #get_wordpress_name_and_check_wordpress_url_availability, #gpaas_operation, #initialize, #interactive_get, #reset_password, #scale_or_descale_app, #service_name_availability, #service_operation, #setup_url_availability, #update_binary, #update_gpaas_dashboard, #upgrade_or_downgrade_cloudapi, #upgrade_or_downgrade_gpaas, #upgrade_or_downgrade_wordpress, #upload_binary, #upload_service_backup, #vscale_or_vdescale_app, #vscale_or_vdescale_service, #wordpress_operation, #wordpress_url_availability
Methods included from Base::HttpHelper
#build_delete_request, #build_get_request, #build_post_request, #build_put_request, #delete_request, #get_request, #post_request, #put_request
Methods included from Base::Util
#app42_client_info, #ask_app_name, #camel_case_to_whitespace, #check_transaction_status, #check_transaction_status_of_setup, #escape_path, #get_flavour_for_upgrade_or_downgrade, #get_instance_config_for_upgrade_or_downgrade, #input, #ip_address_valid?, #is_app_exist?, #is_service_exist?, #is_setup_name_exist?, #is_static_ip_assigned?, #json_parse, #message, #number_valid?, #numeric?, #numeric_including_zero?, #params, #parse_error_message, #print_new_line, #request_failed?, #resource_url, #show_wait_spinner, #signature, #status_call, #time_valid?, #util_base, #validate_app_and_service_name, #validate_database_name, #validate_git_url, #validate_setup_name, #validate_upload_backup_path, #validate_url, #validate_vm_config
Methods included from UserToken
#check_key_file?, #config_path, #ensure_config_dir, #ensure_key_file, #get_keys, #key_path, #local_app42_key, #remove_key_file
Constructor Details
This class inherits a constructor from App42::Command::Base
Instance Method Details
#delete_cloud_api ⇒ Object
Delete App42 cloud API setup, return true or error code/message
21 22 23 24 25 |
# File 'lib/app42/command/setup.rb', line 21 def delete_cloud_api @options[:setup] = get_setup_name if @options[:setup].nil? response = delete_cloudapi @options[:setup] if is_setup_name_exist? @options[:setup] exit! if response end |
#downgrade ⇒ Object
collect BPaaS setup name from user and proceed BPaaS downgrade request
58 59 60 61 62 63 64 |
# File 'lib/app42/command/setup.rb', line 58 def downgrade @options[:setup] = get_setup_name if @options[:setup].nil? print_new_line flavour = get_flavour_for_upgrade_or_downgrade @options[:setup], __method__.to_s if is_setup_name_exist? @options[:setup] response = upgrade_or_downgrade_cloudapi __method__, @options[:setup], flavour exit! if response end |
#get_flavour ⇒ Object
return flavour
76 77 78 79 80 81 82 83 84 85 |
# File 'lib/app42/command/setup.rb', line 76 def get_flavour flavour_hash = {} flavour_type = App42::Command::Config.new.get_flavour_type_fm_server flavour_type['flavours'].select {|each_flavour| flavour_hash["#{each_flavour['id']}"] = each_flavour['name']} flavour = input "Select Flavour", flavour_hash.values, true flavour_id = nil flavour_hash.each_pair{|fl| flavour_id = fl[0] if fl[1] == flavour} return flavour_id end |
#get_setup_type ⇒ Object
return setup type
67 68 69 70 71 72 73 |
# File 'lib/app42/command/setup.rb', line 67 def get_setup_type setup_type_hash = {} setup_type = App42::Command::Config.new.get_setup_type_fm_server setup_type['setupTypes'].select {|each_setup_type| setup_type_hash["#{each_setup_type['id']}"] = each_setup_type['name']} return setup_type_hash.keys.first end |
#info ⇒ Object
get details information of App42 cloud setup
88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 |
# File 'lib/app42/command/setup.rb', line 88 def info @options[:setup] = get_setup_name if @options[:setup].nil? query_params = params query_params.store('setupName', @options[:setup]) setup_info = build_get_request query_params, 'setup', "#{@options[:setup]}" rows, rows_header_final, rows_header = [], [], nil if setup_info && setup_info['setupInfo'] rows_header = setup_info['setupInfo'].keys rows << setup_info['setupInfo'].values rows_header.map { |e| rows_header_final << camel_case_to_whitespace(e) } table = Terminal::Table.new :title => Paint["=== #{@options[:setup]} Details ===", :green], :headings => rows_header_final, :rows => rows puts table end end |
#restart ⇒ Object
collect BPaaS setup name from user and proceed BPaaS restart request
42 43 44 45 46 |
# File 'lib/app42/command/setup.rb', line 42 def restart @options[:setup] = get_setup_name if @options[:setup].nil? response = cloudapi_operation __method__, @options[:setup] if is_setup_name_exist? @options[:setup] exit! if response end |
#setup_cloud_api ⇒ Object
Collect all required attributes for new App42 cloud setup spawn required inputs are setup_name, vm_type, iaas, setup_type and flavour
10 11 12 13 14 15 16 17 18 |
# File 'lib/app42/command/setup.rb', line 10 def setup_cloud_api setup_name = get_setup_name_and_check_setup_url_availability vm_type = get_vm_types nil iaas = get_iaas_providers vm_type setup_type = get_setup_type flavour = get_flavour setup_cloud_api_res = App42::Command::Base.new.create_cloud_setup setup_name, iaas, vm_type, setup_type, flavour exit! if setup_cloud_api_res end |
#setups ⇒ Object
List all setups
106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 |
# File 'lib/app42/command/setup.rb', line 106 def setups query_params = params setups = build_get_request query_params, 'setup', nil rows, rows_header_final, rows_header = [], [], nil if setups && setups['setups'] setups['setups'].each do |e| rows_header = e.keys rows << e.values end rows_header.map { |e| rows_header_final << camel_case_to_whitespace(e) } table = Terminal::Table.new :title => Paint["=== Setups List ===", :green], :headings => rows_header_final, :rows => rows puts table end end |
#start ⇒ Object
collect BPaaS setup name from user and proceed BPaaS start request
28 29 30 31 32 |
# File 'lib/app42/command/setup.rb', line 28 def start @options[:setup] = get_setup_name if @options[:setup].nil? response = cloudapi_operation __method__, @options[:setup] if is_setup_name_exist? @options[:setup] exit! if response end |
#stop ⇒ Object
collect BPaaS setup name from user and proceed BPaaS stop request
35 36 37 38 39 |
# File 'lib/app42/command/setup.rb', line 35 def stop @options[:setup] = get_setup_name if @options[:setup].nil? response = cloudapi_operation __method__, @options[:setup] if is_setup_name_exist? @options[:setup] exit! if response end |
#upgrade ⇒ Object
collect BPaaS setup name from user and proceed BPaaS upgrade request
49 50 51 52 53 54 55 |
# File 'lib/app42/command/setup.rb', line 49 def upgrade @options[:setup] = get_setup_name if @options[:setup].nil? print_new_line flavour = get_flavour_for_upgrade_or_downgrade @options[:setup], __method__.to_s if is_setup_name_exist? @options[:setup] response = upgrade_or_downgrade_cloudapi __method__, @options[:setup], flavour exit! if response end |