Class: Rimu::RimuAPI::Servers
- Inherits:
-
Rimu::RimuAPI
- Object
- Rimu::RimuAPI
- Rimu::RimuAPI::Servers
- Defined in:
- lib/rimu/servers.rb
Instance Attribute Summary
Attributes inherited from Rimu::RimuAPI
Instance Method Summary collapse
- #cancel(oid) ⇒ Object
- #change_state(oid, new_state) ⇒ Object
- #create(params) ⇒ Object
- #data_transfer(oid) ⇒ Object
- #default_vps_params ⇒ Object
- #info(oid) ⇒ Object
- #move(oid, params = {}) ⇒ Object
- #power_cycle(oid) ⇒ Object
- #reboot(oid) ⇒ Object
- #reinstall(oid, params = {}) ⇒ Object
- #resize(oid, params) ⇒ Object
- #shutdown(oid) ⇒ Object
- #start(oid) ⇒ Object
- #status(oid) ⇒ Object
Methods inherited from Rimu::RimuAPI
#api_key, #api_url, #billing_methods, #convert_item, #distributions, #error?, #error_message, #format_response, has_namespace, #initialize, #prep_data, #read_timeout, #send_request, #set_headers
Constructor Details
This class inherits a constructor from Rimu::RimuAPI
Instance Method Details
#cancel(oid) ⇒ Object
63 64 65 66 |
# File 'lib/rimu/servers.rb', line 63 def cancel(oid) raise ArgumentError, "oid should be an Integer" unless oid.is_a?(Integer) send_request("/r/orders/order-#{oid}-dn/vps", "cancel_messages", "DELETE") end |
#change_state(oid, new_state) ⇒ Object
95 96 97 98 99 |
# File 'lib/rimu/servers.rb', line 95 def change_state(oid, new_state) raise ArgumentError, "oid should be an Integer" unless oid.is_a?(Integer) params = {:running_state_change_request=>{:running_state=>new_state}} send_request("/r/orders/order-#{oid}-dn/vps/running-state", "running_vps_info", "PUT", params) end |
#create(params) ⇒ Object
38 39 40 41 42 43 44 |
# File 'lib/rimu/servers.rb', line 38 def create(params) raise ArgumentError, "params should be a hash" unless params.is_a?(Hash) raise ArgumentError, "params should contain atleast instantiation_options or instantiation_via_clone_options" \ unless params.has_key?(:instantiation_options) || params.has_key?(:instantiation_via_clone_options) data = {:new_order_request => prep_data(default_vps_params, params)} send_request("/r/orders/new-vps", "about_order", "POST", data) end |
#data_transfer(oid) ⇒ Object
121 122 123 124 |
# File 'lib/rimu/servers.rb', line 121 def data_transfer(oid) raise ArgumentError, "oid should be an Integer" unless oid.is_a?(Integer) send_request("/r/orders/order-#{oid}-dn/vps/data-transfer-usage", "data_transfer_usage_info") end |
#default_vps_params ⇒ Object
3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
# File 'lib/rimu/servers.rb', line 3 def default_vps_params @default_vps_params = { :billing_oid => nil, :dc_location => nil, :file_injection_data => nil, :host_server_oid => nil, :instantiation_options => { :domain_name => nil, :password => nil, :distro => nil, :cloud_config_data => nil, :control_panel => nil, }, :instantiation_via_clone_options => { :domain_name => nil, :vps_order_oid_to_clone => nil, }, :ip_request => { :extra_ip_reason => nil, :num_ips => nil, :requested_ips => nil, }, :is_just_minimal_init => nil, :meta_data => nil, :pricing_plan_code => nil, :user_oid => nil, :vps_parameters => { :disk_space_mb => nil, :memory_mb => nil, :disk_space_2_mb => nil, }, :vps_type => nil, } end |
#info(oid) ⇒ Object
58 59 60 61 |
# File 'lib/rimu/servers.rb', line 58 def info(oid) raise ArgumentError, "oid should be an Integer" unless oid.is_a?(Integer) send_request("/r/orders/order-#{oid}-dn", "about_order") end |
#move(oid, params = {}) ⇒ Object
68 69 70 71 72 73 74 75 76 77 78 79 |
# File 'lib/rimu/servers.rb', line 68 def move(oid, params={}) raise ArgumentError, "oid should be an Integer" unless oid.is_a?(Integer) raise ArgumentError, "params should be a hash" unless params.is_a?(Hash) default_params = { :update_dns=>false, :move_reason=>'', :pricing_change_option=>'CHOOSE_BEST_OPTION', :selected_host_server_oid=>nil, } data = {:vps_move_request => prep_data(default_params, params)} send_request("/r/orders/order-#{oid}-dn/vps/host-server", "about_order", "PUT", data) end |
#power_cycle(oid) ⇒ Object
116 117 118 119 |
# File 'lib/rimu/servers.rb', line 116 def power_cycle(oid) raise ArgumentError, "oid should be an Integer" unless oid.is_a?(Integer) change_state(oid, "POWERCYCLING") end |
#reboot(oid) ⇒ Object
101 102 103 104 |
# File 'lib/rimu/servers.rb', line 101 def reboot(oid) raise ArgumentError, "oid should be an Integer" unless oid.is_a?(Integer) change_state(oid, "RESTARTING") end |
#reinstall(oid, params = {}) ⇒ Object
46 47 48 49 50 51 |
# File 'lib/rimu/servers.rb', line 46 def reinstall(oid, params={}) raise ArgumentError, "oid should be an Integer" unless oid.is_a?(Integer) raise ArgumentError, "params should be a hash" unless params.is_a?(Hash) data = {:reinstall_request => prep_data(default_vps_params, params)} send_request("/r/orders/order-#{oid}-dn/vps/reinstall", "running_vps_info", "PUT", data) end |
#resize(oid, params) ⇒ Object
81 82 83 84 85 86 87 88 89 90 91 92 93 |
# File 'lib/rimu/servers.rb', line 81 def resize(oid, params) raise ArgumentError, "oid should be an Integer" unless oid.is_a?(Integer) raise ArgumentError, "params should be a hash" unless params.is_a?(Hash) default_params = { :disk_space_2_mb => nil, :disk_space_mb => nil, :memory_mb => nil, } clean_params = prep_data(default_params, params) raise ArgumentError, "atleast one parameter is required" if clean_params.empty? data = {:vps_resize_request => clean_params} send_request("/r/orders/order-#{oid}-dn/vps/parameters", "resource_change_result", "PUT", data) end |
#shutdown(oid) ⇒ Object
106 107 108 109 |
# File 'lib/rimu/servers.rb', line 106 def shutdown(oid) raise ArgumentError, "oid should be an Integer" unless oid.is_a?(Integer) change_state(oid, "NOTRUNNING") end |
#start(oid) ⇒ Object
111 112 113 114 |
# File 'lib/rimu/servers.rb', line 111 def start(oid) raise ArgumentError, "oid should be an Integer" unless oid.is_a?(Integer) change_state(oid, "RUNNING") end |
#status(oid) ⇒ Object
53 54 55 56 |
# File 'lib/rimu/servers.rb', line 53 def status(oid) raise ArgumentError, "oid should be an Integer" unless oid.is_a?(Integer) send_request("/r/orders/order-#{oid}-dn/vps", "running_vps_info") end |