module ConohaApi::Client::Compute

Constants

SERVICE

Public Instance Methods

add_keypair(name, public_key = nil) click to toggle source
# File lib/conoha_api/client/compute.rb, line 144
def add_keypair(name, public_key = nil)
  request_json = {
    keypair: {
      name: name
    }
  }
  request_json[:keypair][:public_key] = public_key if public_key
  post "os-keypairs", request_json
end
add_server(image_ref, flavor_ref, options = {}) click to toggle source
# File lib/conoha_api/client/compute.rb, line 31
def add_server(image_ref, flavor_ref, options = {})
  request_json = {
    server: {
      imageRef: image_ref,
      flavorRef: flavor_ref
    }
  }

  request_json[:server][:adminPass] = options[:admin_pass] if options[:admin_pass]
  request_json[:server][:keyName] = options[:key_name] if options[:key_name]
  post "servers", request_json, options
end
change_console_keymap(id, vnc_keymap) click to toggle source
# File lib/conoha_api/client/compute.rb, line 111
def change_console_keymap(id, vnc_keymap)
  raise ArgumentError.new("#{vnc_keymap} is not valid") unless ['us-en', 'jp'].include?(vnc_keymap)
  action(id, vncKeymap: vnc_keymap)
end
change_network_adapter(id, hardware_virtualinterface_model) click to toggle source
# File lib/conoha_api/client/compute.rb, line 101
def change_network_adapter(id, hardware_virtualinterface_model)
  raise ArgumentError.new("#{hardware_virtualinterface_model} is not valid") unless ['e1000', 'virtio', 'rtl8139'].include?(hardware_virtualinterface_model)
  action(id, hwVifModel: hardware_virtualinterface_model)
end
change_strage_controller(id, hardware_disk_bus) click to toggle source
# File lib/conoha_api/client/compute.rb, line 96
def change_strage_controller(id, hardware_disk_bus)
  raise ArgumentError.new("#{hardware_disk_bus} is not valid") unless ['virtio', 'scsi', 'ide'].include?(hardware_disk_bus)
  action(id, hwDiskBus: hardware_disk_bus)
end
change_video_device(id, hardware_video_model) click to toggle source
# File lib/conoha_api/client/compute.rb, line 106
def change_video_device(id, hardware_video_model)
  raise ArgumentError.new("#{hardware_video_model} is not valid") unless ['qxl', 'vga', 'cirrus'].include?(hardware_video_model)
  action(id, hwVideoModel: hardware_video_model)
end
confirm_resize(id) click to toggle source
# File lib/conoha_api/client/compute.rb, line 80
def confirm_resize(id)
  action(id, confirmResize: nil)
end
create_image(id, name) click to toggle source
# File lib/conoha_api/client/compute.rb, line 92
def create_image(id, name)
  action(id, createImage: { name: name })
end
delete_keypair(name) click to toggle source
# File lib/conoha_api/client/compute.rb, line 154
def delete_keypair(name)
  delete "os-keypairs/#{name}"
end
delete_server(id) click to toggle source
# File lib/conoha_api/client/compute.rb, line 44
def delete_server(id)
  delete "servers/#{id}"
end
flavor(id) click to toggle source
# File lib/conoha_api/client/compute.rb, line 15
def flavor(id)
  get "flavors/#{id}"
end
flavors() click to toggle source
# File lib/conoha_api/client/compute.rb, line 7
def flavors
  get "flavors"
end
flavors_detail() click to toggle source
# File lib/conoha_api/client/compute.rb, line 11
def flavors_detail
  get "flavors/detail"
end
force_stop_server(id, force = true) click to toggle source
# File lib/conoha_api/client/compute.rb, line 57
def force_stop_server(id, force = true)
  action(id, :"os-stop" => { force_shutdown: force })
end
get_web_console(id, type = 'nova') click to toggle source
# File lib/conoha_api/client/compute.rb, line 116
def get_web_console(id, type = 'nova')
  raise ArgumentError.new("#{type} is not valid") unless ['nova', 'http'].include?(type)
  request_json = {}
  type == 'nova' ? request_json[:"os-getSerialConsole"] = {type: :serial} : request_json[:"os-getWebConsole"] = {type: :serial}
  action(id, request_json)
end
image(id) click to toggle source
# File lib/conoha_api/client/compute.rb, line 166
def image(id)
  get "images/#{id}"
end
images() click to toggle source
# File lib/conoha_api/client/compute.rb, line 158
def images
  get "images"
end
images_detail(options = {}) click to toggle source
# File lib/conoha_api/client/compute.rb, line 162
def images_detail(options = {})
  get "images/detail", options
end
keypair(name) click to toggle source
# File lib/conoha_api/client/compute.rb, line 140
def keypair(name)
  get "os-keypairs/#{name}"
end
keypairs() click to toggle source
# File lib/conoha_api/client/compute.rb, line 136
def keypairs
  get "os-keypairs"
end
mount_iso_image(id, file_path) click to toggle source
# File lib/conoha_api/client/compute.rb, line 123
def mount_iso_image(id, file_path)
  action(id, mountImage: file_path)
end
reboot_server(id, type = 'SOFT') click to toggle source
# File lib/conoha_api/client/compute.rb, line 52
def reboot_server(id, type = 'SOFT')
  raise ArgumentError.new("#{type} is not valid") unless ['SOFT', 'HARD'].include?(type.upcase)
  action(id, reboot: { type: type.upcase })
end
rebuild_server(id, image_ref, options = {}) click to toggle source
# File lib/conoha_api/client/compute.rb, line 65
def rebuild_server(id, image_ref, options = {})
  request_json = {
    rebuild: {
      imageRef: image_ref
    }
  }
  request_json[:rebuild][:adminPass] = options[:admin_pass] if options[:admin_pass]
  request_json[:rebuild][:keyName] = options[:key_name] if options[:key_name]
  action(id, request_json)
end
resize(id, flavor_ref) click to toggle source
# File lib/conoha_api/client/compute.rb, line 76
def resize(id, flavor_ref)
  action(id, resize: { flavorRef: flavor_ref })
end
revert_resize(id) click to toggle source
# File lib/conoha_api/client/compute.rb, line 84
def revert_resize(id)
  action(id, revertResize: nil)
end
server(id) click to toggle source
# File lib/conoha_api/client/compute.rb, line 27
def server(id)
  get "servers/#{id}"
end
servers() click to toggle source
# File lib/conoha_api/client/compute.rb, line 19
def servers
  get "servers"
end
servers_detail() click to toggle source
# File lib/conoha_api/client/compute.rb, line 23
def servers_detail
  get "servers/detail"
end
start_server(id) click to toggle source
# File lib/conoha_api/client/compute.rb, line 48
def start_server(id)
  action(id, :"os-start" => nil)
end
stop_server(id) click to toggle source
# File lib/conoha_api/client/compute.rb, line 61
def stop_server(id)
  action(id, :"os-stop" => nil)
end
unmount_iso_image(id) click to toggle source
# File lib/conoha_api/client/compute.rb, line 127
def unmount_iso_image(id)
  action(id, unmountImage: nil)
end
vnc(id) click to toggle source
# File lib/conoha_api/client/compute.rb, line 88
def vnc(id)
  action(id, :"os-getVNCConsole" => { type: :novnc })
end

Private Instance Methods

action(id, query) click to toggle source
# File lib/conoha_api/client/compute.rb, line 131
def action(id, query)
  post "servers/#{id}/action", query
end