class Vultr::InstancesResource
Public Instance Methods
attach_iso(instance_id:, iso_id:)
click to toggle source
# File lib/vultr/resources/instances.rb, line 116 def attach_iso(instance_id:, iso_id:) Object.new post_request("instances/#{instance_id}/iso/attach", body: {iso_id: iso_id}).body.dig("iso_status") end
attach_private_network(instance_id:, network_id:)
click to toggle source
# File lib/vultr/resources/instances.rb, line 104 def attach_private_network(instance_id:, network_id:) post_request("instances/#{instance_id}/private-networks/attach", body: {network_id: network_id}) end
backup_schedule(instance_id:)
click to toggle source
# File lib/vultr/resources/instances.rb, line 124 def backup_schedule(instance_id:) Object.new get_request("instances/#{instance_id}/backup-schedule").body.dig("backup_schedule") end
bandwidth(instance_id:)
click to toggle source
# File lib/vultr/resources/instances.rb, line 44 def bandwidth(instance_id:) Object.new get_request("instances/#{instance_id}/bandwidth").body.dig("bandwidth") end
create(**attributes)
click to toggle source
# File lib/vultr/resources/instances.rb, line 8 def create(**attributes) Instance.new post_request("instances", body: attributes).body.dig("instance") end
create_ipv4(instance_id:, **params)
click to toggle source
# File lib/vultr/resources/instances.rb, line 65 def create_ipv4(instance_id:, **params) Object.new post_request("instances/#{instance_id}/ipv4", body: params).body.dig("ipv4") end
create_ipv4_reverse(instance_id:, **params)
click to toggle source
# File lib/vultr/resources/instances.rb, line 73 def create_ipv4_reverse(instance_id:, **params) post_request("instances/#{instance_id}/ipv4/reverse", body: params) end
create_ipv6_reverse(instance_id:, **params)
click to toggle source
# File lib/vultr/resources/instances.rb, line 91 def create_ipv6_reverse(instance_id:, **params) post_request("instances/#{instance_id}/ipv6/reverse", body: params) end
delete(instance_id:)
click to toggle source
# File lib/vultr/resources/instances.rb, line 20 def delete(instance_id:) delete_request("instances/#{instance_id}") end
delete_ipv4(instance_id:, ipv4:)
click to toggle source
# File lib/vultr/resources/instances.rb, line 69 def delete_ipv4(instance_id:, ipv4:) delete_request("instances/#{instance_id}/ipv4/#{ipv4}") end
delete_ipv6_reverse(instance_id:, ipv6:)
click to toggle source
# File lib/vultr/resources/instances.rb, line 95 def delete_ipv6_reverse(instance_id:, ipv6:) delete_request("instances/#{instance_id}/ipv6/reverse/#{ipv6}") end
detach_iso(instance_id:, iso_id:)
click to toggle source
# File lib/vultr/resources/instances.rb, line 120 def detach_iso(instance_id:, iso_id:) Object.new post_request("instances/#{instance_id}/iso/detach", body: {iso_id: iso_id}).body.dig("iso_status") end
detach_private_network(instance_id:, network_id:)
click to toggle source
# File lib/vultr/resources/instances.rb, line 108 def detach_private_network(instance_id:, network_id:) post_request("instances/#{instance_id}/private-networks/detach", body: {network_id: network_id}) end
halt(instance_id:, **attributes)
click to toggle source
# File lib/vultr/resources/instances.rb, line 40 def halt(instance_id:, **attributes) post_request("instances/#{instance_id}/halt", body: attributes) end
halt_instances(instance_ids:)
click to toggle source
Bulk operations
# File lib/vultr/resources/instances.rb, line 133 def halt_instances(instance_ids:) post_request("instances/halt", body: {instance_ids: Array(instance_ids)}) end
ipv6_reverse(instance_id:)
click to toggle source
# File lib/vultr/resources/instances.rb, line 86 def ipv6_reverse(instance_id:) response = get_request("instances/#{instance_id}/ipv6/reverse") Collection.from_response(response, key: "reverse_ipv6s", type: Object) end
iso(instance_id:)
click to toggle source
# File lib/vultr/resources/instances.rb, line 112 def iso(instance_id:) Object.new get_request("instances/#{instance_id}/iso").body.dig("iso_status") end
list(**params)
click to toggle source
# File lib/vultr/resources/instances.rb, line 3 def list(**params) response = get_request("instances", params: params) Collection.from_response(response, key: "instances", type: Instance) end
list_ipv4(instance_id:, **params)
click to toggle source
# File lib/vultr/resources/instances.rb, line 60 def list_ipv4(instance_id:, **params) response = get_request("instances/#{instance_id}/ipv4", params: params) Collection.from_response(response, key: "ipv4s", type: Object) end
list_ipv6(instance_id:, **params)
click to toggle source
# File lib/vultr/resources/instances.rb, line 81 def list_ipv6(instance_id:, **params) response = get_request("instances/#{instance_id}/ipv6", params: params) Collection.from_response(response, key: "ipv6s", type: Object) end
list_private_networks(instance_id:, **params)
click to toggle source
# File lib/vultr/resources/instances.rb, line 99 def list_private_networks(instance_id:, **params) response = get_request("instances/#{instance_id}/private-networks", params: params) Collection.from_response(response, key: "private_networks", type: PrivateNetwork) end
neighbors(instance_id:)
click to toggle source
# File lib/vultr/resources/instances.rb, line 48 def neighbors(instance_id:) get_request("instances/#{instance_id}/neighbors").body.dig("neighbors") end
reboot(instance_id:, **attributes)
click to toggle source
# File lib/vultr/resources/instances.rb, line 28 def reboot(instance_id:, **attributes) post_request("instances/#{instance_id}/reboot", body: attributes) end
reboot_instances(instance_ids:)
click to toggle source
# File lib/vultr/resources/instances.rb, line 137 def reboot_instances(instance_ids:) post_request("instances/reboot", body: {instance_ids: Array(instance_ids)}) end
reinstall(instance_id:, **attributes)
click to toggle source
# File lib/vultr/resources/instances.rb, line 32 def reinstall(instance_id:, **attributes) Instance.new post_request("instances/#{instance_id}/reinstall", body: attributes).body.dig("instance") end
restore(instance_id:, **attributes)
click to toggle source
# File lib/vultr/resources/instances.rb, line 36 def restore(instance_id:, **attributes) Object.new post_request("instances/#{instance_id}/restore", body: attributes).body.dig("status") end
retrieve(instance_id:)
click to toggle source
# File lib/vultr/resources/instances.rb, line 12 def retrieve(instance_id:) Instance.new get_request("instances/#{instance_id}").body.dig("instance") end
set_backup_schedule(instance_id:, **attributes)
click to toggle source
# File lib/vultr/resources/instances.rb, line 128 def set_backup_schedule(instance_id:, **attributes) post_request("instances/#{instance_id}/backup-schedule", body: attributes) end
set_default_reverse_dns_entry(instance_id:, **params)
click to toggle source
# File lib/vultr/resources/instances.rb, line 77 def set_default_reverse_dns_entry(instance_id:, **params) post_request("instances/#{instance_id}/ipv4/reverse/default", body: params) end
start(instance_id:, **attributes)
click to toggle source
# File lib/vultr/resources/instances.rb, line 24 def start(instance_id:, **attributes) post_request("instances/#{instance_id}/start", body: attributes) end
start_instances(instance_ids:)
click to toggle source
# File lib/vultr/resources/instances.rb, line 141 def start_instances(instance_ids:) post_request("instances/start", body: {instance_ids: Array(instance_ids)}) end
update(instance_id:, **attributes)
click to toggle source
# File lib/vultr/resources/instances.rb, line 16 def update(instance_id:, **attributes) patch_request("instances/#{instance_id}", body: attributes) end
upgrades(instance_id:, **params)
click to toggle source
# File lib/vultr/resources/instances.rb, line 56 def upgrades(instance_id:, **params) Object.new get_request("instances/#{instance_id}/upgrades", params: params).body.dig("upgrades") end
user_data(instance_id:)
click to toggle source
# File lib/vultr/resources/instances.rb, line 52 def user_data(instance_id:) Object.new get_request("instances/#{instance_id}/user-data").body.dig("user_data") end