class Fog::Compute::Packet::Real
Public Class Methods
new(options = {})
click to toggle source
# File lib/fog/compute/packet/compute.rb, line 242 def initialize(options = {}) if options[:packet_token] @packet_token = options[:packet_token] else @packet_token = ENV["PACKET_TOKEN"] end raise "Packet token is not present. Please pass it as an argument or set environment variable 'PACKET_TOKEN'." unless @packet_token @base_url = options[:packet_url] ? options[:packet_url] : "https://api.packet.net/" @version = "" @header = { "X-Auth-Token" => @packet_token, "Content-Type" => "application/json" } @connection = Fog::Core::Connection.new(@base_url) end
Public Instance Methods
accept_invitation(id)
click to toggle source
# File lib/fog/compute/packet/requests/accept_invitation.rb, line 6 def accept_invitation(id) request( :expects => [200], :method => "PUT", :path => "/invitations/" + id ) end
accept_transfer_request(id)
click to toggle source
# File lib/fog/compute/packet/requests/accept_transfer_request.rb, line 6 def accept_transfer_request(id) request( :expects => [204], :method => "PUT", :path => "/transfers/" + id ) end
assign_ip(device_id, options)
click to toggle source
# File lib/fog/compute/packet/requests/assign_ip.rb, line 6 def assign_ip(device_id, options) req = { "address" => options[:address] } req["manageable"] = options[:manageable] if options[:manageable] request( :expects => [201], :method => "POST", :path => "/devices/" + device_id + "/ips", :body => Fog::JSON.encode(req) ) end
assign_port(port_id, vnid)
click to toggle source
# File lib/fog/compute/packet/requests/assign_port.rb, line 6 def assign_port(port_id, vnid) request( :expects => [200], :method => "POST", :path => "/ports/" + port_id + "/assign?vnid=" + vnid ) end
attach_volume(volume_id, device_id)
click to toggle source
# File lib/fog/compute/packet/requests/attach_volume.rb, line 6 def attach_volume(volume_id, device_id) req = { "device_id" => device_id } request( :expects => [201], :method => "POST", :path => "/storage/" + volume_id + "/attachments", :body => Fog::JSON.encode(req) ) end
bond_ports(port_id, bulk_enable)
click to toggle source
# File lib/fog/compute/packet/requests/bond_ports.rb, line 6 def bond_ports(port_id, bulk_enable) request( :expects => [200], :method => "POST", :path => "/ports/" + port_id + "/bond?bulk_enable=" + (bulk_enable ? "true" : "false") ) end
create_batch(project_id, options)
click to toggle source
# File lib/fog/compute/packet/requests/create_batch.rb, line 6 def create_batch(project_id, options) request( :expects => [201], :method => "POST", :path => "/projects/" + project_id + "/devices/batch", :body => Fog::JSON.encode(options) ) end
create_bgp_session(device_id, address_family)
click to toggle source
# File lib/fog/compute/packet/requests/create_bgp_session.rb, line 6 def create_bgp_session(device_id, address_family) request( :expects => [201], :method => "POST", :path => "/devices/" + device_id + "/bgp/sessions?address_family=" + address_family ) end
create_device(project_id, options)
click to toggle source
# File lib/fog/compute/packet/requests/create_device.rb, line 6 def create_device(project_id, options) device = { "facility" => options[:facility], "plan" => options[:plan], "hostname" => options[:hostname], "operating_system" => options[:operating_system] } device["description"] = options[:description] if options[:description] device["billing_cycle"] = options[:billing_cycle] if options[:billing_cycle] device["always_pxe"] = options[:always_pxe] if options[:always_pxe] device["ipxe_script_url"] = options[:ipxe_script_url] if options[:ipxe_script_url] device["userdata"] = options[:userdata] if options[:userdata] device["locked"] = options[:locked] if options[:locked] device["hardware_reservation_id"] = options[:hardware_reservation_id] if options[:hardware_reservation_id] device["spot_instance"] = options[:spot_instance] if options[:spot_instance] device["spot_price_max"] = options[:spot_price_max] if options[:spot_price_max] device["termination_time"] = options[:termination_time] if options[:termination_time] device["tags"] = options[:tags] if options[:tags] device["project_ssh_keys"] = options[:project_ssh_keys] if options[:project_ssh_keys] device["user_ssh_keys"] = options[:user_ssh_keys] if options[:user_ssh_keys] device["features"] = options[:features] if options[:features] request( :expects => [201], :method => "POST", :path => "/projects/" + project_id + "/devices", :body => Fog::JSON.encode(device) ) end
create_email(options)
click to toggle source
# File lib/fog/compute/packet/requests/create_email.rb, line 6 def create_email(options) email = { "address" => options[:address], "default" => options[:default] } request( :expects => [201], :method => "POST", :path => "/emails", :body => Fog::JSON.encode(email) ) end
create_license(project_id, options)
click to toggle source
# File lib/fog/compute/packet/requests/create_license.rb, line 6 def create_license(project_id, options) license = { "description" => options[:description], "size" => options[:size] } license["license_product_id"] = options[:license_product_id] if options[:license_product_id] request( :expects => [201], :method => "POST", :path => "/projects/" + project_id + "/licenses", :body => Fog::JSON.encode(license) ) end
create_organization(options)
click to toggle source
# File lib/fog/compute/packet/requests/create_organization.rb, line 6 def create_organization(options) org = { "name" => options[:name], "description" => options[:description] } org["website"] = options[:website] if options[:website] org["twitter"] = options[:twitter] if options[:twitter] org["logo"] = options[:logo] if options[:logo] org["address"] = options[:address] if options[:address] org["customdata"] = options[:customdata] if options[:customdata] request( :expects => [201], :method => "POST", :path => "/organizations", :body => Fog::JSON.encode(org) ) end
create_payment_method(org_id, options)
click to toggle source
# File lib/fog/compute/packet/requests/create_payment_method.rb, line 6 def create_payment_method(org_id, options) payment_method = { "name" => options[:name] } payment_method["default"] = options[:default] if options[:default] payment_method["nonce"] = options[:nonce] if options[:nonce] request( :expects => [201], :method => "POST", :path => "/organizations/" + org_id + "/payment_methods", :body => Fog::JSON.encode(payment_method) ) end
create_project(options)
click to toggle source
# File lib/fog/compute/packet/requests/create_project.rb, line 6 def create_project(options) project = { "name" => options[:name], "payment_method_id" => options[:payment_method_id] } request( :expects => [201], :method => "POST", :path => "/projects", :body => Fog::JSON.encode(project) ) end
create_snapshot(storage_id)
click to toggle source
# File lib/fog/compute/packet/requests/create_snapshot.rb, line 6 def create_snapshot(storage_id) request( :expects => [202], :method => "POST", :path => "/storage/" + storage_id + "/snapshots" ) end
create_ssh_key(options)
click to toggle source
# File lib/fog/compute/packet/requests/create_ssh_key.rb, line 6 def create_ssh_key(options) sshkey = { "label" => options[:label], "key" => options[:key] } request( :expects => [201], :method => "POST", :path => "/ssh-keys", :body => Fog::JSON.encode(sshkey) ) end
create_virtual_network(options)
click to toggle source
# File lib/fog/compute/packet/requests/create_virtual_network.rb, line 6 def create_virtual_network(options) vnet = { "project_id" => options[:project_id], "description" => options[:description], "facility" => options[:facility], "vxlan" => options[:vxlan], "vlan" => options[:vlan] } request( :expects => [201], :method => "POST", :path => "/projects/" + options[:project_id] + "/virtual-networks", :body => Fog::JSON.encode(vnet) ) end
create_volume(project_id, options)
click to toggle source
# File lib/fog/compute/packet/requests/create_volume.rb, line 6 def create_volume(project_id, options) volume = { "facility" => options[:facility], "plan" => options[:plan], "size" => options[:size] } volume["description"] = options[:description] if options[:description] volume["billing_cycle"] = options[:billing_cycle] if options[:billing_cycle] volume["snapshot_policies"] = options[:snapshot_policies] if options[:snapshot_policies] request( :expects => [201], :method => "POST", :path => "/projects/" + project_id + "/storage", :body => Fog::JSON.encode(volume) ) end
decline_invitation(id)
click to toggle source
# File lib/fog/compute/packet/requests/decline_invitation.rb, line 6 def decline_invitation(id) request( :expects => [204], :method => "DELETE", :path => "/invitations/" + id ) end
decline_transfer_request(id)
click to toggle source
# File lib/fog/compute/packet/requests/decline_transfer_request.rb, line 6 def decline_transfer_request(id) request( :expects => [204], :method => "PUT", :path => "/transfers/" + id ) end
delete_bgp_session(session_id)
click to toggle source
# File lib/fog/compute/packet/requests/delete_bgp_session.rb, line 6 def delete_bgp_session(session_id) request( :expects => [204], :method => "DELETE", :path => "/bgp/sessions/" + session_id ) end
delete_device(device_id)
click to toggle source
# File lib/fog/compute/packet/requests/delete_device.rb, line 6 def delete_device(device_id) request( :expects => [204], :method => "DELETE", :path => "/devices/" + device_id ) end
delete_email(id)
click to toggle source
# File lib/fog/compute/packet/requests/delete_email.rb, line 6 def delete_email(id) request( :expects => [204], :method => "DELETE", :path => "/emails/" + id ) end
delete_license(id)
click to toggle source
# File lib/fog/compute/packet/requests/delete_license.rb, line 6 def delete_license(id) request( :expects => [204], :method => "DELETE", :path => "/licenses/" + id ) end
delete_membership(id)
click to toggle source
# File lib/fog/compute/packet/requests/delete_membership.rb, line 6 def delete_membership(id) request( :expects => [204], :method => "DELETE", :path => "/memberships/" + id ) end
delete_organization(id)
click to toggle source
# File lib/fog/compute/packet/requests/delete_organization.rb, line 6 def delete_organization(id) request( :expects => [204], :method => "DELETE", :path => "/organizations/" + id ) end
delete_payment_method(id)
click to toggle source
# File lib/fog/compute/packet/requests/delete_payment_method.rb, line 6 def delete_payment_method(id) request( :expects => [204], :method => "DELETE", :path => "/payment-methods/" + id ) end
delete_project(id)
click to toggle source
# File lib/fog/compute/packet/requests/delete_project.rb, line 6 def delete_project(id) request( :expects => [204], :method => "DELETE", :path => "/projects/" + id ) end
delete_session(session_id = "")
click to toggle source
# File lib/fog/compute/packet/requests/delete_session.rb, line 6 def delete_session(session_id = "") url = "/session" url = "/sessions/" + session_id if session_id != "" request( :expects => [204], :method => "DELETE", :path => url ) end
delete_snapshot(storage_id, snapshot_id)
click to toggle source
# File lib/fog/compute/packet/requests/delete_snapshot.rb, line 6 def delete_snapshot(storage_id, snapshot_id) request( :expects => [204], :method => "DELETE", :path => "/storage/" + storage_id + "/snapshots/" + snapshot_id ) end
delete_ssh_key(id)
click to toggle source
# File lib/fog/compute/packet/requests/delete_ssh_key.rb, line 6 def delete_ssh_key(id) request( :expects => [204], :method => "DELETE", :path => "/ssh-keys/" + id ) end
delete_virtual_network(id)
click to toggle source
# File lib/fog/compute/packet/requests/delete_virtual_network.rb, line 6 def delete_virtual_network(id) request( :expects => [204], :method => "DELETE", :path => "/virtual-networks/" + id ) end
delete_volume(id)
click to toggle source
# File lib/fog/compute/packet/requests/delete_volume.rb, line 6 def delete_volume(id) request( :expects => [204], :method => "DELETE", :path => "/storage/" + id ) end
detach_volume(attachment_id)
click to toggle source
# File lib/fog/compute/packet/requests/detach_volume.rb, line 6 def detach_volume(attachment_id) request( :expects => [204], :method => "DELETE", :path => "/storage/attachments/" + attachment_id ) end
disable_two_factor_auth(type)
click to toggle source
# File lib/fog/compute/packet/requests/disable_two_factor_auth.rb, line 6 def disable_two_factor_auth(type) url = "/user/otp/" + type request( :expects => [204], :method => "DELETE", :path => url ) end
disable_vpn()
click to toggle source
# File lib/fog/compute/packet/requests/disable_vpn.rb, line 6 def disable_vpn request( :expects => [204], :method => "DELETE", :path => "/user/vpn" ) end
disbond_ports(port_id, bulk_disable)
click to toggle source
# File lib/fog/compute/packet/requests/disbond_ports.rb, line 6 def disbond_ports(port_id, bulk_disable) request( :expects => [200], :method => "POST", :path => "/ports/" + port_id + "/disbond?bulk_disable=" + (bulk_disable ? "true" : "false") ) end
enable_two_factor_auth(type)
click to toggle source
# File lib/fog/compute/packet/requests/enable_two_factor_auth.rb, line 6 def enable_two_factor_auth(type) url = "/user/otp/" + type request( :expects => [200], :method => "POST", :path => url ) end
enable_vpn()
click to toggle source
# File lib/fog/compute/packet/requests/enable_vpn.rb, line 6 def enable_vpn request( :expects => [201], :method => "POST", :path => "/user/vpn" ) end
get_bandwidth(device_id, params)
click to toggle source
# File lib/fog/compute/packet/requests/get_bandwidth.rb, line 6 def get_bandwidth(device_id, params) request( :expects => [201], :method => "GET", :path => "/devices/" + device_id + "/bandwidth", :params => params ) end
get_batch(id)
click to toggle source
# File lib/fog/compute/packet/requests/get_batch.rb, line 6 def get_batch(id) request( :expects => [200], :method => "GET", :path => "/batches/" + id ) end
get_bgp_session(session_id)
click to toggle source
# File lib/fog/compute/packet/requests/get_bgp_session.rb, line 6 def get_bgp_session(session_id) request( :expects => [200], :method => "GET", :path => "/bgp/sessions/" + session_id ) end
get_capacity()
click to toggle source
# File lib/fog/compute/packet/requests/get_capacity.rb, line 6 def get_capacity request( :expects => [200], :method => "GET", :path => "/capacity" ) end
get_device(device_id)
click to toggle source
# File lib/fog/compute/packet/requests/get_device.rb, line 6 def get_device(device_id) request( :expects => [200], :method => "GET", :path => "/devices/" + device_id ) end
get_email(id)
click to toggle source
# File lib/fog/compute/packet/requests/get_email.rb, line 6 def get_email(id) request( :expects => [200], :method => "GET", :path => "/emails/" + id ) end
get_hardware_reservation(id)
click to toggle source
# File lib/fog/compute/packet/requests/get_hardware_reservation.rb, line 6 def get_hardware_reservation(id) request( :expects => [200], :method => "GET", :path => "/hardware_reservations/" + id ) end
get_invitation(id)
click to toggle source
# File lib/fog/compute/packet/requests/get_invitation.rb, line 6 def get_invitation(id) request( :expects => [200], :method => "GET", :path => "/invitations/" + id ) end
get_ip(ip_id)
click to toggle source
# File lib/fog/compute/packet/requests/get_ip.rb, line 6 def get_ip(ip_id) request( :expects => [200], :method => "GET", :path => "/ips/" + ip_id ) end
get_license(id)
click to toggle source
# File lib/fog/compute/packet/requests/get_license.rb, line 6 def get_license(id) request( :expects => [200], :method => "GET", :path => "/licenses/" + id ) end
get_membership(id)
click to toggle source
# File lib/fog/compute/packet/requests/get_membership.rb, line 6 def get_membership(id) request( :expects => [200], :method => "GET", :path => "/memberships/" + id ) end
get_notification(id)
click to toggle source
# File lib/fog/compute/packet/requests/get_notification.rb, line 6 def get_notification(id) request( :expects => [200], :method => "GET", :path => "/notifications/" + id ) end
get_organization(id, params = {})
click to toggle source
# File lib/fog/compute/packet/requests/get_organization.rb, line 6 def get_organization(id, params = {}) request( :expects => [200], :method => "GET", :path => "/organizations/" + id, :params => params ) end
get_payment_method(id, params = {})
click to toggle source
# File lib/fog/compute/packet/requests/get_payment_method.rb, line 6 def get_payment_method(id, params = {}) request( :expects => [200], :method => "GET", :path => "/payment-methods/" + id, :params => params ) end
get_project(id)
click to toggle source
# File lib/fog/compute/packet/requests/get_project.rb, line 6 def get_project(id) request( :expects => [200], :method => "GET", :path => "/projects/" + id ) end
get_project_facilities(project_id)
click to toggle source
# File lib/fog/compute/packet/requests/list_facilities.rb, line 14 def get_project_facilities(project_id) request( :expects => [200], :method => "GET", :path => "/projects/" + project_id + "/facilities" ) end
get_project_plans(project_id)
click to toggle source
# File lib/fog/compute/packet/requests/list_plans.rb, line 15 def get_project_plans(project_id) request( :expects => [200], :method => "GET", :path => "/projects/" + project_id + "/plans" ) end
get_ssh_key(id)
click to toggle source
# File lib/fog/compute/packet/requests/get_ssh_key.rb, line 6 def get_ssh_key(id) request( :expects => [200], :method => "GET", :path => "/ssh-keys/" + id ) end
get_transfer_request(id)
click to toggle source
# File lib/fog/compute/packet/requests/get_transfer_request.rb, line 6 def get_transfer_request(id) request( :expects => [200], :method => "GET", :path => "/transfers/" + id ) end
get_user(id = "")
click to toggle source
# File lib/fog/compute/packet/requests/get_user.rb, line 6 def get_user(id = "") request( :expects => [200], :method => "GET", :path => "/users/" + id ) end
get_volume(id)
click to toggle source
# File lib/fog/compute/packet/requests/get_volume.rb, line 6 def get_volume(id) request( :expects => [200], :method => "GET", :path => "/storage/" + id ) end
get_vpn(facility_code)
click to toggle source
# File lib/fog/compute/packet/requests/get_vpn.rb, line 6 def get_vpn(facility_code) request( :expects => [200], :method => "GET", :path => "/user/vpn?code=" + facility_code ) end
list_batches(project_id, params)
click to toggle source
# File lib/fog/compute/packet/requests/list_batches.rb, line 6 def list_batches(project_id, params) request( :expects => [200], :method => "GET", :path => "/projects/" + project_id + "/batches", :params => params ) end
list_bgp_sessions(device_id)
click to toggle source
# File lib/fog/compute/packet/requests/list_bgp_sessions.rb, line 6 def list_bgp_sessions(device_id) request( :expects => [200], :method => "GET", :path => "/devices/" + device_id + "/bgp/sessions" ) end
list_devices(project_id, params = {})
click to toggle source
# File lib/fog/compute/packet/requests/list_devices.rb, line 6 def list_devices(project_id, params = {}) request( :expects => [200], :method => "GET", :path => "/projects/" + project_id + "/devices", :params => params ) end
list_events(device_id, params = {})
click to toggle source
# File lib/fog/compute/packet/requests/list_events.rb, line 6 def list_events(device_id, params = {}) request( :expects => [200], :method => "GET", :path => "/devices/" + device_id + "/events", :params => params ) end
list_facilities()
click to toggle source
# File lib/fog/compute/packet/requests/list_facilities.rb, line 6 def list_facilities request( :expects => [200], :method => "GET", :path => "/facilities" ) end
list_hardware_reservations(project_id, params = {})
click to toggle source
# File lib/fog/compute/packet/requests/list_hardware_reservations.rb, line 6 def list_hardware_reservations(project_id, params = {}) request( :expects => [200], :method => "GET", :path => "/projects/" + project_id + "/hardware-reservations", :params => params ) end
list_invitations(device_id, params = {})
click to toggle source
# File lib/fog/compute/packet/requests/list_invitations.rb, line 6 def list_invitations(device_id, params = {}) request( :expects => [200], :method => "GET", :path => "/invitations/" + device_id, :params => params ) end
list_ips(project_id, params = {})
click to toggle source
# File lib/fog/compute/packet/requests/list_ips.rb, line 6 def list_ips(project_id, params = {}) request( :expects => [200], :method => "GET", :path => "/projects/" + project_id + "/ips", :params => params ) end
list_licenses(project_id, params = {})
click to toggle source
# File lib/fog/compute/packet/requests/list_licenses.rb, line 6 def list_licenses(project_id, params = {}) request( :expects => [200], :method => "GET", :path => "/projects/" + project_id + "/licenses", :params => params ) end
list_memberships(project_id, params = {})
click to toggle source
# File lib/fog/compute/packet/requests/list_memberships.rb, line 6 def list_memberships(project_id, params = {}) request( :expects => [200], :method => "GET", :path => "/projects/" + project_id + "/memberships", :pramas => params ) end
list_notifications(params = {})
click to toggle source
# File lib/fog/compute/packet/requests/list_notifications.rb, line 6 def list_notifications(params = {}) request( :expects => [200], :method => "GET", :path => "/notifications", :params => params ) end
list_operating_systems()
click to toggle source
# File lib/fog/compute/packet/requests/list_operating_systems.rb, line 6 def list_operating_systems request( :expects => [200], :method => "GET", :path => "/operating-systems" ) end
list_organizations(params = {})
click to toggle source
# File lib/fog/compute/packet/requests/list_organizations.rb, line 6 def list_organizations(params = {}) request( :expects => [200], :method => "GET", :path => "/organizations", :params => params ) end
list_payment_methods(org_id, params = {})
click to toggle source
# File lib/fog/compute/packet/requests/list_payment_methods.rb, line 6 def list_payment_methods(org_id, params = {}) request( :expects => [200], :method => "GET", :path => "/organizations/" + org_id + "/payment-methods", :params => params ) end
list_plans(params = {})
click to toggle source
# File lib/fog/compute/packet/requests/list_plans.rb, line 6 def list_plans(params = {}) request( :expects => [200], :method => "GET", :path => "/plans", :params => params ) end
list_projects(params = {})
click to toggle source
# File lib/fog/compute/packet/requests/list_projects.rb, line 6 def list_projects(params = {}) request( :expects => [200], :method => "GET", :path => "/projects", :params => params ) end
list_sessions(params = {})
click to toggle source
# File lib/fog/compute/packet/requests/list_sessions.rb, line 6 def list_sessions(params = {}) request( :expects => [200], :method => "GET", :path => "/sessions", :params => params ) end
list_snapshots(volume_id, params = {})
click to toggle source
# File lib/fog/compute/packet/requests/list_snapshots.rb, line 6 def list_snapshots(volume_id, params = {}) request( :expects => [200], :method => "GET", :path => "/storage/" + volume_id + "/snapshots", :params => params ) end
list_spotmarketprices()
click to toggle source
# File lib/fog/compute/packet/requests/list_spotmarketprices.rb, line 6 def list_spotmarketprices request( :expects => [200], :method => "GET", :path => "/market/spot/prices" ) end
list_spotmarketprices_history(facility, plan)
click to toggle source
# File lib/fog/compute/packet/requests/list_spotmarketprices_history.rb, line 6 def list_spotmarketprices_history(facility, plan) request( :expects => [200], :method => "GET", :path => "/market/spot/prices/history?facility=" + facility + "&plan=" + plan ) end
list_ssh_keys(project_id = "", params = {})
click to toggle source
# File lib/fog/compute/packet/requests/list_ssh_keys.rb, line 6 def list_ssh_keys(project_id = "", params = {}) p project_id p params url = "/ssh-keys" if project_id.class == Hash params = project_id elsif project_id.class == String url = "/projects/" + project_id + "/ssh-keys" unless project_id == "" end request( :expects => [200], :method => "GET", :path => url, :params => params ) end
list_transfers(organization_id, params = {})
click to toggle source
# File lib/fog/compute/packet/requests/list_transfer_requests.rb, line 6 def list_transfers(organization_id, params = {}) request( :expects => [200], :method => "GET", :path => "/organizations/" + organization_id + "/transfers", :params => params ) end
list_users(params = {})
click to toggle source
# File lib/fog/compute/packet/requests/list_users.rb, line 6 def list_users(params = {}) request( :expects => [200], :method => "GET", :path => "/users", :params => params ) end
list_virtual_networks(project_id, params)
click to toggle source
# File lib/fog/compute/packet/requests/list_virtual_networks.rb, line 6 def list_virtual_networks(project_id, params) request( :expects => [200], :method => "GET", :path => "/projects/" + project_id + "/virtual-networks", :params => params ) end
list_volumes(project_id, params = {})
click to toggle source
# File lib/fog/compute/packet/requests/list_volumes.rb, line 6 def list_volumes(project_id, params = {}) request( :expects => [200], :method => "GET", :path => "/projects/" + project_id + "/storage", :params => params ) end
move_hardware_reservation(reservation_id, project_id)
click to toggle source
# File lib/fog/compute/packet/requests/move_hardware_reservation.rb, line 6 def move_hardware_reservation(reservation_id, project_id) request( :expects => [200], :method => "POST", :path => "/hardware-reservations/" + reservation_id + "/move/" + project_id ) end
poweroff_device(device_id)
click to toggle source
# File lib/fog/compute/packet/requests/poweroff_device.rb, line 6 def poweroff_device(device_id) action = { "type" => "power_off" } request( :expects => [201], :method => "POST", :path => "/devices/" + device_id + "/actions", :body => Fog::JSON.encode(action) ) end
poweron_device(device_id)
click to toggle source
# File lib/fog/compute/packet/requests/poweron_device.rb, line 6 def poweron_device(device_id) action = { "type" => "power_on" } request( :expects => [201], :method => "POST", :path => "/devices/" + device_id + "/actions", :body => Fog::JSON.encode(action) ) end
reboot_device(device_id)
click to toggle source
# File lib/fog/compute/packet/requests/reboot_device.rb, line 6 def reboot_device(device_id) action = { "type" => "reboot" } request( :expects => [201], :method => "POST", :path => "/devices/" + device_id + "/actions", :body => Fog::JSON.encode(action) ) end
request(params)
click to toggle source
# File lib/fog/compute/packet/compute.rb, line 261 def request(params) # Perform Request begin response = @connection.request(:method => params[:method], :path => params[:path], :headers => @header, :body => params[:body], :query => params[:params]) rescue Excon::Errors::Unauthorized => error raise error rescue Excon::Errors::HTTPStatusError => error raise error rescue Excon::Errors::InternalServerError => error raise error rescue Fog::Errors::NotFound => error raise error end # Parse body response.body = Fog::JSON.decode(response.body) if response.body != "" # # Check for server error if response.status == 500 raise "Internal Server Error. Please try again." end # Raise exception if a bad status code is returned unless SUCCESS_CODES.include? response.status raise response.status.to_s + " " + response.body.to_s end response end
request_email_verification(email)
click to toggle source
# File lib/fog/compute/packet/requests/request_email_verification.rb, line 6 def request_email_verification(email) request( :expects => [201], :method => "POST", :path => "/verify-email?login=" + email ) end
reserve_ip(project_id, options)
click to toggle source
# File lib/fog/compute/packet/requests/reserve_ip.rb, line 6 def reserve_ip(project_id, options) ip = { "facility" => options[:facility], "quantity" => options[:quantity], "type" => options[:type] } ip["comments"] = options[:comments] if options[:comments] request( :expects => [201], :method => "POST", :path => "/projects/" + project_id + "/ips", :body => Fog::JSON.encode(ip) ) end
session_login(login_params)
click to toggle source
# File lib/fog/compute/packet/requests/session_login.rb, line 6 def session_login(login_params) request( :expects => [201], :method => "POST", :path => "/sessions?login=" + login_params[:username] + "&password=" + login_params[:password] ) end
transfer_project(project_id, organization_id)
click to toggle source
# File lib/fog/compute/packet/requests/transfer_project.rb, line 6 def transfer_project(project_id, organization_id) transfer_request = { "target_organization_id" => organization_id } request( :expects => [201], :method => "POST", :path => "/projects/" + project_id + "/transfers", :body => Fog::JSON.encode(transfer_request) ) end
unassign_ip(ip_id)
click to toggle source
# File lib/fog/compute/packet/requests/unassign_ip.rb, line 6 def unassign_ip(ip_id) request( :expects => [204], :method => "POST", :path => "/ips/" + ip_id ) end
unassign_port(port_id, vnid)
click to toggle source
# File lib/fog/compute/packet/requests/unassign_port.rb, line 6 def unassign_port(port_id, vnid) request( :expects => [200], :method => "POST", :path => "/ports/" + port_id + "/unassign?vnid=" + vnid ) end
update_device(device_id, options)
click to toggle source
# File lib/fog/compute/packet/requests/update_device.rb, line 6 def update_device(device_id, options) device = Hash.new {} device["hostname"] = options[:hostname] if options[:hostname] device["description"] = options[:description] if options[:description] device["billing_cycle"] = options[:billing_cycle] if options[:billing_cycle] device["userdata"] = options[:userdata] if options[:userdata] device["locked"] = options[:locked] if options[:locked] device["tags"] = options[:tags] if options[:tags] device["always_pxe"] = options[:always_pxe] if options[:always_pxe] device["ipxe_script_url"] = options[:ipxe_script_url] if options[:ipxe_script_url] device["spot_instance"] = options[:spot_instance] if options[:spot_instance] request( :expects => [200], :method => "PUT", :path => "/devices/" + device_id, :body => Fog::JSON.encode(device) ) end
update_email(email_id, options)
click to toggle source
# File lib/fog/compute/packet/requests/update_email.rb, line 6 def update_email(email_id, options) project = Hash.new {} project["address"] = options[:address] if options[:address] project["default"] = options[:default] if options[:default] request( :expects => [200], :method => "PUT", :path => "/emails/" + email_id, :body => Fog::JSON.encode(project) ) end
update_license(id, options)
click to toggle source
# File lib/fog/compute/packet/requests/update_license.rb, line 6 def update_license(id, options) project = Hash.new {} project["description"] = options[:description] if options[:description] project["size"] = options[:size] if options[:size] request( :expects => [200], :method => "PUT", :path => "/licenses/" + id, :body => Fog::JSON.encode(project) ) end
update_membership(id, options)
click to toggle source
# File lib/fog/compute/packet/requests/update_membership.rb, line 6 def update_membership(id, options) roles = Hash.new {} roles["roles"] = options[:roles] if options[:roles] request( :expects => [200], :method => "PUT", :path => "/memberships/" + id, :body => Fog::JSON.encode(roles) ) end
update_notification(id)
click to toggle source
# File lib/fog/compute/packet/requests/update_notification.rb, line 6 def update_notification(id) request( :expects => [200], :method => "PUT", :path => "/notifications/" + id ) end
update_organization(id, options)
click to toggle source
# File lib/fog/compute/packet/requests/update_organization.rb, line 6 def update_organization(id, options) org = {} org["name"] = options[:name] if options[:name] org["description"] = options[:description] if options[:description] org["website"] = options[:website] if options[:website] org["twitter"] = options[:twitter] if options[:twitter] org["logo"] = options[:logo] if options[:logo] org["address"] = options[:address] if options[:address] org["customdata"] = options[:customdata] if options[:customdata] request( :expects => [200], :method => "PUT", :path => "/organizations/" + id, :body => Fog::JSON.encode(org) ) end
update_payment_method(id, options)
click to toggle source
# File lib/fog/compute/packet/requests/update_payment_method.rb, line 6 def update_payment_method(id, options) payment_method = {} payment_method["name"] = options[:name] if options[:name] payment_method["cardholder_name"] = options[:cardholder_name] if options[:cardholder_name] payment_method["expiration_month"] = options[:expiration_month] if options[:expiration_month] payment_method["expiration_year"] = options[:expiration_year] if options[:expiration_year] request( :expects => [200], :method => "POST", :path => "/payment_methods/" + id, :body => Fog::JSON.encode(payment_method) ) end
update_project(project_id, options)
click to toggle source
# File lib/fog/compute/packet/requests/update_project.rb, line 6 def update_project(project_id, options) project = Hash.new {} project["name"] = options[:name] if options[:name] project["payment_method_id"] = options[:payment_method_id] if options[:payment_method_id] request( :expects => [200], :method => "PUT", :path => "/projects/" + project_id, :body => Fog::JSON.encode(project) ) end
update_ssh_key(id, options)
click to toggle source
# File lib/fog/compute/packet/requests/update_ssh_key.rb, line 6 def update_ssh_key(id, options) sshkey = { "label" => options[:label], "key" => options[:key] } request( :expects => [200], :method => "PUT", :path => "/ssh-keys/" + id, :body => Fog::JSON.encode(sshkey) ) end
update_user(user_id, options)
click to toggle source
# File lib/fog/compute/packet/requests/update_user.rb, line 6 def update_user(user_id, options) project = Hash.new {} project["first_name"] = options[:first_name] if options[:first_name] project["last_name"] = options[:last_name] if options[:last_name] project["phone_number"] = options[:phone_number] if options[:phone_number] project["timezone"] = options[:timezone] if options[:timezone] project["password"] = options[:password] if options[:password] project["avatar"] = options[:timezone] if options[:avatar] request( :expects => [200], :method => "PUT", :path => "/users/" + user_id, :body => Fog::JSON.encode(project) ) end
update_volume(volume_id, options)
click to toggle source
# File lib/fog/compute/packet/requests/update_volume.rb, line 6 def update_volume(volume_id, options) device = Hash.new {} device["description"] = options[:description] if options[:description] device["billing_cycle"] = options[:billing_cycle] if options[:billing_cycle] device["size"] = options[:size] if options[:size] device["locked"] = options[:locked] if options[:locked] request( :expects => [200], :method => "PUT", :path => "/storage/" + volume_id, :body => Fog::JSON.encode(device) ) end
validate_capacity(options)
click to toggle source
# File lib/fog/compute/packet/requests/validate_capacity.rb, line 6 def validate_capacity(options) cap = { "servers" => [] } options[:servers].each do |server| srv = {} srv["facility"] = server[:facility] if server[:facility] srv["plan"] = server[:plan] if server[:plan] srv["quantity"] = server[:quantity] if server[:quantity] cap["servers"] << srv end request( :expects => [204], :method => "POST", :path => "/capacity", :body => Fog::JSON.encode(cap) ) end
verify_email(token)
click to toggle source
# File lib/fog/compute/packet/requests/verify_email.rb, line 6 def verify_email(token) request( :expects => [200], :method => "POST", :path => "/verify-email?token=" + token ) end