vultr 0.4.3 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (233) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ci.yml +32 -0
  3. data/CHANGELOG.md +4 -0
  4. data/Gemfile +5 -10
  5. data/README.md +306 -136
  6. data/Rakefile +10 -6
  7. data/bin/console +21 -0
  8. data/bin/setup +8 -0
  9. data/bin/test +6 -0
  10. data/lib/vultr/client.rb +111 -0
  11. data/lib/vultr/collection.rb +22 -0
  12. data/lib/vultr/error.rb +4 -0
  13. data/lib/vultr/object.rb +19 -0
  14. data/lib/vultr/objects/account.rb +4 -0
  15. data/lib/vultr/objects/application.rb +4 -0
  16. data/lib/vultr/objects/backup.rb +4 -0
  17. data/lib/vultr/objects/bare_metal.rb +4 -0
  18. data/lib/vultr/objects/block_storage.rb +4 -0
  19. data/lib/vultr/objects/domain.rb +4 -0
  20. data/lib/vultr/objects/firewall_group.rb +4 -0
  21. data/lib/vultr/objects/instance.rb +4 -0
  22. data/lib/vultr/objects/iso.rb +4 -0
  23. data/lib/vultr/objects/kubernetes_cluster.rb +4 -0
  24. data/lib/vultr/objects/load_balancer.rb +4 -0
  25. data/lib/vultr/objects/object_storage.rb +4 -0
  26. data/lib/vultr/objects/operating_system.rb +4 -0
  27. data/lib/vultr/objects/plan.rb +4 -0
  28. data/lib/vultr/objects/private_network.rb +4 -0
  29. data/lib/vultr/objects/region.rb +4 -0
  30. data/lib/vultr/objects/reserved_ip.rb +4 -0
  31. data/lib/vultr/objects/snapshot.rb +4 -0
  32. data/lib/vultr/objects/ssh_key.rb +4 -0
  33. data/lib/vultr/objects/startup_script.rb +4 -0
  34. data/lib/vultr/objects/user.rb +4 -0
  35. data/lib/vultr/resource.rb +52 -0
  36. data/lib/vultr/resources/account.rb +7 -0
  37. data/lib/vultr/resources/applications.rb +8 -0
  38. data/lib/vultr/resources/backups.rb +12 -0
  39. data/lib/vultr/resources/bare_metal.rb +79 -0
  40. data/lib/vultr/resources/block_storage.rb +32 -0
  41. data/lib/vultr/resources/dns.rb +58 -0
  42. data/lib/vultr/resources/firewall.rb +42 -0
  43. data/lib/vultr/resources/instances.rb +145 -0
  44. data/lib/vultr/resources/iso.rb +25 -0
  45. data/lib/vultr/resources/kubernetes.rb +61 -0
  46. data/lib/vultr/resources/load_balancers.rb +50 -0
  47. data/lib/vultr/resources/object_storage.rb +33 -0
  48. data/lib/vultr/resources/operating_systems.rb +8 -0
  49. data/lib/vultr/resources/plans.rb +13 -0
  50. data/lib/vultr/resources/private_networks.rb +24 -0
  51. data/lib/vultr/resources/regions.rb +12 -0
  52. data/lib/vultr/resources/reserved_ips.rb +32 -0
  53. data/lib/vultr/resources/snapshots.rb +28 -0
  54. data/lib/vultr/resources/ssh_keys.rb +24 -0
  55. data/lib/vultr/resources/startup_scripts.rb +24 -0
  56. data/lib/vultr/resources/users.rb +24 -0
  57. data/lib/vultr/version.rb +1 -8
  58. data/lib/vultr.rb +56 -887
  59. data/test/fixtures/account/info.json +11 -0
  60. data/test/fixtures/applications/list.json +29 -0
  61. data/test/fixtures/backups/list.json +18 -0
  62. data/test/fixtures/backups/retrieve.json +9 -0
  63. data/test/fixtures/bare_metals/bandwidth.json +12 -0
  64. data/test/fixtures/bare_metals/create.json +26 -0
  65. data/test/fixtures/bare_metals/list.json +36 -0
  66. data/test/fixtures/bare_metals/list_ipv4.json +18 -0
  67. data/test/fixtures/bare_metals/list_ipv6.json +17 -0
  68. data/test/fixtures/bare_metals/reinstall.json +25 -0
  69. data/test/fixtures/bare_metals/retrieve.json +26 -0
  70. data/test/fixtures/bare_metals/update.json +26 -0
  71. data/test/fixtures/bare_metals/upgrades.json +47 -0
  72. data/test/fixtures/bare_metals/user_data.json +5 -0
  73. data/test/fixtures/bare_metals/vnc.json +5 -0
  74. data/test/fixtures/block_storage/attach.json +4 -0
  75. data/test/fixtures/block_storage/create.json +13 -0
  76. data/test/fixtures/block_storage/detach.json +4 -0
  77. data/test/fixtures/block_storage/list.json +22 -0
  78. data/test/fixtures/block_storage/retrieve.json +13 -0
  79. data/test/fixtures/domains/create.json +6 -0
  80. data/test/fixtures/domains/dnssec.json +7 -0
  81. data/test/fixtures/domains/list.json +15 -0
  82. data/test/fixtures/domains/record.json +10 -0
  83. data/test/fixtures/domains/records.json +19 -0
  84. data/test/fixtures/domains/retrieve.json +6 -0
  85. data/test/fixtures/domains/soa.json +6 -0
  86. data/test/fixtures/firewall/create.json +11 -0
  87. data/test/fixtures/firewall/create_rule.json +9 -0
  88. data/test/fixtures/firewall/delete.json +1 -0
  89. data/test/fixtures/firewall/delete_rule.json +1 -0
  90. data/test/fixtures/firewall/list.json +20 -0
  91. data/test/fixtures/firewall/list_rules.json +22 -0
  92. data/test/fixtures/firewall/retrieve.json +11 -0
  93. data/test/fixtures/firewall/retrieve_rule.json +13 -0
  94. data/test/fixtures/firewall/update.json +1 -0
  95. data/test/fixtures/instances/attach_iso.json +6 -0
  96. data/test/fixtures/instances/attach_private_network.json +1 -0
  97. data/test/fixtures/instances/backup_schedule.json +10 -0
  98. data/test/fixtures/instances/bandwidth.json +12 -0
  99. data/test/fixtures/instances/create.json +36 -0
  100. data/test/fixtures/instances/create_ipv4_reverse.json +1 -0
  101. data/test/fixtures/instances/create_ipv6_reverse.json +1 -0
  102. data/test/fixtures/instances/delete.json +1 -0
  103. data/test/fixtures/instances/delete_ipv4.json +1 -0
  104. data/test/fixtures/instances/delete_ipv6.json +1 -0
  105. data/test/fixtures/instances/detach_iso.json +5 -0
  106. data/test/fixtures/instances/detach_private_network.json +1 -0
  107. data/test/fixtures/instances/halt.json +1 -0
  108. data/test/fixtures/instances/halt_instances.json +1 -0
  109. data/test/fixtures/instances/ipv4.json +9 -0
  110. data/test/fixtures/instances/ipv6_reverse.json +15 -0
  111. data/test/fixtures/instances/iso.json +6 -0
  112. data/test/fixtures/instances/list.json +44 -0
  113. data/test/fixtures/instances/list_ipv4.json +32 -0
  114. data/test/fixtures/instances/list_ipv6.json +17 -0
  115. data/test/fixtures/instances/list_private_networks.json +16 -0
  116. data/test/fixtures/instances/neighbors.json +6 -0
  117. data/test/fixtures/instances/reboot.json +1 -0
  118. data/test/fixtures/instances/reboot_instances.json +1 -0
  119. data/test/fixtures/instances/reinstall.json +35 -0
  120. data/test/fixtures/instances/restore.json +7 -0
  121. data/test/fixtures/instances/retrieve.json +35 -0
  122. data/test/fixtures/instances/set_backup_schedule.json +1 -0
  123. data/test/fixtures/instances/set_default_reverse_dns_entry.json +1 -0
  124. data/test/fixtures/instances/start.json +1 -0
  125. data/test/fixtures/instances/start_instances.json +1 -0
  126. data/test/fixtures/instances/update.json +1 -0
  127. data/test/fixtures/instances/upgrades.json +55 -0
  128. data/test/fixtures/instances/user_data.json +5 -0
  129. data/test/fixtures/isos/create.json +8 -0
  130. data/test/fixtures/isos/list.json +20 -0
  131. data/test/fixtures/isos/list_public.json +17 -0
  132. data/test/fixtures/isos/retrieve.json +11 -0
  133. data/test/fixtures/kubernetes/config.json +3 -0
  134. data/test/fixtures/kubernetes/create.json +39 -0
  135. data/test/fixtures/kubernetes/create_node_pool.json +25 -0
  136. data/test/fixtures/kubernetes/list.json +85 -0
  137. data/test/fixtures/kubernetes/list_node_pools.json +56 -0
  138. data/test/fixtures/kubernetes/list_resources.json +26 -0
  139. data/test/fixtures/kubernetes/retrieve.json +39 -0
  140. data/test/fixtures/kubernetes/retrieve_node_pool.json +25 -0
  141. data/test/fixtures/kubernetes/update_node_pool.json +19 -0
  142. data/test/fixtures/load_balancers/create.json +48 -0
  143. data/test/fixtures/load_balancers/create_forwarding_rule.json +1 -0
  144. data/test/fixtures/load_balancers/delete.json +1 -0
  145. data/test/fixtures/load_balancers/delete_forwarding_rule.json +1 -0
  146. data/test/fixtures/load_balancers/list.json +57 -0
  147. data/test/fixtures/load_balancers/list_firewall_rules.json +17 -0
  148. data/test/fixtures/load_balancers/list_forwarding_rules.json +18 -0
  149. data/test/fixtures/load_balancers/retrieve.json +48 -0
  150. data/test/fixtures/load_balancers/retrieve_firewall_rule.json +8 -0
  151. data/test/fixtures/load_balancers/retrieve_forwarding_rule.json +9 -0
  152. data/test/fixtures/load_balancers/update.json +1 -0
  153. data/test/fixtures/object_storage/create.json +14 -0
  154. data/test/fixtures/object_storage/delete.json +1 -0
  155. data/test/fixtures/object_storage/list.json +22 -0
  156. data/test/fixtures/object_storage/list_clusters.json +17 -0
  157. data/test/fixtures/object_storage/regenerate_keys.json +7 -0
  158. data/test/fixtures/object_storage/retrieve.json +13 -0
  159. data/test/fixtures/object_storage/update.json +1 -0
  160. data/test/fixtures/operating_systems/list.json +17 -0
  161. data/test/fixtures/plans/list.json +22 -0
  162. data/test/fixtures/plans/list_metal.json +24 -0
  163. data/test/fixtures/private_networks/create.json +10 -0
  164. data/test/fixtures/private_networks/delete.json +1 -0
  165. data/test/fixtures/private_networks/list.json +19 -0
  166. data/test/fixtures/private_networks/retrieve.json +10 -0
  167. data/test/fixtures/private_networks/update.json +1 -0
  168. data/test/fixtures/regions/list.json +20 -0
  169. data/test/fixtures/regions/list_availability.json +24 -0
  170. data/test/fixtures/reserved_ips/attach.json +1 -0
  171. data/test/fixtures/reserved_ips/convert.json +11 -0
  172. data/test/fixtures/reserved_ips/create.json +11 -0
  173. data/test/fixtures/reserved_ips/delete.json +1 -0
  174. data/test/fixtures/reserved_ips/detach.json +1 -0
  175. data/test/fixtures/reserved_ips/list.json +29 -0
  176. data/test/fixtures/reserved_ips/retrieve.json +11 -0
  177. data/test/fixtures/snapshots/create.json +11 -0
  178. data/test/fixtures/snapshots/create_from_url.json +11 -0
  179. data/test/fixtures/snapshots/delete.json +1 -0
  180. data/test/fixtures/snapshots/list.json +20 -0
  181. data/test/fixtures/snapshots/retrieve.json +11 -0
  182. data/test/fixtures/snapshots/update.json +1 -0
  183. data/test/fixtures/ssh_keys/create.json +8 -0
  184. data/test/fixtures/ssh_keys/delete.json +1 -0
  185. data/test/fixtures/ssh_keys/list.json +17 -0
  186. data/test/fixtures/ssh_keys/retrieve.json +8 -0
  187. data/test/fixtures/ssh_keys/update.json +1 -0
  188. data/test/fixtures/startup_scripts/create.json +10 -0
  189. data/test/fixtures/startup_scripts/delete.json +1 -0
  190. data/test/fixtures/startup_scripts/list.json +18 -0
  191. data/test/fixtures/startup_scripts/retrieve.json +10 -0
  192. data/test/fixtures/startup_scripts/update.json +1 -0
  193. data/test/fixtures/users/create.json +9 -0
  194. data/test/fixtures/users/delete.json +1 -0
  195. data/test/fixtures/users/list.json +29 -0
  196. data/test/fixtures/users/retrieve.json +20 -0
  197. data/test/fixtures/users/update.json +1 -0
  198. data/test/test_helper.rb +18 -5
  199. data/test/vultr/client_test.rb +8 -0
  200. data/test/vultr/object_test.rb +21 -0
  201. data/test/vultr/resources/account_test.rb +12 -0
  202. data/test/vultr/resources/applications_test.rb +15 -0
  203. data/test/vultr/resources/backups_test.rb +24 -0
  204. data/test/vultr/resources/bare_metal_test.rb +267 -0
  205. data/test/vultr/resources/block_storage_test.rb +85 -0
  206. data/test/vultr/resources/dns_test.rb +134 -0
  207. data/test/vultr/resources/firewall_test.rb +88 -0
  208. data/test/vultr/resources/instances_test.rb +325 -0
  209. data/test/vultr/resources/iso_test.rb +58 -0
  210. data/test/vultr/resources/kubernetes_test.rb +185 -0
  211. data/test/vultr/resources/load_balancers_test.rb +110 -0
  212. data/test/vultr/resources/object_storage_test.rb +71 -0
  213. data/test/vultr/resources/operating_systems_test.rb +15 -0
  214. data/test/vultr/resources/plans_test.rb +25 -0
  215. data/test/vultr/resources/private_networks_test.rb +50 -0
  216. data/test/vultr/resources/regions_test.rb +26 -0
  217. data/test/vultr/resources/reserved_ips_test.rb +67 -0
  218. data/test/vultr/resources/snapshots_test.rb +60 -0
  219. data/test/vultr/resources/ssh_keys_test.rb +50 -0
  220. data/test/vultr/resources/startup_scripts_test.rb +50 -0
  221. data/test/vultr/resources/users_test.rb +50 -0
  222. data/vultr.gemspec +17 -17
  223. metadata +394 -48
  224. data/test/vultr/vultr_account_test.rb +0 -29
  225. data/test/vultr/vultr_app_test.rb +0 -26
  226. data/test/vultr/vultr_backup_test.rb +0 -22
  227. data/test/vultr/vultr_iso_test.rb +0 -27
  228. data/test/vultr/vultr_os_test.rb +0 -21
  229. data/test/vultr/vultr_plan_test.rb +0 -22
  230. data/test/vultr/vultr_region_test.rb +0 -33
  231. data/test/vultr/vultr_snapshot_test.rb +0 -30
  232. data/test/vultr/vultr_sshkey_test.rb +0 -50
  233. data/test/vultr/vultr_startupscript_test.rb +0 -53
@@ -1,29 +0,0 @@
1
- require 'test_helper'
2
-
3
- class VultrAccountTest < Minitest::Test
4
-
5
- # Called before every test method runs. Can be used
6
- # to set up fixture information.
7
- def setup
8
- Vultr.api_key = ENV['VULTR_API_KEY']
9
- end
10
-
11
- def test_account_info_response
12
- r = Vultr::Account.info
13
-
14
- assert r.has_key? :status
15
- assert_equal r[:status], 200
16
-
17
- assert r.has_key? :result
18
- assert r[:result].has_key? 'balance'
19
- assert r[:result].has_key? 'pending_charges'
20
- assert r[:result].has_key? 'last_payment_date'
21
- assert r[:result].has_key? 'last_payment_amount'
22
- end
23
-
24
- # Called after every test method runs. Can be used to tear
25
- # down fixture information.
26
- def teardown
27
- # Do nothing
28
- end
29
- end
@@ -1,26 +0,0 @@
1
- require 'test_helper'
2
-
3
- class VultrAppTest < Minitest::Test
4
-
5
- # Called before every test method runs. Can be used
6
- # to set up fixture information.
7
- def setup
8
- Vultr.api_key = ENV['VULTR_API_KEY']
9
- end
10
-
11
- def test_app_list_response
12
- r = Vultr::App.list
13
-
14
- assert r.has_key? :status
15
- assert_equal r[:status], 200
16
-
17
- assert r.has_key? :result
18
- assert_instance_of Hash, r[:result]
19
- end
20
-
21
- # Called after every test method runs. Can be used to tear
22
- # down fixture information.
23
- def teardown
24
- # Do nothing
25
- end
26
- end
@@ -1,22 +0,0 @@
1
- require 'test_helper'
2
-
3
- class VultrBackupTest < Minitest::Test
4
-
5
- def setup
6
- Vultr.api_key = ENV['VULTR_API_KEY']
7
- end
8
-
9
- def test_backup_list_response
10
- r = Vultr::Backup.list
11
-
12
- assert r.has_key? :status
13
- assert_equal r[:status], 200
14
-
15
- assert r.has_key? :result
16
- assert_instance_of Array, r[:result]
17
- end
18
-
19
- def teardown
20
- # Do nothing
21
- end
22
- end
@@ -1,27 +0,0 @@
1
- require 'test_helper'
2
-
3
- class VultrIsoTest < Minitest::Test
4
-
5
- def setup
6
- Vultr.api_key = ENV['VULTR_API_KEY']
7
- end
8
-
9
- def test_iso_list_response
10
- r = Vultr::ISO.list
11
-
12
- assert r.has_key? :status
13
- assert r[:status], 200
14
-
15
- assert r.has_key? :result
16
-
17
- if r[:result].empty?
18
- assert_instance_of Array, r[:result]
19
- else
20
- assert_instance_of Hash, r[:result]
21
- end
22
- end
23
-
24
- def teardown
25
- # Do nothing
26
- end
27
- end
@@ -1,21 +0,0 @@
1
- require 'test_helper'
2
-
3
- class VultrOsTest < Minitest::Test
4
- def setup
5
- Vultr.api_key = ENV['VULTR_API_KEY']
6
- end
7
-
8
- def test_os_list_response
9
- r = Vultr::OS.list
10
-
11
- assert r.has_key? :status
12
- assert_equal r[:status], 200
13
-
14
- assert r.has_key? :result
15
- assert_instance_of Hash, r[:result]
16
- end
17
-
18
- def teardown
19
- # Do nothing
20
- end
21
- end
@@ -1,22 +0,0 @@
1
- require 'test_helper'
2
-
3
- class VultrPlanTest < Minitest::Test
4
-
5
- def setup
6
- Vultr.api_key = ENV['VULTR_API_KEY']
7
- end
8
-
9
- def test_plan_list_response
10
- r = Vultr::Plans.list
11
-
12
- assert r.has_key? :status
13
- assert_equal r[:status], 200
14
-
15
- assert r.has_key? :result
16
- assert_instance_of Hash, r[:result]
17
- end
18
-
19
- def teardown
20
- # Do nothing
21
- end
22
- end
@@ -1,33 +0,0 @@
1
- require 'test_helper'
2
-
3
- class VultrRegionTest < Minitest::Test
4
-
5
- def setup
6
- Vultr.api_key = ENV['VULTR_API_KEY']
7
- end
8
-
9
- def test_region_responses
10
- r = Vultr::Regions.list
11
-
12
- assert r.has_key? :status
13
- assert_equal r[:status], 200
14
-
15
- assert r.has_key? :result
16
- assert_instance_of Hash, r[:result]
17
-
18
- k, v = r[:result].first
19
- dc_id = k.to_i
20
-
21
- r = Vultr::Regions.availability(DCID: dc_id)
22
-
23
- assert r.has_key? :status
24
- assert_equal r[:status], 200
25
-
26
- assert r.has_key? :result
27
- assert_instance_of Array, r[:result]
28
- end
29
-
30
- def teardown
31
- # Do nothing
32
- end
33
- end
@@ -1,30 +0,0 @@
1
- require 'test_helper'
2
-
3
- class VultrSnapshotTest < Minitest::Test
4
-
5
- def setup
6
- Vultr.api_key = ENV['VULTR_API_KEY']
7
- end
8
-
9
- def test_snapshot_list_response
10
- r = Vultr::Snapshot.list
11
-
12
- assert r.has_key? :status
13
- assert_equal r[:status], 200
14
-
15
- assert r.has_key? :result
16
- assert_instance_of Array, r[:result]
17
- end
18
-
19
- def test_snapshot_create_response
20
- # TODO
21
- end
22
-
23
- def test_snapshot_destroy_response
24
- # TODO
25
- end
26
-
27
- def teardown
28
- # Do nothing
29
- end
30
- end
@@ -1,50 +0,0 @@
1
- require 'test_helper'
2
-
3
- class VultrSshkeyTest < Minitest::Test
4
-
5
- def setup
6
- Vultr.api_key = ENV['VULTR_API_KEY']
7
- end
8
-
9
- def test_sshkey_responses
10
- r = Vultr::SSHKey.create(name: 'test_ssh_key',
11
- ssh_key: 'ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDJMDEZ80TRG4FMi3lz4zonNnUlSUd92UfOEh2OtS6Rtl9X/2vqqnbxh4tbCNUH6JGEHhjXV6JKoj3G1Tui+7keTLov9vGWJsgDCIndU5r/wUp6G99oAMpoldsuUXjh1xKYT6XrF6ud1Rd3WIFuzZAgv/dTBD+tUWr53YngqN1hJ7Ux4pxu4whMpdiaeom8cVp+u8pI9n06ESgMClPe2eloFOd1agsOmhLL4YrTveGf7DHLED39rkcEvRBSalM2q5frY0x5gx2QTDv85cHHM2gsHgJB4CwRajPUYnqjA+YH/QZIq629z29YJP3odcyDVIiFQuqCtxYPoakfTzoSP3zx tolbkni@gmail.com')
12
-
13
- assert r.has_key? :status
14
- assert_equal r[:status], 200
15
-
16
- assert r.has_key? :result
17
- assert_instance_of Hash, r[:result]
18
-
19
- sshkey_id = r[:result]['SSHKEYID']
20
-
21
- r = Vultr::SSHKey.update(SSHKEYID: sshkey_id,
22
- name: 'test_ssh_key1',
23
- ssh_key: 'ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDJMDEZ80TRG4FMi3lz4zonNnUlSUd92UfOEh2OtS6Rtl9X/2vqqnbxh4tbCNUH6JGEHhjXV6JKoj3G1Tui+7keTLov9vGWJsgDCIndU5r/wUp6G99oAMpoldsuUXjh1xKYT6XrF6ud1Rd3WIFuzZAgv/dTBD+tUWr53YngqN1hJ7Ux4pxu4whMpdiaeom8cVp+u8pI9n06ESgMClPe2eloFOd1agsOmhLL4YrTveGf7DHLED39rkcEvRBSalM2q5frY0x5gx2QTDv85cHHM2gsHgJB4CwRajPUYnqjA+YH/QZIq629z29YJP3odcyDVIiFQuqCtxYPoakfTzoSP3zx tolbkni@gmail.com')
24
-
25
- assert r.has_key? :status
26
- assert_equal r[:status], 200
27
-
28
- assert r.has_key? :result
29
- assert_empty r[:result]
30
-
31
- r = Vultr::SSHKey.list
32
-
33
- assert r.has_key? :status
34
- assert_equal r[:status], 200
35
-
36
- assert r.has_key? :result
37
- assert_instance_of Hash, r[:result]
38
-
39
- r = Vultr::SSHKey.destroy(SSHKEYID: sshkey_id)
40
- assert r.has_key? :status
41
- assert_equal r[:status], 200
42
-
43
- assert r.has_key? :result
44
- assert_empty r[:result]
45
- end
46
-
47
- def teardown
48
- # Do nothing
49
- end
50
- end
@@ -1,53 +0,0 @@
1
- require 'test_helper'
2
-
3
- class VultrStartupscriptTest < Minitest::Test
4
-
5
- def setup
6
- Vultr.api_key = ENV['VULTR_API_KEY']
7
- end
8
-
9
- def test_startupscript_responses
10
- r = Vultr::StartupScript.create(name: 'test_startup_script',
11
- script: 'echo \'test\'',
12
- type: 'boot')
13
-
14
- assert r.has_key? :status
15
- assert_equal r[:status], 200
16
-
17
- assert r.has_key? :result
18
- assert_instance_of Hash, r[:result]
19
-
20
- script_id = r[:result]['SCRIPTID']
21
-
22
- r = Vultr::StartupScript.update(SCRIPTID: script_id,
23
- name: 'test_startup_script1',
24
- script: 'echo \'test1\'')
25
-
26
- assert r.has_key? :status
27
- assert_equal r[:status], 200
28
-
29
- assert r.has_key? :result
30
- assert_empty r[:result]
31
-
32
- r = Vultr::StartupScript.list
33
-
34
- assert r.has_key? :status
35
- assert_equal r[:status], 200
36
-
37
- assert r.has_key? :result
38
- assert_instance_of Hash, r[:result]
39
-
40
-
41
- r = Vultr::StartupScript.destroy(SCRIPTID: script_id)
42
-
43
- assert r.has_key? :status
44
- assert_equal r[:status], 200
45
-
46
- assert r.has_key? :result
47
- assert_empty r[:result]
48
- end
49
-
50
- def teardown
51
- # Do nothing
52
- end
53
- end